- 1968: "Software crisis" coined at first NATO Software Engineering conference, which was a key moment in computing history.
- 1969: Apollo 11 mission launched with advanced engineering practices. Last NATO Software Engineering conference held in October.
- 1972: Edsger Dijkstra stated perceived cause of software crisis as increase in hardware complexity and speed without proper organizational methods.
- Current: "Software crisis" not much in current programming conversation. We think we've "figured it out" with minor difficulties.
- Comfort state: Due to defeat and acceptance rather than true comfort. We form mental models to avoid thinking about software details.
- Efforts: Various efforts to address software crisis follow "abstract it away" pattern, sacrificing performance. Early advancements needed hardware upgrades.
- Personal computing: As it grew popular, "abstract it away" became default. Nested layers of abstractions were developed.
- Software industry: Accelerated release cycles and capital influence led to death of individual developer. Users have little control.
- Solution: Not a return to constrained platforms but a limit on abstraction layers and information preservation. Programming models, user interfaces, and hardware should be shallow and composable.
- Counterculture movements: Such as Handmade and Permacomputing, show awareness of software crisis. We're realizing how deep in it we are.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。