|
|
|
Mon, 06 Mar 2006
Luck on Ruby and IDEs
So David (I'm not going to refer to him by his initials since they were mine first) poked fun at how insanely repetitive Java code can be with type declarations, variable names, casting, and getters all repeating the same phrase. You know, like UploadedFile uploadedFile = (UploadedFile) fileUpload1.getUploadedFile(); My colleague Greg Luck shot back with the standard "Java IDEs rule and Ruby needs one". Greg showed how he could use IDEA to produce 77 characters of code in 21 keystrokes. That's great and I use those same keystrokes nearly every day that I write Java code (which is starting to become slightly less frequent). But imagine you're coming at Java and Ruby as a newbie (I think from that perspective a lot these days). It's great to know that I could write Java that quickly, but first I'm going to have to internalize all of those proprietary keystroke combinations. I think I'd rather just type file = file_upload.file in 23 keystrokes and move on. Even if you have internalized the powerful IDEA shortcuts, there is a (diminishing but everpresent) psychological cost in having to translate what you want to say through a tool that says it for you as opposed to just saying it yourself.
As I said a while back, I agree that Java IDEs do rule and I also agree that Ruby would benefit from a high powered IDE like IDEA. But I also agree to some extent with Dave Thomas that Java needs an IDE because it is so verbose, while Ruby doesn't because one can do so much with so little. That said, automated refactoring support is something that I need in any language I work in because I never get things right the first time. For instance, I went through some severe pain this weekend when I renamed one of my core Rails models. I'm still waiting and hoping for a Ruby refactoring browser, and until then I'd still rather type p-u-t-s-<space>-"-f-o-o-" than p-s-v-m-<tab>-s-o-u-t-<tab>-f-o-o because I'd rather write in Ruby than tell IDEA how to generate Java.
[/links]
permanent link
|