This is more of a rant than a useful discussion, so if you’re expecting the later go write yourself a Hello World ;-)
In 2002, for a class project I had the option of working with either Microsoft Foundation Classes (MFC) or Java. After having worked with Windows SDK in the last semester, the decision was clear. Anything that didn’t come from Microsoft was going to be OK. So I started reading this book – The Java Programming Language and that is when it happened. I fell in love with James. James Gosling that is. How funny, how intelligent, how brilliant this man might be I thought. If it wasn’t for my employer who made me write Java Server Pages (JSP), I might still have been in love. I’m not quite sure, but I guess it had something to do with the fact that my job involved staring at the “Null Pointer Exception” in the Apache command window for four hours a day, that brought my love story to an end.
In 2003, I was forced to move from Java to .NET. I wasn’t ready for the separation, but the HR lady would hear nothing of it. What did I expect? Human Resources and Programmers are a match made in hell. So there I was, staring reluctantly at my first .NET program. I pressed F5. Everything worked, I didn’t see a “Null Pointer Exception”. Wait a minute I thought, what about the web server? I don’t remember starting it, or installing it, or reading the ten page documentation on how to configure it. I cried. My life as a programmer was over. I was reduced to a Visual Studio puppet – my only task henceforth would be to click F5. I starred enviously at my friends who after two days of debugging had discovered that their program was crashing because they were using JDK 1.3.2 instead of JDK 1.3.1. Oh how I missed being a programmer.
I’ve missed being a programmer for the last seven years now, but I seemed to have survived the million F5s and the zillion “Microsoft Programmer” jokes ;-) Last weekend I started a little hobby project with my husband and a friend – both loyal to the sun, who of course sold their souls to the oracle. The project was to be in Java, no discussion needed there.
So I installed Eclipse. A Java editor that looked professional and was free. Was I falling in love again? Maybe. I then needed to install some Google plugins for our project – what hobby project is complete without involving Google? Ok, it didn’t work, it couldn’t find java. Ummm… why? Well turns out because Eclipse uses its own java compiler or something (don’t ask me!), as javac clearly didn’t exist on my machine. Interesting. So after installing Eclipse I install the JDK! Fine. Subversion crashes. Ummm… Why? Don’t know again – some clash apparently with the java version and the class paths. I found myself digging through the Environment Variables and looking for issues with the “path”. I’d forgotten all about “Environment Variables” in windows, I was hoping they were dead by now. Yikes. Anyway, after it was all sorted out I created some beautiful java classes only to eventually discover that I had the wrong version of Eclipse to write JSP files!
As you can tell, I am not a good java developer. I couldn’t even install the right version of Eclipse. I gave up, someone would have to write the JSP for me. Neither my husband nor my friend seemed too keen on writing that JSP – not sure why. My husband got stuck with it as my friend had a genuine reason, he was a “server side programmer” so he couldn’t be expected to write front end stuff. As a Microsoft developer, you do not have the liberty of making such statements. If you did, it wouldn’t be long before you heard – “Geez man, my 5 year old son can create an ASP.NET website – all you have to do is click F5 !”