I'm solidly in favor of the Benevolent Dictator For Life (BDFL) model of open source stewardship. This is how projects from Linux to Python, from Laravel to Ruby, and yes, Rails, have kept their cohesion, decisiveness, and forward motion. It's a model with decades worth of achievements to its name. But it's not a mandate from heaven. It's not infallible.Now I am loathe to eve...
jefftriplett/django-startproject
Django's django-admin startproject and startapp commands include a --template option which can be used to specify an alternative template for generating the initial code.
Jeff Triplett actively maintains his own template for new projects, which includes the pattern that I personally prefer of keeping settings and URLs in a config/ folder. It also configures the ...
Perks of Being a Python Core Developer
Mariatta Wijaya provides a detailed breakdown of the exact capabilities and privileges that are granted to Python core developers - including commit access to the Python main, the ability to write or sponsor PEPs, the ability to vote on new core developers and for the steering council election and financial support from the PSF for travel expenses related ...
Python 3.13's best new features
Trey Hunner highlights some Python 3.13 usability improvements I had missed, mainly around the new REPL.
Pasting a block of code like a class or function that includes blank lines no longer breaks in the REPL - particularly useful if you frequently have LLMs write code for you to try out.
Hitting F2 in the REPL toggles "history mode" which gives you your Pyt...
Erin Kissane, of the Fediversalist Papers, has announced the launch of her new studio, wreckage/salvage. Even though I am off of social media now, I am excited to see what she comes up with, so I’m subscribed to the RSS feed on the site. Personally, I’m pessimistic that it’s possible to have pro-social social media — at least in the sense of social media that is one big network of everybody lik...
These Magic: The Gathering cards are gorgeous. I got rid of my Magic cards years ago, but I am genuinely tempted to buy these just because I love Helvetica Blanc’s art so much. I mean just look at “Teferi’s Ageless Insight”!
Comments, questions, suggestions? Email me at
[email protected].
In a contest between specific suggestions and vague suggestions, the specific suggestion wins. This, according to Mike Monteiro, is how to make choices using The Strong Choice Doctrine.
The way we do this in our house is that a strong choice wins. We call this The Strong Choice Doctrine™. For example: if I say that I want to watch a movie, and Erika says “Let’s watch Invasion of the Bee Girls”...
Carl Hewitt recently remarked that the question what is an agent? is embarrassing for the agent-based computing community in just the same way that the question what is intelligence? is embarrassing for the mainstream AI community. The problem is that although the term is widely used, by many people working in closely related areas, it defies attempts to produce a single universally accepted de...
Frankenstein is a terrific book partly based on how concerned people were about electricity. It captures our fears about the nature of being human but didn’t help anyone really come up with better policies for dealing with electricity. I worry that a lot of AI critics are doing the same thing.
— James Cham
Tags: ai
Cabel Sasser at XOXO
I cannot recommend this talk highly enough for the way it ends. After watching the video dive into this new site that accompanies the talk - an online archive of the works of commercial artist Wes Cook. I too would very much love to see a full scan of The Lost McDonalds Satire Triptych.
Via Andy Baio
Tags: cabel-sasser
Why isn't my `position-try-fallback` working in small spaces?
Opened an anchor bug a couple weeks ago. The most bizarre thing was happening with the auto flip feature of anchor positioning.
See the Pen
Hot text-emphasis by Adam Argyle (@argyleink)
on CodePen.
or so I thought…
prob
#
When I had like > 1000px viewport, the anchored ...
We're often focused on big innovations and breakthrough moments. But what if the real key to long-term success lies in the small, everyday actions we often overlook?
I finally picked up a Teenage Engineering TP-7.I've been experimenting with dictating random ideas lately. And while the phone is typically more convenient, I wanted to have a separate recorder on my desk.The TP-7 is an absolutely charming piece of hardware. Reminds me of all the things I loved about some of those high precision portable Sony products from decades a...
lm.rs: run inference on Language Models locally on the CPU with Rust
lm.rs: run inference on Language Models locally on the CPU with Rust
Impressive new LLM inference implementation in Rust by Samuel Vitorino. I tried it just now on an M2 Mac with 64GB of RAM and got very snappy performance for this Q8 Llama 3.2 1B, with Activity Monitor reporting 980% CPU usage over 13 threads.
Here's how I compiled the library and ran the model:
cd /tmp
git clone https://githu...
$2 H100s: How the GPU Bubble Burst
Fascinating analysis from Eugene Cheah, founder of LLM hosting provider Featherless, discussing GPU economics over the past 12 months.
TLDR: Don’t buy H100s. The market has flipped from shortage ($8/hr) to oversupplied ($2/hr), because of reserved compute resales, open model finetuning, and decline in new foundation model co’s. Rent instead.
Tags: ai, ...
1.
How do you create an internet archive of all human knowledge? (NPR). Transcript of a 12 minute interview with Brewster Kahle, founder of the Internet Archive.
The average life of a webpage before it’s either changed or deleted is a hundred days.
Kahle realised, back in 1996, that our collective digital memory was going to be a problem. He did something about it. The Internet Archive curre...
The primary use of “misinformation” is not to change the beliefs of other people at all. Instead, the vast majority of misinformation is offered as a service for people to maintain their beliefs in face of overwhelming evidence to the contrary.
— Mike Caulfield, via Charlie Warzel
Tags: misinformation
This is the 59th edition of People and Blogs, the series where I ask interesting people to talk about themselves and their blogs. Today we have Chris O'Donnell and his blog, odonnellweb.com
To follow this series subscribe to the newsletter. A new interview will land in your inbox every Friday. Not a fan of newsletters? No problem! You can read the interviews here on the blog or you can subscrib...
School is back in session, sports are in full swing, we’re tossed and turned by the weekly routine. This past month has been a season of fixing and repair and I’m thankful everything went well and we’re (hopefully) through the hard parts.
Fixing electrical problems
Ramping up to Spooky Month, the lights in our house were acting up. We’ve always had the occasional power problem; lights dimming, ...
HTML for People
Blake Watson's brand new HTML tutorial, presented as a free online book (CC BY-NC-SA 4.0, on GitHub). This seems very modern and well thought-out to me. It focuses exclusively on HTML, skipping JavaScript entirely and teaching with Simple.css to avoid needing to dig into CSS while still producing sites that are pleasing to look at. It even touches on Web Components (described as...
Providing validation, strength, and stability to people who feel gaslit and dismissed and forgotten can help them feel stronger and surer in their decisions. These pieces made me understand that journalism can be a caretaking profession, even if it is never really thought about in those terms. It is often framed in terms of antagonism. Speaking truth to power turns into being hard-nosed and rem...
Bridging Language Gaps in Multilingual Embeddings via Contrastive Learning
Bridging Language Gaps in Multilingual Embeddings via Contrastive Learning
Most text embeddings models suffer from a "language gap", where phrases in different languages with the same semantic meaning end up with embedding vectors that aren't clustered together.
Jina claim their new jina-embeddings-v3 (CC BY-NC 4.0, which means you need to license it for commercial use if you're not using their...
Announcing Deno 2
The big focus of Deno 2 is compatibility with the existing Node.js and npm ecosystem:
Deno 2 takes all of the features developers love about Deno 1.x — zero-config, all-in-one toolchain for JavaScript and TypeScript development, web standard API support, secure by default — and makes it fully backwards compatible with Node and npm (in ESM).
The npm support is documented here...
The truth behind Polymarket’s Trump odds: When betting becomes a game of perception.Prediction markets have always been intriguing, especially when big events like elections are on the line. They take the buzz of public opinion and turn it into odds, promising to predict outcomes better than pollsters
Forums are still alive, active, and a treasure trove of information
Forums are still alive, active, and a treasure trove of information
Chris Person:
When I want information, like the real stuff, I go to forums. Over the years, forums did not really get smaller, so much as the rest of the internet just got bigger. Reddit, Discord and Facebook groups have filled a lot of that space, but there is just certain information that requires the dedication of adults wh...
Free Threaded Python With Asyncio
Jamie Chang expanded my free-threaded Python experiment from a few months ago to explore the interaction between Python's asyncio and the new GIL-free build of Python 3.13.
The results look really promising. Jamie says:
Generally when it comes to Asyncio, the discussion around it is always about the performance or lack there of. Whilst peroformance is certain ...
So there I am, having an issue where my UI state isn’t updating correctly. What do I do? What every developer does: turn to console.log() and troubleshoot by logging values.
I have a named color (e.g. blue) and a corresponding HSL color string for that named color (e.g. 100 50% 0%). I log those in the click handler function where I expect the color to change.
onClick={() => {
// Some stuff...
The Fair Source Definition
Fail Source (fair.io) is the new-ish initiative from Chad Whitacre and Sentry aimed at providing an alternative licensing philosophy that provides additional protection for the business models of companies that release their code.
I like that they're establishing a new brand for this and making it clear that it's a separate concept from Open Source. Here's their defin...
On X, Dinesh Kherajani asked:"How should you handle a customer who has outgrown your B2B SaaS product? The customer has been using it for years, but has scaled up and no longer fits your ICP. This is one of your largest customer."(https://x.com/DineshKherajani/status/1843539478864114113)My answer:People outgrow all sorts of things. Clothes, houses, jobs, relationships. And yes, sof...
otterwiki
It's been a while since I've seen a new-ish Wiki implementation, and this one by Ralph Thesen is really nice. It's written in Python (Flask + SQLAlchemy + mistune for Markdown + GitPython) and keeps all of the actual wiki content as Markdown files in a local Git repository.
The installation instructions are a little in-depth as they assume a production installation with Docker or sys...
The Nostalgia Vote: Why Politicians are Selling a Return to an Idealized Past
From MAGA to Putin’s Russia, here’s how leaders weaponize nostalgia to seize power.Nostalgia is a powerful emotion, isn’t it. A bittersweet longing for a time when life seemed simpler, more certain, and, most importantly (and vaguely) better. It’s the mental tug
openai/openai-realtime-console
I got this OpenAI demo repository working today - it's an extremely easy way to get started playing around with the new Realtime voice API they announced at DevDay last week:
cd /tmp
git clone https://github.com/openai/openai-realtime-console
cd openai-realtime-console
npm i
npm start
That starts a localhost:3000 server running the demo React application. It asks...
Automattic demanding 8% of WP Engine's revenues because they're not "giving back enough" to WordPress is a wanton violation of general open source ideals and the specifics of the GPL license. Automattic is completely out of line, and the potential damage to the open source world extends far beyond the WordPress. Don't let the drama or its characters distract you from th...
If we had $1,000,000…
Jacob Kaplan-Moss gave my favorite talk at DjangoCon this year, imagining what the Django Software Foundation could do if it quadrupled its annual income to $1 million and laying out a realistic path for getting there. Jacob suggests leaning more into large donors than increasing our small donor base:
It’s far easier for me to picture convincing eight or ten or fifteen la...
Anthropic: Message Batches (beta)
Anthropic now have a batch mode, allowing you to send prompts to Claude in batches which will be processed within 24 hours (though probably much faster than that) and come at a 50% price discount.
This matches the batch models offered by OpenAI and by Google Gemini, both of which also provide a 50% discount.
Via @alexalbert__
Tags: gemini, anthropic,...
Elon Musk and JK Rowling used to inspire millions—now they’re spreading hate. Here’s how wealth distorts morality.Elon Musk, the driving force behind Tesla, SpaceX, and Neuralink used to be called a visionary. We said he was the man who would lead humanity to
Django Commons
Django Commons is a really promising initiative started by Tim Schilling, aimed at the problem of keeping key Django community projects responsibly maintained on a long-term basis.
Django Commons is an organization dedicated to supporting the community's efforts to maintain packages. It seeks to improve the maintenance experience for all contributors; reducing the barrier to ent...
Another unscheduled, occasional dump of things I recently liked and disliked. In no particular order. Let’s go!
Liked
Beastie Boys - Fight For Your Right (Revisited) Full Length
Making Apple Vision Pro
Insanely Great: The Apple Mac at 40
Windows 10 Desktop
Bob James: Tiny Desk Concert
Disliked
“Bug fixes and improvement” kinda release notes
People watching videos in public trans...
Silicon Valley has a reputation for youth worship. The 'move fast and break things' mentality often translates to a preference for younger, supposedly more adaptable workers.
Thoughts on the Treasurer Role at Tech NonProfits
Will Vincent, Django Software Foundation treasurer from 2020-2022, explains what’s involved in the non-profit role with the highest level of responsibility and trust.
Tags: dsf, django
What's New In Python 3.13
It's Python 3.13 release day today. The big signature features are a better REPL with improved error messages, an option to run Python without the GIL and the beginnings of the new JIT. Here are some of the smaller highlights I spotted while perusing the release notes.
iOS and Android are both now Tier 3 supported platforms, thanks to the efforts of Russell Keith...
What's New in Ruby on Rails 8
Rails 8 takes SQLite from a lightweight development tool to a reliable choice for production use, thanks to extensive work on the SQLite adapter and Ruby driver.
With the introduction of the solid adapters discussed above, SQLite now has the capability to power Action Cable, Rails.cache, and Active Job effectively, expanding its role beyond just prototyping o...
Ryan Dahl was on The Changelog to talk about Deno 2 specifically and his work on JavaScript more broadly. What follows are a few things that stood out to me.
His Regrets From Node Are Now in Deno
I think it’s interesting that Ryan’s famous talk 10 Things I Regret About Node.js served as the manifesto and launching point for Deno. And yet, he’s now re-introduced some of those regrets into Deno —...
Datasette 0.65
Python 3.13 was released today, which broke compatibility with the Datasette 0.x series due to an issue with an underlying dependency. I've fixed that problem by vendoring and fixing the dependency and the new 0.65 release works on Python 3.13 (but drops support for Python 3.8, which is EOL this month). Datasette 1.0a16 added support for Python 3.13 last month.
Tags: projec...
“Nature, it just does whatever the fuck it wants when you aren’t looking.” I think that’s the best description of gardening I’ve ever heard.
The other day, Hollie shared this conversation she had with her housemate about his work to turn the lot next to their house into an urban food forest. It reminds me of my own struggles with our yard. Coincidentally, earlier that day I’d stumbled across ...
fav.farm
Neat little site by Wes Bos: it serves SVG (or PNG for Safari) favicons of every Emoji, which can be added to any site like this:
<link rel="icon" href="https://fav.farm/🔥" />
The source code is on GitHub. It runs on Deno and Deno Deploy, and recently added per-Emoji hit counters powered by the Deno KV store, implemented in db.ts using this pattern:
export function incrementCou...
VTracer
VTracer is an open source library written in Rust for converting raster images (JPEG, PNG etc) to vector SVG.
This VTracer web app provides access to a WebAssembly compiled version of the library, with a UI that lets you open images, tweak the various options and download the resulting SVG.
I heard about this today on Twitter in a reply to my tweet demonstrating a much, much simpler Im...
Being a developer sometimes feels like being the goalkeeper in a soccer match. You make a hundred great saves, and no one bats an eye. But let one ball slip through, and suddenly you're the village idiot.
SVG to JPG/PNG
The latest in my ongoing series of interactive HTML and JavaScript tools written almost entirely by LLMs. This one lets you paste in (or open-from-file, or drag-onto-page) some SVG and then use that to render a JPEG or PNG image of your desired width.
I built this using Claude 3.5 Sonnet, initially as an Artifact and later in a code editor since some of the features (loading an ...
Students who use AI as a crutch don’t learn anything. It prevents them from thinking. Instead, using AI as co-intelligence is important because it increases your capabilities and also keeps you in the loop. […]
AI does so many things that we need to set guardrails on what we don’t want to give up. It’s a very weird, general-purpose technology, which means it will affect all kinds of things, and...
UV with GitHub Actions to run an RSS to README project
UV with GitHub Actions to run an RSS to README project
Jeff Triplett demonstrates a very neat pattern for using uv to run Python scripts with their dependencies inside of GitHub Actions. First, add uv to the workflow using the setup-uv action:
- uses: astral-sh/setup-uv@v3
with:
enable-cache: true
cache-dependency-glob: "*.py"
This enables the caching feature, which stores uv's own c...
My brother once said of someone, “they strike me as being very intelligent, but not particularly thoughtful.” This distinction has had a profound effect on me. It’s hard for me to pin down what intelligence is, exactly. When I think of someone who is intelligent, I think of someone capable of understanding complex ideas, perhaps someone who has assimilated a lot of knowledge and makes connectio...
Quick PSA for the very kind people who decided to support what I do over on Ko-Fi. I recently noticed that some memberships were getting stuck with a pending label even though they were working fine in the months before. Apparently, that’s caused by a bug—probably on the Ko-Fi side but still can’t say for sure—and if you were a supporter affected by this you probably didn’t even get an email no...
The problem with software estimates is that they're both entirely right and entirely wrong.Yes there's a 3 week version of something. And a 6 week version. And a 4 month version. And a 12 month version. That's correct.Yet, you'll almost always be wrong whichever you pick. Because estimates aren't walls — they're windows. Too easy to open and climb through to the next ...
The other day in our morning rush before school my wife asked for help figuring out how to put lunch money on our kids’ school accounts.
For some time she’s been doing it “the hard way”: talk to the people in the front office of the school every few months and swipe a credit card. Every time she did it, they would remind her there was an “easier and more convenient” way to do it via an app. Bu...
fraidycat seems like a really cool way to follow blogs and other websites. It’s kind of just bookmarks that check the sites for recent updates. It seems like it solves a couple of problems:
Your feed is not presented to you as another inbox that you have to get through
You read posts on the author’s site
There are a few media outlets I follow — like Streetsblog — that publish a lot and that t...
Douglas Murray’s Op-Ed on Fact Checking is Not Very Good
Douglas Murray calls out media bias—but his own op-ed is a case study in partisan double standards.In his recent Op-Ed about media bias, Douglas Murray demonstrates precisely why half-baked, half-assed media criticism does more harm than good. Murray, a conservative internet influencer known more for his provocative
This is the 58th edition of People and Blogs, the series where I ask interesting people to talk about themselves and their blogs. Today we have Xanthe Tynehorne and their blog, satyrs.eu
To follow this series subscribe to the newsletter. A new interview will land in your inbox every Friday. Not a fan of newsletters? No problem! You can read the interviews here on the blog or you can subscribe t...
If you want to do great things, you'll need people with skills that complement yours. You can't do everything yourself. You need a team. You need an army. You need to build your army.
Kamal was our ticket out of the cloud. A simple tool for deploying containerized applications onto our own hardware, without the need for the complexity of something like Kubernetes. Kamal 2 is a huge leap forward for that tool, and it has just shipped. Now you can deploy multiple applications to the same server, and you can have SSL certificates automatically provisioned via Let's Encry...
Ep #91Season 5 Wrap
Una and I recap our favorite moments from the season: popovers, dialogs, top layers, trig functions, color functions, :has() tricks, balanced text wrapping, linear() easing, nesting, anchoring, state queries, view transitions, and scroll driven animation.
What a year for CSS!
Watch ·
Listen
Ok hear me out iPhones should have a sense of shame
I was flying (not this trip; I took the train to Amsterdam) and the guy in-front of me didn’t activate airplane mode, just browsed reddit till he lost reception. Then got back on coming down. I glared at him invisibly from between the seatbacks.
And that’s fine I guess? Like I doubt airplane mode actually matters, planes have got to be pretty well radio-hardened. Do what you want.
But.
He was ...
Over on StreetsBlog, Kea Wilson makes a strong case for how we need consequences, not punishment, for reckless driving.
Consequences, Singer explained, "are the direct effect of an action; they’re guaranteed, and they teach a lesson." When a driver strikes a concrete bollard separating a bike lane from the driving lane, a mangled bumper and the steep repair bill that follows are both...
With @property now being Baseline Newly Available, I thought it’d be a good time benchmark the impact – if any – it has on the performance of your CSS. When starting to use a new CSS feature it’s important to understand its impact on the performance of your websites, whether positive or negative. With @property … Continue reading "Benchmarking the performance of CSS @property"
This was a few days ago. Today's pouring and we got so much rain over the night that the entire village is currently powered by a big ass generator they had to install overnight. I live next to the mountains but I'm considering buying a boat.
Thank you for keeping RSS alive. You're awesome.
Email me ::
Sign my guestbook ::
...
Staying Sane in the 24/7 News Cycle: A Tech Journalist's Guide to Information Balance
Feeling overwhelmed by the news? You’re not alone—here’s how to break free from the 24/7 info flood.Imagine standing at the base of a mountain, frozen in place and watching as an avalanche of snow cascades down towards you. Now, replace that snow
As a founder, you're always on the lookout for smart ways to grow your startup without burning through your limited resources. That's where the barnacle strategy comes in.
When Tasked with a Problem, Start with the Bigger Picture
When faced with a challenge, I always step back to see the whole picture first. It's like pausing a complex strategy game to study the map. You might lose a few seconds of play time, but you gain a crucial understanding of the battlefield.
The other day I saw a meme that went something like this:
Isn’t it crappy how basic human activities like singing, dancing, and making art have been turned into skills instead of being recognized as behaviors? The point of doing these things has become to get good at them. But they should be recognized as things humans do innately, like how birds sing or bees make hives.
I thought about that fo...
Bramus investigates and reports on CSS custom property performances. What are the performance inpacts of registered and unregistered custom properties?
web.dev/blog/at-property-performance