The Art of Software Development
summary
Argues software development mixes craft with engineering, backed by 15+ years of experience at Picnic, which runs custom warehouse, scheduling and delivery software; advocates automating style and API rules with tools like Google Java Format, Error Prone and OpenRewrite and shows a concrete rule that rewrites negated Optional.isEmpty() to Optional.isPresent() across a codebase; describes a Tech Academy apprenticeship model (mentors + half-time deliberate practice) that accelerates developer skill growth.
AI-written summary · about
chapters (10)
- 0:00Intro
- 1:17I'm a software engineer, right?
- 5:17I'm a computer scientist, right?
- 9:22You're an artist
- 12:12Software development = Abstraction
- 14:37Code aka the truth
- 28:55Testing
- 33:24Design/Software architecture
- 42:45Process
- 47:06How do we learn this stuff?
related talks
49mExtreme Professionalism - Software Craftsmanship.
35mCraft, Engineering, and the Essence of Programming
32mSoftware Craftsmanship
48mThe Effective Software Architect - Work Smarter, not Harder
57mCore Software Design Principles for Programmers
42mwhy software development is an engineering discipline
59mAgile Engineering: The Hard Parts
01mFor the Love of Software
