Tool Embodiment And The Dead Trackball

There is a currently ongoing debate in the neuropsychology world about how we relate to the tools that we use. The theory of “tool embodiment” says that when we use some tools frequently enough, our brain recognizes them similarly to how it recognizes our own hands, for instance. There is evidence and counter-evidence from experiments with prosthetics, trash-grabber arms, and rubber dummy arms, just to name a few. It’s fair to say the jury is still out.

All I know is that today my trackball broke, and using a normal gaming mouse to edit the podcast was torture. It would be an exaggeration to say that I felt like I’d lost a hand, but I have so much motor memory apparently built up in my use of the trackball that switching over to another tool to undertake the exact same series of hundreds of small audio edits – mostly compensating for the audio delay across continents, but also silencing coughs and background noises – took an extra hour.

Anyone who has switched from one keyboard to another, or heck even from emacs to vim, knows what I experienced. My body just knows how to flick my wrist to make the cursor on the screen move over to the beginning of that “umm”. It’s not like I don’t conceptually know how to use a mouse either, and it does exactly the same job. But the mouse wasn’t my tool for this application. And saying that out loud makes it almost sound like I’m bordering on embodying my trackball.

I probably should have taken the trackball apart and replaced the bad tact switch on the left-click – that would have taken maybe twenty minutes – but I completely underestimated how integral the tool had become to the work. Anyway, as I write this, tomorrow is Saturday and I’ll have time to fix it. But today, I learned something pretty neat about myself in the process, even if I don’t think my single datapoint is going to rock the academic psych world.

Making The Case Against Markdown

For some reason, Markdown has not just become the format of choice for giving READMEs in GitHub repositories some flair, but also for writing entire websites and documents. In a recent rant, [Burak Güngör] covers all the ways in which Markdown is a good idea as a basic document formatting concept and how its implementation is absolutely atrocious.

Even without straying into the minefields helpfully provided by other Markdown dialects beyond CommonMark, there is already plenty here to indulge in. The very idea of Markdown as a ‘simple text formatting syntax’ breaks down the moment you look at the available formatting styles and how they translate into HTML. Worse, the sheer complexity of parsing Markdown makes it vulnerable to a regular expression denial-of-service (ReDoS) attack.

This is where the question arises of whether Markdown is truly a text formatting aid or trying to be a programming language that just happens to usually spit out HTML documents, as, at some point, you’re basically writing something that approaches a regular expressions engine in its nightmarish implications.

Continue reading “Making The Case Against Markdown”

Re-Learning How To Run

As I write this, four astronauts are on their way around the moon for the first time in 50 years. A lot us have asked ourselves just exactly why you’d send people out that far when the environment is so hostile and we have increasingly competent robots that could do the jobs in their place. If anything, that’s even more true now than it was back in the day of the Apollo program, when the remote operations capability was a lot more constrained. But having people, potentially in the near future, on the lunar surface remains qualitatively different.

I was recently re-watching some of the footage from Apollo 16 when the astronauts were driving around in the Lunar Roving Vehicle, and the discussions that they’re having about the lunar geology that they can see for the first time with their own eyes is very convincing. Having people in situ tightens the loop of “hey, that’s interesting”, “let’s take a closer look”, and “I wonder what that means” in a way that minutes or hours of transmission time, and sterile observation of photos on a computer monitor just break. In comparison, our Mars rovers move excruciatingly slowly, the data comes back through a very thin pipe, and it takes months or years to analyze.

Of course, there is danger to human life; it’s a lot more expensive to get people safely to, and importantly back from, the moon than it would be with a disposable robot. Comparison with the Mars rovers is also unfair because travel to Mars is another scale entirely. Even if it does make sense to send humans for exploration on the moon, it may not make sense to do the same on the red planet, in the near future or ever. Given all that, I’m stoked that we can see through the robots eyes, but if all else were equal, I’m sure that we’d learn more from human explorers.

While in a lot of ways the Artemis I and now the Artemis II missions are underwhelming in comparison to the many “firsts” of Apollo, I absolutely appreciate them for what they are: a shakedown trial of a set of technologies and practices that we used to grasp, but which have atrophied over the last five decades. If a new generation of scientists is to put feet onto regolith, we need to learn to walk before they can run, or rover. In that spirit, I’ll be crossing my fingers for the future of manned spaceflight over the next week and a half.

Ask Hackaday: Using CoPilot? Are You Entertained?

There’s a great debate these days about what the current crop of AI chatbots should and shouldn’t do for you. We aren’t wise enough to know the answer, but we were interested in hearing what is, apparently, Microsoft’s take on it. Looking at their terms of service for Copilot, we read in the original bold:

Copilot is for entertainment purposes only. It can make mistakes, and it may not work as intended. Don’t rely on Copilot for important advice. Use Copilot at your own risk.

While that’s good advice, we are pretty sure we’ve seen people use LLMs, including Copilot, for decidedly non-entertaining tasks. But, at least for now, if you are using Copilot for non-entertainment purposes, you are violating the terms of service.

Continue reading “Ask Hackaday: Using CoPilot? Are You Entertained?”

Age-Verification And The World Before Social Media

Although it may be hard to believe for current generations, there was a time when the Internet and the World Wide Web were not as integrated into society as it is today. The only forms of online ‘social media’ that existed came in the form of IRC, forums, BBSes, newsgroups and kin, while obtaining new software for your PC involved generally making your way over to a physical store to buy a boxed copy, at least officially.

In this era – and those before it – age-verification already existed, with various goods ranging from tobacco and alcohol to naughty adult magazines requiring you to pass some form of age check. Much like how movies also got age-gated, so did video games, with a sales clerk taking a very good look at you before selling you that naughty puzzle game or boxed copy of Quake 3.

Today we’re seeing a big fuss being made about online age-verification, with the claim being that it is ‘for the children’, but as any well-adjusted adult can attest to, this is essentially a big bucket of hogwash.

Continue reading “Age-Verification And The World Before Social Media”

The Unreasonable Power Density Of Lithium-Ion

We’re all used to it by now, but I’d just like to reflect on how insanely power-packed lithium ion batteries are, and everything that’s afforded us. I’m trying to think of a gadget, a hobby, or nearly anything in my house that’s not touched by the battery chemistry.

I’m looking at my portable wireless keyboard in front of me, with a LiPo pack inside. Oddly enough, I’m charging it with a LiPo-based power bank, simply because the cable to the nearest USB-C adapter is too short. A gaming console, cell phone, and a DSLR camera are all within arms reach and powered with lithium.

It’s not just consumer stuff either. I fly FPV quads and airplanes for fun when I can, and of course those are made entirely possible by the combination of smaller brushless DC motors and their drivers, and the high-power-density LiPo packs that power them. For field recharging, I have a huge self-made LiIon pack that can keep them all in the air all day. These days, LiPo and LiIon tech is the heart of hacker projects big and small. Heck, we even powered this year’s Hackaday Supercon badge with a LiPo that allowed it to run all weekend on a charge for many folks, where in the past swapping out AAs during the event was commonplace.

The application that still blows my mind is that we recently got a solar installation on our roof, which means a huge LiFePO battery in the basement. And while it’s one thing to power noisy little quads on the battery tech, it somehow seems another to power our entire house, for multiple hours per day, from a battery. Granted it’s not a couple of AAA cells in a little black plastic box, but it’s simply amazing to run a washing machine, the fridge, the stove, and even the heating off of what amounts to a battery pack.

Of course, I’m aware of the costs of producing the cells, both in terms of money and the environmental damage. It’s not a free lunch, and I’m looking forward to both cleaner and cheaper energy storage chemistries in the future. But for now, I’m still in awe of the many options that lithium-based battery chemistry has brought us. May your pillows remain non-spicy!

What Is A Computer?

On the podcast, [Tom] and I were talking about the new generation of smartphones which are, at least in terms of RAM and CPU speed, on par with a decent laptop computer. If so, why not just add on a screen, keyboard, and mouse and use it as your daily driver? That was the question posed by [ETA Prime] in a video essay and attempt to do so.

Our consensus was that it’s the Android operating system holding it back. Some of the applications you might want to run just aren’t there, and on the open side of the world, even more are missing. Is the platform usable if you can’t get the software you need to get your work done?

But that’s just the computer-as-a-tool side of the equation. The other thing a computer is, at least to many of our kind of folk, is a playground. It’s a machine for experimenting with, and for having fun just messing around. Android has become way too polished to have fun, and recent changes on the Google side of things actively prevent you from installing arbitrary software. The hardware is similarly too slimmed-down to allow for experimentation.

Looking back, these have been the same stumbling blocks for the last decade. In 2018, I was wondering aloud why we as a community don’t hack on cell phones, and the answer then was the same as it is now – the software is not friendly to our kind. You can write phone apps, and I have tried to do so, but it’s just not fun.

The polar opposites of the smartphone-as-computer are no strangers in our community. I’m thinking of the Linux single-board computers, or even something like a Steam Deck, all of which are significantly less powerful spec-wise than a flagship cell phone, but which are in many ways much more suitable for hacking. Why? Because they make it easy to do the things that we like to do. They’re designed to be fun computers, and so we use them.

So for me, a smartphone isn’t a computer, but oddly enough it’s not because of the hardware. It’s because what I want out of a computer is more than Turing completeness. What I want is the fun and the freedom of computering.