I enjoyed this thread on HN and I believe it’s important for any Holochain developer:
kqr 1 hour ago
Something I’ve recently realised after having listened to Kevlin Henney talk about software engineering is how much of the existing knowledge we ignore. The early software engineers in the '60s and '70s were discovering pattern after pattern of useful design activities to make software more reliable and modular. Some of this work is really rigorous and well-reasoned.This is knowledge most engineers I’ve met completely ignore in favour of the superstitions, personal opinions, and catchy slogans that came out of the '90s and '00s. It’s common to dismiss the early software engineering approaches with “waterfall does not work” – as if the people in the '60s didn’t already know that?! Rest assured, the published software engineers of the '60s were as strong proponents of agile as anyone is today.
Read this early stuff.
Read the reports on the NATO software engineering conferences.
Read the papers by David Parnas on software modularity and designing for extension and contraction.
Read more written by Ward Cunningham, Alan Perlis, Edsger Dijkstra, Douglas McIlroy, Brian Randell, Peter Naur.
To some extent, we already know how to write software well. There’s just nobody teaching this knowledge – you have to seek it yourself.
SamuelAdams 3 minutes ago
Yes exactly. I recommend reading the book Design Patterns [1] for some ideas on how early “modular” software was conceptualized. This book was published in 1994 and still has a lot of relevance today.
[1]: https://en.wikipedia.org/wiki/Design_Patterns
Has anyone read any of the authors mentioned above, or can recommend similar books? What about for non-technical people?