One of the commenters of my last blog reminded me of yet another myth:
If you learned to code in the XXX dynamic language way you’d need to rely a lot less on your IDE.
And Joe Johnson wasn’t the first to say that to me. 🙂 Another tactic I can’t stand with the zealots in the dynamic language community (and any other religious communities I might add.) Attack your criticizer’s insecurities. This comment translates to, “Java has made you a sucky programmer, if you program in Ruby, you will no longer be a sucky programmer” Or, simply: “Ruby will make you an UBER programmer” or, even simpler “You are a sinner, you must be saved”. This is an awesome way to promote your language. Why? Well, because most of us programmers are geeks. We were laughed at in school for wanting to spend our free time copying game code from magazines. Even beat up. So, we are inherently insecure and eager to be accepted by any crowd.
The problem with this argument is, for me personally, what happens when I switch to Ruby and miss the productivity I had with my Java IDE? Does this mean I’m a horrible programmer and still a loser? You readers know how insecure I am. So, I just can’t switch to Ruby. When I fail at becoming the uber programmer I always wanted to be after switching to Ruby, my insecurities and closet-Rod-Johnson-loving, fragile ego will just shatter me and I will end up crying myself to sleep every night. Sorry no thanks. I already had enough heartache watching the biggest choke in NFL history yesterday. I can’t take anymore. The reality is that I know I am a horrible programmer and switching to Ruby won’t change that fact. At least if I stay with Java, others will have the tools to productively clean up the messes I leave behind.
Many are still scared by the dot.com bubble burst. Many were laid off at least once. So, its only natural to prey on these types of insecurities as well. The reality is, if you read the fine print, Ruby is still only a tiny percentage of the Java market. Even if it continues at this growth rate it will be at least 3 years before it overtakes Java. Which is fine for me as, about that time, I have to start looking for another job as, obviously, SpringSource will have put JBoss out of business by then. I’m fine with that. 3 years is enough time for me to collect the rest of my stock and get my wife back to work to take care of my ultimately unemployed ass.
The non-programmers of the world need a simple language to code in
Beautiful! You mean my 94 year old grandma can help me code? The problem with this is that this leaves a huge mess to clean up after the fact. That’s great for the $100-200/hour consultant out there cuz they can bill thousands of hours. Sucks for the company paying the bills.
Insegurança? » Tiago Luchini
Feb 05, 2008 @ 08:56:13
Feb 05, 2008 @ 09:35:28
Maybe RedHat should by SpringSource 🙂
And than you could reimplement Spring in Ruby 🙂
I agree with you that one language does not make you a better programmer than another one. This in nonsense. There is much more to programming than just a language. Architecture, design patterns, database knowledge, concurrent programming knowledge and much more. This all does not really depend on the language.
I also agree with you about the importance of a good IDE. Without Eclipse or Netbeans, programming would take a lot more time. Especially the refactoring is a time saver. I just had to change a Java method name that was used more than a 100 times in a project. Doing this with vi or Emacs would have been a nightmare.
When using Ruby (with Netbeans) I also use the refactoring and other IDE tools a lot. Although the Ruby support is not where Java support is, it is very good. I would never want to go back to Emacs or vi for Ruby. IDEs just save so much time. Even for dynamich languages.
Feb 05, 2008 @ 13:17:32
@Markus: Now why would I want to reimplement Spring in Ruby? Spring exists because Java is horrible at configuration/initialization (and EJB 2.1 sucked, but that’s another story). Hence my (and others) hoping that Java or another statically typed dynamic language comes around that offers structured syntax.
Feb 05, 2008 @ 18:13:01
Bill, that was a joke with Spring and Ruby 🙂
Also Spring now supports JRuby it’s not very Ruby like.
A statically typed language with the dynamic features of Ruby would really be welcome.
With Groovy you have at least the choice to declare types or not.