Your Computer Memory Is A Lie

When you first learn to program, memory seems pretty straightforward. You have a bunch of bytes, each with an address. If you want to read or write something, you specify the address, and the computer goes to that place and does your bidding. Sure, some addresses might be reserved for hardware or the operating system, but the general idea is simple: memory is a big array of bytes.

Just like we pretend that a wire is a perfect conductor, the big array of memory model used to be a slight twisting of the truth. On a modern computer, however, it is almost entirely a lie. The address you use probably isn’t a physical address. The data you read might not come from RAM at all. Even if it does, it might be sitting in one of several caches. And if you follow the rabbit hole far enough, you discover that your SSD is arguably just another level in the memory hierarchy.

The Need For Speed

The fundamental problem is that processors have gotten much faster than memory. A modern processor can execute several instructions per clock cycle, but accessing ordinary DRAM can take hundreds of cycles. If the processor had to wait for RAM every time it needed data, much of that impressive computing power would go to waste.

The solution is caching. Keep copies of frequently used data in smaller, faster memories closer to the processor. Most modern desktop processors have at least three levels of cache. The L1 cache is tiny but extremely fast, and often split between instructions and data. L2 is larger and somewhat slower, while L3 is even larger and usually slower as well.

Continue reading “Your Computer Memory Is A Lie” →

Lead A Discord Exodus With A Matrix Server

The Internet, and large groups of people in general, tend to have a remarkably short collective memory. Whether it’s the nature of algorithms or the people themselves to always be chasing the next novelty, maintaining long-term engagement for even relatively small changes can be challenging. Distractions abound, and motivation tends to fade over time. This past spring, Discord’s unpopular decision to force age verification resulted in a brief flash-in-the-pan of outrage that dissipated when they promised to delay its roll-out. Rather than backtrack on unpopular policies, they’ve been slowly boiling the frog with incremental changes towards this same goal in the meantime. One of the options to deal with this is to migrate over to something like a Matrix server, which has a number of benefits over Discord including being open-source and self-hostable.

Unlike Discord, a closed platform subject to the whims of a private company, Matrix is a communications protocol and open standard. Its major server and client implementations are open source, so anyone can build tools around it and integrate it with other systems that also use this protocol. This protocol-vs-platform comparison mirrors email, which is another protocol that isn’t locked down by any one company, and which can easily be used to send messages across various providers. The most commonly used server-side software for Matrix is called Synapse and the most prominent general-purpose clients are the various implementations of Element, and my exploration uses these defaults.

Continue reading “Lead A Discord Exodus With A Matrix Server” →

Places To Visit: Landschaftspark Duisburg-Nord

There are many benefits to spending time in the park, but perhaps few of them have a Hackaday angle. There’s a park in Germany you might want to make an exception for, and it lies in the Ruhrpott city of Duisburg.

I was lucky enough last month to join a friend as she toured Germany for the first time with a caravan. It’s a large country with many beautiful places, so her choice might seem unexpected at first sight. The Ruhrpott, or Ruhr area, is a loose conurbation of industrial cities that loosely follows the river Ruhr on its trip to the Rhine on the western edge of the country. It’s close to  deposits of coal and iron ore, so just like similar areas in other countries, it became a centre for heavy industry. Today that continues, but as you might expect it’s also dotted with the remains of former industries. It’s one of those which is our subject for today, and it offers a very unusual opportunity.

A view out over a wooded post industrial landscape against a grey cloudy sky. In the foreground is a hiuge traverser crane.
Looking out over the former ore bunkers shows just how huge this site is.

Landschaftspark Duisburg-Nord is a forest park on the northern side of the city of Duisburg. But of course that’s not the whole story, because until 1985 it was the site of the Thyssen ironworks. In rehabilitating the site they chose to keep the main structures of the ironworks intact as they reclaimed the surrounding polluted industrial land, so today it may be one of the few places in the world where you can free of charge get up-close and personal with a fully-intact and preserved blast furnace. The site has three of them remaining along with their associated ore and gas processing plants, and the largest and newest, blast furnace number 5, is a structure you can climb to its top. If you’ve ever been curious about iron smelting, this is the place to come. Continue reading “Places To Visit: Landschaftspark Duisburg-Nord” →

Did The BBC And Sir Clive Get It Right Twenty Years Ago?

Predictions of the future are often laughable when reviewed in the years for which they are made. For example, here in 2026 we neither live on the Moon, nor have flying cars. But sometimes they come closer to the reality than others, and in that the BBC Archive have an interesting offering. It’s a Newsnight feature from 2006 looking at the future of artificial intelligence, and since its main interviewee is none other than Sir Clive Sinclair, it’s worth a second look.

Watching the video it’s a shock to be reminded that 2006 was twenty years ago, as in so many ways it’s close enough to touch. Back then we had laptops with Windows or Linux, we had the Web, and HDTV, as we do today. But as we sat in our Ford Focus family car it would be on a Nokia that we rang home; while technically a smartphone it was nothing like the Apple and Android devices that would take the world by storm in the following years. Sir Clive is positive about the development of AI as he saw it then, seeing it as providing knowledge based services such as education or healthcare from your computer. The following interviewee from British Telecom perhaps puts his finger on the pulse the most, predicting a path “Over the next few years” that seems pretty familiar to us a couple of decades later.

So for once this is a future prediction that doesn’t seem too outlandish. Aside from Sir Clive’s appearance it’s packed with retro technology goodies, so it’s well worth a watch below.

Continue reading “Did The BBC And Sir Clive Get It Right Twenty Years Ago?” →

Rosy Retrocomputing

Most of us are guilty of romanticizing the past. Do you long to be the captain of a tall ship? Just as long as you don’t mind weevils in your food, vitamin deficiencies, and death from an infection when there were no antibiotics. Want to be a medieval knight? Even worse. But surely, retrocomputing is as fun as we remember, right? Turn your computer on, and it comes up with BASIC! Ready for you to write your own programs. None of this GUI foolishness. Of course, this is just another example of rosy retrospection.

Even if you like BASIC or a similar language today, things have changed. You have a nice text editor, a fast computer, debugging tools, along with things like named functions, no line numbers, and modern control structures. None of those things were very common in the 1980s. At least, not on a hobby-grade computer.

Why am I thinking about this? Well, the Hackaday Retrocomputing Challenge is on, and it occurred to me that I wanted to work with some young students in glorious MBASIC on a CP/M machine I built and modified from a Hackaday project. Perfect, right? Many of us started that way, so why shouldn’t they?

But it quickly got old. Even a simple program gets bogged down with GOTOs and GOSUBs to mysterious line numbers. It made me remember the time back in the early 1980s, or maybe even the late 1970s, that I wrote a BASIC preprocessor to scan BASIC with no line numbers and produce proper source, converting labels to line numbers in two passes.

Continue reading “Rosy Retrocomputing” →

Tech In Plain Sight: Meet The Robot That Does CPR

Usually in Tech In Plain Sight, we talk about technology you probably see every day, even if you don’t notice it. But we hope you don’t get to see one of the latest crop of medical robots, such as the LUCAS chest compression system. If you watch the popular TV series “The Pitt”, though, you may have caught a glimpse of one of these medical marvels. They aren’t fiction. They are very real devices.

Calling them robots might be stretching the definition a little. They don’t roam the halls looking for patients. But once attached to someone in cardiac arrest, they can take over one of the most important — and physically demanding — parts of CPR: chest compressions.

Keep The Blood Moving

When someone’s heart stops pumping blood, time is critical. CPR doesn’t normally restart the heart on its own. Instead, chest compressions produce enough blood flow to keep oxygen reaching the brain and heart while rescuers work on the underlying problem and, when appropriate, use a defibrillator.

Doing that well is harder than it looks on television. Current American Heart Association guidelines call for adult chest compressions 100 to 120 times per minute, at least 5 cm deep but generally no deeper than 6 cm, while allowing the chest to recoil fully between compressions. Interruptions should be kept to a minimum.

That’s hard physical work. In fact, studies show compression depth begins to fall after only about 90 to 120 seconds, which is one reason CPR teams normally swap compressors every two minutes. But a robot doesn’t get tired.

Continue reading “Tech In Plain Sight: Meet The Robot That Does CPR” →

Hunting The Wild Vibrotruck

A few weeks ago, my wife was out walking the dog, and she sent me four or five photos of small orange boxes planted all around our neighborhood. (OK, I’ll bite!) They had little cards on them explaining that they were geophones, and a QR code on them that lead to a website with all the details. Munich was getting a large-scale seismic survey to map out our underground water, with the aim of using it for geothermal heat and power in the near future.

How do you map up to five kilometers under the earth? You pound the ground, sending shockwaves downward, and then listen for their reflections. At the boundaries between different layers, the change in the speed of sound in the different media cause reflections. Calculating the time it took for a given reflection to reach you lets you figure out how deep the layer boundary is.

The seismic survey procedure goes like this: geophones are set out at roughly 20 m intervals in lines spaced around 300 m apart that run roughly north-south, while “vibrotrucks” drive a roughly east-west course, creating mini-earthquakes every 20 meters along the way. Covering a surface of 1,000 km^2 with over 120,000 sample locations and exciting them 86,000 times is going to take a while. Lucky for me, they started in my part of town.

Continue reading “Hunting The Wild Vibrotruck” →