Matrix Live Interview

Thursday, March 12, 2020

I was interviewed for Matrix Live as part of last week’s This Week in Matrix. I talked a bit about my background and my experiences contributing to Mozilla (as part of Instantbird and Thunderbird projects) as well as what I will be working on for Synapse, the reference implementation …

read more →

New Position at New Vector

Tuesday, March 3, 2020

I’m excited to share that a few weeks ago I started a new position at New Vector! They’re the company behind Matrix, “an open network for secure, decentralized communication”.

I’ll be working on the reference backend server software used in Matrix (Synapse). The tech stack overlaps with …

read more →

Squashing Django Migrations

Monday, January 27, 2020

The Django migration system is great for modifying your database schema after a database is live. If you’re like me, you quickly end up with many 10s or 100s of migrations. There’s nothing inherently wrong with this, but there’s a few cases where it gets tiresome to …

read more →

Cleanly removing a Django app (with models)

Thursday, January 23, 2020

While pruning features from our product it was necessary to fully remove some Django apps that had models in them. If the code is just removed than the tables (and some other references) will be left in the database.

After doing this a few times for work I came up …

read more →

Using MySQL’s LOAD DATA with Django

Thursday, January 23, 2020

While attempting to improve performance of bulk inserting data into MySQL database my coworker came across the LOAD DATA SQL statement. It allows you to read data from a text file (in a comma separated variable-like format) and quickly insert it into a table. There’s two variations of it …

read more →