Separating Ideas From Words

We covered Malamud’s General Index this week, and Mike and I were talking about it on the podcast as well. It’s the boldest attempt we’ve seen so far to open up scientific knowledge for everyone, and not just the wealthiest companies and institutions. The trick is how to do that without running afoul of copyright law, because the results of research are locked inside their literary manifestations — the journal articles.

The Index itself is composed of one-to-five-word snippets of 107,233,728 scientific articles. So if you’re looking for everything the world knows about “tincture of iodine”, you can find all the papers that mention it, and then important keywords from the corpus and metadata like the ISBN of the article. It’s like the searchable card catalog of, well, everything. And it’s freely downloadable if you’ve got a couple terabytes of storage to spare. That alone is incredible.

What I think is most remarkable is this makes good on figuring out how to separate scientific ideas from their prison — the words in which they’re written — which are subject to copyright. Indeed, if you look into US copyright law, it’s very explicit about not wanting to harm the free sharing of ideas.

“In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work.”

But this has always been paradoxical. How do you restrict dissemination of the papers without restricting dissemination of the embodied ideas or results? In the olden days, you could tell others about the results, but that just doesn’t scale. Until today, only the richest companies and institutions had access to this bird’s eye view of scientific research — similar datasets gleaned from Google’s book-scanning program have trained their AIs and seeded their search machines, but they only give you a useless and limited peek.

Of course, if you want to read the entirety of particular papers under copyright, you still have to pay for them. And that’s partly the point, because the General Index is not meant to destroy copyrights, but give you access to the underlying knowledge despite the real world constraints on implementing copyright law, and we think that stands to be revolutionary.

The Pi Zero 2 W Is The Most Efficient Pi

Last week we saw the announcement of the new Raspberry Pi Zero 2 W, which is basically an improved quad-core version of the Pi Zero — more comparable in speed to the Pi 3B+, but in the smaller Zero form factor. One remarkable aspect of the board is the Raspberry-designed RP3A0 system-in-package, which includes the four CPUs and 512 MB of RAM all on the same chip. While 512 MB of memory is not extravagant by today’s standards, it’s workable. But this custom chip has a secret: it lets the board run on reasonably low power.

When you’re using a Pi Zero, odds are that you’re making a small project, and maybe even one that’s going to run on batteries. The old Pi Zero was great for these self-contained, probably headless, embedded projects: sipping the milliamps slowly. But the cost was significantly slower computation than its bigger brothers. That’s the gap that the Pi Zero 2 W is trying to fill. Can it pull this trick off? Can it run faster, without burning up the batteries? Raspberry Pi sent Hackaday a review unit that I’ve been running through the paces all weekend. We’ll see some benchmarks, measure the power consumption, and find out how the new board does.

The answer turns out to be a qualified “yes”. If you look at mixed CPU-and-memory tasks, the extra efficiency of the RP3A0 lets the Pi Zero 2 W run faster per watt than any of the other Raspberry boards we tested. Most of the time, it runs almost like a Raspberry Pi 3B+, but uses significantly less power.

Along the way, we found some interesting patterns in Raspberry Pi power usage. Indeed, the clickbait title for this article could be “We Soldered a Resistor Inline with Raspberry Pis, and You Won’t Believe What Happened Next”, only that wouldn’t really be clickbait. How many milliamps do you think a Raspberry Pi 4B draws, when it’s shut down? You’re not going to believe it.

Continue reading “The Pi Zero 2 W Is The Most Efficient Pi”

Dream Bigger, Predict The Future

I’d love to tell you that I’m never wrong, but I’ve been wrong a lot. Remember the Arduino? When it was brand new, I thought it was some silly collection of libraries and a drop-down menu for people who are too lazy to just type out their own #include statements. Needless to say, it launched about a million hacks and brought microcontroller programming into the mainstream. Oops.

Similarly, about fifteen years ago, I saw an educational project out of MIT’s Media Lab. It consisted of a bunch of blocks that had LCD screens on them and would interact with each other when put together. The real hook, though, was that each block had an accelerometer inside, so you could “pour water” out of one block into another, for instance.

At that time, accelerometers were expensive, even in quantities. Even one of these cubes must have cost $100 at the time, much less a whole set. Accelerometers were so expensive that I wouldn’t have thought about incorporating one into a project, much less a dozen, so I ignored them for hacker purposes. Then came the cellphone and economies of scale. Today, even in chip shortage times, they’re readily available for around $2 each, making them useful for exactly this kind of “frivolous” use.

From the Arduino experience, I learned to never underestimate the impact of what seem to me to be “small” conveniences. (And maybe more so, the value of the tremendous common effort from the community.) From the MIT accelerometer story, the moral is that some parts will get drastically cheaper in the future, so you shouldn’t necessarily exclude the cool new sensor from your design repertoire. After all, ten years ago, nobody would have thought that we’d have laser time-of-flight rangefinders for less than a hamburger.

What new components are fantastically useful, or full of potential, that might be cheap enough in the future to make them also worth looking into? Swing by Hackaday tomorrow morning and join in the conversation!

In Search Of The First Comment

Are you writing your code for humans or computers? I wasn’t there, but my guess is that at the dawn of computing, people thought that they were writing for the machines. After all, they were writing in machine language, and whatever bits they flipped into the electronic brain stayed in the electronic brain, unless punched out on paper tape. And the commands made the machine do things, not other people. Code was written strictly for computers.

Modern programming practice, on the other hand, is aimed firmly at people. Variable and function names are chosen to be long and to describe what they contain or do. “Readability” of code is a prized attribute. Indeed, sometimes the fact that it does the right thing at all almost seems to be an afterthought. (I kid!)

Somewhere along this path, there was an important evolutionary step, like the first fish using its flippers to walk on land. Comments were integrated into programming languages, formalizing the notes that coders of old surely wrote by hand in the margins of the paper first-drafts before keying it in. So I went looking for the missing link: the first computer language, and ideally the first program, with comments. I came up empty handed.

Or rather full handed. Every computer language that I could find had comments from the beginning. FORTRAN had comments, marked by a “C” as the first character in a line. APL had comments, marked by the bizarro rune ⍝. Even the custom language written for the Apollo 11 guidance computers had comments — the now-commonplace “#”. I couldn’t find an early programming language without comments.

My guess is that the first language with a comment must have been an assembly language, because I don’t know of any machines with a native comment instruction. (How cool and frivolous would that be?)

Assemblers simply translate mnemonic names to their machine instruction counterparts, but this gives them the important freedom to ignore anything starting with, traditionally, a semicolon. Even though you’re just transferring the contents of register X to the memory location pointed to in register Y, you can write that you’re “storing the height above ground (meters)” in the comments.

The crucial evolutionary step, though, is saving the comments along with the code. Simply ignoring everything that comes after the semicolon and throwing it away doesn’t count. Does anyone know? What was the first code to include comments as part of the code itself, and not simply as marginalia?

Where You Are Influences What You Invent

[Timon] just bought a new PCB holder setup for his desk. It’s one of those spring-loaded jobbies that uses strong magnets to hold it up off of a work surface, and is made of metal so that you can reflow solder with it. It might be a clone of the PCBite, but frankly I’ve seen similar projects everywhere — it’s hard to say who is copying whom these days. And anyway, that’s not the point.

What struck me about the holders was their tops: they’re repurposed 3D printer nozzles. That’s a fantastic idea because they’re non-magnetic, heat tolerant, relatively uniform, and probably dirt cheap in Shenzhen, where the designer of this board almost certainly lives. Maybe he or she even works in a 3D printer factory? Who knows? But the designer almost certainly looked around for something that would fit the bill, and found the nozzles.

Indeed, there’s been a lot of innovation in all things board-holding coming out of China over the last decade. I can remember when the state of the art was a vise-like affair. (I still like my homebrew Stickvise clone for low, square jobs.)

But with cell phone repairs requiring the ability to hold and reflow ever stranger board shapes, there’s been a flourishing of repositionable holders. The pawn-pillar designs are cool, but their utility rests firmly in how strong the magnets are. (I wouldn’t buy the one linked, for instance, without trying it first-hand.) I really like the look of these jobbies, which have springs to maintain tension. (Will the 3D-printed plastic jaws hold up to multiple reflows?) Anyway, it’s no coincidence that the inventors of these devices are in the cellphone-repair capital of the universe.

The old saying is that necessity is the mother of invention. But what if, like with real estate, it’s location, location, location? You dream up solutions to problems around you, using parts that you’ve got on-hand. If that sounds a little fatalistic, consider that you can also change your surroundings, either physical or even virtual. Are you in the middle of the right challenges and opportunities?

Hackers And China

The open source world and Chinese manufacturing have a long relationship. Some fifteen years ago, the big topic was how companies could open-source their hardware designs and not get driven bankrupt by competition from overseas. Companies like Sparkfun, Adafruit, Arduino, Maple Labs, Pololu, and many more demonstrated that this wasn’t impossible after all.

Maybe ten years ago, Chinese firms started picking up interesting hacker projects and producing them. This gave us hits like the AVR transistor tester and the NanoVNA. In the last few years, we’ve seen open-source hardware and software projects that have deliberately targeted Chinese manufacturers, and won. We do the design and coding, they do the manufacturing, sales, and distribution.

But this is something else: the Bangle.js watch takes an essentially mediocre Chinese smartwatch and reflashes the firmware, and sells them as open-source smartwatches to the general public. These pre-hacked watches are being sold on Kickstarter, and although the works stands on the shoulders of previous hacker’s reverse engineering work on the non-open watch hardware, it’s being sold by the prime mover behind the Espruino JavaScript-on-embedded language, which it runs on.

We have a cheap commodity smartwatch, being sold with frankly mediocre firmware, taken over by hackers, re-flashed, re-branded, and sold by the hackers on Kickstarter. As a result of it being (forcibly) opened, there’s a decently sized app store of contributed open-source applications that’ll run on the platform, making it significantly more useful and hacker friendly than it was before.

Will this boost sales? Will China notice the hackers’ work? Will this, and similar projects, end up in yet another new hacker/China relationship? We’re watching.

Meet The Winners Of The Hackaday Prize Round Four: Redefine Robots

The judges’ ballots are in and we’re proud to present the ten winners of the fourth round of the 2021 Hackaday Prize. We love robots, and it’s obvious that you do too!  The number and range of projects submitted this year were overwhelming.

No robotics round is complete without a robot arm, and while a few of them were in the finals, we especially liked CM6, which really pulled out all the stops. This is research-grade robotics on a not-quite-student budget, featuring custom compliant mechanisms so that it can play well with its fleshy companions.

With six degrees of freedom, and six motors, the drivetrain budget can quickly get out of hand on builds like these, so we’re especially happy to see custom, open, brushless-motor driver boards used to reduce the cost of admission. Even if you’re not going to make a 100% faithful CM6 clone, you’ll learn a lot just from going through the build. Oh, and did we mention it has a software stack? Continue reading “Meet The Winners Of The Hackaday Prize Round Four: Redefine Robots”