Episode 148: Software Archaeology with Dave Thomas

Topics covered
Popular Clips
Episode Highlights
Code Benefits
Reading source code is a crucial skill for developers, as emphasized by . He argues that developers often spend more time reading existing code than writing new code, whether it's for fixing bugs or adding new features 1. This practice is akin to other creative professions where learning from existing works is essential. highlights the importance of recreational and educational code reading, suggesting that it should be a part of formal education 1.
If you're a software developer, you never read anybody else's code. You spend your entire time writing your own, which is an incredibly arrogant approach to the profession.
---
He advocates for more courses focused on code reading and appreciation, which could help developers improve their skills and understanding of programming techniques 1.
Beginner Tips
For beginners, advises starting with manageable projects to build code reading skills. He suggests choosing open-source projects in familiar languages and focusing on smaller codebases of 5,000 to 20,000 lines 2. This approach allows beginners to ask simple questions and gradually understand the code's structure and functionality.
Don't set yourself the job of understanding the Linux kernel as your first code reading exercise.
---
also recommends forming groups to discuss code, akin to book clubs, which can provide diverse insights and enhance learning 3.
Related Episodes


Episode 86: Interview Dave Thomas
Answers 383 questions

SE-Radio Episode 242: Dave Thomas on Innovating Legacy Systems
Answers 383 questions
Episode 115: Architecture Analysis
Answers 383 questions

Episode 47: Interview Grady Booch
Answers 383 questions

Episode 150: Software Craftsmanship with Bob Martin
Answers 383 questions

Episode 112: Roles in Software Engineering II
Answers 383 questions

Episode 130: Code Visualization with Michele Lanza
Answers 383 questions

Episode 59: Static Code Analysis
Answers 383 questions

Episode 441 Shipping Software - With Bugs
Answers 383 questions

Episode 228: Software Architecture Sketches with Simon Brown
Answers 383 questionsEpisode 87: Software Components
Answers 383 questions

Episode 100: Software in Space
Answers 383 questions

Episode 31: Agile Documentation
Answers 383 questions
Episode 166: Living Architectures with John Wiegand
Answers 383 questions

Episode 6: Model-Driven Software Development Pt. 2
Answers 383 questions














