
Fairphone 1: Still going strong after 13 years by Fairphone The Fairphone team talk through two examples of where the original Fairphone 1 from back in 2013 are "still very much in use" , but I think this post is a little disingenuous. Read post ➡
I saw this post on Mastodon, and clicked on it as the title and intro both read like there's people still using their original Fairphone 1 as a daily driver, after more than a decade. This surprised me as Fairphone clearly states that their ph...
Shield to acquire Echodyne in a transaction valued at $5.3 billion and raise $2.5 billion at a $28.8 billion valuation
shield.ai
Acquisition to expand Shield’s Mission Systems business into the fast-growing radar and counter-drone sectors
SAN DIEGO and KIRKLAND, Wash. (November 5, 2026) – Shield today announced it has entered into a definitive agreement to acquire Echodyne Corp., an industry-leading radar company, in a transaction valued at $5.3 billion. Echodyne radars are built into hundreds of counter-drone and security systems used by defense, government and commercial customers in more than 40 countries. Both c...

I wrote a post several years ago called Don’t Look at the Keys . I wrote it after having a minor breakthrough when starting to get back into a regular piano practice. When I was quite young, my first piano teacher used to tell me: “Don’t look at the keys when you’re playing the piano.”
At the time I wrote the post in 2019, I was trying to do more sight reading, and this was a very useful heuristic to re-internalize. When you’re sight reading, it’s necessary to read directly from...
Buffered output typically comes in two flavors: fully buffered
and line buffered. If output goes to a terminal then the implementation
automatically selects line buffering, flushing its buffer when a line is
completed so that it reaches the user immediately. Otherwise it fully
buffers, holding output until the buffer is full or an explicit flush
event at some arbitrary point in the future. Line buffering is a common
bottleneck in non-interactive terminal applications such that it’s worth
redi...

Practical tools for design engineers to explore possible futures through speculative design Practical tools for design engineers to explore possible futures through speculative design
Accepted proposal: grow an existing map with maps.Grow
rednafi.com
Liz Fong-Jones’s proposal to add maps.Grow was accepted on October 29. It lets you make
room in a map that already exists. make(M, n) already does this for a new map.
A Go map grows on its own as you add entries. When it runs out of room, the runtime
allocates a larger hash table and rehashes the entries into it. The old table is left for
the garbage collector. A loop that adds thousands of entries can hit this again and again.
Each time costs CPU and creates more garbage. If you know ...

Quick Note: I started writing this a few months ago as I finished up the last few bits on the Recovery Kit 3, and some changes delayed things a bit. First, my startup license for Fusion 360 is nearing its end, but miraculously Solid Craft started up and it's been wonderful so far- and the design has actually been finished up on the app. I recognize that Fusion may be included for some of you as your daily profession, but for many hobbyists its format has been a barrier to editing my files. S...

New in the SumatraPDF pre-release builds :
Current search match stands out
When searching, the current match is now highlighted with your FixedPageUI.SelectionColor and all other matches use a secondary orange color, so it’s easy to see which match you’re on ( #5740 ).
Toolbar buttons for external viewers with text or SVG icons
External viewers configured in the ExternalViewers advanced setting can now appear as toolbar buttons, using the new ...

A great deal of effort has gone into understanding the regulatory burden on housing construction, and the extent to which it contributes to high housing prices. Much of this work is, in one form or another, about understanding how regulations restrict the supply of new housing. Harvard’s Ed Glaeser, for instance, one of the most prominent urban economis…
Read more
A great deal of effort has gone into understanding th...

Many organizations adopting data mesh and data products face a common
challenge. They may be tasked with building a self-service platform for
data products and data mesh from scratch, or they may have an existing
platform that suffers from low adoption, preventing their data mesh from
scaling. This article provides a platform navigator, based on the CNCF's
Platform Engineering Maturity Model, to help you reason about your current
situation and determine the next ste...
Databases are for storing global variables. We usually call them “rows” or “records” instead, but they’re definitionally global variables: any part of your program can read or write them. Isn’t this kind of weird? It’s common programming advice that global variables are bad, and yet many elegant programs rely on databases. Either the common advice is wrong, or there’s something special about databases that makes them the exception to the rule.
What’s so bad about global varia...
Seeking character(s) —
Choice of sans, neue, serif
Glowing lettering.
Seeking character(s) —
Choice of sans, neue, serif
Glowing lettering.
Seeking character(s) —
Choice of sans, neue, serif
Glowing lettering.
Campaign: A Game of Memory and Observation for One Player or Less
dead.gardenBabies cry because they are born with all the knowledge in the world.
"Campaign" (originally: Burning Artemis) is the title of an unproduced Doctor Who novel, originally meant to feature in the BBC's Past Doctor Adventures range. The author, Jim Mortimore, self-published the story in 2000, with the proceeds going to charity. A revised PDF version of the book can be found here and read for free! The story features the first Doctor , Susan , Ian and Barbara .
Read more on the site...

This is a schematic of the gearing of the Antikythera mechanism, from Tony Freeth’s 2021 Nature paper, “ A Model of the Cosmos in the Ancient Greek Antikythera Mechanism “. In my opinion this is the most comprehensive and well-supported of the several theories which fill in the missing portions of the mechanism. Use this along with the supplementary manuscript and supplementary videos in the link above to figure out how to construct the device (noting my comment on the paper about a small ...
Thailand and the Moon Village Association convene Korean, Japanese, Chinese, and Western space organizations for sustainable lunar operations
jatan.spaceThailand is the only country in the world which has active civil and scientific space programs and is also party to the US-led Artemis Accords as well as China-led ILRS frameworks for cooperative lunar exploration. Which is why the Moon Village Association’s 10th global lunar symposium piqued my interest since Thailand’s leading space organization, called Geo-Informatics and Space Technology Development Agency ( GISTDA ), co-hosted the event in Bangkok last week on October 26 & 27....

blanket your familiar star in solar panels. earth and her sisters trace ellipses
in colder starlight now. devoting everything, everything, to one last simulation
-- a world where trillions of koalas populate the ocean like krill blanket your familiar star in solar panels. earth and her sisters trace ellipses
in colder starlight now. devoting everything, everything, to one last simulation
-- a world where trillions of koalas populate the ocean like krill blanket your familiar star in solar panel...

Given I talk about Alpine being my Linux server distro of choice, I feel it important to relay this :
If you run sshd on Alpine Linux, update openssh now and restart sshd. Upgrading the package alone does not replace the running daemon.
If you cannot update yet, at least disable password logins: set PasswordAuthentication no in your sshd configuration and restart sshd. Either one closes the hole.
The OpenSSH team were also quick to issue a workaround with 10.6p1 :
This release ...
A performance trap: when store forwarding fails
lemire.me
A store does not go straight into the cache. Waiting for that write would stall the processor. It sits in a store buffer, and a later load can take its bytes from that buffer. That is store forwarding.
Forwarding works when the load is the same size as the store, or smaller and completely inside it. It fails when the load is wider than the store, or when the two ranges only partly overlap. The load then waits until the store has reached the cache.
Here is an example in C. We have a buffer, t...
Since I wrote about it , I kept thinking about the topic of webmentions, quoting, embedding, screenshotting, and the overall idea of connecting content on the web. The more I think about it, the more I’m convinced this is two issues wrapped into one, and I suspect there’s no way to perfectly resolve the tension that exists at the core.
The first issue is a technological one or how do we make sure content that is related can get connected in a way that’s convenient and can scale across m...
I started work last year on an introduction to systems programming for data scientists .
I assumed learners were comfortable with the material covered in the Carpentries workshops
on the Unix shell and Python:
Unix shell:
pwd ; ls ; cd ; . and .. ; rm and rmdir ; mkdir ; touch ;
mv ; cp ; tree ; cat ; wc ; head ; tail ; less ; cut ; echo ;
history ; find ; grep ; zip ; man
Current working directory; absolute and relative paths; naming files
Standard in...
When the Clay Mathematics Institute announced the Millennium Prize Problems back in 2000, we joked that if you proved P = NP, you wouldn't only get the $1 million prize for solving P v NP, but you would get $7 million since you could use P = NP to solve the rest. In theory, if P = NP, then you could efficiently find the proof of any theorem, provided its formal proof was not too long. In practice, we don't have P = NP, and back then we didn't even have a good way to formalize a proof. Fast for...
Yesterday's hot paper was Sparks of Weight-Space Programming: LLMs can natively read & write neural network weights by Rikiya Takehi, Jayden Teoh, Alex Zhang, and Omar Khattab. The paper (OK, the authors classify is as a "blog post", but it's paper-shaped) found that frontier models, in particular GPT-6 Astra, can both interpret and modify the raw weights of a machine learning model - literally a text description of the model containing a bunch of floating point numbers. I've been playing with...

It's time for a dev blogger's favorite topic: blogging about my new blogging setup. After migrating my blog from Hexo to Eleventy , building a photography website and creating a personal one-pager , it was time to find a new digital home for all my projects. If you notice any issue after the migration, please let me know . I redirect the RSS feed to the new domain, but you might want to update the feed URL in your reader. Motivation I've been maintaining three different websites under tw...