Even before vacation kicks off (so I can try to build up my collection of blog postings once more), I wanted to get a post out there about how I’m feeling about the technology transition I’ve been making recently.
I recently wrapped up the bulk of my involvement with the job I had before I started at ALTERthought. I’ll still be available for training and consultation purposes. I no longer have weekly visits scheduled. I’m not responsible for getting anything implemented, etc.
That in itself is a good feeling. I am proud of the product I produced. The project is being maintained by a developer who had no exposure to Java whatsoever 6 months ago.
What I have a good chance of remembering as clearly as anything else is the last feature I added. It took me about six weeks of calendar time to implement something I felt that I could have done with Rails in about two days. To be clear, there were false starts, and I only got to work on the project for a couple of hours at a time.
It makes me sad to think, like a best friend from elementary school, my most pleasant days with Java web development might be gone forever. If we meet again, it likely won’t be in the best of circumstances. My old friend will have been on a two-year bender, hanging out with shady programmers who maybe aren’t out explicitly to corrupt him, but perhaps they just don’t know any better. But perhaps it was all my fault! I would never call on him to go out to the bar with me, where we would used to talk about how we wanted to change the world. Very sad, indeed.
Rails and AJAX
Rails is getting my calls, these days.
I’ve gotten a lot of exposure to the AJAX and Rails mixture recently, and it’s one powerful combo. Rails has server-side elements that make AJAX easy to use (like RJS templates) and view elements (e.g. form_remote_tag and link_to_remote) that also make it easy to integrate Prototype-based AJAX calls without worrying about “how to do” AJAX. There’s this feeling I get as I dive more deeply into Rails that once I work with Rails as much as I have with Java, that the (ed. note—the rest of this sentence is lost forever.)
For the record, this project will be at one person week on Thursday, and is already five use cases deep. I’ve also completely rearranged the domain model twice. A similar change on a Java project will probably take me a few months calendar time to get right.