Providing a "subscribe in Google Calendar" link for an ics feed
2024-02-12
If you provide your own custom generated ICS file hosted at a URL it's nice to be able to give Google Calendar users an easy way to subscribe to th...
142 words
|
1 minute
AWS EC2 and Compute Services
2024-02-12
Day 43 of 90 Days of DevOps - AWS EC2 and Compute Services. Part of the Cloud Platforms series covering essential DevOps concepts and hands-on practices.
381 words
|
2 minutes
Enabling the fuzzystrmatch extension in PostgreSQL with a Django migration
2024-02-12
The PostgreSQL [fuzzystrmatch extension](https://www.postgresql.org/docs/13/fuzzystrmatch.html) enables several functions for fuzzy string matching...
76 words
|
1 minute
Using iconv to convert the text encoding of a file
2024-02-12
In [sqlite-utils issue 439](https://github.com/simonw/sqlite-utils/issues/439) I was testing against a CSV file that used UTF16 little endian encod...
203 words
|
1 minute
Finding uses of an API with the new GitHub Code Search
2024-02-12
The [GitHub Code Search beta](https://docs.github.com/en/search-github/github-code-search) is really powerful - it allows advanced search - includi...
315 words
|
2 minutes
AWS Core Services Overview
2024-02-11
Day 42 of 90 Days of DevOps - AWS Core Services Overview. Part of the Cloud Platforms series covering essential DevOps concepts and hands-on practices.
355 words
|
2 minutes
Cloud Computing Fundamentals
2024-02-10
Day 41 of 90 Days of DevOps - Cloud Computing Fundamentals. Part of the Cloud Platforms series covering essential DevOps concepts and hands-on practices.
510 words
|
3 minutes
Kubernetes Security and RBAC
2024-02-09
Day 40 of 90 Days of DevOps - Kubernetes Security and RBAC. Part of the Containerization & Orchestration series covering essential DevOps concepts and hands-on practices.
511 words
|
3 minutes
Kubernetes StatefulSets and Persistent Storage
2024-02-08
Day 39 of 90 Days of DevOps - Kubernetes StatefulSets and Persistent Storage. Part of the Containerization & Orchestration series covering essential DevOps concepts and hands-on practices.
439 words
|
2 minutes
HTML video with subtitles
2024-02-08
Via [Mariatta](https://fosstodon.org/@mariatta/112883308634473940) I found my [PyVideo speaker page](https://pyvideo.org/speaker/simon-willison.htm...
289 words
|
1 minute
Shrinking PNG files with pngquant and oxipng
2024-02-07
I usually use [Squoosh.app](https://squoosh.app/) to reduce the size of my PNGs, but in this case I had a folder with nearly 50 images in it so I w...
203 words
|
1 minute
Kubernetes Ingress and Load Balancing
2024-02-07
Day 38 of 90 Days of DevOps - Kubernetes Ingress and Load Balancing. Part of the Containerization & Orchestration series covering essential DevOps concepts and hands-on practices.
518 words
|
3 minutes
Running multiple servers in a single Bash script
2024-02-06
I spotted [this script](https://github.com/varunshenoy/opendream/blob/main/run_opendream.sh) that starts the [opendream](https://github.com/varunsh...
447 words
|
2 minutes
Kubernetes ConfigMaps and Secrets
2024-02-06
Day 37 of 90 Days of DevOps - Kubernetes ConfigMaps and Secrets. Part of the Containerization & Orchestration series covering essential DevOps concepts and hands-on practices.
0 words
|
1 minute
Streaming output of an indented JSON array
2024-02-05
For [paginate-json]() I wanted to implement streaming output of an indented JSON array to my terminal.
459 words
|
2 minutes
Kubernetes Deployments and Services
2024-02-05
Day 36 of 90 Days of DevOps - Kubernetes Deployments and Services. Part of the Containerization & Orchestration series covering essential DevOps concepts and hands-on practices.
343 words
|
2 minutes
Avoiding "length" errors in Apache Bench with the -l option
2024-02-05
I was using the Apache Bench `ab` command to exercise some new code I'm writing in Datasette and I noticed I was getting a lot of errors:
262 words
|
1 minute
Kubernetes Architecture and Components
2024-02-04
Day 35 of 90 Days of DevOps - Kubernetes Architecture and Components. Part of the Containerization & Orchestration series covering essential DevOps concepts and hands-on practices.
454 words
|
2 minutes
Writing a Datasette CLI plugin that mostly duplicates an existing command
2024-02-03
My new [datasette-gunicorn](https://datasette.io/plugins/datasette-gunicorn) plugin adds a new command to Datasette - `datasette gunicorn` - which ...
831 words
|
4 minutes
GraphQL fragments
2024-02-03
One of [the scripts](https://github.com/simonw/datasette.io/blob/main/build_directory.py) that builds and deploys [datasette.io](https://datasette....
287 words
|
1 minute
Docker Networking and Storage
2024-02-03
Day 34 of 90 Days of DevOps - Docker Networking and Storage. Part of the Containerization & Orchestration series covering essential DevOps concepts and hands-on practices.
521 words
|
3 minutes
Transcribing MP3s with whisper-cpp on macOS
2024-02-02
I asked [on Twitter](https://twitter.com/simonw/status/1783520794754318600) for tips about running Whisper transcriptions in the CLI on my Mac. Wer...
762 words
|
4 minutes
Docker Compose for Multi-Container Apps
2024-02-02
Day 33 of 90 Days of DevOps - Docker Compose for Multi-Container Apps. Part of the Containerization & Orchestration series covering essential DevOps concepts and hands-on practices.
604 words
|
3 minutes