ia toki camp 2017 - avoiding technical debt
TRANSCRIPT
![Page 1: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/1.jpg)
Avoiding Technical DebtIkatan Alumni TOKI Gathering @ TOKI Camp 2017
![Page 2: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/2.jpg)
![Page 3: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/3.jpg)
ProblemsPhase as a startup..
❏ Product market fit, as soon as possible
❏ With limited budget
❏ Build fast, break fast
❏ As some metrics grow
❏ More backlogs
❏ More budget
❏ Growing team
![Page 4: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/4.jpg)
![Page 5: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/5.jpg)
Cost of Technical Debt❏ Fix one bug, and two more pop up
❏ Really hard to understand code and modify it
❏ Waste time to explain the code
❏ New features, here comes old feature bugs
❏ Human cost
![Page 6: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/6.jpg)
Code Assets Standardization❏ Code styling
❏ Naming convention
❏ Commit message
❏ Unit testing
❏ Code review
❏ Refactor
![Page 7: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/7.jpg)
Code StylingMostly handled by linter
![Page 8: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/8.jpg)
Naming Conventions❏ Filename: TitleCase, kebab-case, etc
❏ Class name: Noun
❏ Function name: Verb, camelCase
❏ Git branching name:
❏ add/new-feature❏ update/existing-feature❏ fix/bugs❏ try/new-things
![Page 9: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/9.jpg)
Unit test❏ Happy case + exception case
❏ First step of bug fixing
![Page 10: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/10.jpg)
Code Review❏ Ensuring the code is understandable and maintainable
❏ Minimum one reviewer for each pull request
❏ 60 minutes timeboxing
❏ Everyone input is valid
❏ Share code ownership
![Page 11: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/11.jpg)
Refactor❏ Keep improving code quality
❏ Tools: design pattern, unit test
❏ Reference: Clean Code: A Handbook of Agile Software Craftsmanship by Robert C Martin
![Page 12: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/12.jpg)
![Page 13: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/13.jpg)
![Page 14: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/14.jpg)
![Page 15: IA TOKI Camp 2017 - Avoiding Technical Debt](https://reader031.vdocuments.site/reader031/viewer/2022021815/589a535a1a28ab040e8b6ce1/html5/thumbnails/15.jpg)
Thank you.