Java: the roadtrip
December 15th, 2004 by boon
Since the beginning of the year, I’ve jumping in and out of the Java soul-searching bandwagon, desperately looking for fulfilling frameworks to build my oh-so-scalable and robust core-of-all-cores for highly portable and deployable applications. Don’t ask me how I got started, because I don’t even remember. At this point, what I thought to be a really great design for my latest web project revealed to me that I had indeed locked myself into legacy code yet again. Oh, the horrors!
Ok, well at least I realized where I went wrong. The past few weeks have been a brain-numbing experience of daily scouring of web forums and articles on varied topics such as security, object persistence, services, and more web frameworks. The only comfort I have is that I’m glad I did make the choice to use frameworks from the very beginning, and Struts in particular. What pushes me to to keep searching is that I’m not so convinced I’ve found the best way of doing things.
What did I learn out of all this? Out of my ambition to realize the utopian agenda of being able to push out high quality applications with minimal effort, I am still alone. Will the management buy into this? How will I motivate our developers to conform to excellence? The sad part is that I have very little to show, but a lot of stories to tell (from all that reading)… and no one really knows what I’m doing this for. All that effort gone to waste.
Never has there been so many different projects and frameworks based on just one language. Just browse the Apache Jakarta pages. It’s almost feels like you’re shopping for frameworks and you could only buy one product, so you have to read all the labels. My browser search history contains much of the “framework X vs framework Y” type.
I still persist that if you do build applications, you shouldn’t just start by writing code, in case there may be a better way of building that application. So, that’s how I always end in a vicious cycle. I’m afraid to start writing code.
In the end, I choose the middle ground to claim some sanity. Some legacy code is fine. It’s really probably not going to be touched for the next 10 years or so, so it really doesn’t matter that it doesn’t play so well with other technologies. And I probably *have* taken advantage of the frameworks that I’ve chosen to adopt, since that has saved me time and again when bug fixes need to be addressed and I can come up with a patch in 10 minutes.
Just don’t leave me alone to do my own thing, or I’ll end up going on another random roadtrip here.