6 ms·
I completely agree, and even commented the same essential idea a couple years ago here: https://news.ycombinator.com/item?id=18774619 https://news.ycombinator.
by 3pt14159 7y ago
I completely agree, and even commented the same essential idea a couple years ago here:
https://news.ycombinator.com/item?id=18774619 https://news.ycombinator.com/item?id=18774619
One of my highest upvoted comments with 161 upvotes.
But I've come to another idea too. Part of all this complexity is dealing with change. We could simplify things if some aspects of our software hit a final point where only security updates were published after that. Imagine a programming language that was specified and actually finished without the constant roll of changing patterns and practices. Or a web framework. Or a database. Intentionally designed to be robust and secure from the first day then intentionally set to minimal patches for bugs and security fixes.
Part of the issue though is that things keep changing. New characters are added to unicode, new timezones emerge or existing ones change. It's a hard problem to crack.
- mononcqc 7y agoLehman's Laws of Software Evolution come to mind here: https://en.wikipedia.org/wiki/Lehman%27s_laws_of_software_evolution https://en.wikipedia.org/wiki/Lehman%27s_laws_of_software_ev... An E-program is written to perform some real-world activity; how it should behave is strongly linked to the environment in which it runs, and such a program needs to adapt to varying requirements and circumstances in that environment Furthermore, as a part of its own environment, the software's own existence has an impact on what people expect and want to do with it.
- munificent 7y ago> Imagine a programming language that was specified and actually finished Many programming languages like that exist: ANSI C, Pascal, PHP 1.0, Ruby 1.0, Python 1.0, etc. No one uses them. They could simply choose not to upgrade, but they don't. If you assume people, on aggregate, are reasonable, then it seems that the value of changing languages outweighs the cost of the churn.
- peterwwillis 7y agoIf you designed a mainframe in the 70's, it didn't change. And so we are still running mainframes from the 70's today for critical infrastructure, government, financial, and educational work.
- jyounker 7y agoI don't know if that's really true. While the software that runs on the mainframe is the same, mainframe hardware has advanced considerably.