So Much to Learn, So Little Time

How do you balance productivity with learning?
Monday, January 23, 2006

I have a lot working against me at work. Aside from being in a new environment with new people, I am trying to be a productive member of the team while working on an application built on a host of new technologies and frameworks. I love that I get to learn new technologies, but I get the sense that I am going about it all wrong, hacking away at new code in a copy-and-paste manner, instead of learning the technology and applying it as I see fit. I don’t feel like I’m learning the way I’m working now – or maybe I’m learning just enough to get by. Makes me feel like a fraud.

Here’s what I am tackling (at least I’m familiar with Java):

  • Hibernate
  • Spring
  • Tomcat
  • Tiles
  • Velocity
  • ActiveMQ
  • Javascript/AJAX
  • XStream

The last one is an XML object serialization engine produced by ThoughtWorks, a consulting company led by some of the most well-respected names in software engineering. Their XStream library is sadly under-documented, which frustrates me beyond belief. My struggle Friday afternoon was trying to get their library to play nicely with Hibernate’s persistent collections. My solution was to throw in a new converter that ignored all of the Hibernate data. It works, but it makes me feel so dirty.

The most frustrating part of all this is that I feel like I could be so much more productive if I were doing things “my way,” ignoring these silly libraries that are supposed to make things easier for you.