Oct. 30, 2019 » Django Chat » [Archived Version]
What does mastery in Django really feel like? We discuss our learning journeys, what’s different after years of experience, how to ask for help, and why coding is a zen experience.
Read MoreOct. 30, 2019 » Django on Matt Layman » [Archived Version]
In this episode, we turned our attention to handling settings and configuration. We discussed different techniques for handling settings, looked at available tools, and started integrating one of the tools into the project. The initial discussion in the stream focused on different ways of doing settings. I talked about what I view as a difference between configuration (mostly static stuff) and settings (dynamic parts of the app). I also discussed where to get settings from.
Read MoreOct. 23, 2019 » Django Chat » [Archived Version]
Middleware makes Django, well, Django, but is poorly understood. In this episode we discuss how middleware works and why it's so important.
Read MoreOct. 23, 2019 » Django on Matt Layman » [Archived Version]
In this episode, we updated Continuous Integration, Nginx, and the Ansible deployment tasks to use WhiteNoise. With all the changes in place, we tested things out to verify that WhiteNoise served up the CSS, JS, and image files. We started with Circle CI. First, I fixed the JS assets cache because the cache key never changed and Circle did not save fresh assets each build. After completing the assets cache, I created a new cache that stored all the static files after running collectstatic.
Read MoreOct. 16, 2019 » Django Chat » [Archived Version]
Signals are a powerful but poorly understood and widely abused feature in Django. We explain how they work and introduce Carlton's "Am I allowed to use signals" test.
Read MoreOct. 9, 2019 » Django Chat » [Archived Version]
EdX is an online education platform used by more than 20 million learners and institutions including MIT and Harvard. We discuss migration from Python 2 to 3, where to put business logic, and the limits of Django defaults on a website at massive scale.
Read MoreOct. 7, 2019 » Instawork Engineering » [Archived Version]
Using Django, Intercooler, and MercurePhoto by Marc-Olivier Jodoin on UnsplashIn a previous post, I described how Instawork doubled our web development productivity by abandoning React and embracing server-rendered pages enhanced with Intercooler.js. A standard React/Redux setup requires a lot of duplicated work; logic has to be written once on the server (as the source of truth), and a second time on the client (for local state management). By doing all UI rendering in our Django codebase, we …
Read MoreOct. 2, 2019 » Django Chat » [Archived Version]
Despite being a "batteries included" framework, Django provides no built-in support for search. And yet almost every website needs it! We discuss how to add search to any Django site via filters and Q objects. Then move on to more advanced options including full text search with PostgreSQL, Elastic, and more.
Read MoreOct. 2, 2019 » Django on Matt Layman » [Archived Version]
In this episode, we added WhiteNoise to the app as a tool for handling static assets. This lets us move away from depending on Nginx for the task and gives shiny new features like Brotli support. We installed WhiteNoise into the requirements.in file and used pip-tools to generate a new requirements.txt. whitenoise[brotli]==4.1.4 Once WhiteNoise was installed, it needed two primary settings changes. Add a new middleware. Change the STATICFILES_STORAGE. MIDDLEWARE = [ .
Read MoreSept. 25, 2019 » Django Chat » [Archived Version]
David is the creator of Ruby on Rails. We discuss "batteries-included" web frameworks, maintaining an open source community, versioning, upgrades, and falling in love with a programming language.
Read More