Linux Fu: Automatic Header File Generation

I’ve tried a lot of the “newer” languages and, somehow, I’m always happiest when I go back to C++ or even C. However, there is one thing that gets a little on my nerves when I go back: the need to have header files with a declaration and then a separate file with almost the same information duplicated. I constantly make a change and forget to update the header, and many other languages take care of that for you. So I went looking for a way to automate things. Sure, some IDEs will automatically insert declarations but I’ve never been very happy with those for a variety of reasons. I wanted something lightweight that I could use in lots of different toolsets.

I found an older tool, however, that does a pretty good job, although there are a few limitations. The tool seems to be a little obscure, so I thought I’d show you what makeheaders — part of the Fossil software configuration management system. The program dates back to 1993 when [Dwayne Richard Hipp] — the same guy that wrote SQLite — created it for his own use. It isn’t very complex — the whole thing lives in one fairly large C source file but it can scan a directory and create header files for everything. In some cases, you won’t need to make big changes to your source code, but if you are willing, there are several things you can do.

Continue reading “Linux Fu: Automatic Header File Generation”

A close-up view of surface-mount components on a circuit board

Smaller Is Sometimes Better: Why Electronic Components Are So Tiny

Perhaps the second most famous law in electronics after Ohm’s law is Moore’s law: the number of transistors that can be made on an integrated circuit doubles every two years or so. Since the physical size of chips remains roughly the same, this implies that the individual transistors become smaller over time. We’ve come to expect new generations of chips with a smaller feature size to come along at a regular pace, but what exactly is the point of making things smaller? And does smaller always mean better?

Smaller Size Means Better Performance

Over the past century, electronic engineering has improved massively. In the 1920s, a state-of-the-art AM radio contained several vacuum tubes, a few enormous inductors, capacitors and resistors, several dozen meters of wire to act as an antenna, and a big bank of batteries to power the whole thing. Today, you can listen to a dozen music streaming services on a device that fits in your pocket and can do a gazillion more things. But miniaturization is not just done for ease of carrying: it is absolutely necessary to achieve the performance we’ve come to expect of our devices today. Continue reading “Smaller Is Sometimes Better: Why Electronic Components Are So Tiny”

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.

ETH0 Autumn 2021: Tiny Camp Manages COVID Precautions Indoors

It’s tempting despite news of stubbornly higher-than-ideal COVID infection figures, to imagine that just maybe the world might be returning to some semblance of pre-pandemic normality. Where this is being written we’re a largely vaccinated population long out of lockdown, and though perhaps some of the pandemic pronouncements of our politicians are a bit suspect we’re cautiously able to enjoy most of life’s essentials. Visiting the supermarket and having a beer might be one thing, but the effect of the pandemic is still being felt in our community’s gatherings. BornHack went ahead this summer, but the headline MCH hacker camp was put off until 2022 and the upcoming CCC Congress in Germany is once more to be a virtual event.

But some events manage to put together the right mix of precaution and size. Such was the case with ETH0, a hacker camp which I was happy to attend last weekend.

Continue reading “ETH0 Autumn 2021: Tiny Camp Manages COVID Precautions Indoors”

Hackaday Podcast 143: More Magnesium Please, Robot Bicep Curls, Malamud’s General Index, And Are You Down With EMC?

Hackaday editors Mike Szczys and Elliot Williams catch up on a week’s worth of hacks. Get a grip on robot hands: there’s an eerily human one on offer this week. If you’re doing buck/boost converter design, the real learning is in high-frequency design patterns that avoid turning your circuits into unintentional radiators. Those looking for new hobbies might want to take up autonomous boat racing. We saw a design that’s easy enough to print on the average 3D printer — and who doesn’t want to build their own jet boat? We’ll wrap up the episode by digging into magnesium sources, and by admiring the number of outfits who are rolling their own silicon these days.

Take a look at the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Direct download (50 MB)

Continue reading “Hackaday Podcast 143: More Magnesium Please, Robot Bicep Curls, Malamud’s General Index, And Are You Down With EMC?”

This Week In Security: The Battle Against Ransomware, Unicode, Discourse, And Shrootless

We talk about ransomware gangs quite a bit, but there’s another shadowy, loose collection of actors in that arena. Emsisoft sheds a bit of light on the network of researchers and law enforcement that are working behind the scenes to frustrate ransomware campaigns.

Darkside is an interesting case study. This is the group that made worldwide headlines by hitting the Colonial Pipeline, shutting it down for six days. What you might not realize is that the Darkside ransomware software had a weakness in its encryption algorithms, from mid December 2020 through January 12, 2021. Interestingly, Bitdefender released a decryptor on January 11. I haven’t found confirmation, but the timing seems to indicate that the release of the decryptor triggered Darkside to look for and fix the flaw in their encryption. (Alternatively, it’s possible that it was released in response the fix, and time zones are skewing the dates.)

Emsisoft is very careful not to tip their hand when they’ve found a vulnerability in a ransomware. Instead, they have a network of law enforcement and security professionals that they share information with. This came in handy again when the Darkside group was spun back up, under the name BlackMatter.

Not long after the campaign was started again, a similar vulnerability was reintroduced in the encryption code. The ransomware’s hidden site, used for negotiating payment for decryption, seems to have had a vulnerability that Emsisoft was able to use to keep track of victims. Since they had a working decryptor, they were able to reach out directly, and provide victims with decryption tools.

This changed when the link to BlackMatter’s portal leaked on Twitter. It seems like many people hold ransomware gangs in less-than-high regard, and took the opportunity to inform BlackMatter of this fact, using that portal. In response, BlackMatter took down that portal site, cutting off Emsisoft’s line of information. Since then, the encryption vulnerability has been fixed, Emisoft can’t listen in on BlackMatter anymore, and they released the story to encourage BlackMatter victims to contact them. They also suggest that ransomware victims always contact law enforcement to report the incident, as there may be a decryptor that isn’t public yet. Continue reading “This Week In Security: The Battle Against Ransomware, Unicode, Discourse, And Shrootless”

Keep Calm And Hack On: The Philosophy Of Calm Technology

So much smart-tech is really kind of dumb. Gadgets intended to simplify our lives turn out to complicate them. It often takes too many “clicks” to accomplish simple tasks, and they end up demanding our attention. Our “better mousetraps” end up kludgy messes that are brittle instead of elegant and robust.

The answer might not be faster or newer technology, but a 30-year-old philosophy. Some great thinkers at Xerox PARC, the place where, among other things, the computer mouse was invented, developed principles they called Calm Technology.

Continue reading “Keep Calm And Hack On: The Philosophy Of Calm Technology”