1.9. Exactly What Kind of Ware Are We Talking About?

Software is the soul of IT, the spirit inside the machine. But the word software is misleading for a variety of reasons. First, it is certainly not a "ware" in any sense that we commonly understand.

Second, the word software was invented as a rhetorical device for drawing a clear distinction between the program running on a computer and the computer itself, which is the hardware.

In truth, software is thought captured in lines of programming code. It is the human mind—or little pieces of it, at any rate—translated into a language that a computer can understand.

Like the human mind itself, software can be very difficult to change.

People who have never written a line of code tend to believe that software is mushy and malleable. But just the opposite is true. After software has been written, released, and loaded onto an enterprise platform or onto the hard drives of 10 million personal computers (PCs), it might as well be cast in bronze.

At the risk of treading the same path as Scott Rosenberg in his excellent book, Dreaming in Code, it is important for people to understand that writing good software is not an easy process—it is inherently difficult. Rosenberg wisely quotes Donald Knuth's famous observation, "Software is hard."

The sheer complexity of writing software makes it like sailing or playing the violin. You can strive for perfection, but perfection will always elude you. You will make mistakes. You will find yourself ...

Get The Next Leap in Productivity: What Top Managers Really Need to Know about Information Technology now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.