More from Jeff Geerling
In June I purchased this TrueTime XL-AK time server, so I could learn more of the history of GPS-based time. I received it on June 22, and just 16 days later a similar GPS time server took down Australia's cell service for 12 hours! I made a short video about it but put off digging into the TrueTime... until now. Over the past couple weeks, I've 'restomodded' this device with a Raspberry Pi, to build a stratum 1 NTP Time server, which I'd like to eventually add to the NTP Pool. I found a way to drop in a Pi 5 and GNSS HAT, display the time and GPS status on the built-in 16x2 LCD, show the status on the bicolor LED, and make this box useful again.
Since the PiKVM came out in 2017, there's been an explosion of IP KVMs. I've tested almost every one. But what are they good for? You can use Remote Desktop, Screen Sharing, or VNC to remote control a computer from anywhere on a LAN. And if you don't have a private VPN, you could use RealVNC, Raspberry Pi Connect, or wire up Tailscale or Pangolin for fully remote access. Those solutions are great, and so is SSH if you don't need a full desktop.
Pictured above is the new DeskPi Super4C installed in an 8U mini rack. The Super4C is a 4-node Raspberry Pi CM5 cluster board that solves two pain points I had with the older Super6C. I was testing this board around the same time I helped kick off the SBCC 2026, the Single Board Cluster Competition for students. A dozen or so university teams squared off to run the best mini HPC cluster with a budget of $6,000, and a couple days to benchmark six HPC workloads.
Today Raspberry Pi announced more price increases for all Pis with LPDDR4 RAM, alongside a 'right-sized' 3GB RAM Pi 4 for $83.75. The price increases bring the 16GB Pi 5 up to $299.99. Despite today's date, this is not a joke. I published a video going over the state of the hobbyist 'high end SBC' market (4/8/16 GB models in the current generation), which I'll embed below: .embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } .embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } But if you'd like the tl;dr:
More in technology
$1000 for a base-PS5-strength machine with no controller, or $1200 with one. At the original rumored $7-800 price point, the Steam Machine might have justified its existence to me for its living-room form-factor/access to my Steam library. But adding in the AI RAMflation, I just don’t even know who this device is supposed to be […] The post RAMageddon appeared first on Ctrl+Alt+Del Comic.
My mail, WhatsApp and Signal now live in one app I built myself. I called it Contact. It is not a chat app and not an AI app, it sits somewhere in between. When I tried to draw what it is in my notebook, a factory came out. This post explains that drawing, starting with a puzzle. A puzzle for the class At Jurre's school the day starts with a "binnenkomer", a small opening activity, and every child takes a turn. The message that it was his turn next came in through the WhatsApp group of his class. So one evening Jurre sat down and made his own: nine dots, and a rule. "Je moet elk stipje in een eigen vakje hebben, maar je mag maar twee vierkanten tekenen." Every dot in its own box, but you may only draw two squares. Jurre's puzzle: the rule on top, nine dots, and one of the solutions He wanted copies, a clean one for everybody. I took a photo, which lands in my own photo library at home within seconds. In Contact I opened a session and typed what I wanted: take the latest photo, make a printable page with the text and the empty puzzle, without the solution, and print it. One page first. The agent did not know where the printer was. It scanned the network, found a Canon that was asleep, told me so, and waited until I switched it on. Along the way it found the original message from the class group in Contact's own WhatsApp archive, so it knew what the page was for. The session in Contact: the agent looks for the printer, I tell it what to make Printing, on a printer that nobody had set up for this The first page came out faded, one cartridge was nearly empty. The agent found a print mode that still gave deep black, and then the copies came out. Within the hour there was a stack on the table: the empty square, the nine dots, the rule in a proper font. The next morning Jurre took them to his class. The result: the puzzle without the solution, ready to hand out in class That small evening has everything in it. Someone has an idea. It comes in, somebody decides it matters, a machine with enough context and energy turns it into a thing, and the thing goes back to the people. That is the factory. The drawing The drawing from my notebook: people, ideas, triage, the machine with its chimney, and the long arrow back On the left: people. They have ideas, and those come in every shape: a mail, a WhatsApp, a voice message, a screenshot, a sketch on a sheet of paper. Then triage, the funnel. Not everything needs me, and not everything needs me now. Contact reads everything that comes in on the machine in the homelab: my own hardware, boring Debian, offline. It sorts what needs me from what can wait, and groups messages into conversations per person or per topic, whatever app they came from. Fewer apps, less fiddling, but more context and more control. Contact on the laptop, here with sample data: what needs me, drafts, and a conversation with a draft reply waiting Then the machine itself: creation plus context. A session is an agent working on one thing, started from a conversation with one tap. What makes it good is not the model, it is the context it gets. My notes and rules. Every log line of all my apps and computers, well over a million signals a day. The photo library. Customer files and documented source code. The conversation it came from. The machine knows where it stands before it starts. On top sits the chimney: energy, in tokens, compute and memory. This is the part that is new. Context used to be a pile of documents. With enough energy it becomes fluid, you can shape it. Ask it, rewrite it, turn it into a page, a prototype or a print. The chimney, measured: tokens per model I will be honest about the chimney. Some weeks we burn millions of tokens on a single feature, and I do not always know if it was worth it. Let the record show that I spare no cost or effort to chase software feel. But a factory with a chimney and no meter is something to keep an eye on. Out of the machine come artifacts: a draft reply, a preview page, a prototype, a printed puzzle, a website, a game. Nora wanted a game too. She drew a rainbow and told me about a unicorn on a skateboard collecting colours in a fluffy world of clouds, and that became the game. Same factory, different input. Nora's input for her game: a rainbow, clouds and colours to collect Nora playing the game that came out of her drawing Another product of the same factory: the music app, native on iOS and on Android And then the long arrow at the bottom: feedback. Ideas, artifacts and products go back to the people. A draft reply goes back to the customer, after I read it and approve it on my phone; Contact never sends anything by itself. The puzzle went back to the class. What people say about it comes in again on the left, and the loop closes. Not a chat app, not an AI app There are apps for people: Teams, Slack, WhatsApp. There are apps for AI. Contact is neither. It sits between them, on them and in them, at the crossing of people and machine. It is made for making things, and for learning while you do. When it works I hardly notice it: a message comes in, a session picks it up, a draft is waiting when I look. It runs as a native app on the iPhone, the Vision Pro and the laptop, all sharing one idea of what a conversation and a session are. On the Vision Pro the sessions float next to each other, a very nice way to watch several streams of work at once. On the iPhone it is with me all day. A few weeks ago I wrote about making my own Android; that taught me how far you get without touching the operating system, if you own the data, the screens and the concept. Contact is what came out of that lesson. The hardest word When making is cheap and fast, the difficult part is saying no. At one point I asked for my lock screen to show the state of the factory: what waits for me, which session has a question. It was built, I tested it on my phone in the evening, and it worked. I looked at it and decided it was not useful to me. Back to plain notifications, the same evening, nothing left behind. The lock screen experiment: built, tested, and switched off again the same evening My personal reflection helps here. Writing in the notebook makes my norms visible: privacy, the feel of software, and the rule "das Beste oder nichts". That rule leads to "no" quite often. A not-doing choice is a real choice, and now that almost anything can be made, it may be the most important one. Conclusion Contact is a small factory. People and their ideas go in, triage decides what matters, a machine with context and energy makes something, and it goes back to the people. The trick is not the model, it is the context. And the courage to throw away what you made when it is not good enough. So if your inbox feels like a pile of messages, maybe it is a pile of ideas waiting for a factory.
In his Rails World keynote, David Heinemeier Hansson (DHH) declared the end for writing code by hand for professional work – at 37signals at least. Is this change now unstoppable?
Not a lot of thought went into the “mouse droid” in the first Star Wars movie. It was just a bit of cute world-building, created by putting a box on an RC car. But it became a fan favorite and that in-universe model, the MSE-6, appears throughout subsequent movies, TV shows, and video games. All […] The post This mouse droid knows how to party appeared first on Arduino Blog.
I conducted an experiment...