"What does not destroy me, makes me stronger." Friedrich Nietzsche


I was brought up to believe that anything worth doing is worth doing right, and that hard work is the key to success. Over the years I've learned that doing things right while working diligently is usually the best approach, but working too hard is often less than smart. If anything, those who work the hardest are doing too much work for a general lack of thinking things through beforehand.

In the software development realm, working too hard is often counterproductive. It leads to health problems, can hurt relationships and careers, and can end up leaving you in poor financial shape. I've worked myself into the ground on far too many projects only to discover that I was in worse shape afterwards. During the process I usually believe that really hard work is equivalent to doing things right. It's not. Doing something right means thinking it through and finding the best approach before starting the real work. Working too hard just means that you started work before fully thinking it through.

As an example, prior to joining Research In Motion® (RIM®), I had been thrust into many projects that were considered difficult if not impossible due to timeframes and objectives. Each time I came through exhausted and pretty messed up. I also reached or exceeded my objectives in every project. One project in particular lead to working 460 hours each month for two months, then far too much thereafter. A better approach would have been to refuse to do the work. Had I taken that approach, the company and many of its current and ex-employees would be far better off today. Extremely hard work does not directly equate to doing things right. The first stage of doing something right is to think everything through and plan accordingly.

For BlackBerry® device software, you can work too hard or you can work smart. Working too hard means putting together massive amounts of custom code and resources, and having heavy reliance on the network. That's not smart. Research In Motion has already written massive amounts of code in the form of their BlackBerry API and their implementation of the JavaTM Microedition API. Taken as a whole, there are thousands of methods available to do most everything that can be done in custom code, often better. There are also many ways to design your application to avoid taxing the wireless network. If you work smart when creating your applications, you will be able to quickly put together world class applications without ever needing to break a sweat. Nietzche had it wrong. Being almost destroyed rarely makes one stronger. Being smart does.

As always we are interested in your comments, suggestions, letters, and anything else that you feel would be of benefit to our developer community.

Please feel free to email me at .

Richard Evers

Editor, the BlackBerry Developer Journal