by brauhaus on 9/14/23, 8:49 AM with 0 comments
I work for a data consulting boutique, and we often hire fresh grads who are brilliant at algorithms and coding. However, we noticed they struggle when it comes to team-based coding environments. This isn't a small hiccup; it's a significant gap in their education and a source of real frustration for me and for them.
Traditional data courses teach you how to code, how algos works, but often overlook the nuances of coding as a team. For example:
- Code is written with little thought about how it will be read by others.
- Jupyter notebooks that only run if you execute cells in a specific order.
- Code that lacks multiple levels of abstraction, making it hard to maintain or understand.
- Using git rebase or other advanced Git features is a recipe for disaster.
- Commits named "new changes" and commented-out code litter the repo because there's no understanding of how to use Git history.
- A complete absence of tests.
- Feeling utterly lost when encountering CI/CD workflows for the first time.
Frustrated by this gap, I started creating a list of resources we now call lp-foundations. We began by curating YouTube videos, articles, and other resources. Over time, we found ourselves extracting the most valuable insights and compiling them into README files. The project is Python-heavy, that's our main stack, and includes assignments for hands-on practice (something clients asked for once we started showing the project around).
I'm genuinely proud of what we've put together and believe it could be a valuable resource for many. I'm open to feedback, suggestions, and of course, contributions.
Thanks for taking the time to check it out!