RailsCasts Retrospective Part 1: The Fuel
Sixteen years ago to the day, I started RailsCasts, a screencast series teaching web development using Ruby on Rails. It began with free weekly episodes…
Sixteen years ago to the day, I started RailsCasts, a screencast series teaching web development using Ruby on Rails. It began with free weekly episodes…
In this post, I'll show you a common pitfall you should avoid when teaching during code reviews.
Right. I said in the 8.0.0 blog post that it might be a good release. It was. Apart form the little bug that caused it to crash in several test cases. So now we shipped curl 8.0.1, which is almost identical apart from a single commit that was reverted. Exactly why this was not discovered … Continue reading curl 8.0.1…
I made one of those e-ink weather displays that you see on tech blogs and hacker news sometimes. It can display the current weather, the temperature and precipitation forecast for the rest of the week, and my current and upcoming tasks from Todoist. It's powered by a couple NiMH AA …
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
Rem recently asked:
As a physicist, I’ve learned that the presence of 2 π 2\pi 2 π [▼] [ Or rather τ \tau τ , as it should actually be called . ] in a formula usually spells trouble. It’s kind of annoying to write by hand, easy to forget, and it’s dimensionless, so you can’t easily check if you forgot to divide or multiply by it…
a personal blog
An explanation of the differences between dateutil and pytz's time zone models and why people tend to misuse pytz and introduce bugs into their datetime code.
Many years ago I've re-posted a Stack Overflow answer with Python code for a terse prime sieve function that generates a potentially infinite sequence of prime numbers ("potentially" because it will run out of memory eventually). Since then, I've used this code many times - mostly because it's short and clear. In this…
... they pay, they leave, they drink, they order.
And 2022 is over. The Common Lisp language and environment are solid and stable, yet evolve. Implementations, go-to libraries, best practices, communities evolve. We don’t need a “State of the Ecosystem” every two weeks but still, what happened and what did you miss in 2022?This is my pick of the…
Hey folks, this is a special one. Melange 1.0 The Melange team and I are thrilled to announce the release of Melange 1.0 today, marking a major milestone in...
Automatically Update Your Profile with Fresh Content and Showcase Your Latest Work
[Part of a series: Penrose and hats | Spectres | finite-state transducers | more transducers | refining tilings ]
I describe why AWK is great for prototyping and is often the best alternative to the shell and Python
I wrote a blog post ten years ago. How do I feel about it now?
A good software architecture for a startup looks very different from the one you might build for an enterprise system. Here is what worked for us.
TL;DR: I think that a focus on memory safe languages (MSLs) versus non memory-safe languages is a bit of a red herring. The actual distinction is slightly…
Last month I have been developing a Rust tool to create container images from Conda environments, without going through Docker. It was a wild trip down the rabbit hole of OCI images, so I thought I’d share part of the adventure here. Enjoy! But why? If you are used to building container images, you might be asking…
Exactly one month since the previous release, we are happy to give you curl 8.0.0 released on curl's official 25th birthday. This a major version number bump but without any ground-breaking changes or fireworks. We decided it was about time to reset the minor number down to more a manageable level and doing it exactly…
Notes on personal libraries, collections and small indexes on the web
This December I once again did the Advent of Code , in Rust. If you are interested, my solutions are on Github. I wanted to highlight one particular solution to the day 2 problem as it is both optimized completely beyond the point of reason yet contains a useful technique. For simplicity we’re only going to do part 1…
I wanted to convert some .webp images to .png on my Mac. I asked ChatGPT:
Wouldn't it be great to have a pet AI chat bot that knows you really well, and can give you free consulting, coaching and therapy ? What could possibly go wrong if an intelligent corporate-controlled system has unlimited access to your private data to provide you the best possible service? Well... a lot of things.
(This is a section of the lilos intro guide that people seemed to like, so to increase its visibility, I’m lifting it up into its own post and expanding it a bit. I hope this is a useful companion piece to the post on async debugging I posted this morning.))