Agile development, DevOps and the ability to trial new application concepts by spinning them up in the cloud are speeding the trend for in-house development. Customization and innovation in business processes and the software that underlies them, are now core areas of competitive advantage. For the developer, this means that the joy of working with other people’s code is becoming an almost unavoidable part of the job. But for many of us, maintaining our own, long-forgotten code can be painful enough. Inheriting someone else's can be downright agony.