Book Club: Boost Your Django DX

This book club is for Boost Your Django DX (Developer Experience) by Adam Johnson, a member of the Django Technical Board and author of django-mysql (and many, many other repos). His previous book was Speed Up Your Django Tests.

This book has very discrete chapters, so I don’t think it makes sense to do them in a particular order. Instead, we’ll just pick one chapter for a given week for discussion. More detailed descriptions are in the details dropdown below the table.

Chapter

People who are interested

Chapter

People who are interested

2. Documentation

@Jansen Kantor @Awais Jibran (Deactivated)

3. Virtual Environments and Dependencies

 

4. Python Shell

@Awais Jibran (Deactivated)

5. Development Server

@Dave Ormsbee (Axim) @Jeremy Bowman (Deactivated) @Jansen Kantor @Awais Jibran (Deactivated)@Usama Sadiq

6. Code Quality Tools

@Jansen Kantor @Awais Jibran (Deactivated)

7. Further Code Quality Tools

@Feanil Patel @Dave Ormsbee (Axim) @Carlos Muniz (Unlicensed) @Jeremy Bowman (Deactivated) @Jansen Kantor @Awais Jibran (Deactivated)

8. Build Your Own Tools

@Feanil Patel @Dave Ormsbee (Axim) @Ned Batchelder (Deactivated) @Jansen Kantor @Awais Jibran (Deactivated) @Usama Sadiq

9. Settings

@Carlos Muniz (Unlicensed) @Dave Ormsbee (Axim) @Ned Batchelder (Deactivated) @Jeremy Bowman (Deactivated) @Jansen Kantor @Awais Jibran (Deactivated)

10. Models and Migrations

@Carlos Muniz (Unlicensed) @Jeremy Bowman (Deactivated) @Jansen Kantor @Awais Jibran (Deactivated)@Usama Sadiq

11. System Checks

@Carlos Muniz (Unlicensed) @Feanil Patel @Dave Ormsbee (Axim) @Ned Batchelder (Deactivated) @Jeremy Bowman (Deactivated) @Awais Jibran (Deactivated)

 

  1. Origin

    Opening notes, a description of the included examples, acknowledgements, changelog.

  2. Documentation

    Tools to get you to the right documentation, quicker. Covers DevDocs, DuckDuckGo, Bonus Django Documentation Sites, Wget, and some miscellaneous tips.

  3. 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.

  4. Python Shell

    Enhance your Python command line experience. Covers IPython and django-read-only.

  5. Development Server

    Make Django’s runserver better. Covers django-debug-toolbar, Watchman, django-browser-reload, and Rich.

  6. Code Quality Tools

    The key tools to improve your code quality. Covers EditorConfig, pre-commit, Black, isort, and Flake8.

  7. Further Code Quality Tools

    Many extra tools useful for Django development. Covers pyupgrade, django-upgrade, pre-commit-hooks, reorder_python_imports, curlylint, DjHTML, Mypy (barely!), Prettier, ESLint, and Shellcheck.

  8. 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.

  9. Settings

    Tips and patterns for managing Django’s settings file. Covers structuring your settings, a template, some patterns to avoid, and testing settings files.

  10. 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.

  11. System Checks

    Make the most of Django’s built-in runtime code quality framework. Covers how system checks work, how to write and test your own checks, and django-version-checks.

  12. Terminus

    Closing notes with links to further reading, including many things that didn't make it into the book.

Schedule

  • TBD