Programming Leftovers
-
Roman Kashitsyn ☛ The plan-execute pattern
I feel uneasy about design patterns. On the one hand, my university class on design patterns revived my interest in programming. On the other hand, I find most patterns in the Gang of Four book to be irrelevant to my daily work; they solve problems that a choice of programming language or paradigm creates.
My litmus test of a good design pattern is its cross-disciplinary applicability. I’m more likely to accept an idea that pops up in fields beyond software engineering. And the most convincing patterns are the ones that help me in everyday life.
This article describes a universal pattern that billions of people rely on daily, but software engineers rarely discuss—the plan-execute pattern.
-
Luke Harris ☛ I’m in struct hell
When I last wrote about my form handler project, I had gotten the basic features working: take a form submission and send me an email. This made me so excited that I stopped working on it for the last three weeks. Today I picked it back up again and made progress on two more features: keyword blocklists (yes multiple) and Akismet validation.
-
Rlang ☛ Joining the flock from R: working with data on MotherDuck
With DuckDB releasing
version 1.0.0 on June 3rd, and MotherDuck following with the general availability announcement on June 11th, it is a perfect opportunity to see how both can be used from R. -
Buttondown ☛ Logic for Programmers Update
I spent the early week recovering and the later week working on Logic for Programmers ([init] [update]) because I have a self-imposed deadline of mid-July, backed up by a $1000 toxx clause. Here's where I currently am:
1: The book is now 14k words. About 4k are "basics", covering propositional logic, predicate logic, and set theory. Another 1500 words or so are things like the introduction, appendixes, and preliminary exercises. The rest is "techniques". I'm hoping for 20k words for the pre-alpha first draft.
-
Frédéric Wang: My recent contributions to Gecko (1/3)
Introduction
Igalia has been contributing to the web platform implementations of different web engines for a long time. One of our goals is ensuring that these implementations are interoperable, by relying on various web standards and web platform tests. In July 2023, I happily joined a project that focuses on this goal, and I worked more specifically on the Gecko web engine. One year later, three new features I contributed to are being shipped in Firefox. In this series of blog posts, I’ll give an overview of those features (namely registered custom properties, content visibility, and fetch priority) and my journey to make them “ride the train” as Mozilla people say.
-
Python
-
Seth Michael Larson ☛ CPython vulnerability data infrastructure (CVE and OSV)
Let's talk about some vulnerability data infrastructure for the Python Software Foundation (PSF). In the recent past, most of the vulnerability data processes were manual. This worked okay because the PSF processes a low double-digit number of vulnerabilities each year (2023 saw 12 published vulnerabilities).
However, almost all of this manual processing was being done by me as full-time staff. Imagining this work being done by either someone else on staff or a volunteer isn't great, because it's a non-zero amount of extra work. Automation to the rescue!
-
-
Rust
-
Niko Matsakis: Claiming, auto and otherwise
This blog post proposes adding a third trait,
Claim
, that would live alongsideCopy
andClone
. The goal of this trait is to improve Rust’s existing split, where types are categorized as eitherCopy
(for “plain old data”1 that is safe tomemcpy
) andClone
(for types that require executing custom code or which have destructors). This split has served Rust fairly well but also has some shortcomings that we’ve seen over time, including maintenance hazards, performance footguns, and (at times quite significant) ergonomic pain and user confusion.
-
-
Education
-
Olaf Alders ☛ How I Spent My Perl Toolchain Summit v2024
The Perl Toolchain Summit (PTS) is an annual event, held in Europe, where work on improving the Perl toolchain takes place. I was fortunate to be able to attend PTS once again this year. This year we gathered in Lisbon, Portugal from Thursday, April 25 to Sunday, April 28. This was my 1st trip to Lisbon and my 10th PTS in total.
-
Light Blue Touchpaper ☛ Security and Human Behavior 2024
The seventeenth Security and Human Behavior workshop was hosted by Bruce Schneier at Harvard University in Cambridge, Massachusetts on the 4th and 5th of June 2024 (Schneier blog).
-
Logikal Solutions ☛ New Emacs Book
Most of you already know that I am the author of an award winning The Minimum You Need to Know technical book series. You know the books result from me actually using various languages and tools. They are written in a mentoring format and really serve as off-line storage for my brain. You never want to have to learn something twice. Just be away from something for a few months and you start to forget. By writing the books I don’t have to remember everything, just which book I wrote it in.
This book is written in that same style. Regrettably I didn’t include a Ruminations section at the end.
-
Raspberry Pi ☛ Raspberry Pi at Open Sauce 2024
We had quite the weekend there. We’re just back from Open Sauce 2024 and I don’t think we’ve ever seen so many makers, tech enthusiasts, and YouTubers all together in one place before. This year’s Open Sauce expanded into the Cow Palace venue in San Francisco and definitely felt more gigantic than last year’s inaugural event. Our poor feet; please send help for our feet.
-