Software Engineering: A philosophical activity
summary
Starts development by lying in a hammock and doing design as metaphysics, then treats tests as Wittgensteinian propositions that produce facts, and argues classes map to Plato’s eternal ideas (Plato → classes) while objects are runtime particulars. Emphasizes Logo’s turtle for learning, cites Harrison Ainsworth’s Tractatus-for-code, warns that full testing is impossible so engineers must choose important facts, and claims programming languages constrain what problems can be imagined and solved.
AI-written summary · about
chapters (47)
- 0:00Introduction
- 2:30The left right side myth
- 4:40Binary thinking
- 5:15Mindstorms
- 6:05Logo
- 6:50Aim
- 7:20Requirements
- 7:42Where do you start
- 7:59Hammock Driven Development
- 8:12Get up from the computer
- 8:25Software design
- 9:19Philosophy
- 10:40Scope
- 11:04Superpower
- 11:54Ancient philosophical problem
- 12:37The universal
- 13:28The bottle
- 13:46Plato
- 14:00Particulars
- 14:38Platos theories
- 14:48Goodness
- 15:30Objectoriented
- 16:12Platos ideas
- 16:27Classes and objects
- 16:38Classes are models
- 17:14Platos 8 points
- 17:45The development process
- 18:14Tests
- 18:35Ludwig Wittgenstein
- 19:29Vidkun Stein
- 25:12VidkunStein
- 29:39Summary
- 30:33Conclusion
- 31:44Programming language combinations
- 32:12Staying Curious
- 32:28Question of the future
- 32:47Conspiracy theories
- 33:17What one cannot talk about
- 33:43You just need to choose
- 33:57I need to test
- 34:13The Problems of Philosophy
- 34:49The Source
- 35:15Under the Sun
- 35:44When kids are born
- 35:58Everything changes
- 36:21Learning new languages
- 36:54Design needs to be good
related talks
35mCraft, Engineering, and the Essence of Programming
45mCan Wittgenstein's Philosophical Ideas Help Build Better Software?
01h 27mPlato, Magritte, Sartre & Carroll - Learning Software Design from the Masters
01h 00mEngineering Software
49mSoftware Design for the Soul
53mSoftware Design: Beyond Boxes & Lines
48mEngineering You
43mParadigms Without Progress: Kuhnian Reflections on Programming Practice
