Simon Willison’s Weblog

Subscribe

July 2019

47 posts: 1 entry, 14 links, 32 beats

July 14, 2019

Release datasette-auth-github 0.9.1 — Datasette plugin that authenticates users against GitHub

Single sign-on against GitHub using ASGI middleware

I released Datasette 0.29 last weekend, the first version of Datasette to be built on top of ASGI (discussed previously in Porting Datasette to ASGI, and Turtles all the way down).

[... 1,612 words]

Release datasette 0.29.1 — An open source multi-tool for exploring and publishing data

July 19, 2019

Release sqlite-utils 1.6 — Python CLI utility and library for manipulating SQLite databases

July 20, 2019

Unlocking the Department of State’s foreign military training data for good this time (via) I’m so excited about this: Security Force Monitor used Datasette to publish a 200,000 row database of training engagements between the US military and foreign military units, based on their own massive efforts to clean up the official data (from thousands of PDF files). This is pretty much my dream use-case for Datasette, and their future goals are inspiring: “Our hope is that when the next report arrives in a short few months, we will be able to turn it into machine readable data and pass it around the sector in minutes, rather than months.”

# 4:42 am / datasette

Release healthkit-to-sqlite Initial release — Convert an Apple Healthkit export zip to a SQLite database
Release healthkit-to-sqlite 0.2 — Convert an Apple Healthkit export zip to a SQLite database

July 22, 2019

Release healthkit-to-sqlite 0.3 — Convert an Apple Healthkit export zip to a SQLite database

healthkit-to-sqlite. Ever since I got an Apple Watch I’ve been itching to get my hands on the step tracking and health data that it’s been collecting for me. I know it’s there in a SQLite database on my wrist, but I couldn’t figure out how to get it! A few days ago I stumbled across the “Export Health Data” button in the iOS Health app, and it turns out it creates a zip file containing XML with a full dump of the data collected by Apple Health. healthkit-to-sqlite is the tool I’ve built that can read that export and use it to create a SQLite database ready to be queried and explored with Datasette. It’s a pretty basic implementation but it’s already giving me access to over 3 million rows of data. Lots of potential here for interesting work with personal analytics.

# 3:34 am / health, sqlite, datasette, dogsheep

When a rewrite isn’t: rebuilding Slack on the desktop. Slack appear to have pulled off the almost impossible: finishing a complete, incremental rewrite of their core product. They moved from jQuery to React over the course of two years, constantly shipping new features as they went along. The biggest gain was in rewriting their code to support multiple workspaces, which means desktop client users no longer have to run a separate copy of Electron for every workspace they are signed into.

# 6:30 pm / jquery, rewrites, slack, react, electron

July 24, 2019

Targeted diagnostic logging in production (via) Will Sargent defines diagnostic logging as “debug logging statements with an audience”, and proposes controlling this style if logging via a feature flat system to allow detailed logging to be turned on in production against a selected subset if users in order to help debug difficult problems. Lots of great background material in the topic of observability here too.

# 5:44 am / logging, observability

Release healthkit-to-sqlite 0.3.1 — Convert an Apple Healthkit export zip to a SQLite database

Using memory-profiler to debug excessive memory usage in healthkit-to-sqlite. This morning I figured out how to use the memory-profiler module (and mprof command line tool) to debug memory usage of Python processes. I added the details, including screenshots, to this GitHub issue. It helped me knock down RAM usage for my healthkit-to-sqlite from 2.5GB to just 80MB by making smarter usage of the ElementTree pull parser.

# 8:25 am / elementtree, memory, profiling, python, xml

Repository driven development (via) I’m already a big fan of keeping documentation and code in the same repo so you can update them both from within the same code review, but this takes it even further: in repository driven development every aspect of the code and configuration needed to define, document, test and ship a service live in the service repository—all the way down to the configurations for reporting dashboards. This sounds like heaven.

# 8:41 am / git

July 26, 2019

Release healthkit-to-sqlite 0.3.2 — Convert an Apple Healthkit export zip to a SQLite database

July 28, 2019

Release sqlite-utils 1.7 — Python CLI utility and library for manipulating SQLite databases
Release sqlite-utils 1.7.1 — Python CLI utility and library for manipulating SQLite databases

2019 » July

MTWTFSS
1234567
891011121314
15161718192021
22232425262728
293031