avoid drowning
TRANSCRIPT
Swim your way through a new code base
Avoid D!owning
Engineer @ Red Hat @roguelynn
roguelynn.com
LYNN ROOT
DIVING
Top-down
Work flow
The Code
Lifesavers
Purpose
Architecture
Break it apart
Lather, rinse, repeat
Purpos"
What does it do?
What problems does it solve?
Strengths & weaknesses?Competitors?
A!chitectur"
What are the components?
How do pieces fit together?
B!ea# it apart
What’s this chuck’s purpose?
How does it fit with other components?
Lathe$, !ins", !epeat
Go with the flow
User
Admin
Manager
Developer
U%e$
Target audience?
How is it used?
Learning curve?
Admin
How are users set up?
How is it maintained?
How does it work with their systems?
Manage$
What are the goals?
Release cycle & pressure dates?
Other teams?
Develope$
How to submit & fix a bug?
How is the code tested?
Go-to people?
Ease in
File Hierarchy
Dependencies
Tools
Challenges
Fil" Hierarch&
Match up with architecture
Docs, src, tests
stdlib, modules, & third-party libraries
Top-down
Dependencies
OS & hardware reqs
Software reqs
Build reqs
Tools
git log
git blame
git-by-a-bus
Challeges
Write docs
Fix bugs
Increase test coverage
Lifesavers
Mento$
Internal Mentor
External Mentor
Manager
Research
Personal/Private Wiki
Bookmarks
Old-fashioned post-its
Readings
The Pragmatic Programmer
Cookbooks
The Developer’s Code
New Programmer’s Survival Guide
%wim %afel&