Related:
Summary summary
[[./Black box thinking|Black box thinking]]
Understanding broader relationships between code and the overall process. What comes before and after this code, and where can optimization/problems happen?
Collaboration
- how will your contributions affect other people and other downstream processes?
- coding with other people in mind: meaningful names, [[./clean code|clean code]] practices, and comments
- your code might be maintained by someone else - what can you do it make it easier for extensions or refactoring?
Improve the wheel
- know when to use other code to your advantage
- allows you to spend time on other meaningful parts of the project
- don’t just copy and paste - change and improve things where necessary to fit your build
Think in processes
- programming is about learning underlying problems and possibilities
- don’t just limit yourself to conventions of the coding languages you’re learning/fluent in
- think things through - thought experiments: if I need to go from A to Z, what does it take?
- many people think about the coding languages themselves and not about problem solving or improvements
[[./Failure is improvement|Failure is improvement]]
“Failure” is an opportunity to learn and strengthens your problem solving muscle. Approaching problems with a framework, understanding where your code went wrong, and scaling down intimidating projects are applicable everywhere (not just in coding)!