Software is ageing. Right now we barely notice it — the software population has expanded so quickly that the vast majority is barely old enough to construct a coherent sentence. But it is still true.
In the coming decades, as software penetration becomes complete, we will pass a point — probably without noticing — where the average age of software will pass twenty, fifty, one hundred years old. One day, scouring source control logs, our descendants may come across our commit messages and notice their own surname. Software will become sacred. An inheritance. Children will ask their grandparents if their grandparents ever mentioned this undocumented edge-case, what it could have meant.
Just as subtly, software engineering itself will change. It will become much more about our history, on joining together powerful, scarcely understood programs. Languages will splinter and distort, specialisms will form, studies will be made. The idea that one could ever have been a ‘full stack engineer’ will become as remarkable as the idea that a man in ancient Greece could be familiar with all the literature ever written in his language. Engineers will become city planners, detectives, scholars, clergy.
This series of letters is about this future, our journey there, and the changing role of the software engineer in civilisation.
Good to have you with us.