Trying out Python packages with ipython and uvx
2024-04-09
I figured out a really simple pattern for experimenting with new Python packages today:
297 words
|
1 minute
Understanding option names in Click
2024-04-09
I hit [a bug today](https://github.com/simonw/datasette/issues/973) where I had defined a Click option called `open` but in doing so I replaced the...
144 words
|
1 minute
Working around the size limit for nodeValue in the DOM
2024-04-09
TIL that `nodeValue` in the DOM has a size limit!
106 words
|
1 minute
This is a simple, lightweight GUI-based Linux distribution designed to run on QEMU.
2024-04-08
This is a simple, lightweight GUI-based Linux distribution designed to run on QEMU.
613 words
|
3 minutes
Escaping strings in Bash using !:q
2024-04-08
TIL this trick, [via Pascal Hirsch](https://twitter.com/phphys/status/1311727268398465029) on Twitter. Enter a line of Bash starting with a `#` com...
153 words
|
1 minute
Testing HTML tables with Playwright Python
2024-04-08
I figured out this pattern today for testing an HTML table dynamically added to a page by JavaScript, using [Playwright Python](https://playwright....
171 words
|
1 minute
Searching for repositories by topic using the GitHub GraphQL API
2024-04-08
I wanted to use the GitHub GraphQL API to return all of the repositories on the https://github.com/topics/git-scraping page.
123 words
|
1 minute
Registering the same Pluggy hook multiple times in a single file
2024-04-06
I found myself wanting to register more than one instance of a [Pluggy](https://pluggy.readthedocs.io/) plugin hook inside a single module.
170 words
|
1 minute
Running pytest against a specific Python version with uv run
2024-04-06
While [working on this issue](https://github.com/simonw/datasette/issues/2461) I figured out a neat pattern for running the tests for my project lo...
185 words
|
1 minute
Syncing slide images and audio in iMovie
2024-04-06
I found an MP3 recording of an old talk I gave and decided to use the slides from that talk to create a video using iMovie.
362 words
|
2 minutes
Understanding the CSS auto-resizing textarea trick
2024-04-06
Chris Coyier [wrote about](https://chriscoyier.net/2023/09/29/css-solves-auto-expanding-textareas-probably-eventually/) the new `form-sizing: norma...
1400 words
|
7 minutes
Filter by comma-separated values in the Django admin
2024-04-05
I have a text column which contains comma-separated values - inherited from an older database schema.
369 words
|
2 minutes
Recursively fetching metadata for all files in a Google Drive folder
2024-04-05
For [google-drive-to-sqlite](https://github.com/simonw/google-drive-to-sqlite) I wanted a mechanism to recursively return metadata on every file in...
542 words
|
3 minutes
90 Days Recap and Next Steps
2024-04-05
Day 96 of 90 Days of DevOps - 90 Days Recap and Next Steps. Part of the Community & Learning series covering essential DevOps concepts and hands-on practices.
3427 words
|
17 minutes
DevOps Success Stories
2024-04-04
Day 95 of 90 Days of DevOps - DevOps Success Stories. Part of the Community & Learning series covering essential DevOps concepts and hands-on practices.
2641 words
|
13 minutes
Building a specific version of SQLite with pysqlite on macOS/Linux
2024-04-04
I wanted the ability to test my Python software against specific version of SQLite on macOS. I found a way to do that using [pysqlite3](https://git...
240 words
|
1 minute
Running Steampipe extensions in sqlite-utils and Datasette
2024-04-03
[Steampipe](https://steampipe.io/) build software that lets you query different APIs directly from SQL databases.
826 words
|
4 minutes
DevOps Future Trends
2024-04-03
Day 94 of 90 Days of DevOps - DevOps Future Trends. Part of the Community & Learning series covering essential DevOps concepts and hands-on practices.
2349 words
|
12 minutes
DevOps Resources and References
2024-04-02
Day 93 of 90 Days of DevOps - DevOps Resources and References. Part of the Community & Learning series covering essential DevOps concepts and hands-on practices.
2086 words
|
10 minutes
Using pytest and Playwright to test a JavaScript web application
2024-04-02
I [decided to add](https://github.com/simonw/datasette-lite/issues/35) automated tests to my [Datasette Lite](https://simonwillison.net/2022/May/4/...
866 words
|
4 minutes
DevOps Certifications and Training
2024-04-01
Day 92 of 90 Days of DevOps - DevOps Certifications and Training. Part of the Community & Learning series covering essential DevOps concepts and hands-on practices.
1381 words
|
7 minutes
Rewriting a repo to contain the history of just specific files
2024-04-01
I wanted to start [a new git repository](https://github.com/simonw/graphql-scraper/tree/828a1efc4307cca6cd378c394c2d33eac2eceb52) containing just t...
510 words
|
3 minutes
Community Contributions and Open Source
2024-03-31
Day 91 of 90 Days of DevOps - Community Contributions and Open Source. Part of the Community & Learning series covering essential DevOps concepts and hands-on practices.
550 words
|
3 minutes
Finding CSV files that start with a BOM using ripgrep
2024-03-31
For [sqlite-utils issue 250](https://github.com/simonw/sqlite-utils/issues/250) I needed to locate some test CSV files that start with a UTF-8 BOM.
184 words
|
1 minute