
Ask HN: Python Open Source Projects for someone learning it after Java/Scala - sidcool
I am learning Python after 10 years of Java, Scala and JavaScript.  I am not learning Python for Data Science, ML or AI, but as a language.  And I really want to master the language.  What open source projects could I contribute to, to further my Python skills and help Open source as well?<p>The only constraint is that I am new to Python, but not new to Programming.
======
strlen
How about PyPy, an implementation of Python itself in Python:
[http://doc.pypy.org/en/latest/project-
ideas.html](http://doc.pypy.org/en/latest/project-ideas.html)

------
tedmiston
Django and Airflow are two of the biggest active open source Python projects.
With Django specifically you've also got a significant plugin ecosystem and
tools like Django REST Framework that are like their own mini ecosystems.

------
ssarodia
(self-promotion) I've created an open source C compiler written in Python
([https://github.com/ShivamSarodia/ShivyC](https://github.com/ShivamSarodia/ShivyC)).
I've learned a ton building it out so far, and I've found compiler design to
be a great exercise in software engineering and learning Python since managing
the complexity of a compiler is nontrivial. If you're interested in
contributing, a good place to start is by tackling any of the issues marked as
"good first issue".

------
donttrack
I find that I like to study the language implementation itself. Sometimes when
I read the documentation for some method or function I will go look at how it
was actually implemented and try to understand how it works.

Keeps me in the “context” of the moment also and i sort of have a goal with
reading source code instead of just reading random implementations here and
there. Once in a while I pick up a nugget or two that I don’t think I would
have found otherwise.

Seems to work for me...

------
iampims
Try Flask, and writing extensions for your favorite services if they don’t
already exist.

~~~
sidcool
Any links to help me get started?

~~~
alexk307
I second this. The pallet's organization is filled with Python projects. It's
very active and you can get code merged and questions answered quickly
[https://github.com/pallets](https://github.com/pallets)

