Being on the Shoulder of Giants
Here’s my experience learning to code in an established project:
When working with the Research Data Management team (2023), I balanced:
- Learning Django
- Building a standalone app within existing infrastructure
This was manageable since I only needed to understand project setup and dependencies.
Moving to MDAP was more challenging - inherited a complex Django project with:
- Advanced auth
- RBAC
- CMS
- Testing pipelines
- Multi-container setup
- Django REST framework
My approach to navigate this:
Requirements First - Instead of diving into code, I now:
- Gather technical details
- Question feature necessity
- Consider future implications
- Align with team before coding
Strategic Learning Learn just enough to complete tasks, avoiding knowledge rabbit holes.
Test-Driven Write tests before implementation - essential when working with unfamiliar code.
This workflow has helped me contribute effectively to complex codebases while maintaining quality.
– UTQ –