Published Tick-the-Code Material
Happy Are The Software Engineers.. (article)
My first ever published article is called "Happy Are The Software Engineers.." and it appeared in Better Software magazine in December 2006. The article describes briefly how complete concentration can create the feeling of happiness especially if the task at hand is meaningful. I wanted to highlight that working for software quality is meaningful and with Tick-the-Code you can achieve complete concentration.
Simply put, happiness is Tick-the-Code.
Tick-the-Code Inspection: Theory and Practice (paper)
My first ever scientific paper is called "Tick-the-Code Inspection: Theory and Practice" and it appeared in the peer-reviewed publication of ASQ (American Society for Quality) called Software Quality Professional.
As the name says, the paper reveals all details of Tick-the-Code up to the 24 coding rules. At the moment this paper is the most comprehensive written source for information about Tick-the-Code.
Tick-the-Code Inspection: Empirical Evidence (on Effectiveness) (paper)
My second paper is called Tick-the-Code Inspection: Empirical Evidence (on Effectiveness). It was prepared for, and first presented at, Pacific Northwest Software Quality Conference 2007. The paper presents measurements taken in Tick-the-Code training courses so far (about 50 sessions with over 300 software professionals). The results are revealing. The main point of the paper is that software engineers could keep their software much simpler and avoid making many of the errors software projects are so notorious for.
In the Appendix of the paper, you'll find all the active rules of Tick-the-Code at the time of writing (summer 2007).
Tick-the-Code - traditionally novel technique in the fight against bugs (article)
Pirkanmaan Tietojenkäsittely-yhdistys (Pitky ry) published my article in their member magazine Pitkyn Piiri 1/2008. It is called "Tick-the-Code - uusvanha tekniikka taistelussa bugeja vastaan" and it is only available in Finnish.
Tick-the-Code Inspection: The Book (book, working title)
Since 2006, I'm writing a book on Tick-the-Code to be the most comprehensive written source. I've written first drafts of all chapters, except one. I have received some review comments and acted on them. I have contacted a few publishers and received more comments (no approval yet). O'Reilly editor Andy Oram even mentions us in the Beautiful Code blog. Next, we'll need to get people excited about the concept and the book and then approach the publishers again.
Excerpt from the book
The excerpt changes weekly. Each excerpt is still a draft version and might change before ending in the book.
From the point of view of the schedule manager, a check seems to take time away from the productive work, from adding new functionality. That is clearly wrong. You can't effectively separate time and quality from each other. They are closely linked as we'll see soon. What makes matters worse is that if problems are uncovered, taking care of them will also need time. For the schedule manager with a defective view of software development, quality is Bad News. Here's his Time-Troubled Testimony:
Quality equals delays (for a Bad Manager).
How has the schedule manager come to believe that? He's not stupid, there must be a logical reason. He must have burned himself with quality activities before or heard somebody else burn themselves. It is true that some of the so called quality activities have nothing whatsoever to do with quality. For example, collecting unified metrics for reporting purposes only is a waste of time. If you haven't predefined different courses of action for different classes of metrics, what use are the metrics? The worst 'quality activities' really only take time without influencing the quality one way or the other. Wait, the worst ones probably make the software quality worse than it was before the check. When a quality activity can't deliver what it promises, it seems like a waste of time. Sometimes this is because the quality activity is designed to produce an improvement in productivity in the long run and unfortunately has a high learning curve, which translates into lost productivity (time) now with a possible benefit in the future. Schedule managers can't wait that long. Quality activities must quickly benefit his project, otherwise they are useless and even harmful to him.
Management is often at fault when it comes to quality. When managers don't request good quality and show that bad quality isn't acceptable, only the most conscientious staff will produce excellent quality. If a schedule manager (I call managers who only focus on time 'schedule managers') has a wrong kind of mental model about quality work in software development, he'll make the wrong conclusions about needing time for checking activities. The perceived lack of time is one of the root causes described in Chapter 3. "Root Causes".