Brain the size of a planet, and working with MC Hammer



  • @joe.edwards said:

    If the language allows it, I know someone will use it, and then I'll end up having to support it. When I write code, my number one priority is making sure it won't be painful for me to go back and maintain, fix, update, or debug. This "feature" goes against the spirit of that goal.
     

    Then we should forbid 50+ lines per block, not unless statements.



  • @joe.edwards said:

    Blakey's workflow is to watch the debugger and see what happens. I read code like a narrative, running statement by statement in my head and updating state accordingly.

    The debugger is doing the same thing you're doing mentally, but showing you exactly what the state is. I would think you'd appreciate the debugger as much as I do, if that's your technique. If you don't have to keep a mental inventory of all the locals and stuff, you have more room in your brain to focus on the actual problem you're trying to solve.

    In any case, I'm never going to support a programming environment that excludes people like me (duh), and I'm always going to believe that a programming environment that excludes people like me is inferior to one that does not. So I stand by everything I've said about Ruby and its shitty programming environment.


  • Considered Harmful

    @dhromed said:

    Then we should forbid 50+ lines per block, not unless statements.

    As I understand Ruby allows unless either before or after; if it's before, then I have no problem with unless.

    I cannot for the life of me think of a scenario where putting either if or unless after the statement would make things easier to read or understand.


  • BINNED

    @blakeyrat said:

    @PedanticCurmudgeon said:
    I'm glad you finally got my point, but you're still missing a distinction: bad for me (subjective) vs. bad for everyone (objective).

    If that's what you were very very very very slooooooooooooooowly getting at, why the fuck didn't you just post it 5423457234 posts ago instead of spamming up the fucking forum, you ass?


    The subjective/objective distinction wasn't the point I've been trying to get through your thick skull, it was this:
    You expect to work with Ruby the same way as you would with C#. This is not a reasonable expectation.

    and I mentioned that at least twice.

    By the way, I don't dislike Ruby. It's good for small scripts and applications, but it doesn't scale up very well.


  • BINNED

    @jamesn said:

    Today I Learned: blakeyrat is a point-and-drool guy
    Yeah, I don't think any of us knew.


  • Considered Harmful

    @blakeyrat said:

    @joe.edwards said:
    Blakey's workflow is to watch the debugger and see what happens. I read code like a narrative, running statement by statement in my head and updating state accordingly.

    The debugger is doing the same thing you're doing mentally, but showing you exactly what the state is. I would think you'd appreciate the debugger as much as I do, if that's your technique. If you don't have to keep a mental inventory of all the locals and stuff, you have more room in your brain to focus on the actual problem you're trying to solve.

    You're probably right. I don't dispute that debuggers make the task of debugging easy. The main problem at the moment is I have a project that takes five minutes to run a build, and then I have to attach a debugger to it, and there's no edit-and-continue support for 64-bit processes in Visual Studio. So every time I want to make a change, I would have to recompile, reattach the debugger, and get it back to that state. It's too time-consuming for me to work like that.

    I also feel like if I lean too heavily on the IDE, I'll become dependent on it, and then lose the ability to work with languages that don't have such tools.



  • @joe.edwards said:

    The main problem at the moment is I have a project that takes five minutes to run a build, and then I have to attach a debugger to it, and there's no edit-and-continue support for 64-bit processes in Visual Studio.

    You can't just build the one tiny component you're actually working on? Or is it a giant mess of spaghetti where everything depends on everything else?

    Fair complaint, but it's one of those, "if that complaint comes up, you're doing something very wrong elsewhere" things. Like a co-worker who complained to me that his OS started choking once he put 44k+ files in a single directory.

    @joe.edwards said:

    I also feel like if I lean too heavily on the IDE, I'll become dependent on it, and then lose the ability to work with languages that don't have such tools.

    Wow. That is the most backwards way of thinking I have ever heard.



  • @joe.edwards said:

    I also feel like if I lean too heavily on the IDE, I'll become dependent on it, and then lose the ability to work with languages that don't have such tools.

    This is an excellent point that I think a lot of people will miss the truth of.

    I love C# as much as anyone on here (it's my favorite language, mostly due to the tools), but I don't like that if you want to use the best set of GUI programming tools available, you have to lock yourself in to the Microsoft ecosystem. That system won't be around forever. However, if you can teach yourself to code productively using other toolsets, then you'll be better adapted for the future. vim is a good example - it has a steep learning curve, but it's very powerful at the end of the curve, and it's not going away any time soon.

    To me it's a similar concept to diversifying an investment portfolio. Pick several languages and learn them and their toolsets as well as you can, that way when one falls out of favor you still have a couple of other good ways of getting things done.



  • @jamesn said:

    but I don't like that if you want to use the best set of GUI programming tools available, you have to lock yourself in to the Microsoft ecosystem. That system won't be around forever.
    Microsoft development tools are going away?  Somebody better tell Microsoft...

    @jamesn said:

    if you can teach yourself to code productively using other toolsets, then you'll be better adapted for the future. vim is a good example - it has a steep learning curve, but it's very powerful at the end of the curve, and it's not going away any time soon.

    To me it's a similar concept to diversifying an investment portfolio. Pick several languages and learn them and their toolsets as well as you can, that way when one falls out of favor you still have a couple of other good ways of getting things done.

    Jack of all trades, master of none...

    Sorry, I just don't buy this.  I'm going to use 3 or 4 or more different tools instead of one to work with the same programming language?  Why?  It's not like VS is all of a sudden going to vanish...



  • @jamesn said:

    Today I Learned: blakeyrat is a point-and-drool guy

    Let me ask you a question. Say I had a physical disability, like I was missing a hand. Would you endorse a programming language that required the use of both hands? (And yes I realize that's ridiculously hypothetical, but I'm trying to make a point here.)

    If I don't have the rote memory skills to effectively use a CLI or to effectively use an editor without things things like Intellisense, should I be excluded from coding in Ruby?

    Usability isn't just about about making the software usable by the average person; it's also about accessibility, making the software accessible to everybody regardless of their capabilities (physical or mental). Not that anybody involved in the Ruby ecosystem ever gave two shits about usability. This shit is important to me. I think it should be important to you.


  • Considered Harmful

    @blakeyrat said:

    You can't just build the one tiny component you're actually working on? Or is it a giant mess of spaghetti where everything depends on everything else?

    The very expensive enterprisey CMS platform it's built for demands this architecture, and if you deviate from it they will basically disown you and refuse to support it.

    Really, I had to complete a time-consuming and expensive certification process before they even granted me access to the extranet where they keep the documentation, and to remain a part of their "developer network" I have to abide by their rules and guidelines. (Which is part of why I don't want to name names.)



  • @jamesn said:

    I love C# as much as anyone on here (it's my favorite language, mostly due to the tools), but I don't like that if you want to use the best set of GUI programming tools available, you have to lock yourself in to the Microsoft ecosystem. That system won't be around forever. However, if you can teach yourself to code productively using other toolsets, then you'll be better adapted for the future. vim is a good example - it has a steep learning curve, but it's very powerful at the end of the curve, and it's not going away any time soon.

    To me it's a similar concept to diversifying an investment portfolio. Pick several languages and learn them and their toolsets as well as you can, that way when one falls out of favor you still have a couple of other good ways of getting things done.

    So basically you're saying that you've just accepted the fact that non-Microsoft development tools are shit, and you should wallow around in the shit to advance your career instead of, say, calling out the Ruby community for having shit tools that don't hold a candle to Microsoft tools. (They don't dare to; they might ignite the methane there in the shit-pipe.)



  • @C-Octothorpe said:

    Jack of all trades, master of none...

    I never claimed to be a master. Hell, my job is mostly spreadsheets and VBA.

    Still, it is very important to me to acquire and maintain technological skills that will remain somewhat relevant even when significant platform changes occur, which is a question of when, not if.



  • @blakeyrat said:

    So basically you're saying that you've just accepted the fact that non-Microsoft development tools are shit, and you should wallow around in the shit to advance your career instead of, say, calling out the Ruby community for having shit tools that don't hold a candle to Microsoft tools. (They don't dare to; they might ignite the methane there in the shit-pipe.)

    I never said they were shit. That's you projecting your (uninformed|closed-minded) opinion onto me.

    You have to choose between the following:

    1. A set of tools that you can download and immediately become productive in. However, when you try to do really complex and interesting things that are outside the realm of the designers' imagination, then it becomes apparent that they are bloated and full of edge cases that don't work properly. They also cost a crapload of money.
       
    2. A set of tools that is complicated, difficult to use at first, and not suited for everyone. However, you have the ability to really dig in to the code behind the tools and change them to suit your workflow, thereby making them your own. This does take a crapload of time, which I hear is roughly equivalent to a similar measure of money.

    I say, why not both? Recognize the various tools available for what they are, along with their strengths and weaknesses.



  • @jamesn said:

    A set of tools that you can download and immediately become productive in. However, when you try to do really complex and interesting things that are outside the realm of the designers' imagination, then it becomes apparent that they are bloated and full of edge cases that don't work properly. They also cost a crapload of money.

    And this is supposed to be... C#/.net?

    Oh and BTW, the instant someone mentions that the tools cost a "crapload of money" I instantly put them in my "pennywise, pound foolish" bucket. Look up how much your payroll costs sometime! Even the most expensive programming tool possible (and Visual Studio is quite reasonably priced if your company buys MSDN subscriptions) is a drop in the bucket compared to payroll costs. If MS SQL saves you ONE DAY A YEAR over using Postgres, you've come out even. The instant someone says "proprietary development tools are too expensive!" I instantly know who to NEVER consult when determine whether/what tools to buy. Kind of an unrelated rant, but I think it has to be said because so many developers simply do not know what things are worth and that is a huge WTF.

    @jamesn said:

    A set of tools that is complicated, difficult to use at first, and not suited for everyone. However, you have the ability to really dig in to the code behind the tools and change them to suit your workflow, thereby making them your own. This does take time, which I hear is roughly equivalent to money.

    And this one is supposed to be... Ruby?

    Neither of your bulletpoints there corresponds in any way with my experience. On the contrary; I found Ruby quite easy to learn, it just has really shitty tools. And .net bloated? Maybe slightly, but compared to Ruby? Hah! "Outside the realm of the designer's imagination": you realize you don't have to use the designer, right?

    Also "not suited for everyone" is one of those exact things I'm complaining about. Well, why not? It's not inherent in Ruby's syntax that it can't be used with debuggers! (Hell, JavaScript has good debuggers and it's MUCH weirder and harder to follow than Ruby.) It's just because the Ruby community doesn't give a shit.


  • Considered Harmful

    @blakeyrat said:

    So basically you're saying that you've just accepted the fact that non-Microsoft development tools are shit, and you should wallow around in the shit to advance your career instead of, say, calling out the Ruby community for having shit tools that don't hold a candle to Microsoft tools.

    I do what the clients ask me to do, using the most appropriate tools for the situation. At this job I've had to learn and work with Java, XSLT 2.0, four different CMS platforms, two different RDBMSs, and administrate Solaris, Linux, Windows, and Mac boxes. I don't mind the diversity, I like learning new things, and solving and thinking about problems in new ways. Even if I think a language is shit because of its tools or its conventions or its syntax, it's useful knowledge that makes me more employable as it accumulates.

    This client's main problem is that they have a huge patchwork of unrelated systems and platforms (see above) that have formed a gross living organism that passes data across many servers/platforms/languages/protocols/business units. Over the past two and half years I've managed to retire many legacy systems and servers, making things more modern, easier to maintain, less expensive, more reliable, and less confusing; but I couldn't have migrated away from the crap if I couldn't first understand how it worked.

    So, even if everything else sucks, there are still valid reasons to learn to work with it.



  • I didn't make that very clear. I think ruby sucks pretty hard too. vim and git used for coding python is probably a better example.

    As far as cost and value of development tools... let's say that providing me with a copy of Visual Studio costs my company $3000 per year. (I think it is probably more like $7000 per dev per year, when you take into account the costs of maintaining licenses and support personnel.) Anyway, assuming that I make somewhere in between $50,000 and $100,000 per year, that means that I can spend between 3% and 6% of my time (somewhere between 1.5 and 3 full work-weeks) dealing with SharpDevelop* and setting it up to work well enough for my environment. I think the total time I've actually spent working on SharpDevelop is within the low end of that range, if not below it entirely.

    Using extremely conservative estimates, I've tried to establish that SharpDevelop is comparable in cost to Visual Studio for me, in part because I am willing and able to diagnose, fix, and document subtle compatibility issues that may occur. I think you can make a similar comparison for e.g. SQL Server vs. MySQL (for simple projects) or PostgreSQL (for more complex projects).

    *I would certainly use Visual Studio at work if it were available to me. Unfortunately, it's not.



  • @joe.edwards said:

    I don't mind the diversity, I like learning new things, and solving and thinking about problems in new ways.

    This.

    @joe.edwards said:

    Even if I think a language is shit because of its tools or its conventions or its syntax, it's useful knowledge that makes me more employable as it accumulates.

    Unfortunately, this too.

    @joe.edwards said:

    So, even if everything else sucks, there are still valid reasons to learn to work with it.

    All operating systems and tools suck, just in different ways.



  • @jamesn said:

    let's say that providing me with a copy of Visual Studio costs my company $3000 per year.

    $1200. And that's the "random homeless guy comes in off the street" price... your company could probably negotiate much better.

    Edit: and you forgot to include your benefits; you can't compare to your salary, you have to compare to what your company pays for your time in total.



  • Read about half the thread.  I don't know about all this Ruby shit and I'm no programming professional.  I do enjoy coding as a hobby.  I've always used Visual Studio since version 5.  I'm wondering how freetards consider vim and emacs and developing with 20 other programs and a command line debugger to be better than using something like Visual Studio?

    It's like the idiot on slashdot the other week on the Valve/Linux bullshit.  I said Linux has no good development tools and no good gaming APIs compared to Windows.  Why would a company spend the money to fuck around with all of that?  I was baiscally given a list of random APIs like OpenGL, OpenAL, etc. and that is considered by their community to be equivalent in both features and ease of use to DirectX.  Apparently the same concept applies to shitty, fragmented development tools that run without a GUI.

    I think it's a combination of stockholm syndrome (as someone said before I stopped reading the thread), ignorance, and something else I don't have a word for...  When I was a child, I refused to use a WYSIWYG tool to make my childish website.  I used notepad.  Made me feel superior and smarter than the guy making better websites faster using a WYSIWYG editor.  What's the word for that kind of person?

    Not talking about "freetard" here.  A freetard is someone acting like a retard making their life difficult using FOSS, right?

    I guess some of us learn from our mistakes as children and others just keep smashing their face into the wall for no good reason other than not knowing any better.



  • @jamesn said:

    @joe.edwards said:

    I also feel like if I lean too heavily on the IDE, I'll become dependent on it, and then lose the ability to work with languages that don't have such tools.

    This is an excellent point that I think a lot of people will miss the truth of.

    I love C# as much as anyone on here (it's my favorite language, mostly due to the tools), but I don't like that if you want to use the best set of GUI programming tools available, you have to lock yourself in to the Microsoft ecosystem. That system won't be around forever. However, if you can teach yourself to code productively using other toolsets, then you'll be better adapted for the future. vim is a good example - it has a steep learning curve, but it's very powerful at the end of the curve, and it's not going away any time soon.

    To me it's a similar concept to diversifying an investment portfolio. Pick several languages and learn them and their toolsets as well as you can, that way when one falls out of favor you still have a couple of other good ways of getting things done.

     

    I think before Microsoft goes away, we'll have a new and set of tools and languages available (probably good enough to push Microsoft out of business, hence better).  I don't think vim is going to be one of them.

     



  • @jamesn said:

    As far as cost and value of development tools... let's say that providing me with a copy of Visual Studio costs my company $3000 per year. (I think it is probably more like $7000 per dev per year, when you take into account the costs of maintaining licenses and support personnel.)
    MSDN Ultimate subscription is around $13000 for the first year, and $4000 for subsequent years (this includes VS Ultimate, Office Professional Plus [for production use] and development licenses for pretty much every other Microsoft product). Premium is around half that price, and still includes nearly everything I listed.



  • @ender said:

    MSDN Ultimate subscription is around $13000 for the first year, and $4000 for subsequent years (this includes VS Ultimate, Office Professional Plus [for production use] and development licenses for pretty much every other Microsoft product). Premium is around half that price, and still includes nearly everything I listed.

    Ultimate is way way way way way overkill. "Professional" is all you need for serious software development, and it's $1200 "homeless guy off the street" price.

    Of course you know that, you're just posting the most expensive possible option to scare people away from the scaaaaary Microsoft proprietary tools, oooOOOooOOOO so scaaaaary.



  • @blakeyrat said:

    @ender said:
    MSDN Ultimate subscription is around $13000 for the first year, and $4000 for subsequent years (this includes VS Ultimate, Office Professional Plus [for production use] and development licenses for pretty much every other Microsoft product). Premium is around half that price, and still includes nearly everything I listed.
    Ultimate is way way way way way overkill. "Professional" is all you need for serious software development, and it's $1200 "homeless guy off the street" price.

    Of course you know that, you're just posting the most expensive possible option to scare people away from the scaaaaary Microsoft proprietary tools, oooOOOooOOOO so scaaaaary.

    No, I think he's agreeing with you, and saying that even at the most expensive packaged price, it's still not as much as jamesn was claiming it would cost...


  • Oh. Well I liked typing oooOOOoooOOoooOOo so there.



  • @dhromed said:

     @Zecc said:

    Or drawing a simile between a programming language and a terrorist.

    No, no, no, it's like when Hitler is driving his nazi car in reverse, and.... wait

    Jeez, this is worse than that time on Family Guy when Peter made an obscure reference and they cut to a four-minute scene of something that had nothing to do with the storyline!

     


  • BINNED

    @pauly said:

    shillin and trollin
    Yeah, but you really haven't said anything that blakeyrat and C-Octothorpe didn't also say. Oh...that's the joke... Never mind.


  • ♿ (Parody)

    @pauly said:

    I'm wondering how freetards consider vim and emacs and developing with 20 other programs and a command line debugger to be better than using something like Visual Studio?

    I'm not a freetard, but I have to work in other environments where VS simply isn't an option. Still, some things I do with an IDE and others I don't. I use an integrated debugger for some things, and command line stuff for another.

    I prefer browsing log files with a pager like less from the command line over any sort of GUI tool that I've seen. I imagine that even blakey could figure out the key bindings for navigating and searching. Having the debugger in one console tab and the log file in another is a very easy and quick way to switch between the two. When I find myself doing repetitive things, I either write a shell script or use the built in shell command history.

    There are many things I work with that would be a major pain to debug directly using a debugger (of any variety), since it's something that happens in the midst of thousands of similar iterations. And if I knew the condition for the problem, I likely wouldn't need to run the debugger, but could simply fix it to begin with.



  • @PedanticCurmudgeon said:

    @pauly said:
    shillin and trollin
    Yeah, but you really haven't said anything that blakeyrat and C-Octothorpe didn't also say. Oh...that's the joke... Never mind.
    If you'd like to call me a shill, please be my guest.  VS and other MS dev tools has provided well for myself and my family, and a few freetards laughing because I refuse to put my nuts in a vise (read using vim) on a daily basis won't sway me.


  • BINNED

    Actually, I was implying that pauly was calling you a shill.



  • @PJH said:

    @Severity One said:
    @CodeNinja said:
    Probably the same thing that's keeping me at my job, an intense desire to not be homeless.
    Why would you become homeless if you lose your job?
    Not that I think I should be stating the obvious, but inability to pay the rent/mortgage due to lack of savings?
     

    I read that more as "if I lose this current job, inability to find another one to pay the rent/mortgage".

    Not what you'd expect of a CodeNinja.



  • Just got this in the email. How convenient:  http://osteele.com/posts/2004/11/ides

    The developer world is divided into two camps. Language mavens wax rhapsodic about the power of higher-level programming — first-class functions, staged programming, AOP, MOPs, and reflection. Tool mavens are skilled at the use of integrated build and debug tools, integrated documentation, code completion, refactoring, and code comprehension. Language mavens tend to use a text editor such as emacs or vim — these editors are more likely to work for new languages. Tool mavens tend to use IDEs such as Visual Studio, Eclipse, or IntelliJ, that integrate a variety of development tools.
    [...]
    Why can’t one be a language maven and a tool maven? It’s hard. One reason is that developers have limited time, especially for learning new skills. You can use any given block of time to master language features, or to master development tools. Each of these choices contributes to a positive feedback cycle, but they’re competing cycles, so they create divided camps.

    Microsoft and C# get a special mention, for having been a cutting edge language accompanied simultaneously with a good toolset.

    Do I agree 100% with the author of that article? Am I trying to make a point? Not necessarily. I'm just adding a little more fuel to the discussion.

     

    FWIW, I think the most important features of a good IDE are syntax highlighting, autocomplete and the ability to send the code for compilation/interpretation at the click of a button/keyboard shortcut. This is something a good text editor will also have.

    Good refactoring tools are also the wind below my feet*. These are more of a trait of an IDE than a text editor**.

    As for debuggers: they are nice to have, but IMO there is no shame in using good ol' printf-debugging. I can certainly live without a debugger.
    Which is not to say that having a debugger is wasteful: debuggers certainly help the process of debugging (funny that): you can definitely be a lot faster zooming in on misbehaving code, because setting breakpoints is faster than writing log messages. And you don't have to clean up afterwards.

    * Have you read my signature?

    ** Of course, any sufficiently complex text editor can be considered an IDE.



  • @Zecc said:

    Just got this in the email. How convenient: http://osteele.com/posts/2004/11/ides

    It's rare that you see diagrams that actually make the concept MORE confusing rather than less. Kudos to him.

    But I don't think his argument applies, because Ruby, PHP, and Python have all been around a long time and they still don't have good tools. I would wager that if I look in another decade, I still won't find a decent debugger for Ruby. And yet in the continuum of languages, those three are very successful. (Well, Ruby less so, but definitely PHP.) Where C++, Java have had debugger for their entire existence. (And him saying Microsoft is somehow a "special case" is cheating-- even weird experimental .net languages like F# had debuggers on day 1.)

    @Zecc said:

    As for debuggers: they are nice to have, but IMO there is no shame in using good ol' printf-debugging.

    Depending on what type of app you're building, printf()-debugging is useless. Try running printf() from inside a GPU shader, for example. And until JavaScript consoles existed (very very recently), debugging JS with alert() would change the state of the DOM (by changing control focus/firing off blur events) and so was virtually useless.

    And of course you have to make allowances for debuggers other than language debuggers, for example, the HTTP debugger I can't run with Ruby.

    This is the weirdest point for me because debuggers have been around FOREVER. Debuggers are far older than syntax highlighting, refactoring tools, etc. So why aren't they built first? (Which is yet another reason I don't buy the "language vs. tools" dichotomy from that article.)

    My guess is:
    1) Because they didn't think about debugger hooks when first designing the language/interpreter/compiler and now it's too much work to refactor and add them in
    2) Because debuggers are hard to get right, so they don't even bother starting work on one
    3) Because writing debuggers isn't "fun" like writing new languages features are, and since it's open source only the "fun" jobs get done and not the boring ones



  • @blakeyrat said:

    Depending on what type of app you're building, printf()-debugging is useless. Try running printf() from inside a GPU shader, for example. And until JavaScript consoles existed (very very recently), debugging JS with alert() would change the state of the DOM (by changing control focus/firing off blur events) and so was virtually useless.
    True. YMMV.

    @blakeyrat said:

    This is the weirdest point for me because debuggers have been around FOREVER. Debuggers are far older than syntax highlighting, refactoring tools, etc. So why aren't they built first? (Which is yet another reason I don't buy the "language vs. tools" dichotomy from that article.)
    I agree it is weird. I don't think "writing a debugger isn't fun". It should be fun for at least some of the people.

    I know I would like to write one If I were to make my own language (incidently, an idea I haven't totally put aside [ along with writing my own game engine {because I am a masochist}]).
    Then again, it wouldn't be top priority, I would concentrate on other tools first, so there is some truth to your third point.


    I doubt your two first propositions hold. Debug instructions/opcodes should be as easy as to implement as any other. And while getting a debugger right may be hard, it shouldn't be difficult to make a debugger that just wings it. But I must admit I don't have any real experience in the field, so I may just be talking out of my ass.

    I'm not entirely convinced that there aren't any good debuggers outside of Microsoft, btw.



  • @Zecc said:

    I doubt your two first propositions hold. Debug instructions/opcodes should be as easy as to implement as any other. And while getting a debugger right may be hard, it shouldn't be difficult to make a debugger that just wings it. But I must admit I don't have any real experience in the field, so I may just be talking out of my ass.

    Do you have a theory on why Ruby doesn't have one yet? It's been around since 1995, and was popularized by Ruby on Rails in 2005-2006ish.

    @Zecc said:

    I'm not entirely convinced that there aren't any good debuggers outside of Microsoft, btw.

    Well herpderp, who said that? Certainly not me. Stop listening to the invisible shoulder aliens.

    I learned programming on THINK C and CodeWarrior back in the day, and they had a damned good debugger for C and C++. (Long before it had syntax highlighting or any kind of intellisense features-- although I think it got syntax highlighting in the "Pro 1" version I only used for a few weeks before going to college. But anyway. And all browsers now have good JavaScript debuggers, some are better than others, but they're all a shit-ton better than anything Ruby's got.



  • @blakeyrat said:

    Do you have a theory on why Ruby doesn't have one yet? It's been around since 1995, and was popularized by Ruby on Rails in 2005-2006ish.
    I have no knowledge of Ruby debuggers because I have a general disinterest in Ruby.

    Some very cursory googling tells me there are Ruby debuggers, but they are mostly text-based. A notable exception is Eclipse, which... err... well... is Eclipse.
    So I understand why you would say there are no worthwhile debuggers for Ruby.

    But really, what are your criteria for determining if a debugger sucks or not? Eclipse may not be as polished as VisualStudio, but it should be close enough.



  • @blakeyrat said:

    Say I had a physical disability, like I was missing a hand. Would you endorse a programming language that required the use of both hands?

    I'm trying hard to make sense of this metaphor. While I'm sure that some of us would appreciate a programming environment that allows us to have one hand free, it's likely that we would get more useful work done by applying both to the task at hand.

    @blakeyrat said:

    If I don't have the rote memory skills to effectively use a CLI or to effectively use an editor without things things like Intellisense, should I be excluded from coding in Ruby?

    Frankly, that's silly. Nothing about Ruby per se excludes you from using it effectively, except of course that it is open source, therefore you choose to exclude yourself from it.

    @blakeyrat said:

    Usability isn't just about about making the software usable by the average person; it's also about accessibility, making the software accessible to everybody regardless of their capabilities (physical or mental).

    Accessibility has its limits. Not everything can be made fully accessible, and where it is possible, it requires additional design consideration and implementation effort. Programming environments for Ruby probably lack accessibility considerations purely because nobody has devoted any effort to that end; not because it isn't fun, not because the Ruby community hates blakeyrat, but merely because it hasn't proved to be necessary or useful to anyone who cares. Which leads nicely to a point that I've been wanting to make for some time now:

    @blakeyrat said:

    Not that anybody involved in the Ruby ecosystem ever gave two shits about usability. This shit is important to me. I think it should be important to you.

    It's open source. There's nothing preventing you from making the supremely useful tool that you want and popularizing it, except that you would apparently rather continually complain about not being able to mooch off others' work instead of just doing that work yourself. Why don't you go involve yourself in the Ruby ecosystem? Then there will be someone in it that gives two shits about its usability. That's how open source works, derp.



  • @Kittemon said:

    @blakeyrat said:
    Not that anybody involved in the Ruby ecosystem ever gave two shits about usability. This shit is important to me. I think it should be important to you.

    It's open source. There's nothing preventing you from making the supremely useful tool that you want and popularizing it, except that you would apparently rather continually complain about not being able to mooch off others' work instead of just doing that work yourself. Why don't you go involve yourself in the Ruby ecosystem? Then there will be someone in it that gives two shits about its usability. That's how open source works, derp.

    What?  How long do you think it would take to add a debugger to Ruby?  I would guess a very large chunk of time.  I'm sure that blakey's company doesn't want to spend their money for him to develop a debugger.  I would also guess that blakey doesn't want to do it in his spare time, because that's work.  It's not fun, all it does is make him more productive at work.  Why would he spend his free time doing that?  That's why people pay for things that work properly.  They pay for things like debuggers.

    I don't understand how anyone in this thread could argue with blakey when he says that ruby is a worse language than it would be if it had a good debugger.  It boggles the mind.



  • Thank you. Another point people seem to keep missing is that I never chose to use Ruby in the first place. It was chosen by somebody else, and I was put on the project because they fucked it up and needed someone to pull it out of the toilet. And despite my hatred of the language, I've done that... although honestly most of the help they needed was in the "project management" arena, and had little to do with the language choice. (Although Ruby's lack of true threading or any thread-safe libraries have made some things really tricky.)

    But I'm sure as fuck not going to spend one millisecond of my free time improving Ruby when I could spent it actually creating cool stuff in better languages.

    And all that aside, regardless of your opinion of debuggers, Ruby's interpreter ignoring the proxy setting on Windows is a bug. Pure and simple. There's no excuse for that.



  • @blakeyrat said:

    And all that aside,
    Yeah?
    @blakeyrat said:
    And all that aside, regardless of your opinion
    Do go on...
    @blakeyrat said:
    And all that aside, regardless of your opinion of debuggers,
    Uh huh?
    @blakeyrat said:
    And all that aside, regardless of your opinion of debuggers, Ruby's interpreter

    Which one is it? Interpreters or debuggers? How is my opinion of debuggers at all related to the way Ruby handles proxy settings on BackslashOS?



  • @Kittemon said:

    @blakeyrat said:
    Say I had a physical disability, like I was missing a hand. Would you endorse a programming language that required the use of both hands?

    I'm trying hard to make sense of this metaphor.

     

    I'm struggling to understand that, too. Programming languages are virtual - they don't require the use of hands, they require words and symbols arranged in a specific sequence. Having a disability simply means finding alternative means to provide and manage the arrangement of words and symbols, and today's marketplace is rich in accessibility products. Many platforms and applications have featured accessibility controls by default for a number of years.

    I suspect Blakey's judging the merits of a language purely upon the quality of the development tools that exist to support that language. Whilst that isn't an accurate metric for the language's capabilities, I can't disagree that development environments do have a large influence upon language choices these days - particularly if throwing money at a good quality IDE mesurably reduces development times and results in deliverables of higher-quality.

    I think many programming languages of yesteryear are still focussed upon "what can this product do?" - Microsoft have at least addressed the prior stage of "how can we help people build their products more easily?" and if there were some more fuller-featured IDEs out there then perhaps there'd be greater takeup in other languages due to the development entry point being lowered.



  • @Cassidy said:

    I suspect Blakey's judging the merits of a language purely upon the quality of the development tools that exist to support that language. Whilst that isn't an accurate metric for the language's capabilities, I can't disagree that development environments do have a large influence upon language choices these days - particularly if throwing money at a good quality IDE mesurably reduces development times and results in deliverables of higher-quality.

    I think many programming languages of yesteryear are still focussed upon "what can this product do?" - Microsoft have at least addressed the prior stage of "how can we help people build their products more easily?" and if there were some more fuller-featured IDEs out there then perhaps there'd be greater takeup in other languages due to the development entry point being lowered.

    This.

     



  • @Cassidy said:

    I'm struggling to understand that, too. Programming languages are virtual - they don't require the use of hands, they require words and symbols arranged in a specific sequence.

    Yeah, tbe "words and symbols arranged in a specific sequence" is my disability. It's called dyslexia. Maybe you've heard of it. Good GUIs and good IDEs help me deal with it.

    @Cassidy said:

    Whilst

    Seriously? Christ.

    @Cassidy said:

    I think many programming languages of yesteryear are still focussed upon "what can this product do?" - Microsoft have at least addressed the prior stage of "how can we help people build their products more easily?" and if there were some more fuller-featured IDEs out there then perhaps there'd be greater takeup in other languages due to the development entry point being lowered.

    That is pretty much exactly what I was saying, yes.



  • @blakeyrat said:

    It's called dyslexia. Maybe you've heard of it.
     

    I certainly have.

    I once taught in a school for dyslexic kids for a couple of years. In that brief time, I've encountered:

    • all the jokes about dyslexics - many of those coming from the kids themselves
    • all the frustrations about seeing letters and symbols and not really recognising words
    • discovering and unlocking hidden talents (due to a deficiency in one brain area actually resulting in a tartling advancement in another)
    • different strategies for combatting the disability (coloured overlays, examination readers, sideways reading, etc).
    • idiots that try and excuse their impatience and stupidity under the "dyslexia" banner then attempt to claim extra tolerance and allowance
    • dickheads that believe themselves to be the only misunderstood dyslexic in existence and expect everyone else to tolerate their frustrated tantrums
    The real learning point for me was those that accepted they were different and moved on - they strove the hardest to be perceived as "normal", not letting anything hold them back. Oddly, they were exceptional in many other ways - talented musicians, poets, artists, mathematicians - and were anything but "normal". It was quite a humbling and enlightening experience, profoundly changing my outlook upon life.


  • @Cassidy said:

    tartling

    WHY IS THIS SO FUNNY TO ME



  • @Ben L. said:

    @Cassidy said:
    tartling

    WHY IS THIS SO FUNNY TO ME

    Am I tartling!



  • @Sutherlands said:

    What?  How long do you think it would take to add a debugger to Ruby?  I would guess a very large chunk of time.  I'm sure that blakey's company doesn't want to spend their money for him to develop a debugger.  I would also guess that blakey doesn't want to do it in his spare time, because that's work.  It's not fun, all it does is make him more productive at work.  Why would he spend his free time doing that?  That's why people pay for things that work properly.  They pay for things like debuggers.

    I can't tell whether or not this is meant to be ironic, and assuming so, at which one of us it's directed.

    @Sutherlands said:

    I don't understand how anyone in this thread could argue with blakey when he says that ruby is a worse language than it would be if it had a good debugger.  It boggles the mind.

    I'm pretty certain nobody has made that argument.



  • @Cassidy said:

    I once taught in a school for dyslexic kids for a couple of years

    What's your take on this crowd, whose basic approach seems to be to identify and remedy the specific processing deficiencies underlying the dyslexia, as opposed to searching endlessly for workarounds?



  • @Kittemon said:

    I can't tell whether or not this is meant to be ironic, and assuming so, at which one of us it's directed.
    What do you think ironic means?...



  • @PedanticCurmudgeon said:

    That's only when you have to deal with something noticeably different from what you're used to, and only because you'd rather complain about it being different than learn something that would help you operate efficiently.
    So, what you're saying is, we should think different? Just asking.

     


Log in to reply