Preorder My New Book: Boost Your Django DX
Developer Experience (DX) is a catch-all term for anything that can improve your development workflow. Such improvements can help you write better code, faster, with fewer bugs.
During my years working with Django, I’ve picked up many tools and techniques to boost “DX”. My upcoming book Boost Your Django DX covers as many of these as possible, so you can learn them too!
The book is inspired by the Japanese concept of kaizen: constant improvement to a process. As such, it teaches you how to use these tools, extend them, and even how to write your own. This way you can constantly revise your development process.
The book contains the following chapters:
Opening notes, a description of the included examples.
Tools to get you to the right documentation, quicker. Covers DevDocs, DuckDuckGo, Bonus Django Documentation Sites, Wget, and some miscellaneous tips.
Virtual Environments and Dependencies
Manage environments, and the dependencies within, correctly and easily. Covers venv, virtualenv, pip-tools, pip-lock, recommended practices for dependency management, and Python’s development mode.
Enhance your Python command line experience. Covers IPython and django-read-only.
runserverbetter. Covers Watchman, django-debug-toolbar, and Rich.
Code Quality Tools
The key tools to improve your code quality. Covers EditorConfig, pre-commit, Black, isort, and Flake8.
Further Code Quality Tools
Many extra tools useful for Django development. Covers pyupgrade, django-upgrade, pre-commit-hooks, reorder_python_imports, Pylint, curlylint, djhtml, Mypy (barely!), Prettier, and ESLint.
Build Your Own Tools
How to make your own code quality tools. Covers pre-commit’s virtual languages, how to write and test a Flake8 plugin, and how to write a pre-commit-compatible command line tool.
Tips and patterns for managing Django’s settings file. Covers structuring your settings, a template, and some patterns to avoid.
Models and Migrations
Tips and tools for managing your data. Covers writing a management command to seed your development database, generating data with Factory Boy, migration safeguard practices, and django-linear-migrations.
Make the most of Django’s built-in runtime code quality framework. Covers how system checks work, some extra packages of checks, and how to write your own checks.
Closing notes with links to further reading.
The book is mostly written, and it’s currently going through beta reading with several groups of beta readers. The final version will be released on January the 10th, with future updates for new Python and Django versions.
Pre-order now on Gumroad for $35 (US dollars), with higher tiers for team licenses. When the book is released, the price will increase to $39. So you can save 10.2564% by pre-ordering!
As with my previous book Speed Up Your Django Tests, I am offering a 50% discount for those outside of the Top 50 countries by GDP. If this is you, email me to say hi, where you live, and what you’re using Django for, and I’ll send you the discount code.
One summary email a week, no spam, I pinky promise.
Tags: django, python