Gherkin and other languages and frameworks directed to Behaviour-driven development  made mainstream the distinction between the different parts of a test: Fixture or setup (Given); Execution or exercise (When); Assertion or verify (Then). We developers don't like to write tests. We like to write code, real code! When imposed with the need of writing… Continue reading Given, When, Then
Once I borrowed a book about Fortran (yeah... I'm that old) and during the weekend I read it and did a few experiments. I was able to do quite a lot with it already. I have to be honest, it was not my first nor second programming language and it was not that different from… Continue reading Expertise takes time
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
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
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 . Can the Software Development unpredictability be tamed by… Continue reading No Silver Bullet refired
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
It is well known a handful of developers can produce more and in better quality than groups several times bigger [1, 2]. It is not a matter of maths, instead of simple psychology: Software is a people's business. All agile methodologies agree unanimously on the central role people have on Software Development. The idea of… Continue reading People Inc.