No, I'm not dead quite yet.. I just began working.This spring I finished 18 years of education. That's a hell of a long time when you come to think about it! I have mixed feelings about not being a student anymore, but at least I don't have to work on the Semantic Web anymore. Or who knows, people have already began to talk about a semantics enabled "Web 3.0".
I got a job as a Java consultant at a company called Objectware in Oslo. So after finishing my studies and saying goodbye to the sweet student life in Trondheim, I moved down to Oslo, the big city with shootings, the subway and housing costs from Hell. Life in Oslo is alright, but often chaotic, especially when the subway breaks down (which happens often!). Luckily I know quite a few people here in Oslo, almost everyone I went I rent a basement apartment close to the Objectware main office, so naturally I ended up on a project on the opposite end of the city. This is actually the most annoying thing about working, so much time is wasted moving from A to B (and back). Well, that and the fact that I have to get up early every working day, sigh.. Where are the teleporting devices they talked about in the 50s?
Excepting the monotonous 9-17 working hours, life as a full time consultant isn't so bad. I meet and work with a lot of very nice and talented people, both at Objectware and out on the project. As a consultant I also get to work with a lot of different projects, and a lot of exciting along with some not so exciting technologies ;)
I started working on the 1st. of August and immediately was sent out to a project. I'm working on the new Norwegian Interbank Clearing System (NICS) at BBS. A huge system with a vital role in the banking infrastructure. Needless to say, I was quite nervous arriving at the BBS "bunker" the first day! But it turned out to be a great place to work, with agile development methologies, great coworkers and great team communication. The system is being developed inhouse at BBS so I work with both BBS employees and consultants from several companies.
Beginning at Objectware I've moved from mainly programming PHP to using the Java programming language. I'm glad to see that enterprise Java development has moved a long way since I first looked at J2EE and Enterprise JavaBeans a few years back. At my project we have a focus on using lightweight tools where it is possible, and the Spring Framework is the centerpiece of our technology stack. I've used Spring before, during my master's thesis, and I find it a great tool. I love the way you can get up and running with using the dependency injection features and then utilize other Spring features when you need them.
I work on the web layer of the NICS project, and there we employ the Spring MVC web framework. This is a fairly easy to use request based web framework which is integrated with the Spring framework. I must say that web development with Spring MVC is a lot more painful and slow than PHP development, but it gets the job done. The trick to Spring MVC is figuring out the best way to do things, as there's so many ways to do the same thing. You always get something up and running, but I find myself pondering if this really was the "correct way" very often.
Testing is also a huge part of my daily work. Good unit tests really are a life saver, as a fresh developer on this project it was very reassuring to be able to test if my changes broke anything _before_ committing. On NICS we also use a Wiki-based testing framework called FitNesse. This is a tool that enables us to work together with business and requirements people to test if the system does what it was meant to do.
Lately I've also been working on developing tests for our Web UI, using the Selenium tool. Selenium is based a JavaScript framework that interacts and tests your web application by controlling your browser (triggers site events using JavaScript). It can be quirky at times, but it really is a great tool. I have found it useful for several things:
All our projects are managed by the Maven project management system. A great tool that provides a standard directory structure, standard building cycles, dependency management, and a lot more. Absolutely recommended!
Check out my del.icio.us links for integrating Selenium with FitNesse.
Finally I have reworked the back end of my blog. The previous version ran on version 2 of the Hybrid framework, developed by LynWeb. I built the new system from scratch as I wanted to code some proper PHP in between all the Java programming :) Also I have been sloppy in maintaining my custom blog module for Hybrid, so it was getting somewhat out of sync with the Hybrid 2 core code. By the way Hybrid 3 is currently under development at LynWeb, and it is looking good! So I might have to move back to Hybrid when it goes gold.
This autumn I finally broke down and installed World of Warcraft. I've tried to keep away from Blizzard games since the Diablo 2 craze some years back.. Damn you Blizzard for making such addictive games! I'm currently playing my level 60 horde rogue at the European Venture Co PVPRP realm. I've joined the guild of a coworker of mine, called Punad. WoW is a bit too time consuming, but it is damn fun to play :)
And now... well right now I'm sitting very quiet writing this on my fat Dell laptop (fat, as in big and lumpy) while baby sitting my brothers kid. I'm sitting very quiet as I really have no idea what to do if he wakes up :p. Why don't kids come with a Java interface anyways? Not to speak of proper logging and exception handling...