updated at 2:11 PM
favicon Simon Willison’s Weblog

o3-mini is really good at writing internal documentation

o3-mini is really good at writing internal documentation I wanted to refresh my knowledge of how the Datasette permissions system works today. I already have extensive hand-written documentation for that, but I thought it would be interesting to see if I could derive any insights from running an LLM against the codebase. o3-mini has an input limit of 200,000 tokens. I used LLM and my files-to-p...
Read article
favicon Simon Willison’s Weblog

Ambsheets: Spreadsheets for exploring scenarios

Ambsheets: Spreadsheets for exploring scenarios Delightful UI experiment by Alex Warth and Geoffrey Litt at Ink & Switch, exploring the idea of a spreadsheet with cells that can handle multiple values at once, which they call "amb" (for "ambiguous") values. A single sheet can then be used to model multiple scenarios. Here the cell for "Car" contains {500, 1200} and the cell for "Apartment" ...
Read article
favicon Simon Willison’s Weblog

AI-generated slop is already in your public library

AI-generated slop is already in your public library US libraries that use the Hoopla system to offer ebooks to their patrons sign agreements where they pay a license fee for anything selected by one of their members that's in the Hoopla catalog. The Hoopla catalog is increasingly filling up with junk AI slop ebooks like "Fatty Liver Diet Cookbook: 2000 Days of Simple and Flavorful Recipes for a...
Read article
favicon @Westenberg

Who Am I, While the World Burns?

I inhabit three worlds, each pulling me in different directions. This blog, where I write about technology, culture, and media’s future, is a space where I should be free to explore ideas. Signalvs, my media and marketing startup, where clients depend on me for strategy and growth
Read article
favicon Simon Willison’s Weblog

Animating Rick and Morty One Pixel at a Time

Animating Rick and Morty One Pixel at a Time Daniel Hooper says he spent 8 months working on the post, the culmination of which is an animation of Rick from Rick and Morty, implemented in 240 lines of GLSL - the OpenGL Shading Language which apparently has been directly supported by browsers for many years. The result is a comprehensive GLSL tutorial, complete with interactive examples of each ...
Read article
favicon Jim Nielsen

Blown Away By the Unexpected

A friend gave me a copy of the book “Perfect Wave” by Dave Hickey. I’ve been slowly reading through each essay and highlighting parts with my red pencil. When I got to the chapter “Cool on Cool”, this passage stood out. I want to write it down and share it: there was this perfect, luminous pop single by the Carpenters that just blew me away. And, believe me, the Carpenters were the farthest t...
Read article
favicon Darth Mall

I Was Just Stretching

(Four-year-old yawns) Me: Someone’s tired. 4-year-old: I’m not! Me: That was a pretty big yawn… 4-year-old: I was just stretching. Me: Stretching your jaw… 4-year-old: Yes. Comments, questions, suggestions? Email me at [email protected].
Read article
favicon Simon Willison’s Weblog

Build a link blog

Build a link blog Xuanwo started a link blog inspired by my article My approach to running a link blog, and in a delightful piece of recursion his first post is a link blog entry about my post about link blogging, following my tips on quoting liberally and including extra commentary. I decided to follow simon's approach to creating a link blog, where I can share interesting links I find on the...
Read article
favicon lcamtuf’s thing | Substack

What's the deal with magnetic fields?

I apologize, but there won't be any Insane Clown Posse jokes in this article.
Read article
favicon Jason Fried

We increased conversion ~30% and we don't know exactly how

Not too long ago, we dedicated a 6-week cycle to improving Basecamp's onboarding flows.The aim was to increase conversion from trial to paid by smoothing out the initial experience of getting going, doing a better job of quick-teaching the basics, and making a few things a little bit easier each step of the way.At a high level, these were the projects in that 6-week period:Adding a sampl...
Read article
favicon Simon Willison’s Weblog

Constitutional Classifiers: Defending against universal jailbreaks

Constitutional Classifiers: Defending against universal jailbreaks Interesting new research from Anthropic, resulting in the paper Constitutional Classifiers: Defending against Universal Jailbreaks across Thousands of Hours of Red Teaming. From the paper: In particular, we introduce Constitutional Classifiers, a framework that trains classifier safeguards using explicit constitutional rules (§...
Read article
favicon Lynn Fisher

Blog Questions Challenge 2025

I was tagged to answer these questions by Zach Leatherman as part of the larger Blog Questions Challenge originally started by ava.I’ll pass the baton to you, dear reader (if you haven’t already done it)!1. Why did you start blogging?I think I got a taste with LiveJournal in the early ’00s and then around 2007-2010, the best stuff was being shared via personal blogs, so I started one. It was/is...
Read article
favicon Simon Willison’s Weblog

A computer can never be held accountable

A computer can never be held accountable This legendary page from an internal IBM training in 1979 could not be more appropriate for our new age of AI. A computer can never be held accountable Therefore a computer must never make a management decision Back in June 2024 I asked on Twitter if anyone had more information on the original source. Jonty Wareing replied: It was found by someone go...
Read article
favicon @Westenberg

How to Make Something People Give a Shit About

I.Most things fail because nobody cares. Look around. The world drowns in mediocrity, in projects launched with hope and abandoned in silence. Your inbox probably contains seventeen newsletters you never read. Your phone hosts thirty-two apps you never open. Your Kindle holds twenty-four unfinished books about productivity.But sometimes&
Read article
favicon Matthias Zöchling

Blog Questions Challenge

Last week, Jeremy Keith tagged me to take part in the Blog Questions Challenge … well, not me per se, but everyone who has read his blog post on the subject, where he did follow suit after being tagged. The goal is to answer a particular set of questions. So let me get right to it. Why did you start blogging in the first place? I’ve been tinkering with websites since forever, and already in tho...
Read article
favicon Adam Argyle

New Footer Went Big

New <footer>, Went big.
Read article
favicon Baselines Report

BCD New Universal Implementations Report, Mon Feb 03 2025

Weekly summary of new Baseline items in BCD data
Read article
favicon Simon Willison’s Weblog

Quoting Anthropic

While we encourage people to use AI systems during their role to help them work faster and more effectively, please do not use AI assistants during the application process. We want to understand your personal interest in Anthropic without mediation through an AI system, and we also want to evaluate your non-AI-assisted communication skills. Please indicate 'Yes' if you have read and agree. Why ...
Read article
favicon Simon Willison’s Weblog

OpenAI reasoning models: Advice on prompting

OpenAI reasoning models: Advice on prompting OpenAI's documentation for their o1 and o3 "reasoning models" includes some interesting tips on how to best prompt them: Developer messages are the new system messages: Starting with o1-2024-12-17, reasoning models support developer messages rather than system messages, to align with the chain of command behavior described in the model spec. This...
Read article
favicon Jim Nielsen

UI Pace Layers

Jeremy Keith, Chris Coyier, and others (see Jeremy’s post) have written about the idea of “pace layers” and now I’m going to take a stab at applying it to user interface primitives. First, let’s start with a line of reasoning: Common user interface controls — such as checkboxes or radios — should be visually and functionally consistent. This provides users a uniform, predictable interface for ...
Read article
favicon Simon Willison’s Weblog

Quoting Benedict Evans

Part of the concept of ‘Disruption’ is that important new technologies tend to be bad at the things that matter to the previous generation of technology, but they do something else important instead. Asking if an LLM can do very specific and precise information retrieval might be like asking if an Apple II can match the uptime of a mainframe, or asking if you can build Photoshop inside Netscape...
Read article
favicon Dave Rupert

On government efficiency

It’s a secret to everyone! This post is for RSS subscribers only. Read more about RSS Club. I used to believe that the goal of the government should be efficiency. If the government was more efficient (waves hands broadly in the air), you could get rid of waste (again, waiving hands) and you’d need less taxes, and that would trickle down (more hands) as more money in people’s pockets, and you’...
Read article
favicon Darth Mall

The Darth Mall’s Guiding Principles

Tracy Durnell published her principles for her website, which I thought was an interesting exercise in self-reflection, and it got me thinking about the principles that guide my own decisions for this website. Privacy first Accessible (by default) Be positive Don’t be a website about having a website Link generously Privacy first Everyone is entitled to privacy, and I respect that. I don’t us...
Read article
favicon Simon Willison’s Weblog

Quoting Sam Altman

[In response to a question about releasing model weights] Yes, we are discussing. I personally think we have been on the wrong side of history here and need to figure out a different open source strategy; not everyone at OpenAI shares this view, and it's also not our current highest priority. — Sam Altman, in a Reddit AMA Tags: openai, llms, ai, generative-ai, open-source
Read article
favicon Simon Willison’s Weblog

llm-anthropic

llm-anthropic I've renamed my llm-claude-3 plugin to llm-anthropic, on the basis that Claude 4 will probably happen at some point so this is a better name for the plugin. If you're a previous user of llm-claude-3 you can upgrade to the new plugin like this: llm install -U llm-claude-3 This should remove the old plugin and install the new one, because the latest llm-claude-3 depends on llm-anth...
Read article
favicon Simon Willison’s Weblog

A professional workflow for translation using LLMs

A professional workflow for translation using LLMs Tom Gally is a professional translator who has been exploring the use of LLMs since the release of GPT-4. In this Hacker News comment he shares a detailed workflow for how he uses them to assist in that process. Tom starts with the source text and custom instructions, including context for how the translation will be used. Here's an imaginary e...
Read article
favicon Simon Willison’s Weblog

Hacker News conversation on feature flags

Hacker News conversation on feature flags I posted the following comment in a thread on Hacker News about feature flags, in response to this article It’s OK to hardcode feature flags. This kicked off a very high quality conversation on build-vs-buy and running feature flags at scale involving a bunch of very experienced and knowledgeable people. I recommend reading the comments. The single big...
Read article
favicon Simon Willison’s Weblog

Quoting Daniel Litt

Basically any resource on a difficult subject—a colleague, Google, a published paper—will be wrong or incomplete in various ways. Usefulness isn’t only a matter of correctness. For example, suppose a colleague has a question she thinks I might know the answer to. Good news: I have some intuition and say something. Then we realize it doesn’t quite make sense, and go back and forth until we conve...
Read article
favicon @Westenberg

The Weight of Your Word

Your word creates reality. When you declare “I will,” you forge a contract with the future. What that contract is worth — well, that’s entirely up to you.I’ve met a lot of folks who treat promises like so much confetti. They
Read article
favicon Darth Mall

The 100 Pics Challenge

Heard about this 100 photos in 365 days challenge over on Notes by JCProbably. Sounds fun. Spread the word if you or anyone you know enjoys photography. Comments, questions, suggestions? Email me at [email protected].
Read article
favicon Labnotes (by Assaf Arkin)

Weekend Reading — On energy saving mode

I'm Not Lazy, I'm on Energy Saving Mode Current status Tech Stuff Trammell Hudson “my new years resolution is 80x25” Jake Rayson “If you think technology will solve your problems, you don’t understand technology and you don’t understand your
Read article
favicon Paweł Grzybek

Top picks — 2025 January

We are kicking 2025 off with a lengthy list of great resources that you shouldn’t miss. There is a bunch of CSS wisdom waiting for you here, a number of performance-related resources, and a few bits and bobs for lower-level programming enthusiasts. As always, we are kicking things off with a record recommendation that I have been listening to the most this month. Let’s go! Album of...
Read article
favicon Simon Willison’s Weblog

OpenAI o3-mini, now available in LLM

OpenAI's o3-mini is out today. As with other o-series models it's a slightly difficult one to evaluate - we now need to decide if a prompt is best run using GPT-4o, o1, o3-mini or (if we have access) o1 Pro. Confusing matters further, the benchmarks in the o3-mini system card (PDF) aren't a universal win for o3-mini across all categories. It generally benchmarks higher than GPT-4o and o1 but no...
Read article
favicon Simon Willison’s Weblog

Latest black (25.1.0) adds a newline after docstring and before pass in an exception class

Latest black (25.1.0) adds a newline after docstring and before pass in an exception class I filed a bug report against Black when the latest release - 25.1.0 - reformatted the following code to add an ugly (to me) newline between the docstring and the pass: class ModelError(Exception): "Models can raise this error, which will be displayed to the user" pass Black maintainer Jelle Zijl...
Read article
favicon Simon Willison’s Weblog

openai-realtime-solar-system

openai-realtime-solar-system This was my favourite demo from OpenAI DevDay back in October - a voice-driven exploration of the solar system, developed by Katia Gil Guzman, where you could say things out loud like "show me Mars" and it would zoom around showing you different planetary bodies. OpenAI finally released the code for it, now upgraded to use the new, easier to use WebRTC API they rel...
Read article
favicon David Heinemeier Hansson

It burns

The first time we had to evacuate Malibu this season was during the Franklin fire in early December. We went to bed with our bags packed, thinking they'd probably get it under control. But by 2am, the roaring blades of fire choppers shaking the house got us up. As we sped down the canyon towards Pacific Coast Highway (PCH), the fire had reached the ridge across from ours, and flames were...
Read article
favicon Manuel Moreale

P&B: Donny Truong

This is the 75th edition of People and Blogs, the series where I ask interesting people to talk about themselves and their blogs. Today we have Donny Truong and his blog, visualgui.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 subscribe to ...
Read article
favicon Simon Willison’s Weblog

The surprising way to save memory with BytesIO

The surprising way to save memory with BytesIO Itamar Turner-Trauring explains that if you have a BytesIO object in Python calling .read() on it will create a full copy of that object, doubling the amount of memory used - but calling .getvalue() returns a bytes object that uses no additional memory, instead using copy-on-write. .getbuffer() is another memory-efficient option but it returns a me...
Read article
favicon Simon Willison’s Weblog

Datasette Public Office Hours 31st Jan at 2pm Pacific

Datasette Public Office Hours 31st Jan at 2pm Pacific We're running another Datasette Public Office Hours session on Friday 31st January at 2pm Pacific (more timezones here). We'll be featuring demos from the community again - take a look at the videos of the six demos from our last session for an idea of what to expect. If you have something you would like to show, please drop us a line! We s...
Read article
favicon Interconnected

Strava when you’re not as quick as you used to be

Part of getting older is finding that my PBs each time I train up - personal bests - are not as quick as they were before. I record my runs on Strava but really I don’t need to check, I remember my old pace. As an on-and-off-again runner who is motivated each time round by getting better at it, slowing down is something I’ve had to find peace with. I’ve managed to do that now, it took a year o...
Read article
favicon Simon Willison’s Weblog

Quoting Ashlee Vance

Eventually, however, HudZah wore Claude down. He filled his Project with the e-mail conversations he’d been having with fusor hobbyists, parts lists for things he’d bought off Amazon, spreadsheets, sections of books and diagrams. HudZah also changed his questions to Claude from general ones to more specific ones. This flood of information and better probing seemed to convince Claude that HudZah...
Read article
favicon Simon Willison’s Weblog

PyPI now supports project archival

PyPI now supports project archival Neat new PyPI feature, similar to GitHub's archiving repositories feature. You can now mark a PyPI project as "archived", making it clear that no new releases are planned (though you can switch back out of that mode later if you need to). I like the sound of these future plans around this topic: Project archival is the first step in a larger project, aimed at...
Read article
favicon Simon Willison’s Weblog

Mistral Small 3

Mistral Small 3 First model release of 2025 for French AI lab Mistral, who describe Mistral Small 3 as "a latency-optimized 24B-parameter model released under the Apache 2.0 license." More notably, they claim the following: Mistral Small 3 is competitive with larger models such as Llama 3.3 70B or Qwen 32B, and is an excellent open replacement for opaque proprietary models like GPT4o-mini. Mis...
Read article
favicon Simon Willison’s Weblog

Quoting Antiqua et Nova

104. Technology offers remarkable tools to oversee and develop the world's resources. However, in some cases, humanity is increasingly ceding control of these resources to machines. Within some circles of scientists and futurists, there is optimism about the potential of artificial general intelligence (AGI), a hypothetical form of AI that would match or surpass human intelligence and bring abo...
Read article
favicon Simon Willison’s Weblog

Quoting Mark Zuckerberg

Llama 4 is making great progress in training. Llama 4 mini is done with pre-training and our reasoning models and larger model are looking good too. Our goal with Llama 3 was to make open source competitive with closed models, and our goal for Llama 4 is to lead. Llama 4 will be natively multimodal -- it's an omni-model -- and it will have agentic capabilities, so it's going to be novel and it'...
Read article
favicon @Westenberg

Trust Me. You Don't Want to Go Viral.

Going viral feels like winning the lottery. A rush of dopamine, notifications flooding your phone, thousands of new followers appearing overnight. Everyone wants their shot at Internet fame.But viral content creates false prophets.Most viral creators never repeat their success. They spend years chasing that high, posting increasingly desperate
Read article
favicon lcamtuf’s thing | Substack

Working with OLEDs: SSD1353 & SSD1333

A quick intro to interfacing common OLED displays to bare-metal microcontrollers.
Read article
favicon Simon Willison’s Weblog

On DeepSeek and Export Controls

On DeepSeek and Export Controls Anthropic CEO (and previously GPT-2/GPT-3 development lead at OpenAI) Dario Amodei's essay about DeepSeek includes a lot of interesting background on the last few years of AI development. Dario was one of the authors on the original scaling laws paper back in 2020, and he talks at length about updated ideas around scaling up training: The field is constantly com...
Read article
favicon Jim Nielsen

Notes on Google Search Now Requiring JavaScript

John Gruber has a post about how Google’s search results now require JavaScript[1]. Why? Here’s Google: the change is intended to “better protect” Google Search against malicious activity, such as bots and spam Lol, the irony. Let’s turn to JavaScript for protection, as if the entire ad-based tracking/analytics world born out of JavaScript’s capabilities isn’t precisely what led to a less sec...
Read article
favicon Simon Willison’s Weblog

Quoting Charlie Marsh

We’re building a new static type checker for Python, from scratch, in Rust. From a technical perspective, it’s probably our most ambitious project yet. We’re about 800 PRs deep! Like Ruff and uv, there will be a significant focus on performance. The entire system is designed to be highly incremental so that it can eventually power a language server (e.g., only re-analyze affected files on code ...
Read article
favicon Bram.us

View Transitions Snippets: Keeping the page interactive while a View Transition is running

The ::view-transition root overlay captures all clicks … but you can undo that.
Read article
favicon Simon Willison’s Weblog

How we estimate the risk from prompt injection attacks on AI systems

How we estimate the risk from prompt injection attacks on AI systems The "Agentic AI Security Team" at Google DeepMind share some details on how they are researching indirect prompt injection attacks. They include this handy diagram illustrating one of the most common and concerning attack patterns, where an attacker plants malicious instructions causing an AI agent with access to private data ...
Read article
favicon Simon Willison’s Weblog

Baroness Kidron's speech regarding UK AI legislation

Baroness Kidron's speech regarding UK AI legislation Barnstormer of a speech by UK film director and member of the House of Lords Baroness Kidron. This is the Hansard transcript but you can also watch the video on parliamentlive.tv. She presents a strong argument against the UK's proposed copyright and AI reform legislation, which would provide a copyright exemption for AI training with a ...
Read article
favicon @Westenberg

The Great Self-Help Scam: An Industry Built on Making You Feel Broken

I.The self-help industry is worth 13+ billion dollars. That’s roughly the GDP of Madagascar, except instead of sustaining an entire country, it sustains an army of life coaches teaching people how to optimize their way to inner peace.The industry sells millions of books every year in
Read article
favicon Roma Komarov

CSS Mixins Everywhere

On Monday, I published a new article: “Pure CSS Mixin for Displaying Values of Custom Properties”. It is a long one, but you don’t have to read it fully to get something out of it, as I also published an npm package that allows you to use the mixin described in the article right away. But then… I wondered. What if this mixin was available _everywhere_ in my browser?
Read article
favicon Trevor Lasn

Keep Your Node.js Apps Secure with `npx is-my-node-vulnerable`

This package compares your Node.js version against the Node.js Security Database, providing immediate feedback about potential security risks.
Read article
favicon Odd Bird

Here's Why Your Anchor Positioning Isn't Working

It is frustrating to track down why an anchor isn’t being found. I’ve found a simple way that should work in most cases. If that doesn’t work, step through the checklist, and then dive in to get a better understanding of how Anchor Positioning works. TL;DR – For the best chance of having anchor positioning work, here’s my recommendation: Make the anchor and the positioned element siblings. Pu...
Read article
favicon Jim Nielsen

Missed Connections

Let me tell you about one of the best feelings. You have a problem. You bang your head on it for a while. Through the banging, you formulate a string of keywords describing the problem. You put those words into a search engine. You land on a forum or a blog post and read someone else’s words containing those keywords and more. Their words resonate with you deeply. They’re saying the exact same ...
Read article
favicon Simon Willison’s Weblog

Quoting Ben Collins

Goddammit. The Onion once again posted an article in which a portion of the artwork came from an AI-generated Shutterstock image. This article was over a month old and only a portion of the image. We took it down immediately. [...] To be clear, The Onion has a several-person art team and they work their asses off. Sometimes they work off of stock photo bases and go from there. That's what happe...
Read article
favicon Manuel Moreale

A moment after the rain

Lovely clouds, a nice sunset, and a moment of peace after a full rainy day. I needed that. Thank you for keeping RSS alive. You're awesome. Email me :: Sign my guestbook :: Support for 1$/month :: See my generous supporters :: Subscribe to People and Blogs
Read article
favicon Dave Rupert

15 Minutes

This might be my favorite song of all time. It’s by a slightly obscure Chicago punk band called The Broadways, made up of a couple members from the more well-known ska band Slapstick. It’s got everything you want in a punk song. Palm mutes, open meedly-meedly parts, yelling, speed, a half-time breakdown, and impeccable synchronicity. I listen to this song when I’m sad, when I’m frustrated, whe...
Read article
favicon @Westenberg

The Cruelty Market

Professional wrestling has a term for it: heel heat.It’s when a performer does whatever it takes to make the audience hate them. They’ll mock the local sports team. Insult the crowd. Break the rules when the referee isn’t looking.The better they are
Read article
favicon lcamtuf’s thing | Substack

PCBs, ground planes, and you

A closer look at a fashion trend in printed circuit board design.
Read article
favicon Paweł Grzybek

The old CSS attr() with new features

The CSS attr() function retrieves a value from an HTML element’s attribute. Firefox added support for it two decades ago, so it’s rather not a new thing. I can’t tell you how many times I had an incredible use case for it, just to be reminded a second later that its use is limited to the content property. Here is an example. <article data-category="Technology">...</articl...
Read article
favicon Adam Argyle

New 404 Page

New 404 page: glitchtastic VisBug loaded so you can edit or destroy the page
Read article
favicon Labnotes (by Assaf Arkin)

Weekend Reading — Sortie dramatique

heyheymomo “Lovely day lovely day” Tech Stuff Niki Tonsky “Old classic” Some Dude Was Keeping the Company Afloat The wildest part? No one in the company realized he was doing this. Not his manager, not the dev team, not even upper management. This guy wasn’
Read article
favicon Jim Nielsen

HTML Minification for Static Sites

This is a note to my future self, as I’ve setup HTML minification on a few different projects and each time I ask myself, “How did I do that again?” So here’s your guide, future Jim (and anyone else on the internet who finds this). I use html-minifier to minifiy HTML files created by my static site generator. Personally, I use the CLI tool because it's easy to add a CLI command as an npm po...
Read article
favicon Manuel Moreale

Sharing “Unplatform”

If I was on social media I’d probably post this link there but I am not and so I’m posting it here. Ajazz has put together a nice resource called “Unplatform” which is, in their words, an interactive guidebook, online library, and research journal intended to help you escape social media and join the indie web. As you know, I’m a big fan of owning your own space and so I love to see this type o...
Read article
favicon Matthias Zöchling

@page got Baseline’24 support

Matthias Zöchling wrote on January 27, 2025 at 13:59 Funny indeed. Bookmark this under »funny news«, but 13 years after [the @page CSS at-rule] was added to Chrome Version 15, it was rolled out for Safari and mobile Safari Version 18.2 in December ’24 and is now considered as widely available aka. »baseline 2024«. — “Late to the baseline: @page”, by @[email protected]
Read article
favicon Josh W. Comeau

Container Queries Unleashed

Container queries expand the universe of designs that can be implemented, giving us whole new superpowers. Now that container queries are broadly available, I think it’s time we start exploring this potential! In this post, I’ll share the “killer pattern” I can’t stop using in my work, and explore what’s possible with this new capability.
Read article
favicon @Westenberg

The Original Sin of Everything

There’s a genre of internet criticism that goes something like this: “The internet has ruined everything. It’s made us more polarized, shortened our attention spans, and turned us all into dopamine-addicted scrollers. We need to return to a simpler time, when people had real
Read article
favicon Roman Komarov

Pure CSS Mixin for Displaying Values of Custom Properties

Do you write CSS? Do you use custom properties with calculations? Do you want to preview their values while you’re debugging them? What if you could do so by setting just one additional custom property? Without any JS? In this article, I present a native CSS mixin that will output various values as pseudo-elements.Read the full article on kizu.dev
Read article
favicon Stephanie Stimac

There are plenty of non-men in tech to speak at your conference

If your response to a lineup dominated by men is, "There are almost no women in this field," I'm afraid that reveals a lack of effort to curate an event with diverse, interesting perspectives. It suggests you haven’t prioritized thoughtful research or meaningful outreach—and if you’re not putting care into the core experience of your event, that likely extends to every other aspect of...
Read article
favicon Baselines Report

BCD New Universal Implementations Report, Mon Jan 27 2025

Weekly summary of new Baseline items in BCD data
Read article
favicon Edward Loveall

Setting Up a Local Debian 12 Server with UTM

I’ve been doing a lot of linux system administration, both at work and as a hobby. This very site is hosted on a server set up by me. I am very proud. The stakes feel high when doing server work. You can easily lock yourself out in a number of different ways, lose data, and destroy all your hard work with the wrong command. I thought it would be nice to have a place to practice so I&rsqu...
Read article
favicon Bram.us

MPA View Transitions Deep Dive

Back in December I joined Kevin J Powell on his channel to talk about Cross-Document View Transitions
Read article
favicon Manuel Moreale

A better list of blog platforms

After more than a year I finally found a moment to sort out my list of blog platforms and I coded a proper table. The previous text list wasn’t exactly ideal. If you know a platform that’s missing please do let me know. I’d love for this list to be as comprehensive as possible. Thank you for keeping RSS alive. You're awesome. Email me :: ...
Read article
favicon Dave Rupert

A story about pans

The other day I sent my wife a link to a new set of ceramic pans and asked, “What do you think?” assuming she’d be as impressed as I was of the picture of eggs sliding off the pan. Her response: a grimace. Using my sixteen years of husbandly intuition, I surmised that we were not on the same page about kitchenware. For context, my wife has had the same stainless steel pans that her parents boug...
Read article
favicon Spicy Web

I Made a Squircle Button (and of Course It’s a Web Component)

January 30, 2025 Addendum: I was further inspired to attempt squirclization (is that a word?!) of images in a grid of thumbnails, which you can take a look at here. What fun! ☺️ Before we get into the nitty-gritty, just what is a squircle? And how it related to a superellipse? Here’s a definition I found from this article by Olga Nikolskaya: The Superellipse is the name given to a fam...
Read article
favicon Neatnik

Blog Question Challenge 2025

Blog Question Challenge 2025 Jason tagged me on the Blog Question Challenge, which for me really is a challenge because I don’t even think of myself as a “blogger” at all. So. Here goes. 😅 Why did you start blogging in the first place? I started this particular blog a year ago because Robb kept reminding me that I needed to share my App Defaults. So, I guess the answer is “friendly peer pressu...
Read article