Okay, I’m pretty tired, and have been away from home too long. I’m probably not emotionally 100% here, and I’m a little short on brain power, but do you know why java stinks? Besides the tedious syntax, I mean?
Because someone in the java world decided that configuration is a really cool idea and so we should get to do a lot of it. I’ve installed a lot of python and C and C++ on a lot of linux and windows boxes. I’ve *used* (but not installed) them on Unix systems. It’s always a breeze.
I install python in debian: apt-get install python and it just works. I install ruby apt-get install ruby and it just works. Likewise squeak smalltalk, awk, bash, and just about anything else you might like.
Java? No, that one is a stinker. Now I have to set a bunch of environment variables to configure the java to run on my system. Admittedly, it would be cool if the installer would do that for me (and I blame them for it). But having never worked with java, I’m not sure which variables to set, or to what. Do I point to a jar, a directory that contains jars, a directory that has directories named ‘bin’ and ‘lib’? Which one? Do I set them for all users, or just the server userid or just for me? Do I point to the JRE or the JDK?
And by the way, how do I know which directory is which? A friend at TFUG suggested dpkg -l was the ticket to find out what was installed by apt. Good point. I should learn to use dpkg directly, not just apt-get, apt-cache, and synaptic. I am happy that these tools do the hard work from me, but now that Java has intruded into my life I need to be able to get more detailed information about my configuration.
Well, when you don’t know much about java and don’t know much about sys admin, then it’s hard to know how to configure java. I guess I should just be prepared for installing java to be a configuration burden. I fear that java will be like a really bad girlfriend, in the way that python is like a really nice girlfriend. I figure that my java relationship is probably going to be all about java’s needs. I’ll be spending my time and money trying to make Java happy, and she won’t appreciate me at all in the long run.
Man am I glad I married a great girlfriend and not a high-maintenance nightmare. But back to programming languages and installs…
I have run Eclipse on my machine, and JUnit, and FitNesse, so I figured that Java was set up pretty well. That is until I got my hands on tomcat. Now apparently my java setup isn’t good enough. It has to be different for tomcat than for eclipse, I guess. What’s worse than a high maintenance girlfriend? Two of them, I guess.
Mind you, I’m not a java professional who is installing this Java and tomcat stuff so that I can run my whizzo professional Java apps. I am a noob who is doing this so that I can start to learn about java application development. I know a little syntax, and once spent a few weeks trying to write Java code, and that’s about all I know. I need a playground in which to start learning about web apps and Java.
Maybe I’ve learned the first thing that a java programmer needs to know: it’s a cumbersome bureaucracy and you have to ask permission and meet java’s expectations before you are allowed to do anything. It’s so not python, and so not ruby.
From docs, it looks like the same Java geniuses who decided that we should have to configure each java user’s environment variables were let loose on the application itself. This stuff is all driven by xml files and environment variables and the like. I bet it’s going to make it all rahter hard to test.
It’s bad enough to have to learn java, without having to learn a lot of xml file formats and configuration minutae. Can someone tell me how this ever got to be popular?
Again, it’s nearly midnight (and I’ve seen a lot of midnights lately) and I’m probably just too tired to be trying to configure anything. Or to be blogging for that matter. I just needed to rant a little.