I use my personal site as my playground for learning new skills. I host it myself on a server I maintain, and try to give it the latest and greatest features as I learn them. Because of time and use-case, that's not always something I can follow through on, but I'm trying to be better about it going forward.
Current State (as of April 2017)
- Backend: I built this site using Django 1.10 and serve it up with Gunicorn and Nginx. Data is stored to PostgreSQL. Site content and page layout is managed through a Wagtail CMS.
- Devops: The site is housed on a Digital Ocean droplet running Ubuntu 16.04. App workers are restarted via Supervisor. New code is deployed with a Fabric script. Error logging is done through Sentry.io. Version control/issue tracking is done through Git/GitHub.
Things I'd Like To Do
- Docker-ize the app to make builds and deployments easier.
- Set up Jenkins for Continuous Integration/Deployment
- Experiment with some fancier frontend development on a few sub-modules. I've done a bit of ReactJS but want to really solidify this.
- See why people keep talking about Kubernetes.
- Experiment with different Django configurations. Today I'm playing around with CookieCutter Django and hope that this (combined with the aforementioned deep, abiding mastery of Docker) will help me spin up new projects quickly and easily.
- Adding proper levels of test coverage.
I'll be posting updates and hopefully even some tutorials as I go through this process, so stay posted!