Jacob Kaplan-Moss

I'm a software developer, co-creator of Django, and an experienced engineering leader. I previously ran teams at 18F and Heroku. I'm currently the Principal Engineer at Hangar, and available for limited consulting engagements through my consultancy, REVSYS.

Writing

Layoffs are Coming 2 weeks, 2 days ago

It's looking increasingly likely that the COVID-19 pandemic will cause a recession. It's easy to think we might be immune from the effects of a global recession, but my experience is that tech companies are quick to cut staff, especially engineers, in the face of declining markets. I hope I'm wrong, but I don't think I am. Either way, it's not going to hurt to prepare.

Django’s new governance model 2 weeks, 3 days ago

Starting today, Django has a new governance model. Previously, a small “core team” made most decisions, including electing a Technical Board to own decisions about each release. Now, the “core team” is gone; all power rests with the Technical Board. Anyone who’s made substantial contributions to Django is now eligible …

The Innovation/Execution Spectrum 1 month, 1 week ago

Lately I've been working with our startups to establish their engineering strategies. One model I've found useful is to place their technical challenge on an innovation/execution spectrum.

Where did we get lucky?” 1 month, 3 weeks ago

Retrospectives are probably the most important software development practice. They build a culture of continuous improvement. We may fail, but we’ll learn and do better next time. (Or, at, least, fail differently.) The most common retrospective practice revolves around some variation of these three questions: “What went well?” “What could …

Demos, Prototypes, and MVPs 2 months, 1 week ago

Much of my work at Hangar involves early product development, helping our startups "break ground" on their products. We're starting with little more than an idea, and maybe some theories from the research, and taking the first steps towards a marketable product. I'm usually building one of three things: a …

Speaking

To ••• With Passwords 4 months, 4 weeks ago

A keynote I gave at North Bay Python 2019

How to Ace a Technical Interview 1 year, 1 month ago

A keynote I gave at PyCon APAC 2019

Let's build a web framework! 2 years, 10 months ago

A tutorial I gave at PyCon US 2017

Implementing multi-factor authentication 4 years ago

A talk I gave at dotSecurity 2016

Django's request/response cycle 4 years, 4 months ago

A talk I gave at Django Under The Hood 2015

Heroku Under The Hood 4 years, 4 months ago

A tutorial I gave at Django Under The Hood 2015

HTTP in Django 4 years, 4 months ago

A talk I gave at Django Under The Hood 2015

Minimum Viable Security 4 years, 6 months ago

A talk I gave at DjangoCon US 2015

Elsewhere

📌 How I Dropped 250 KB of Dead CSS Weight with PurgeCSS | frontstuff #
📌 Kore4 and Python

There’s a bunch of interesting stuff here—async, automatic ssl—but the seccomp stuff is _really_ fascinating. I wonder how hard it’d be to do this with Django? #

📌 Design better data tables - UX Collective

I really like these patterns. I wonder if there’s a good front-end library that makes this stuff easy? I tend to use django-tables2 on the backend, which handles all the sorting/filtering nicely, but the UI leaves something to be desired. #

📌 Resources for measuring cybersecurity: a bibliography #
📌 AWSume: AWS Assume Made Awesome! | AWSume #