|
|
So, today our new build process was set up for the main project I'm assigned to. For those of you programmers out there, it uses Maven and Hudson. Hudson is set up to do integration testing using a subversion post-commit hook. None of this is too out of the ordinary for Java. The "best" part is that, even though we could just use Maven to build things on the server side, we're going to also use it on the development side. And that's where the problems start. We use Eclipse as our IDE. Eclipse's Maven support is practically non-exiseant. Due to this, the contractors decided to go with the maven-eclipse plugin for Maven instead. Big problem: the maven-eclipse plugin is a terrible, half-ass piece of shit that needs to die in a fire. It generates "generic" projects unless you do lots of extra configuration to make a Dynamic Web Project. And even then, it still doesn't support Enterprise Application Projects, which up until yesterday, was how we deployed things to our test environment. In other words, I lost my two-click deployment. Now, I have to manually run Maven from the command line, then load the oc4j console that listens on port 8888 (side note: I can launch oc4j from inside Eclipse or through a batch file). Which dies with a Java OutOfMemoryError: PermGen space if you try to Redeploy the existing application. Needless to say, I'm fairly pissed off at this. Rather than having one problem (having to manually deploy to the QA server), we now have... 5? 6? What we gained: + Automatic deployment to QA - A lot of headaches from the way Maven does things What we lost: - Automatic deployment to Test (which happens considerably more often than to QA) - Time, lots of it - An actual working test environment I'm actually tempted to deploy straight to QA, since I can have Hudson do that far, FAR, FAR easier than I can deploy it to my own machine. And yes, that is a gigantic WTF.
So, I was at work today, trying to debug a problem with a JCS cache not being initialized. Google wasn't being any help. So, on a whim, I decided to ignore the documentation's practice of putting the part after the = sign in the configuration and switch them all to single lines. And this fixed the problem. So, what does this have to do with the title? Simple: English Majors: Don't apply formatting rules to code because you just might break it! For reference, the JCS pages use the performatted text tag for examples. This means the line breaks are in the actual page source, not added automatically by HTML.
Here at work, we have a large project that uses a large amount of Javascript. We literally have (Java) JSP pages that are nearly 3000 lines long and output HTML several hundred to thousand lines longer than that. That's not the half of it though. We literally have forms that are constructed from HTML that exists hidden in the page that we clone into the DOM, populating it with data from the database via AJAX calls. This is, quite literally, the worst website I've ever had to work on. That's saying something, considering how old and horrid VGMusic's Perl code was (is). AJAX is fine for simple operations. However, it is possible to go overboard, such as populating forms that use tables nested 3+ rows deep and requiring that we write our own jQuery templating plugin to do it. Edit: Me and my big mouth. After trying to figure out the best way to change the IDs on a 11x64 table, I've been asked to update the templater plugin to do it. GAH!
So, I ran into a bug at work today while trying to get Eclipse and OC4J working together. In particular, it was this bug. This bug will be two years old in less than a month. This bug takes a one line fix in a text file (XML actually). Not only that, but someone actually created a patch for the devs to apply and they still haven't done it. What the fuck is up with that? Eclipse has had two major releases, each with 2+ point releases since this bug and its fix were initially reported. If I displayed this kind of incompetence at work, I'd be fired. P.S. If you want to see the building I work in, click on the address, Click Street View, then rotate to the right about 135 degrees... or rotate 90 to the left to see the Michigan capitol building.
I was trying to set up my home development environment like my environment at work, so I downloaded the Java EE + JDK (AKA Java Enterprise Edition + Java Development Kit) installer from the Sun's Java EE download page, because that's the setup we use at work. I found out a major problem with this setup... my browsers can no longer find the Java plugin. It turns out that Java EE installs to C:\Sun\SDK\ by default, rather than C:\Java\ and doesn't install any registry keys to find the new install. For that matter, it doesn't seem to install the actual browser plugins. It also, for whatever reason, doesn't add the directory that contains java or javac to the path. Granted, I planned to use Eclipse for this sort of thing, but still... Oh, and Netbeans uninstaller also wouldn't find the JDK... I'm beginning to think I should have kept my JDK install and just installed Java EE alone. All I really need EE for is the Glassfish server. Update: Now that I think about it, my machine at work also has a separate JDK installed in C:\Java, which is probably why both work.
Despite only starting on Monday, I've already noticed that I spend a lot of time in meetings. Now, I'm only in from 8:30a to 5:00p on Monday, Wednesday, and Friday... and this week, I wasn't in until 9:00a on Monday. Monday, I had two meetings: 10:00a (project) and 3:30p), Wednesday I had three: 10:00a, 11:30a (lunch, BYOL, unpaid), and 3:00p (project). Friday I had two meetings: noon (lunch, BYOL, unpaid), and 2:00p. BYOL = Bring Your Own Lunch The Monday 3:30p and Friday 2:00p meetings happen every week... On Monday, I was literally pulled into a project meeting an hour after I started my first day. My project group is going to be working out of office this week, so I probably won't have any project meetings. Despite this, I already know of two meetings in addition to the two ones I mentioned above: a Monday 10:00a All Developers meeting, and a Friday 11:30a BYOL unpaid lunch meeting. P.S. I don't think I like BYOL unpaid lunch meetings.
|