Querying newline-delimited JSON logs using AWS Athena
2024-03-17
I've been writing my Fly logs to S3 in newline-delimited JSON format using the recipe described in [Writing Fly logs to S3](https://til.simonwillis...
675 words
|
3 minutes
A script to capture frames from a QuickTime video
2024-03-17
I was putting together some notes for a talk I gave, and I wanted an efficient way to create screenshots of specific moments in a video of that talk.
964 words
|
5 minutes
Service Mesh with Istio
2024-03-17
Day 77 of 90 Days of DevOps - Service Mesh with Istio. Part of the Serverless & Advanced Topics series covering essential DevOps concepts and hands-on practices.
370 words
|
2 minutes
Compile and run a new SQLite version with the existing sqlite3 Python library on macOS
2024-03-17
I've been trying to figure this out for years. Previous notes include [Using LD_PRELOAD to run any version of SQLite with Python](https://til.simon...
641 words
|
3 minutes
Atuin for zsh shell history in SQLite
2024-03-16
[Atuin](https://github.com/ellie/atuin) (via [Rhet Turnbull](https://twitter.com/RhetTurnbull/status/1518942324004319232)) "replaces your existing ...
238 words
|
1 minute
Using Jest without a package.json
2024-03-16
I wanted to try out [Jest](https://jestjs.io/) for writing JavaScript unit tests, in a project that wasn't set up with `package.json` and other NPM...
326 words
|
2 minutes
Basic strace to see what a process is doing
2024-03-16
I had a long-running process and I wanted to check that it was at least doing _something_.
289 words
|
1 minute
API Gateway and Microservices
2024-03-16
Day 76 of 90 Days of DevOps - API Gateway and Microservices. Part of the Serverless & Advanced Topics series covering essential DevOps concepts and hands-on practices.
420 words
|
2 minutes
Event-Driven Architecture
2024-03-15
Day 75 of 90 Days of DevOps - Event-Driven Architecture. Part of the Serverless & Advanced Topics series covering essential DevOps concepts and hands-on practices.
718 words
|
4 minutes
Automatically maintaining Homebrew formulas using GitHub Actions
2024-03-15
I previously wrote about [Packaging a Python CLI tool for Homebrew](https://til.simonwillison.net/homebrew/packaging-python-cli-for-homebrew). I've...
886 words
|
4 minutes
Serverless Frameworks and Tools
2024-03-14
Day 74 of 90 Days of DevOps - Serverless Frameworks and Tools. Part of the Serverless & Advanced Topics series covering essential DevOps concepts and hands-on practices.
423 words
|
2 minutes
Running PyPy on macOS using Homebrew
2024-03-14
[Towards Inserting One Billion Rows in SQLite Under A Minute](https://avi.im/blag/2021/fast-sqlite-inserts/) includes this snippet:
298 words
|
1 minute
Azure Functions and Logic Apps
2024-03-13
Day 73 of 90 Days of DevOps - Azure Functions and Logic Apps. Part of the Serverless & Advanced Topics series covering essential DevOps concepts and hands-on practices.
535 words
|
3 minutes
Serving a custom vector web map using PMTiles and maplibre-gl
2024-03-13
[Protomaps](https://protomaps.com/) is "an open source map of the world, deployable as a single static file on cloud storage". It involves some _ve...
1640 words
|
8 minutes
SQLite timestamps with floating point seconds
2024-03-13
Today I learned about this:
177 words
|
1 minute
Docker Compose for Django development
2024-03-12
I had to get Docker Compose working for a Django project, primarily to make it easier for other developers to get a working development environment.
361 words
|
2 minutes
AWS Lambda and Function Development
2024-03-12
Day 72 of 90 Days of DevOps - AWS Lambda and Function Development. Part of the Serverless & Advanced Topics series covering essential DevOps concepts and hands-on practices.
385 words
|
2 minutes
Converting ORF raw files to JPEG on macOS
2024-03-12
One of our cameras takes raw photos in ORF format, which I believe stands for "Olympus Raw Format". Here's a recipe I found for converting them to ...
80 words
|
1 minute
migrations.RunSQL.noop for reversible SQL migrations
2024-03-12
`migrations.RunSQL.noop` provides an easy way to create "reversible" Django SQL migrations, where the reverse operation does nothing (but keeps it ...
77 words
|
1 minute
Mouse support in vim
2024-03-11
Today I learned that if you hit `Esc` in vim and then type `:set mouse=a` and hit enter... vim grows mouse support! In your terminal!
103 words
|
1 minute
Serverless Computing Introduction
2024-03-11
Day 71 of 90 Days of DevOps - Serverless Computing Introduction. Part of the Serverless & Advanced Topics series covering essential DevOps concepts and hands-on practices.
320 words
|
2 minutes
Finding the largest SQLite files on a Mac
2024-03-10
This runs using Spotlight so it's really fast:
159 words
|
1 minute
Security Incident Response
2024-03-10
Day 70 of 90 Days of DevOps - Security Incident Response. Part of the Security & Compliance series covering essential DevOps concepts and hands-on practices.
185 words
|
1 minute
Loading SQLite extensions in Python on macOS
2024-03-10
I finally found a workaround for this error when attempting to load a SQLite extension in Python on macOS:
170 words
|
1 minute