Man with an Open Heart
I'm a firm believer in seasons of work for a specific job. The season of writing for me is coming to a nice close - this is my last editorial for JDJ (though I still have reviews that I have to get on with). It's been fun watching the Java world open up before me during the working day, blogging something, and then enjoying the feedback. I've enjoyed the feedback, the e-mails, and even the criticisms (thanks JP!). It's from these exchanges that I learn and learn some more. There's only one mistake and that's not learning from your mistakes.
There have been days when I look at all the work I've done and wonder if any of it was worth it. In the end, no work is wasted, just reused, relearned, and refactored into something better and more robust. This is the ever-continuing journey of the software developer: being a craftsman and getting a feel for crafting software. It's a discipline and it takes time to perfect. For me, personally, I don't want to be the Java celebrity; I want to be a Java craftsman. Even if it's just an interface file, I want it to be an interface of quality. Now the suffering for quality is usually not apparent to others; it's your journey so make of the situation what you will.
For me this journey has been fun, painful, and humbling. The same goes for the craftsman in me. Don't be afraid to put your hand up and say you don't know something. I've done it many times. There are 23,000+ methods in the core Java API. Do you expect me to know them all? No, that's why the API documents exist. It's a journey that's supposed to be fun, as well as painful once in a while. The light in the distance is just waiting for you to run toward it and learn something new. This is what makes Java such an interesting journey for me.
As a musician it took a long time for me to accept that all those hours of practice, bleeding fingers, and painful cramps in my hands were for just one moment in April 2001. That night the heavens opened and the golden trumpets sounded, and it was like gold pouring in from above. All I was doing was playing guitar and singing, but it felt as if everything had led up to that moment, a moment I will never forget. I'm waiting for that Java moment. When the heavens will open again, all this work, learning and coding, will be used in something that will remain in my memory forever. No one can steal these moments away from you; hold onto them. It's fun. Nothing ever happens by accident. I often questioned Alan Williamson why he wanted me to be J2SE editor and he simply said, "There was just something." I trust these moments of opportunity when crossroads appear. They have to be embraced and followed, as you don't know what is behind that door.
Sometimes people need a change in direction. Not so long ago I wrote about handing in my notice with no job to go to. I'm now about to start a new position that I'm getting really excited about. In fact, it feels like everything I have been learning will be poured out in this new position. If the trumpets sound, I'll let you know.
If what you are reading sounds like a load of waffle, you're entitled to your opinion. Once I was involved in blogging, both reading and writing. I've backed off a lot now. The main reason has to do with the personality of a blogger. Lots of them hide behind their blogs, using them as a smokescreen. Those who have read Bileblog know to take it with a pinch of salt (though I respect what Hani says some of the time). Other blogs have just turned into a bitching session. It's one that I don't enter into. Over the past year I've become more guarded. I'm in a position where my words could be taken and misrepresented, and these positions cannot be abused. Just because you are writing a blog doesn't mean that your professionalism should be left at the door along with your shoes. Personality is a dangerous thing and people's personalities can rub off on you very quickly indeed. I've become really picky about who I hang around with. I've given reading blogs a rest (with the exception of a few) and am concentrating on what I should have been concentrating on, coding in Java.
So, brothers and sisters who program Java, be true to yourselves. Code to a quality you'd expect to see from others. Be on hand to help. In Software Craftsmanship by Peter McBreen, he focuses heavily on the role of journeyman developers who train the apprentices and the masters who train the journeymen. Build your network of contacts. I use LinkedIn a lot and it's very helpful. At the end of the day you are only as good as the code you write.
Last, I cannot stress the importance of your own personal development. Learning is a constant process. Whether you do J2EE or J2ME, there is still time to delve into the core API and cover areas that you may not normally cover. For me it's been Swing and AWT. I'm a server-side developer so I've had no real use for GUI applications. I've been forcing myself to learn this stuff as I can just see a time when I'll need it. I've been playing with Bluetooth/J2ME development as well. I have a review coming up for the Sony Ericsson P900 smart phone, so this has been a good chance to learn something new. If you don't enjoy getting up in the morning, perhaps it's time to rethink where you're at.
About The Author
Jason Bell is a technical architect for a business intelligence company in England.
He is also involved in a number of open source projects and reads the API docs.