

Rant YC!  Sacrificing a CPU to the Sun Microsystem gods... - iamelgringo

So, I thought I'd inaugurate RANT YC!  <p>Allow me to start by blowing off a little steam about my techno-angst, and hopefully get a little "I feelz ya, Dawg" from my fellow hacker/founder peeps.<p>&#60;RANT&#62;I'm taking a survey of Web development technologies class.  And, we're in the middle of our final project:  
Set up and configure a Java development environment based on J2EE and J2SE on a Windows system, Set up and configure a 3 tier system using Apache+Tomcat and Oracle Modify a JSP, Servelet and an applet that connect to an existing Oracle database and do some simple querying and updating of a table.  <p>So, all in all, I spent a good two days just trying to get the setup correct, and that's with step by step setup instructions.  I went so far as to do a clean install of Server 2003, install the appropriate JDK's for J2EE and J2SE, configured Eclipse, and then set up Tomcat and Oracle.  It was a freakin nightmare.  Hours upon hours spent getting the Classpath configured correctly for both J2EE and J2SE (they install to different folders, one to c:\Program Files\J2SE... and C:\Sun\.)  Or, wanting to put my foot through my monitor in frustration, because I'm trying get a servelet to simply run on my server.  I spent hours trying to decipher opaque error messages in Java only to find out that my version of Tomcat didn't work with my particular JRE.  So, I had to compile my servelets with a -target 1.5 flag, otherwise, they would crash. Sigh...<p>I'm doing this on Windows for crying out loud.  Why do I have to sacrifice a virgin CPU to the Sun Microsystems gods and do incantations over my OS just to get a friggin development environment right?  Hasn't Sun heard of an installer?  Isnt' that what they are supposed to do for you?  Configure things?  Why do I have to go in to my environment variables and set up my classpath by hand?  Why doesn't the installer do that for me?  And, why do I have to manually configure two separate .java.policy files and make sure that they are the same, before I can run a friggin database applet on my dev box?<p>I went through similar things to update my JRE for Firefox on an Ubuntu box last year.  Hours on hours of downloading, extracting to folders, only to find out that Firefox and Sun don't like each other on Ubuntu much.  I was never able to get it to work.  <p>Why, oh why is Java so popular?  I don't get it.  I thought that Enterprise was about making money.  All this time spent installing and twiddling with Java on a dev box and on a server is just money down the toilet as far as I'm concerned.  I'm planning on founding my startup next summer when I'm done with school.  And, while I've rather enjoyed this class, one of the biggest things it's taught me is this:  Stay away from Java.  It's black death for a startup.<p>And, can I just say that the next time I see anyone on the development crew for either Django or Rails, I'm going to give them a big ole hug.&#60;/RANT&#62;

======
Tichy
The big mistake you made is to install J2EE. Just install JDK and Tomcat, and
you will be fine. J2EE is weird indeed - it used to be OK, you could download
just the things you need, but I guess some Sun managers decided to make it
bloatware and abuse their users, so now it is some indescribable blob. I don't
even know exactly what it is - just don't install it, don't use, I can only
repeat that!

You need some J2EE libraries, like the servlet API, but I think you can use
the one that comes with Tomcat.

Also, I think there is some weird bug in the latest Tomcat versions, so the
recommended version at the moment appears to be 5.5.17 (I am still using Java
1.5, though, and not yet Tomcat 6).

I have never heard of the java.policy files - you chose the wrong path and I
would recommend you backtrack and relax. It actually is very easy...

As a sidenote, I found it very hard to set up Rails, too. The automatic thing
didn't work (presumably user rights issue), I wasn't sure if I needed a db
driver and went looking for one, and so on. I only successfully installed it
once I switched my computer to Linux.

~~~
iamelgringo
| The big mistake you made is to install J2EE.

I hear ya. But homework requirements and "the smart way" don't really coincide
often.

| have never heard of the java.policy files - you chose the wrong path and I
would recommend you backtrack and relax. It actually is very easy...

.java.policy is essentially setting applet permissions. It wasn't that bad, it
just was the straw that broke the camels back.

~~~
Tichy
Are you sure you need to install J2EE? You don't need the sun J2EE server-crap
to develop J2EE applications! J2EE is two things, a specification with
implementations by Apache, Bea, jBoss and others, and also an implementation
by Sun, which probably sucks.

Perhaps you could use jBoss instead of the Sun garbage. I only ever have used
Tomcat, though, so I can't really comment on the Application servers. OK, used
Bea Weblogic, too, and recommend against it.

Also, what do you mean by applets - why do you need Applets for J2EE?

~~~
iamelgringo
Per the syllabus--"Project requirement: Install J2EE"

I know that applets are as a rule pretty lame, but part of the project is to
access and use the database via a jsp, a servelet and an applet.

Project is actually done and finals are next week.

------
andyn
I've more than once found myself in this sort of "recursive version hell". All
you can do is learn from it.

> All this time spent installing and twiddling with Java on a dev box and on a
> server is just money down the toilet as far as I'm concerned.

Unless you're being paid by the hour to set it up ;-)

> Firefox and Sun don't like each other on Ubuntu much.

This should be better now - if you search the ubuntu forums or one of the
associated ubuntu wikis there should be an install guide somewhere, as sadiq
says, it should just be a matter of installing a couple of packages.

~~~
iamelgringo
| Unless you're being paid by the hour to set it up ;-)

Agreed. I'm trying to think like a business owner, however. As a contractor...
that's a different story.

| This should be better now...

It is. I eventually found a script that automated the whole process for me.

------
tlrobinson
While we're ranting about Sun, my university's old-ish (1990s?) big (8 SPARCs,
32GB RAM) SunOS (before Solaris) time-sharing machine that they have for all
the engineering students to do projects on doesn't even have a freakin'
Subversion client on it. I spent the better part of an hour trying to compile
it before giving up. Shouldn't they be encouraging students to use source
control? I guess I take these things for granted.

~~~
iamelgringo
I know, I've been talking to my teachers about needing to integrate some form
of source control into the curriculum. To not teach that is absurd.

------
tx
Your post is the answer to your own question of why Java is so popular in the
enterprise.

Because colleges teach students to deal with it. By the time you graduate,
you'll know how to install J2EE on Windows, see?

Yes, enterprise is all about saving money. And they will save a ton on
recruiting because there are plenty of CS grads who are "java-trained".

------
sadiq
Mmm, my experience may be a little different to yours but the package manager
in Ubuntu/Debian made things trivially easy for my setups.

An apt-get of JRE, SDK and Tomcat coupled with a small detour via the web to
get the MySQL JDBC connector, took about two minutes in total.

What required you to manually update your JRE on the Ubuntu box?

~~~
iamelgringo
I'm sure it's better now. This was a year ago or maybe two. My classes are all
online, and they require more recent JRE's to be installed for their Java
based online classroom environment to work.

------
Zak
I don't think that J2EE on Windows is an environment most hackers would work
with by choice. Enterprise software, as I understand it is not intended to be
simple to install or use; it's intended to be set up in a custom way every
time. The Java language is similarly annoying, requiring lots of boilerplate
before you can do any real work.

------
tuukkah
This story reflects the cross-platform, proprietary history of the Sun JDK.
Now that it's free software, it's all going to be a simple apt-get away, if
not part of the default distro installations. Naturally, Microsoft and Sun
still won't co-operate.

~~~
iamelgringo
| Now that it's free software, it's all going to be a simple apt-get away

I certainly hope so. I'm afraid I won't be around much to find out, though.

------
jgrahamc
I already inaugurated Vent YC! <http://news.ycombinator.com/item?id=70475>

