Reading through a blog I found on TSS yesterday Stiff asks, great programmers answer came up with a great and in my opinion utterly true paragraph from Linus Torvalds:
For example, I personally believe that “Visual Basic” did more for programming than “Object-Oriented Languages” did. Yet people laugh at VB and say it’s a bad language, and they’ve been talking about OO languages for decades.
And no, Visual Basic wasn’t a great language, but I think the easy DB interfaces in VB were fundamentally more important than object orientation is, for example.
I have to say I think that Linus is spot on. VB for all its sins, and there were plenty, really changed the development landscape for the better. I really don’t see Java being around had Microsoft not spurred the market on with VB. I for one would have lost interest in programming had VB not come along; prior to starting on VB1 I was coding in COBOL, and utterly hated it. Now, this wouldn’t have been a loss to the industry, but I’m glad that VB made developing fun for me.
And so to the point: Maybe VB, just as RoR is at this moment, could teach Java or more particularly Java developers a thing or two. Sometimes we aim for the beautiful, when the beast will do. Worrying sometimes on how well structured and factored our code is detracts from deliverables. Yes, the code should be easier to support afterwards and I have to say one should always have an eye on that when developing, but maybe we can be to finicky about these things.
A case in point; I recently moved to Singapore from London (following my wife’s career) and I got head hunted by an international recruitment company that I had previously done some work for (in VB), for a client of theirs. I turn up at their office and some guy pops his head round the door and says; “You’re the guy who developed XXX (names changed to protect the guilty), wow, its great and we still use it.”. Now XXX was developed 8 years ago in VB6 and is the main application this company uses globally. It hasn’t been tweaked, changed or amended since the day 1.2 went live some 7 years ago.
The thing is XXX was developed on a wing and a prayer, it took 2 months and one developer cum BA cum tester (me) to build it. Originally slated to have a 5 month development plan, my wedding and the customer’s desire to get it out there squeezed it down to just two months. Out of the window went style, beauty and elegance and in came a lot of slog.
I can only take from this that perhaps sometimes we can focus on things in Java that mean more to us as developers than the end product. Maybe that is what keeps it fresh and interesting to us as individuals, but maybe sometimes we loose sight of the end goal.