Everyone’s Technology is the Best
Great stuff in reliving the Mac vs PC debate in Because They All Suck, but I have always looked at it generally as screwdriver A vs screwdriver B. Specifically for my line of work, IIS+ASP (and more recently ASP.NET) vs Apache+Tomcat+Java/PHP/whatever or SQL Server vs MySQL, etc. Same goes with PC vs UNIX. Who really cares? I was also working on writing up a whole way-too-wordy post about the death of Java and why Java sucks, etc. but the heck with it.
Let me say it again – who really cares? What can you produce with your screwdriver?
I have had a bigger background using MS technology, but two jobs ago I did about 8 months of Java programming on Windows servers using Apache and Tomcat. It wasn’t really that bad – a little beyond what I usually have to do to build web-based software apps, but truthfully, I REALLY enjoyed going to the other side with technology. Mind you, the boss was not at all interested in the who knows how many different frameworks (Struts, JSF, Hibernate, etc.) so I had the joy to do some programming in Java about as cleanly as possible. Let me say it again – it was quite refreshing. I feel I’ve learned a lot more about programming doing something different. Heck – I wish everyone would go to the other side every once in awhile just to get a different perspective! Eclipse (actually I used the much more heavy Rational Application Developer) has some nice features … I bet VS.NET might even have some of them if I try to find them. Apache+Tomcat was QUITE different than IIS – words just don’t describe.
I really would like to find one particular project I did (Java-based web reporting that calls SQL Server stored procedures to populate the reports – with color-coded “discrepancy” flagging for cells and a pretty UI to let a user choose the inputs), but I’m not sure it would be kosher with the company. Anyway, there’s just not any easy set of info I could put up about it…
But I bet I could just as easily do the exact same app in .NET. And isn’t that the point? They are JUST screwdrivers/tools. Sometimes we are mandated what we have to use. A good programmer won’t care what tool she/he has to use. Almost every job I have started I have had to learn some new technology (sometimes a programming language, sometimes something I need to integrate with) – and I really enjoy that. I would much rather choose to learn than to stop learning.
One last point – the job I had back in Ohio was on top of a MS-based real-time historical database called PI (OSIsoft RtPM now)… really a great system (tracking real-time values for hundreds of thousands of different signals – primarily control system data but they had an enormous set of connecting interfaces). They really had the market in what they were doing – it just worked so very well. Administration used to be more command-line based but went the MS way – more GUI-based. Well, it was put in at most of our clients by the Engineering side of the corporations – not IT. Some of these clients’ IT organizations were strongly against using MS servers for mission-critical systems (like these databases were) – but as the supervisor at this particular client would say, it just works and we can keep the same uptime as your servers and who else has something like what we have here? Really no one had anything that compared. The irony – I hear they are now working on building a Linux port too
But ____ (PC/Mac/Java/.NET/IIS/SQL) sucks! That’s fine - your technology is the best for you… so Just build something and stop complaining.
Addition: I just read Kathy Sierra’s post Are our Tools Making Us Dumber? - that’s totally right-on to what I am thinking here. Step out of your toolbox - and go into another one. You have to learn how they do it … especially on the Apache+Tomcat side. You really have to understand it before you use it, especially when (like I did) no one else is there to build the production environment but yourself. BTW - check into her Head First series of books. I never before had heard of them until the Head First Java I needed for that Java job. Radically different concept for books - but I liked it a lot more than anything else.