3 ms·
There is two different things here, “advanced” Python that applies to webdev, and other areas of Python (data science, ML). Three things I would recommend: 1.
by samwillis 4y ago
There is two different things here, “advanced” Python that applies to webdev, and other areas of Python (data science, ML). Three things I would recommend:
1. As a Django dev dig deep into Django’s internals, there is loads to learn from its codebase, particularly meta classes in the orm and form frameworks. The template engine is also highly complex. Try building a tool that scratches your own itch with Django, and integrate it deeply using some of the techniques Django uses. Read lots of its code, work out how it works.
2. I think a good project to explore other areas of Python would be a web scraping then data processing project. Find something that interest you, build a scraper that extracts LOADS of data from the web or a specific site about it. Then analyse that data using NumPy and Pandas. It will teach you a bunch of new tools.
3. If you are interested in ML there a loads of interesting academic projects that have released their code on GitHub. Find one that, again, interests you (image processing, text generation, computer vision), download it, get it running, and then modify it to do something else. Or package it as a web app or something. You will learn loads about how these tools work.
- rlawson 4y agoOP here - thank you for replying and I think 1 & 2 are more suitable for my background and interests. Again thanks for the guidance.