Simon Willison’s Weblog

Subscribe

Thursday, 22nd October 2020

Release pocket-to-sqlite 0.2.1 — Create a SQLite database containing data from your Pocket account
Release inaturalist-to-sqlite 0.2.1 — Create a SQLite database containing your observation history from iNaturalist
TIL Writing JavaScript that responds to media queries — I wanted to change the layout of [my blog](https://simonwillison.net/) on mobile screens such that the content from the "Elsewhere" right hand column combined with the main column in the correct order (issue [#165](https://github.com/simonw/simonwillisonblog/issues/165)). I couldn't find a way to do this in pure CSS without duplicating a bunch of content, so I decided to do it with JavaScript.
Release datasette-cluster-map 0.14 — Datasette plugin that shows a map for any data with latitude/longitude columns
Release sphinx-to-sqlite 0.1a1 — Create a SQLite database from Sphinx documentation

Project LightSpeed: Rewriting the Messenger codebase for a faster, smaller, and simpler messaging app (via) Facebook rewrote their iOS messaging app earlier this year, dropping it from 1.7m lines of code to 360,000 and reducing the binary size to a quarter of what it was. A key part of the new app’s architecture is much heavier reliance on SQLite to coordinate data between views, and to dynamically configure how different views are displayed. They even built their own custom system to add stored procedures to SQLite so they could execute portable business logic inside the database.

# 6:22 pm / facebook, sqlite

CG-SQL (via) This is the toolkit the Facebook Messenger team wrote to bring stored procedures to SQLite. It implements a custom version of the T-SQL language which it uses to generate C code that can then be compiled into a SQLite module.

# 6:25 pm / c, facebook, sqlite