Latest entries
-
Coding Club
Today I trekked to my daughter’s school (a long walk across the street!) to speak at her after-school coding club that’s been meeting weekly over the last month. It was really fun to see how they were learning to code. […]
Brad Frost — Published
-
Building a Runtime with QuickJS
Building a tiny JavaScript runtime on top of QuickJS with timers, file I/O, and an event loop.
Andrew Healey — Published
-
datasette-files-s3 0.1a1
Release: datasette-files-s3 0.1a1 A backend for datasette-files that adds the ability to store and retrieve files using an S3 bucket. This release added a mechanism for fetching S3 configuration periodically from a URL, which means we can use time limited IAM credentials that are restricted to a prefix…
Simon Willison — Published
-
Thoughts on slowing the fuck down
Thoughts on slowing the fuck down Mario Zechner created the Pi agent framework used by OpenClaw, giving considerable credibility to his opinions on current trends in agentic engineering. He's not impressed: We have basically given up all discipline and agency for a sort of addiction, where your highest…
Simon Willison — Published
-
datasette-llm 0.1a1
Release: datasette-llm 0.1a1 New release of the base plugin that makes models from LLM available for use by other Datasette plugins such as datasette-enrichments-llm. New register_llm_purposes() plugin hook and get_purposes() function for retrieving registered purpose strings. #1 One of the responsibilities…
Simon Willison — Published
-
BRINC's new police drone uses Starlink, carries Narcan, chases vehicles at 60mph
Company calls Guardian the "most capable 911 response drone ever.”
Ars Technica — Published
-
Here is NASA's plan for nuking Gateway and sending it to Mars
Only one US-built nuclear reactor has ever flown in space, and that was more than 60 years ago.
Ars Technica — Published
-
Reddit will require "fishy" accounts to verify they are run by a human
AI-generated content is still acceptable for now.
Ars Technica — Published
-
We got an audience with the "Lunar Viceroy" to talk how NASA will build a Moon base
"It has been clear that we all need to be focused on one thing, not 10 things."
Ars Technica — Published
-
Meta, YouTube must pay $3M to woman who got hooked on apps as a child
Meta emerges as the biggest loser as second child safety trial verdict hits.
Ars Technica — Published
-
Nintendo is raising prices of Switch 2 game cartridges starting in May
The first physical game affected will cost $10 more than a digital copy.
Ars Technica — Published
-
Supreme Court rejects Sony's attempt to kick music pirates off the Internet
Sony's 1984 Betamax win helps Cox beat Sony in important online piracy case.
Ars Technica — Published
-
Google's TurboQuant AI-compression algorithm can reduce LLM memory usage by 6x
TurboQuant makes AI models more efficient but doesn't reduce output quality like other methods.
Ars Technica — Published
-
Antibiotic resistance among germs swells during droughts, study suggests
Study links two crises: Climate change and antibiotic-resistant infections.
Ars Technica — Published
-
LiteLLM Hack: Were You One of the 47,000?
LiteLLM Hack: Were You One of the 47,000? Daniel Hnyk used the BigQuery PyPI dataset to determine how many downloads there were of the exploited LiteLLM packages during the 46 minute period they were live on PyPI. The answer was 46,996 across the two compromised release versions (1.82.7 and 1.82.8).…
Simon Willison — Published
-
Trump staffs science and technology panel with non-scientists
Appointee list is in keeping with the administration's hostility toward science.
Ars Technica — Published
-
Google bumps up Q Day deadline to 2029, far sooner than previously thought
Company warns entire industry to move off RSA and EC more quickly.
Ars Technica — Published
-
Meta loses trial after arguing child exploitation was “inevitable” on its apps
Meta plans to appeal as it faces down two other child safety trials.
Ars Technica — Published
-
Apple begins age checks in the UK with latest iOS update
Move follows government pressure on smartphone makers to do more to protect children online.
Ars Technica — Published
-
Disney cancels $1 billion OpenAI partnership amid Sora shutdown plans
Press reports suggest Disney was blindsided and that no money changed hands.
Ars Technica — Published
-
Honda cancels the two electric vehicles it was developing with Sony
Sony Honda Mobility says the Afeela 1 and Afeela 2 are no more.
Ars Technica — Published
-
So long, farewell: Saying goodbye to Audi's best car, the 2026 RS6 Avant
With production now finished, we take one last ride in our favorite station wagon.
Ars Technica — Published
-
How chemists turned bourbon waste into supercapacitors
Hydrothermal carbonization can directly convert sloppy stillage into hard or activated carbon.
Ars Technica — Published
-
"The last straw"—RFK Jr.'s anti-vaccine ally angrily quits CDC panel after spat
Robert Malone quit a vaccine panel, blaming an HHS spokesperson for "trashing" him.
Ars Technica — Published
-
Prot Asks: Arkadiusz about blindness, Emacspeak, Hyperbole, Chinese and Slavic culture
In this 2-hour video I talk with Arkadiusz about how he uses the computer as a blind person and several other topics.
Protesilaos Stavrou — Published
-
A eulogy for Vim
Vim is important to me. I’m using it to write the words you’re reading right now. In fact, almost every word I have ever committed to posterity, through this blog, in my code, all of the docs I’ve written, emails I’ve sent, and more, almost all of it has passed through Vim. My relationship with the software…
Drew DeVault — Published
-
Auto mode for Claude Code
Auto mode for Claude Code Really interesting new development in Claude Code today as an alternative to --dangerously-skip-permissions: Today, we're introducing auto mode, a new permissions mode in Claude Code where Claude makes permission decisions on your behalf, with safeguards monitoring actions before…
Simon Willison — Published
-
Final analysis of 2025 Iberian blackout: Policies left Spain at risk
Too much hardware was allowed to disconnect right at the edge of normal conditions.
Ars Technica — Published
-
Newly purchased Vizio TVs now require Walmart accounts to use smart features
Walmart wants to connect what people stream "directly with retail interaction."
Ars Technica — Published
-
Package Managers Need to Cool Down
Package Managers Need to Cool Down Today's LiteLLM supply chain attack inspired me to revisit the idea of dependency cooldowns, the practice of only installing updated dependencies once they've been out in the wild for a few days to give the community a chance to spot if they've been subverted in some…
Simon Willison — Published
-
Quoting Christopher Mims
I really think "give AI total control of my computer and therefore my entire life" is going to look so foolish in retrospect that everyone who went for this is going to look as dumb as Jimmy Fallon holding up a picture of his Bored Ape — Christopher Mims, Technology columnist at The Wall Street Journal…
Simon Willison — Published
-
Code as a Tool of Process
Steve Krouse wrote a piece that has me nodding along: Programming, like writing, is an activity, where one iteratively sharpens what they're doing as they do it. (You wouldn't believe how many drafts I've written of this essay.) There’s an incredible amount of learning and improvement, i.e. sharpening…
Jim Nielsen — Published
-
Resurrecting a £50 computer with Vivaldi and ChromeOS Flex
The other day, I was pruning my inbox when I noticed an email from a company that I occasionally buy print cartridges from, IJT Direct, offering a reconditioned PC, with a new USB keyboard, mouse, wifi dongle, all for £50–including tax and delivery. Last year I upcycled an eBay Windows machine for my…
Bruce Lawson — Published
-
Malicious litellm_init.pth in litellm 1.82.8 — credential stealer
Malicious litellm_init.pth in litellm 1.82.8 — credential stealer The LiteLLM v1.82.8 package published to PyPI was compromised with a particularly nasty credential stealer hidden in base64 in a litellm_init.pth file, which means installing the package is enough to trigger it even without running import…
Simon Willison — Published
-
When “One in a Billion” Happens Every Day: Scaling Redis at Report URI
Something that I've come to learn as we continue to grow Report URI is that everything is easy until scale makes it hard. We're now processing so much telemetry that a "one in a billion" problem can happen every, single, day, and we'
Scott Helme — Published
-
Dine ’n em-dash
The best defense is to write humanly. The post Dine ’n em-dash appeared first on Jeffrey Zeldman Presents.
Jeffrey Zeldman — Published
-
Please Compensate The Work You Appreciate
The other day, I had a casual conversation with colleagues about buying music. Nobody gave a rat’s ass; they all just either downloaded the .mp3 files or used Spotify. Most conversations on this topic end like this so I expected the response from more than a few individuals, but not from everyone. I…
Wouter Groeneveld — Published
-
Restoring a 2018 iPad Pro
This was surprisingly hard to find—hat tip to Reddit’s Nakkokaro and xBl4ck. Apple’s instructions for restoring an iPad Pro (3rd generation, 2018) seem to be wrong; both me and an Apple Store technician found that the Finder, at least in Tahoe, won’t show the iPad once it reboots in recovery mode. The…
Kyle Kingsbury — Published
-
Talking Death of a Software Craftsman on the Dead Code Podcast
I joined Jared again on the Dead Code Podcast to go a bit deeper on my post, The Death of a Software Craftsman. The outlook is kinda bleak, but plenty of digs at agile software practices :)
David Bryant Copeland — Published
-
Do you need AI for that?
My social feed has divided mostly into two camps—those who can now only talk about how excited they are about AI, and those who are refusing to use it at all. I’m somewhat bemused by both of these positions, I see LLMs as a useful tool, in the way that I see spreadsheets as a […]
Rachel Andrew — Published
-
The Creative Infinite
I found myself using the phrase “the Creative Infinite” when I’m talking about AI as a design material. I keep coming back to it because I don’t think we’ve fully grasped what this technology actually is, what it can do, […]
Brad Frost — Published
-
Streaming experts
I wrote about Dan Woods' experiments with streaming experts the other day, the trick where you run larger Mixture-of-Experts models on hardware that doesn't have enough RAM to fit the entire model by instead streaming the necessary expert weights from SSD for each token that you process. Five days ago…
Simon Willison — Published
-
Weekly Update 496
Watching OpenClaw do its thing must be like watching the first plane take flight. It's a bit rickety and stuck together with a lot of sticky tape, but squint and you can see the potential for agentic AI to change the world as we know it. And I
Troy Hunt — Published
-
Poem: Of carmine clouds
Just read the poem. No further comment.
Protesilaos Stavrou — Published
-
Emacs: spontaneous live stream Tuesday 24 March @ 21:30 Europe/Athens
I am doing a live stream related to Emacs, where I will continue working on my denote-sequence package.
Protesilaos Stavrou — Published
-
Quoting Neurotica
slop is something that takes more human effort to consume than it took to produce. When my coworker sends me raw Gemini output he’s not expressing his freedom to create, he’s disrespecting the value of my time — Neurotica, @schwarzgerat.bsky.social Tags: ai-ethics, slop, generative-ai, ai, llms
Simon Willison — Published
-
datasette-files 0.1a2
Release: datasette-files 0.1a2 The most interesting alpha of datasette-files yet, a new plugin which adds the ability to upload files directly into a Datasette instance. Here are the release notes in full: Columns are now configured using the new column_types system from Datasette 1.0a26. #8 New file_actions…
Simon Willison — Published
-
Quoting David Abram
I have been doing this for years, and the hardest parts of the job were never about typing out code. I have always struggled most with understanding systems, debugging things that made no sense, designing architectures that wouldn't collapse under heavy load, and making decisions that would save months…
Simon Willison — Published
-
‘CanisterWorm’ Springs Wiper Attack Targeting Iran
A financially motivated data theft and extortion group is attempting to inject itself into the Iran war, unleashing a worm that spreads through poorly secured cloud services and wipes data on infected systems that use Iran's time zone or have Farsi set as the default language.
Brian Krebs — Published
-
Sneaky Header Blocker Trick
There is a lil’ UI detail on this blog. Most people don’t even notice it, but the ones who do often reach out, asking how on earth it works. It feels like it defies the rules of CSS! In this blog post, I’ll break down the surprisingly-straightforward implementation so you can start using this trick yourself…
Josh W. Comeau — Published
-
Beats now have notes
Last month I added a feature I call beats to this blog, pulling in some of my other content from external sources and including it on the homepage, search and various archive pages on the site. On any given day these frequently outnumber my regular posts. They were looking a little bit thin and were…
Simon Willison — Published
-
Starlette 1.0 skill
Research: Starlette 1.0 skill See Experimenting with Starlette 1.0 with Claude skills. Tags: starlette
Simon Willison — Published
-
Emacs: spontaneous live stream Monday 23 March @ 17:00 Europe/Athens
I am doing a live stream related to Emacs, where I will try to implement a new feature for the denote-sequence package.
Protesilaos Stavrou — Published
-
Emacs: doric-themes version 1.1.0
Minimalist themes for GNU Emacs to complement my ef-themes (maximalist) and modus-themes (moderate).
Protesilaos Stavrou — Published
-
Experimenting with Starlette 1.0 with Claude skills
Starlette 1.0 is out! This is a really big deal. I think Starlette may be the Python framework with the most usage compared to its relatively low brand recognition because Starlette is the foundation of FastAPI, which has attracted a huge amount of buzz that seems to have overshadowed Starlette itself…
Simon Willison — Published
-
PCGamer Article Performance Audit
Research: PCGamer Article Performance Audit Stuart Breckenridge pointed out that PC Gamer Recommends RSS Readers in a 37MB Article That Just Keeps Downloading, highlighting a truly horrifying example of web bloat that added up to 100s more MBs thanks to auto-playing video ads. I decided to have Claude…
Simon Willison — Published
-
The diminished art of coding
Programming is an art. It’s less like fine art or music and closer to architecture or carpentry – combining form and function – but it is an art. If you don’t believe me, consider code reviews. I’ve definitely done code reviews where I admired the mastery on display, where the elegance of the solution…
Nolan Lawson — Published
-
JavaScript Sandboxing Research
Research: JavaScript Sandboxing Research Aaron Harper wrote about Node.js worker threads, which inspired me to run a research task to see if they might help with running JavaScript in a sandbox. Claude Code went way beyond my initial question and produced a comparison of isolated-vm, vm2, quickjs-emscripten…
Simon Willison — Published
-
DNS Lookup
Tool: DNS Lookup TIL that Cloudflare's 1.1.1.1 DNS service (and 1.1.1.2 and 1.1.1.3, which block malware and malware + adult content respectively) has a CORS-enabled JSON API, so I had Claude Code build me a UI for running DNS queries against all three of those resolvers. Tags: dns, cors, cloudflare
Simon Willison — Published
-
More Details Than You Probably Wanted to Know About Recent Updates to My Notes Site
I shipped some updates to my notes site. Nothing huge. Just small stuff. But what is big stuff except a bunch of small stuff combined? So small stuff is important too. What follows is a bunch of tiny details you probably don’t care about, but they were all decisions I had to make and account for along…
Jim Nielsen — Published
-
Merge State Visualizer
Tool: Merge State Visualizer Bram Cohen wrote about his coherent vision for the future of version control using CRDTs, illustrated by 470 lines of Python. I fed that Python (minus comments) into Claude and asked for an explanation, then had it use Pyodide to build me an interactive UI for seeing how…
Simon Willison — Published
-
RSS creator on Bluesky & AT Proto
Bluesky can't abandon the developers who made a bet on AT Proto, so they should give the protocol to a standards body while catching up on UX.—Dave Winer The post RSS creator on Bluesky & AT Proto appeared first on Jeffrey Zeldman Presents.
Jeffrey Zeldman — Published
-
Profiling Hacker News users based on their comments
Here's a mildly dystopian prompt I've been experimenting with recently: "Profile this user", accompanied by a copy of their last 1,000 comments on Hacker News. Obtaining those comments is easy. The Algolia Hacker News API supports listing comments sorted by date that have a specific tag, and the author…
Simon Willison — Published
-
Using Git with coding agents
Agentic Engineering Patterns > Git is a key tool for working with coding agents. Keeping code in version control lets us record how that code changes over time and investigate and reverse any mistakes. All of the coding agents are fluent in using Git's features, both basic and advanced. This fluency…
Simon Willison — Published
-
The responsibility to keep flowing
I describe the prevailing conditions in my mountains and how those relate to matters of complacency, responsibility, foresight, and adaptability.
Protesilaos Stavrou — Published
-
Turbo Pascal 3.02A, deconstructed
Turbo Pascal 3.02A, deconstructed In Things That Turbo Pascal is Smaller Than James Hague lists things (from 2011) that are larger in size than Borland's 1985 Turbo Pascal 3.02 executable - a 39,731 byte file that somehow included a full text editor IDE and Pascal compiler. This inspired me to track…
Simon Willison — Published
-
Quoting Kimi.ai @Kimi_Moonshot
Congrats to the @cursor_ai team on the launch of Composer 2! We are proud to see Kimi-k2.5 provide the foundation. Seeing our model integrated effectively through Cursor's continued pretraining & high-compute RL training is the open model ecosystem we love to support. Note: Cursor accesses Kimi-k2.5…
Simon Willison — Published
-
Re: People Are Not Friction
Dave Rupert puts words to the feeling in the air: the unspoken promise of AI is that you can automate away all the tasks and people who stand in your way. Sometimes I feel like there’s a palpable tension in the air as if we’re waiting to see whether AI will replace designers or engineers first. Designers…
Jim Nielsen — Published
-
A Satisfied Customer Review Of The Yogurtia
And now for something completely different. For years, we’ve been happy users of the Yogurtia, a Japanese “fermented food maker”. That alone should sound enticing enough to warrant this small review! What’s a fermented food maker? I’m glad you ask. It’s a maker for food to ferment. Next question. In…
Wouter Groeneveld — Published
-
Look into the future of the web platform
Last week I spoke at the very lovely Web Day Out in Brighton. My talk was about browser support, based on the work I’ve done over the past almost five years on Baseline. I ran through the various things you need to consider when deciding whether to use features that don’t meet your Baseline target. …
Rachel Andrew — Published
-
SQLite Tags Benchmark: Comparing 5 Tagging Strategies
Research: SQLite Tags Benchmark: Comparing 5 Tagging Strategies I had Claude Code run a micro-benchmark comparing different approaches to implementing tagging in SQLite. Traditional many-to-many tables won, but FTS5 came a close second. Full table scans with LIKE queries performed better than I expected…
Simon Willison — Published
-
Feds Disrupt IoT Botnets Behind Huge DDoS Attacks
The U.S. Justice Department joined authorities in Canada and Germany in dismantling the online infrastructure behind four highly disruptive botnets that compromised more than three million hacked Internet of Things (IoT) devices, such as routers and web cameras. The feds say the four botnets -- named…
Brian Krebs — Published
-
Maintaining the long-term view
An entry from my journal in which I describe how I do not lose my patience while working in my land.
Protesilaos Stavrou — Published
-
Untitled
Tonight I got to meet one of my design heroes, Margaret Calvert. Her work speaks for itself, which makes her modesty even more impressive. When I told her I use her typeface every day, she simply responded “oh dear, poor you”. Legend.
Paul Robert Lloyd — Published
-
Thoughts on OpenAI acquiring Astral and uv/ruff/ty
The big news this morning: Astral to join OpenAI (on the Astral blog) and OpenAI to acquire Astral (the OpenAI announcement). Astral are the company behind uv, ruff, and ty - three increasingly load-bearing open source projects in the Python ecosystem. I have thoughts! The official line from OpenAI and…
Simon Willison — Published
-
Consensus Board Game
I have an early adulthood trauma from struggling to understand consensus amidst a myriad of poor explanations. I am overcompensating for that by adding my own attempts to the fray. Today, I want to draw a series of pictures which could be helpful. You can see this post as a set of missing illustrations…
Alex Kladov — Published
-
Autoresearching Apple's "LLM in a Flash" to run Qwen 397B locally
Autoresearching Apple's "LLM in a Flash" to run Qwen 397B locally Here's a fascinating piece of research by Dan Woods, who managed to get a custom version of Qwen3.5-397B-A17B running at 5.5+ tokens/second on a 48GB MacBook Pro M3 Max despite that model taking up 209GB (120GB quantized) on disk. Qwen3.5…
Simon Willison — Published
-
datasette 1.0a26
Release: datasette 1.0a26 Datasette now has a mechanism for assigning semantic column types. Built-in column types include url, email, and json, and plugins can register additional types using the new register_column_types() plugin hook.
Simon Willison — Published
-
I redesigned my website without touching my keyboard…all while painting a mural
On Friday night, I needed a break from screens, so decided to work on a bathroom mural that our family has been chipping away at for the last 4 years. But a lot was on my mind, so made the […]
Brad Frost — Published
-
Snowflake Cortex AI Escapes Sandbox and Executes Malware
Snowflake Cortex AI Escapes Sandbox and Executes Malware PromptArmor report on a prompt injection attack chain in Snowflake's Cortex Agent, now fixed. The attack started when a Cortex user asked the agent to review a GitHub repository that had a prompt injection attack hidden at the bottom of the README…
Simon Willison — Published
-
Leverage our treasure trove of Threat Intelligence data
We've been working on CSP Integrity for a little while now, and it was only announced in open beta back in September. Since then, as more of our customers start to use it, we've continued to improve it and observe the potentially huge benefits. CSP Integrity
Scott Helme — Published
-
Web of State of the Browser Day Out [blog]
Okay, that's a stupidly obscure title. It's meant to represent the combined events: State of the Browser and Web Day Out - two events I attended in the last month. The short version is: if you get the chance to attend these events or even anything similar, I'd highly recommend that you grab that ticket…
Remy Sharp — Published
-
Hypermedia Friendly Model Context Protocol App Architecture
I am working on speedystride.com, a programming tool that helps athletes quickly input workouts on their Apple and Garmin watches. These watches come with a built-in workout programming feature that is especially useful for structured programs. For example, runners will often do interval training, which…
Carson Gross — Published
-
Quoting Ken Jin
Great news—we’ve hit our (very modest) performance goals for the CPython JIT over a year early for macOS AArch64, and a few months early for x86_64 Linux. The 3.15 alpha JIT is about 11-12% faster on macOS AArch64 than the tail calling interpreter, and 5-6%faster than the standard interpreter on x86_64…
Simon Willison — Published
-
GPT-5.4 mini and GPT-5.4 nano, which can describe 76,000 photos for $52
OpenAI today: Introducing GPT‑5.4 mini and nano. These models join GPT-5.4 which was released two weeks ago. OpenAI's self-reported benchmarks show the new 5.4-nano out-performing their previous GPT-5 mini model when run at maximum reasoning effort. The new mini is also 2x faster than the previous mini…
Simon Willison — Published
-
You Might Debate It — If You Could See It
Imagine I’m the design leader at your org and I present the following guidelines I want us to adopt as a team for doing design work: Typography: Use expressive, purposeful fonts and avoid default stacks (Inter, Roboto, Arial, system). Motion: Use a few meaningful animations (page-load, staggered reveals…
Jim Nielsen — Published
-
Weekly Update 495
In the beginning, it was simple. A website, a database and 150M+ email addresses to search. Time has added serverless functions (which run on servers 🤷♂️), code on the edge, new data storage constructs and a completely different mechanism for even just querying a simple email address.
Troy Hunt — Published
-
Too Many Notes
Lately, in work conversations, I find myself fighting a lifelong tendency to provide way more context than is absolutely required. If you ask me to okay your work, for example, I may respond with an essay on what delighted me about it. The teaching gene, plus the exuberance of writing and thinking clearly…
Jeffrey Zeldman — Published
-
Building a Shell
I built a tiny shell in C to learn what fork, execvp, and dup2 are doing under the hood.
Andrew Healey — Published
-
Preparing for springtime
I describe what I am doing these days and how I feel about the living environment I am a part of.
Protesilaos Stavrou — Published
-
Implementing Hybrid Semantic + Lexical Search
Semantic search alone wasn't good enough. Here's how I improved search on kentcdodds.com through three rounds of iteration with Cursor and GPT-5.4, each time learning something that the previous design missed.
Kent C. Dodds — Published
-
Food, Software, and Trade-offs
Greg Knauss has my attention with a food analogy in his article “Lose Myself”: A Ding Dong from a factory is not the same thing as a gâteau au chocolat et crème chantilly from a baker which is not the same thing as cramming chunks of chocolate and scoops of whipped cream directly into your mouth [..…
Jim Nielsen — Published
-
The Best Indicator For Quality In a Video Game Is My Willingness To Replay It
Here’s a thought: the best indicator for quality in a video game is my willingness to first finish and then replay it. How many games have you replayed once? Or even twice? Or how about simply finishing it in the first place. I catch myself giving up on games that tend to drag on much faster than I used…
Wouter Groeneveld — Published
-
The Over-Engineering Method
In Canada, “Engineer” is a protected term. I am a software developer, not a Software Engineer. There are valid reasons – historical reasons – to restrict who is a capital-E Engineer, but these reasons are at odds with how the term is commonly used today....
Ash Furrow — Published
-
A die-cut above
Cover art for the 1971 prog-rock LP “Fearless,” by British band Family features a distinctive, die-cut cover design depicting the five band members gradually morphing into a single entity combining features of them all. Tom Brigham, a high school student and friend of mine the year the LP was released…
Jeffrey Zeldman — Published
-
Selfie: beard and hair are growing
Selfie picture of me from the side showing my beard while holding my hair
Protesilaos Stavrou — Published
-
Computing in freedom with GNU Emacs
A holistic introduction to Emacs: how useful it is and how it champions free software.
Protesilaos Stavrou — Published
-
contrast-color() beyond black & white
Two techniques that bypass the black-or-white limit of contrast-color() for custom color palettes.
Una Kravets — Published
-
Untitled
Sun-kissed evenings in Porto never fail to impress.
Paul Robert Lloyd — Published
-
Feature Flagging at Databricks
In late January, I published a post1 (archive) on the Databricks engineering blog about “SAFE”, the feature flagging and experimentation platform I’ve been working on for the past few years. SAFE is what I’ve been spending most of my time on during my time at Databricks, and it’s been rewarding to see…
Ben Congdon — Published