What are your software's vital signs?
Most software has a profoundly inadequate concept of "health." In order for applications to run, they must:
- have adequate resources (RAM, disk, network, CPU)
- receive cooperation from services exposed by the operating system or by network endpoints
- be adequately and correctly configured
- not be hacked
- acquire delegated privileges from users
... and so forth. And yet, most software that I've encountered in my career does little to see whether it's working properly and has what it needs. Sure, it may log a catastrophic error if the disk fills up, but it makes no effort to see the problem coming or to plan more graceful recovery than a crash.
In my most recent post on cloudifying your software, I explore how cloud computing is magnifying the need to understand and to regularly check your software's vital signs. Head on over to adaptivecomputing.com/blog and check it out.

Stay tuned for further installments of this series each Friday. As I said in Part 1, I believe that a competence with cloud—cloud-oriented programming, if you will—will be a checkbox on future tech resumes.