LWUIT 1.1 for Java ME Developers

One of the problems with Java ME applications containing more advanced UI components have been that it is really painful to have it rendered consistently across different platforms and devices. I’ve used to implement my own set of practices on displaying lists of tweets in Twim or todo lists in Mobile Task Manager. Now I came across a nice looking UI library for Java ME called LWUIT.

Posted using Mobypicture.com

LWUIT supports such nice things like theming, transitions and animation. It also includes new UI components like TabbedPane and Dialogs.

I just got a new book to review, LWUIT 1.1 for Java ME Developers, written by Biswajit Sarkar. If you think that LWUIT could scratch your itch then I’d recommend on having this book on your desk as it works pretty nicely as a reference as well as good introduction to the whole library.

Book contains lots of emulator screenshots which help to understand the concepts very well. This combined with lots of sample code makes it really easy to learn all features of LWUIT library. Only one oddity is that it’s referencing to Sprint SDK where it could as well be the Sun’s original WTK but that doesn’t really have any affect on code samples.

Book’s first chapter is a good introduction to the library. The following chapters explain the default components and then there is one chapter on how to create a custom component. Last chapters dig into resources, LWUIT designer, themes, animations and transitions, painters, effects and logging. The index is also very complete which makes the book work well as a good resource in the bookshelf even after the first reading.

Check out the publisher site for more information about the book.

Theory of Broken Window

I just finished up reading the Pragmatig Programmer, a book written by Andrew Hunt and David Thomas. This book falls in the same must-read category as other less technical books such as Code Complete or Joel on Software. This is a book that should be found from every software developer’s bookshelf.

Book is filled with great ideas and advices and I’d like mention one random wisdom from the book. It is the Theory of Broken Windows. Title comes from example:

Consider a building with a few broken windows. If the windows are not repaired, the tendency is for vandals to break a few more windows. Eventually, they may even break into the building, and if it’s unoccupied, perhaps become squatters or light fires inside.
Or consider a sidewalk. Some litter accumulates. Soon, more litter accumulates. Eventually, people even start leaving bags of trash from take-out restaurants there or breaking into cars.

It is frighting how well this theory works for the software. If you or your team starts to close their eyes on a bad design decisions or don’t keep fixing the bugs as they are found then the system starts to degrade very rapidly. Every software system degrades when time passes and that is why software needs constant maintenance and refactoring. I would say that the key element to prevent degrading is the team itself. They are mostly responsible for making the decisions of fixing the windows as they broken.