Introduction

Kids often play a game: The floor is lava. In this game, you have to get from one place to another without touching the floor. Because the floor is lava. If you step in lava, you die, horribly, screaming. Don’t step in lava. So, in the game, you must jump from the couch to the chair, crawl across the table, and leap to safety in the kitchen, where the floor is not lava.

Software is lava. Often it seems that there’s no safe place to step. Worse yet, we’re not allowed to jump on the furniture. Mom said. Sorry.

So what are we to do? As we build software, it seems that we’re stepping in lava every day. It’s complicated, it gets more complicated, and often it seems that we’re just doomed.

There has to be a better way.

We all feel it. ...

Get The Nature of Software Development now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.