13 reasons why Ruby, Python and the gang will push Java to die… of old age

Lately I seem to find everywhere lots of articles about the imminent dismissal of Java and its replacement with the scripting language of the day or sometimes with other compiled languages.
No, that is not gonna happen. Java is gonna die eventually of old age many many years from now.
I will share the reasoning behind my [...]

Exceptional Java - Exception design relativity

Designing the error path in the code is not the most entertaining part of a programmer’s job. We are focused on coding the solution, the success path, and the damn exceptions stand in the way demanding to be handled. What makes it even harder and murkier is the lack of well established rules for what [...]

Exceptional Java - Design the failure case - Part 2

While developing complex systems lots of failure situations require handling and without proper planning chaos can conquer your code.
A number of simple principles can create order and reduce complexity. And the result can be real software quality.

Exceptional Java - Design the failure case - Part 1

Good exception handling doesn’t happen by chance. It is designed and planned and when done properly it is one of the main roads to the software “Holy Grail” - quality and reliability.
But leave it to chance and soon all hell breaks loose.

13 reasons for UML’s descent into darkness

UML lost the programmers. There is no doubt about it… in my mind. And when a software design technology loses the programmers it fades away no matter what the academia thinks. This happened because UML was pushed in a direction that most code writers don’t like: it started to look a lot like bureaucratic paper [...]