Avoid DrowningSwim your way through   a new code base
LYNN ROOT     Engineer @ Red Hat            @roguelynn         roguelynn.com
DIVING
Top-downWork flowThe CodeLifesavers
Purpose    Architecture   Break it apartLather, rinse, repeat
Purpose
What does it do? What problems does it        solve?Strengths & weaknesses?     Competitors?
Architecture
What are the components?How do pieces fit together?
Break it apart
What’s this chuck’s       purpose?How does it fit with other     components?
Lather,rinse, repeat
Go with the   flow
User AdminManagerDeveloper
User
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?
Manager
What are the goals?Release cycle & pressure         dates?     Other teams?
Developer
How to submit & fix a bug? How is the code tested?     Go-to people?
Ease in
File HierarchyDependencies    Tools Challenges
FileHierarchy
Top-down    Match up with     architecture    Docs, src, testsstdlib, modules, & third-      party libraries
Dependencies
OS & hardware reqs  Software reqs    Build reqs
Tools
git log git blamegit-by-a-bus
Challeges
Write docs       Fix bugsIncrease test coverage
Lifesavers
Mentor
Internal MentorExternal Mentor   Manager
Research
Personal/Private Wiki     BookmarksOld-fashioned post-its
Readings
The Pragmatic Programmer       CookbooksNew Programmer’s Survival         Guide  The Developer’s Code
swim safely
Upcoming SlideShare
Loading in...5
×

Avoid Drowning

575

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
575
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Avoid Drowning

  1. 1. Avoid DrowningSwim your way through a new code base
  2. 2. LYNN ROOT Engineer @ Red Hat @roguelynn roguelynn.com
  3. 3. DIVING
  4. 4. Top-downWork flowThe CodeLifesavers
  5. 5. Purpose Architecture Break it apartLather, rinse, repeat
  6. 6. Purpose
  7. 7. What does it do? What problems does it solve?Strengths & weaknesses? Competitors?
  8. 8. Architecture
  9. 9. What are the components?How do pieces fit together?
  10. 10. Break it apart
  11. 11. What’s this chuck’s purpose?How does it fit with other components?
  12. 12. Lather,rinse, repeat
  13. 13. Go with the flow
  14. 14. User AdminManagerDeveloper
  15. 15. User
  16. 16. Target audience?How is it used?Learning curve?
  17. 17. Admin
  18. 18. How are users set up?How is it maintained?How does it work with their systems?
  19. 19. Manager
  20. 20. What are the goals?Release cycle & pressure dates? Other teams?
  21. 21. Developer
  22. 22. How to submit & fix a bug? How is the code tested? Go-to people?
  23. 23. Ease in
  24. 24. File HierarchyDependencies Tools Challenges
  25. 25. FileHierarchy
  26. 26. Top-down Match up with architecture Docs, src, testsstdlib, modules, & third- party libraries
  27. 27. Dependencies
  28. 28. OS & hardware reqs Software reqs Build reqs
  29. 29. Tools
  30. 30. git log git blamegit-by-a-bus
  31. 31. Challeges
  32. 32. Write docs Fix bugsIncrease test coverage
  33. 33. Lifesavers
  34. 34. Mentor
  35. 35. Internal MentorExternal Mentor Manager
  36. 36. Research
  37. 37. Personal/Private Wiki BookmarksOld-fashioned post-its
  38. 38. Readings
  39. 39. The Pragmatic Programmer CookbooksNew Programmer’s Survival Guide The Developer’s Code
  40. 40. swim safely
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×