The thing about developing software is that small things can be simple and elegant.
-
The thing about developing software is that small things can be simple and elegant. For example, a command line program that compresses a file. It has one job, and doesn't need to worry about, say, integrating with various cloud services. It just runs, and it's done.
A lot of interesting software isn't as simple, or constrained. Once you start allowing more features, complexity explodes, and suddenly you need to worry about security, versioning schemes in different Linux distributions, ...
-
Other sources of complexity: having many stakeholders, many contributors, changing needs and wants, having many dependencies, persisting data, program or project lives for a long time, ...
All these mean that an innocuous change can result in seemingly unrelated things breaking.
This can be a threat, a challenge, a problem, and an opportunity, all at the same time.
-
G gustavinobevilacqua@mastodon.cisti.org shared this topic