A bit about this blog. I started putting this together in summer of 2014 while looking for a job and trying to promote my book Rivers End. I'll be discussing the aspects of writing the book, aspects of software quality management and other relevant topics from previous and current professional experiences.
The blog is called "The Finish Line Keeps Moving - Toward Perfect" - reminding me of something I'd once heard on a project while at an employer. After three or four missed deadlines and a software release that was scheduled to include 15-20 defect fixes and enhancements, the release had grown to a 120-130 defect fix release with 10 enhancements and new builds were coming out daily. For every three or four items fixed, one or two defects were introduced or discovered. The release was like plugging up holes in a dam just to have others refill - but still moving closer to "perfect" or a tangent of perfect. We talked about the end of this release as "The Finish Line" and I joked "The Finish Line Keeps Moving"- my boss at the time's response was "Moving - Toward Perfect".
If the software development cycle is a race and the finish line keeps moving it's more like a basketball game than a race; there is always a clock ticking with the deadline where moving parts are supposed to intersect like planets lining up (especially when the release is a confluence of releases of integrated parts) - and the state of the software when those "planets aline" is the finish line. But like basketball or football or soccer, the clock continues to move, regardless of the "score" of the game.
With publishing the book the deadline was something I set with myself with flexibility. There was no moving part (although I happened to finish the book the day I was laid off - purely coincidental) to coordinate when writing the book - but versioning and editing as the final draft was produced was a QA process of its own (something I will elaborate at some point in this blog.)
The software development process is not just a race or a timed event but also an evolution. As employees we work on evolving software through development (which when done properly is a natural selection of that increases sell-ability and client happiness - something so many companies seem to overlook.) Too often I've seen product requirements, managers or "the upper level" fall in love with an enhancement or project like a child and force it into software - something the world (the client base) doesn't want. It's a false evolution - not quite like rabbits in Australia, more like the inbreeding of dogs to product exaggerated features - usually leading to deformities. Evolution is about moving on from bad ideas, cutting the losses at times and growing - learning. Same is true for the employees. Someone who is invaluable at one point in a company's history can work at maximum effort and still become valueless. It's not something the worker usually sees. We must continue to evolve.
Thanks for reading, keep moving and evolving. Now can only happen once regardless of how the parts move around us.
No comments:
Post a Comment