Introduction
Why Keep Software Soft?
Software should be easy to change.
Why should we care about keeping software soft? We don’t have to care, but we accept that software that is not soft may be more aptly described as “rigidware”.
Some argue that over time all software ends up as a big ball of goo: hard to understand, hard to learn, and hard to change.
We can respond to this argument in two ways: “why bother to even try and keep it soft then?”; or “lets try to slow the degradation as much as we can”.
This still doesn’t answer the question of why we should try and keep software soft; here are a few reasons:
- May result in lower total cost of ownership (TCO) for a longer-lived system
- May allow the business to be more agile (responding more quickly to changing marketplace conditions)
- May result in happier development teams (which in turn, may increase productivity and reduce staff turnover)
If these things aren’t important to a business, if it has an unlimited supply of funds, time, and people; and the market in which it operates is slow moving and non-innovative, then this “rigidware” may well be acceptable.
Why Read This Book?
If you want to make developing software a happier, more enjoyable, and more productive experience this book is for you.
Keeping Software Soft provides practical guidance on how to keep software as soft as we can. You can read from beginning to end or just jump in at any point and use as a reference guide.
About The Author
Jason Roberts is a Journeyman Software Developer. He is a Microsoft C# MVP, a Pluralsight course author and holds an honours degree in computing. He is a writer, open source contributor and has worked on numerous apps for both Windows Phone and Windows Store.
You can find him on Twitter as @robertsjason and at his blog DontCodeTired.com.