Keynote: Growing Better Programmers
summary
Advocates using code reviews as primary mentoring tool and shows a real bug: a hand-rolled recursive rotate that never increments its write index, fixed and simplified by swapping, while recommending replace custom rotate with std::rotate and turn it into a template for reuse. Recommends teams of about six members, dedicated mentoring time (weekly slots or Friday-afternoon bug fixes), track estimates and errors (Jira or similar), measure improvement, and expand community involvement via open source and conference speaking.
AI-written summary · about
chapters (33)
- 0:00Start
- 1:02Growing Better Programmers
- 5:56Open Source Project Volunteer Services
- 12:16Leading a Team of Programmers
- 13:25Typical Career Path of Programmers and Managers
- 13:59First Exposure to Programming
- 15:54Abstraction
- 17:00Engineering Is Programming Integrated over Time
- 17:24What Happens if Somebody Stops Maintaining the Library
- 17:47Testability Verification
- 18:54Domain Leadership
- 20:45How You Grow Better Programmers
- 21:52Ideal Team Size
- 24:33The Lead Engineer Job
- 26:30How Can Employers Improve the Workplace
- 32:14Code Reviews
- 33:47Did You Choose Your Best or Your Worst Code
- 34:04Code Responsibility
- 34:28Who Has Played Total War
- 40:01Do You Favor a Single Point of Exit
- 43:53Clarity of Intent
- 44:41Swap Specialization
- 44:52Swap
- 52:59How Do You Make Your Engineers Better at Estimating How Long It Can Take To Complete Their Task Tracking
- 54:52Rules for Estimation
- 56:30If You Want To Grow Better Programmers Tell Them To Start Solving a Problem with Estimation
- 57:46Software Engineering Is Programming Integrated over Time
- 1:00:21Are There Apis Easy To Use Correctly and Hard To Use Incorrectly
- 1:03:36Public Speaking Career
- 1:12:32Pair Programming
- 1:17:51Remote Mentoring
- 1:18:38How Does One Better Help People Who Keep Bringing the Same Mistakes To Code Review
- 1:20:24What Would You Say Is the Single Most Important Thing You Have Learnt through Your Career
related talks
01h 00mKeynote: Learning Is Teaching Is Sharing: Building a Great Software Development Team
01h 10mKeynote: Strategies to Cope With Conflicting Design Patterns in C++ Development Teams
01h 01mKeynote: Software Craftsmanship – Growing a Technical Culture
43mKeynote: Coding Culture
49mKeynote
01h 24mKeynote: Optimizing for Change
52mTeaching through Code Review
01h 04mKeynote: Learn Programming, then Learn how to Be a Programmer
