Things to keep in mind about the evolution of software

Designers like to talk about how the software of today compares to the software of the past. Or what software will be like in the future. Here are some things I think any critique or prediction should take into account.

I have not written this list to criticise or defend anything in particular.

Common reactions to change

Technology choices are a trade-off

The business of software

Markets/culture

Usability

Practice of design