Difference between revisions of "New software crisis"

From apm
Jump to: navigation, search
(Undo revision 14033 by Apm (talk))
m (Main problems: lowercase)
Line 6: Line 6:
  
 
'''Accelerating bit-rot''' from:
 
'''Accelerating bit-rot''' from:
* Dependency hell
+
* dependency hell
* Incidental complexity
+
* incidental complexity
* Plumbing across gaps
+
* plumbing across gaps
* Bad abstractions
+
* bad abstractions
  
 
'''Incidental complexity''' growing acceleratingly all the way to the point <br>
 
'''Incidental complexity''' growing acceleratingly all the way to the point <br>

Revision as of 14:12, 1 January 2023

This article is a stub. It needs to be expanded.

(wiki-TODO: Discuss this)

Main problems

Accelerating bit-rot from:

  • dependency hell
  • incidental complexity
  • plumbing across gaps
  • bad abstractions

Incidental complexity growing acceleratingly all the way to the point
where a rewrite from scratch is the only option. Just another form of bit-rot.

Plumbing: Lack of good abstractions over barriers in underlying hardware (including network barriers).
Bridging via plaintext without hard structural guarantees.
See Gaps in software.

Bad abstractions: The saying goes:
Ever problem in computer science can be solved with yet another layer of abstraction.
Except the problem of too many layers of abstraction.
Also there is a lack of languages that are conducive for
tools to easily trace across levels of abstraction.

Main cures

  • provably guaranteed purity of code (purely functional languages aka denotative languages)
  • super fine grained content addressed (fine grained per function / closure)

Related

External links

Software crisis ...
The wikipedia article is mainly about the "old fist crisis" ist seems.
A lot of new severe large scale problems/challenges have arisen since then.