~/talk

Engineering for Software

slides:none on file

Argues software engineering is an empirical craft with ten concrete rules: five to optimize learning — iteration and feedback, working incrementally, experimental trials and being empirical — and five to manage complexity — modularity, cohesion, separation of concerns, abstraction and controlling coupling. Gives concrete examples: aircraft evolution via incremental testing, ISS built module by module, iPhone features added over releases, SpaceX Starship tests that blow up then inform a successful landing, and a testability fix using dependency injection and a fake engine.

AI-written summary · about

  1. 0:00Intro
  2. 1:25How do you think of your work?
  3. 3:17Who cares?
  4. 4:20What is engineering?
  5. 8:51The impact of science & engineering
  6. 11:44What is engineering really for?
  7. 16:58Optimize for learning
  8. 17:15Iteration
  9. 20:55Feedback
  10. 23:57Incremental
  11. 26:19Experimental
  12. 29:08Empirical
  13. 32:11Managing complexity
  14. 33:33Modularity
  15. 37:01Cohesion
  16. 37:29Separation of concerns
  17. 39:17Abstraction
  18. 42:51Coupling
  19. 46:24Example
  20. 50:24The tools of our trade
  21. 53:42Embrace change
  22. 54:35Main takeaway
  23. 55:16Outro
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.