Python for the Lab Screenshot

Website: Python for the Lab


Documenting my journey as a Python developer started by collecting notes on Evernote. After a while it became clear that the only way of helping people at a larger scale was by creating a public website.

I started by registering a domain and getting an e-mail with DreamHost. Instead of going for a Wordpress website as I had done before, I opted for creating a static website, using Pelican. I even streamlined the publication of new articles with Travis-CI, and comments via automatic pull requests on the Github repository. After a while it became clear that it needed to evolve.
I found Wagtail CMS and fell in love I instantaneously. It is built on Django, meaning that I could leverage what I learned in the past. The new version of Python for the Lab was born. Since I also built comments and a newsletter, I chose to hosted it in Europe, using Digital Ocean. I also created a Forum using Discourse, a great platform for knowledge sharing.

Lessons Learned

Hosting a website is not a trivial task. I made many mistakes, I configured things wrongly and people couldn't join the newsletter nor leave comments. If something goes wrong, the website will be down until I manage to enter to the server to fix it. It is still a lot of fun to learn how to setup Nginx, Supervisor, Gunicorn and Amazon AWS to host static files.

Next Steps

In the future of the website, I would like to integrate online video courses. Wagtail allows to give access to pages based on group permissions, which can be linked to a payment processor. Vimeo has great plans to host videos accessible only from certain domains.