Project Based Learning (PBL) for Programmers
What is PBL
- Always learn through projects.
Why choose PBL
- Speeds up learning time if you have a late start.
- Gets you up to speed on specific technologies.
Things to Avoid
- Going through a resource (books, tutorials, …) from start to finish.
- Learning a programming language or API without a project in mind.
PBL Approach: Just starting to Code
- Solve coding problems on sites such as (LeetCode, Codeforces, …).
- Coding problem sites provide solutions where you can get direct feed back.
- Learn data structures and algorithms by using above site’s filter features.
- They also teach basic coding concepts such as loops, conditionals, …
- The above coding problems can be seen as “mini projects”.
- Realize programming languages are tools and there is no best one.
- Stick to learning the basics of one language really well.
- Don’t stay in this area for too long.
- Search for projects you can contribute to once you feel slightly confident.
PBL Approach: Confident enough to contribute
- Join a project where there are coders better than you.
- Join a project through your school.
- Join a project on GitHub.
- Join a free internship
- Join a paid internship (less likely but still possible)
- On top of joining a project with others take on a personal project.
- Personal project should be something you find interesting.
- Learn code by reading from large code bases and googling questions.
- Pair program with others.