Sense and Structure: Towards a Textual Analysis of Software

tags
Software Development

Notes

[00:50] Christopher Alexander defines design: Achieve fit between form and context
[03:50] What's the context for software? All of its expected futures
[04:55] Agile doesn't like to predict the future, just do your best practices and good design emerges
[07:00] Software is text (weird text, but still)
[11:10] Interfaces are what last
[13:00] Think about interfaces via names
[15:50] Interfaces constrain software's possible futures
[17:30] Wittgenstein: When considering if a name applies to a referent, we don't just run down a list of qualities
[20:00] Interfaces tend to get increasingly specific over time
[23:50] "ideally, the software simply becomes more like itself"
[24:30] Principle of Least Surprise between design and implementation
[27:00] Structuralist analysis of software
[37:48] Consider structure of murder mystery: Victim is the center of the structure: Choice of victim determines more than any other decision
[38:20] Extend to MVC: Model is the center. Strongly determinative of both controller and view
[41:55] Bottom-up development is a myth: always a structure
[44:18] Structures are fungible expertise