I can officially call myself a contributor to Mozilla now. Got my first PR merged here: https://github.com/mozilla/foundation.mozilla.org/pull/3899, and soon, the changes I have made will be reflected at https://foundation.mozilla.org/, accessible to the whole world.
Aside from the one being merged, there are a few more PRs/issues on the waiting list from me for foundation.mozilla.org, they are:
There are some back and forth going on with some of these, but I’m sure they can be worked out very soon.
A couple new things learned from contributing to Mozilla:
I got docker working with windows… finally. I remember back then, there existed this rather immature relationship between the two siblings who never got along. I still made some sacrifices though – I can’t use oracle virtualbox anymore. But the benefits outweigh the drawbacks: I used to reboot my computer on ubuntu just to use docker – I’m glad I don’t have to do that anymore either. Also, with docker desktop nailed down, I anticipate having an easier time to install other projects on github.
Foundation.mozilla.org utilizes both django and nodejs. This is very interesting, I’ve never considered using both stacks in the same repository. The entry point is through django (`python manage.py runserver`), and the web server uses the django ORM models to handle database migrations. I could be wrong, but it seems that nodejs is used here solely because of the convenience of npm. The front end uses a wide selection of libraries including babel, react, webpack, eslint, prettier and etc.
New python libraries learned: pipenv, invoke, and wagtail. I used to use miniconda (anaconda) for package management. Now there’s also pipenv, which can be directly downloaded via pip and used as virtual environment management. Invoke is an interesting library. It wraps around executable python code and changes them into command line invokable tasks. Wagtail is a django-based content management system, which is being used here on certain webpages to create stacks of panels for the front-end.
The number of repositories under mozilla shocks me: 2.1k and still growing. However, a closer look at the contribution graph filters out a large number of inactive ones. I’m planning on targeting a couple different projects, set them up on my computer (now that I have docker) and see how it goes. Perhaps one of these: