Anatomy of a solution

Every solution is meant to solve a problem. Some solutions solve the problem well, others don't. Some never get implemented. A friend of mine once called software ideas that never go anywhere as "vaporware": great ideas that vanished as fast as they appeared, into thin air as if it was vapor. My own "vaporware" I do… Continue reading Anatomy of a solution


Software Reality

Once I met a retired IBM Project Manager. His thirty years experience were enough to get away from the bits and bytes and became a "normal" people again. He said these wise words: "I know what you are up to". I have to admit, there is deep knowledge in his words: we, Software Developers, are our… Continue reading Software Reality

No Silver Bullet refired

Software development is plagued with the Recipe syndrome: "Please tell me how to do my job". From the utopia of some technology will increase productivity drastically to a prescriptive methodology to make every project successful, everyone is hoping for a silver bullet to kill their beasts [1]. Can the Software Development unpredictability be tamed by… Continue reading No Silver Bullet refired

Legacy companies

Software companies and companies with in-house bespoken software regularly struggle with nightmarish software systems: cryptic monoliths every development team fears and no one understands. Consecutive investments fail to destroy its legacy monsters and to prevent other systems to follow the same path. Legacy state seems an unavoidable progression for software system, except for some "lucky"… Continue reading Legacy companies

Refactoring: How much?

On "Refactoring - Improving the Design of Existing Code", Martin Fowler wrote "Code refactoring is the process of restructuring existing computer code without changing its external behavior." [1]. Along with the "recipes" for safe refactoring, the term code smells was introduced. Code smells refer to certain structures in code that present potential design and implementation… Continue reading Refactoring: How much?