Learning Obsolete Technology

Tom Nardi and I were talking about his trip to the Vintage Computer Festival on the podcast, and he admitted to not having been a retrocomputer aficionado before his first trip. But he ended up keying some binary machine code into some collection of archaic silicon, and he got it. In the same episode, the sound of the week was a Strowger switch — the old electromechanical “brain” of telephone switching centers of old. The sample I used was from Sam of Look Mum No Computer on YouTube, who got one for his museum and thinks it’s just awesome.

Why do people like this kind of old (obsolete?) tech? It’s certainly not because it’s overwhelmingly capable — the giant old switch is replaced easily by a stack of silicon, and don’t even get me started on the old blinkenlights computer that Tom was keying on. In both of these cases, the people are significantly younger than the tech they’re playing around with, so that rules out nostalgia. What’s left?

I think it’s that sometimes the older technology is more immediate, more understandable, more tangible, and that resonates with people. In a time when we all have wonder devices that can do anything, programmed in languages that are pleasant, using libraries that are nothing short of magical in terms of making difficult things easy, understanding how things work down to the ground is a rare commodity.

But it’s a strange position to find ourselves in, technologically, where there’s almost necessarily a trade-off between the usefulness and functionality of a device with the ability to understand fundamentally how it works.

Beginning The Machine Shop Journey With A DIY CNC

Building a good quality machine shop may seem to present a chicken-and-egg problem, at least for anyone not willing to mortgage their home for the money needed to buy all of these tools new. Namely, that building good tools often requires good tools. To help solve this problem, [Ryan] designed and built this CNC machine which can be built with nothing other than common tools, hardware store supplies, and some readily available parts from the internet.

Since it’s being built from consumer-grade material, [Ryan] has the design philosophy of “buying precision” which means that most of the parts needed for this build are precise enough for their purpose without needing to be worked in any way before incorporation into the mill. For example, he uses a granite plate because it’s hard, flat, heavy, and sturdy enough at the time of purchase to be placed into the machine right away. Similarly, his linear guides do not need to be modified before being put to work with a high degree of precision and minimal calibration. From there, he applies the KISS principle and uses the simplest parts available. With this design process he is able to “bootstrap” a high quality mill for around $1500 USD without needing any extra tools than the ones you likely already have.

The RIG-CNC as it is known has also been made completely open source which further cements its bootstrapability, and there is a lot more detail on the project page and in the video linked below. This project is unique not simply for the mill build from common parts and tools, but because this design philosophy is so robust. Good design goes a lot farther in our builds than a lot of us might realize, and good design often results in more maintainable, hackable things that work for more uses than the original creators may have even thought about.

Continue reading “Beginning The Machine Shop Journey With A DIY CNC”

Hackability Matters

The Unix Way™ provides extreme hackability. The idea is that software should be written as tools to accomplish discrete tasks, and that it should be modular, extensible, and play well with others. It’s like software as a LEGO set — you can put the blocks together however you want, within limits, and make stuff that’s significantly cooler than any of the individual blocks alone.

Clearly this doesn’t work for all applications — things like graphics editors and web browsers don’t really lend themselves to being elegant tools that integrate well with others, right? It’s only natural that they’re bloaty walled gardens. What happens in the browser must stay in the browser, right?

But how sad is it that the one piece of software you use all day, your window into cyberspace, doesn’t play well with the rest of your system? I’d honestly never really been bothered by that fact until stumbling on TabFS. It’s an extension to Chrome that represents the tabs on your browser as if they were files on your local system — The Unix Way™. And what this means is that any other program that can read from or write to a file can open tabs, collect them, change webpages on the fly, and so on. It opens up the browser to you.

This is tremendously powerful. Don’t like the bookmarking paradigm of your particular browser? Writing your own would be a snap in Python — and you could do cleverer things like apply a little machine learning to handle putting them in categories. Want to pop open (or refresh) a set of webpages at a particular time every day? Cron, or its significantly more complicated counterpart systemd, and a couple lines of code will do that. Want to make a hardware button that converts dark mode to light mode and vice-versa for every website starting with “H”? Can do.

I’m picking on browsers, but many large pieces of software are inaccessible in the same way — even if they’re open source, they don’t open up channels for interaction with user code or scripts. (Everything “in the cloud” or “as a service”, I’m looking at you! But that’s a further rant for another day.) And that’s a shame, because most of these “big” pieces of software actually do the coolest things.

So please, if you’re working on a big software package, or even just writing a plug-in for one, do think about how you can make more of its abilities available to the casual scripter. Otherwise, it’s just plastic blocks that don’t fit with the rest of the set.

Kipp Bradford Discusses The Entanglement Of Politics And Technology

Kipp Bradford wrapped up his keynote talk at the Hackaday Remoticon with a small piece of advice: don’t built bridges in the middle of the ocean. The point is that a bridge must connect two pieces of land to be useful and if technology isn’t useful to humanity, does it matter at all?

In reality we build bridges in the middle of the ocean all the time as each of us finds nonsensical reasons to learn new skills and try things out. But when it comes time to sit down and make an organized end goal, Kipp wisely asks us to consider the impact we’d like that work to have on the world. Equally importantly, how will we make sure completed work actually gets used? This is where the idea of politics in technology comes to play, in the sense that politics is a major mechanism for collective decision-making within a society.

Currently the CTO of Treau, and a Lecturer and Researcher at Yale, Kipp delivered this keynote live on November 7th. Kipp was an expert judge for the Hackaday Prize in 2017 and 2018. The video of his talk, and a deeper look at the topics, are found below.

Continue reading “Kipp Bradford Discusses The Entanglement Of Politics And Technology”

Brute-Forced Copyrighting: Liberating All The Melodies

Bluntly stated, music is in the end just applied physics. Harmony follows — depending on the genre — a more or less fixed set of rules, and there  are a limited amount of variation possible within the space of music itself. So there are technically only so many melodies possible, making it essentially a question of time until a songwriter or composer would come up with a certain sequence of notes without knowing that they’re not the first one to do so until the cease and desist letters start rolling in.

You might well argue that there is more to a song than just the melody — and you are absolutely right. However, current copyright laws and past court rulings may not care much about that. Aiming to point out these flaws in the laws, musician tech guy with a law degree [Damien Riehl] and musician software developer [Noah Rubin] got together to simply create every possible melody as MIDI files, releasing them under the Creative Commons Zero license. While their current list is limited to a few scales of fixed length, with the code available on GitHub, it’s really just a matter of brute-forcing literally every single possible melody.

Admittedly, such a list of melodies might not have too much practical use, but for [Damien] and [Noah] it’s anyway more about the legal and philosophical aspects: musicians shouldn’t worry about getting sued over a few overlapping notes. So while the list serves as a “safe set of melodies” they put in the public domain, their bigger goal is to mathematically point out the finite space of music that shouldn’t be copyrightable in the first place. And they definitely have a point — just imagine where music would be today if you could copyright and sue over chord progressions.
Continue reading “Brute-Forced Copyrighting: Liberating All The Melodies”

Pack Your Bags – Systemd Is Taking You To A New Home

Home directories have been a fundamental part on any Unixy system since day one. They’re such a basic element, we usually don’t give them much thought. And why would we? From a low level point of view, whatever location $HOME is pointing to, is a directory just like any other of the countless ones you will find on the system — apart from maybe being located on its own disk partition. Home directories are so unspectacular in their nature, it wouldn’t usually cross anyone’s mind to even consider to change anything about them. And then there’s Lennart Poettering.

In case you’re not familiar with the name, he is the main developer behind the systemd init system, which has nowadays been adopted by the majority of Linux distributions as replacement for its oldschool, Unix-style init-system predecessors, essentially changing everything we knew about the system boot process. Not only did this change personally insult every single Perl-loving, Ken-Thompson-action-figure-owning grey beard, it engendered contempt towards systemd and Lennart himself that approaches Nickelback level. At this point, it probably doesn’t matter anymore what he does next, haters gonna hate. So who better than him to disrupt everything we know about home directories? Where you _live_?

Although, home directories are just one part of the equation that his latest creation — the systemd-homed project — is going to make people hate him even more tackle. The big picture is really more about the whole concept of user management as we know it, which sounds bold and scary, but which in its current state is also a lot more flawed than we might realize. So let’s have a look at what it’s all about, the motivation behind homed, the problems it’s going to both solve and raise, and how it’s maybe time to leave some outdated philosophies behind us.

Continue reading “Pack Your Bags – Systemd Is Taking You To A New Home”

AI And Art Appreciation

In 2019, using AI to evaluate artwork is finally more productive than foolish. We all hope that someday soon our Roomba will judge our living habits and give unsolicited advice on how we could spruce things up with a few pictures and some natural light. There is already an extensive amount of Deep Learning dedicated to photo recognition but a team in Croatia is adapting them for use on fine art. It makes sense that everything is geared toward cameras since most of us have a vast photographic portfolio but fine art takes longer to render. Even so, the collection on Wikiart.org is vast and already a hotbed for computer classification work, so they set to work there.

As they modify existing convolutional neural networks, they check themselves by comparing results with human ratings to keep what works and discard what flops. Fortunately, fine art has a lot of existing studies and commentary, whereas the majority of photographs in the public domain have nothing more than a file name and maybe some EXIF data. The difference here is that photograph-parsing AI can say, “That is a STOP sign,” while the fine art AI can say, “That is a memorable painting of a sign.” Continue reading “AI And Art Appreciation”