Management
Fooled by success: the dangers of delivering projects on time
One of my favorite books is Fooled by Randomness by Nassim Nicolas Taleb. Taleb’s thesis, which he explains and defends well, is that we often attribute to talent and insight great results that were actually more a matter of luck—a fortunate random outcome that might well have turned out otherwise. Taleb’s examples are largely taken from […]
Controlling IT Costs: Using a Maintenance Architect
Software rots over time. Of course, it doesn’t literally decompose, but it often becomes fragile, harder to support and more likely to break when something else in the enterprise’s IT environment changes—another application, the hosting platform and operating system, a third-party product with which it communicates, a database schema. When a defect is fixed, or […]
Distributed Development (Part II)
In Part I, I talked about all the challenges that surface when you attempt distributed software development, that is, having an IT project team being spread out over a wide geographical area. Simply put, it’s tough to do well, if at all, for a variety of reasons, including problems with communications among developers, maintaining conceptual […]
Distributed Development (Part I)
The idea of an IT project team spread out over a wide geographical area is an old one. It became practical in the late ’70s and early ’80s, with the advent of hard disk drives — instead of punched cards, paper tape or magnetic tape — for source-code file storage, wide-area networking (including the Internet), […]
Lies, Damned Lies, and Project Metrics (Part III)
[Here are links to Part I and Part II] In the prior two parts (links above), I covered the ideal qualities of metrics (informative and, preferably, predictive; objective; and automated), and why it’s so hard to come up with useful metrics for IT management. Let’s now talk about two concepts that may help you monitor […]