Open Source Is Choice

If you haven’t been following along with the licensing kerfuffle surrounding the open-source Audacity audio editing software, take a sec to read Tom Nardi’s piece and get up to speed. The short version is that a for-profit company has bought the trademark and the software, has announced plans to introduce telemetry where there was none, made ominous changes to the privacy policy that preclude people under the age of consent from using the software, and requested that all previous developers acquiesce to a change in the open-source license under which it is published. All the while, the company, Muse, says that it will keep the software open, and has walked back and forth on the telemetry issue.

What will happen to “Audacity”? Who knows. But also, who cares? At least one fork of the codebase has been made, with the telemetry removed and the old open licenses in place. The nicest thing about open source is that I don’t care one bit if my software is named Audacity or Tenacity, and this is software I use every week for production of our podcast. But because I haven’t paid any license fees, it costs me absolutely nothing to download the same software, minus some anti-features, under a different name. If the development community moves over to Tenacity, it’ll all be fine.

Tom thinks that the Audacity brand is too big to fail, and that Muse will have a hit on their hands. Especially if they start implementing new, must-have features, they could justify whatever plans they have in store, even if they’re only available as a “freemium” Audacity Pro, with telemetry, under a more restrictive license. When that does happen, I’ll have to make the choice between those features and the costs, but I won’t be left out in the cold as long as the Tenacity fork gets enough eyes on it. So that’s just more choice for the end-user, right? That’s cool.

Compare this with closed source software. There, when the owner makes an unpopular decision, you simply have to take it or make the leap to an entirely different software package. This can be costly if you’ve gotten good at using that software, and between licenses and learning, there’s a lot of disincentive to switching. Not so in this case. If I don’t want to be tracked while editing audio offline, I don’t have to be. Woot.

The elephant in the room is of course the development and debugging community, and it’s way too early to be making predictions there. However, the same rules apply for devs and users: switching between two virtually identical codebases is as easy as git remote add origin or apt get install tenacity. (Unpaid) developers are free to choose among forks because they like the terms and conditions, because one group of people is more pleasant to work with, or because they like the color of one logo more than the other. Users are just as free to choose.

Time will tell if Audacity ends up like the zombie OpenOffice, which is downloaded in spite of the much superior LibreOffice just because of the former’s name recognition. I know this split riles some people up, especially in the LibreOffice development community, and it does seem unfair that the better software somehow enjoys less reputation. But for those of us in the know, it’s just more choice. And that’s good, right?

Just What Have We Become?

The world of open source software is one that often sees disputes between developers, some of which spawn lifelong schisms between devotees of different forks, and others mere storms in a teacup that are settled over a few beers. There are a couple of stories of late though that seem to show the worst in the online world, and which all of us should take a moment to think about.

Many of you may have heard two weeks ago of the passing of [near], the software developer and game translator whose bsnes emulator for the Super Nintendo was the go-to platform for retro Nintendo enthusiasts intent on the pursuit of the closest possible match to the original without possessing real Nintendo hardware. The details of their passing are particularly distressing, in that they committed suicide after numerous attacks over several years from users of Kiwi Farms, a website notorious for the worst kinds of trolling.

Hot on the heels of that distressing story comes news that [Cookie Engineer] is stepping down as maintainer of the project that’s now called Tenacity, a fork of the popular but now-controversial Audacity audio editor. They are doing so after being targeted by users of 4chan, the most well-known of online trolling websites, following an ill-advised Simpsons joke in a naming poll for the software. [Cookie Engineer] alleges that the harassers knocked on doors and windows where they live and a real-world knife attack followed.

Nobody deserves to be hounded to death, to suffer the sort of sustained harassment that [near] encountered, or to be confronted with knife-wielding strangers merely because they have stuck their head above the parapet as an open-source developer. There are no excuses to be made, no justifications for this.

All of us who read Hackaday are likely to be regular users of open-source software, many of us will have used bsnes and may yet use Tenacity, but we probably rarely stop for a moment to think of the real people behind them. Countless hours from innumerable highly-skilled people are what makes the open-source world tick, and aside from the immeasurable sadness of suicide or the horror of a knife attack there can only be harm done to open source software as a whole if to be a prominent developer or maintainer is to expose yourself to this.

The Internet will always have raucous communities at its margins and that’s something which still contributes to its unique culture, but when it jumps off the webpage and into damaging real people then perhaps it has become a monster. As a community we can do so much better, and we shouldn’t be prepared to accept anybody who thinks otherwise among our ranks.

We’d like to remind our readers that help exists for those who have reached the point of considering suicide, and that should you suffer from mental health problems you are not alone in this. Everybody, take care of yourselves, and keep an eye out for each other.

You Can’t Fix What You Can’t Measure

Last year, as my Corona Hobbyâ„¢, I took up RC plane flying. I started out with discus-launched gliders, and honestly that’s still my main love, but there’s only so much room for hackery in planes that are designed to be absolutely minimum weight and maximum performance; these are the kind of planes that notice an extra half gram in the tail. So I’ve also built a few crude workhorse planes — the kind of things that you could slap a 60 g decade-old GoPro on and it won’t even really notice. Some have ended their lives in trees, but most have been disassembled and reincarnated — the electronics live on in the next body.

The journey has been really fun. I’ve learned about aerodynamics, gotten an excuse to put together a 4-axis hot-wire CNC styrofoam cutter, and covered everything in sight with carbon fiber tow, which is cheaper than you might think but makes the plane space-age. My current workhorse has bolted on an IMU, GPS, and a minimal Ardupilot setup, though I have yet to really put it through its paces. What’s holding me back is the video link — it just won’t work reliably further than a few hundred meters, and I certainly don’t trust it to get out of line-of-sight.

My suspicion is that the crappy antennas I have are holding me back, which of course is an encouragement to DIY, but measuring antennas in the 5.8 GHz band is tricky. I’d love to just be able to buy one of the cheap vector analyzers that we’ve covered in the past — anyone can make an antenna when they can see what they’re doing — but they top out at 2.4 GHz or lower. No dice. I’m blind in 5.8 GHz.

Of course, I do have one way in, and that’s tapping into the received signal strength indicator (RSSI) of a dedicated 5.8 GHz receiver, and just testing antennas out in practice, but that only gives a sort of loose better-worse indication. More capacitance or more inductance? Plates closer together or further apart? Try it out and see, I guess, but it’s time-consuming.

Moral of the story: don’t take measurement equipment for granted. Imagine trying to build an analog circuit without a voltmeter, or to debug something digital without a logic probe. Sometimes the most important tool is the one that lets you see the problem in the first place.

The Devil Is In The Details

If you’ve taken a physics class, you’ve doubtless heard tales of mythical beasts like the massless string, the frictionless bearing, and the perfect sphere. And if you’re designing something new, it’s not always wrong to start by thinking in terms of these abstractions, just to get the basic framework laid and a first-order handle on the way things go. But once you start building, you’d better be ready to shed your illusions that a 6 mm peg will fit into a 6 mm hole.

Theory and practice are the same thing, in theory. But as soon as you step into practice, your “weekend build” can easily turn into a 500-hour project, full of hurdles, discoveries, experimentation, and eventual success. I’m not going to rehash [Scott Rumschlag]’s project here — you should really watch his detailed video — but suffice it to say that when building a sub-millimeter precision 3D measuring device, bearings do have friction and string does have non-zero mass, and it all matters.

When you start working on a project that “looked good on paper” or for whatever reason just doesn’t turn out as precisely as you’d wished, you could do worse than to follow [Scott’s] example: start off by quantifying your goals, and then identify where every error along the way accumulates to keep you from reaching them. Doing precise work isn’t easy, but it’s not impossible either if you know where all the errors are coming from. You at least have a chain of improvements that you can consider, and if you’ve set realistic goals, you also know when to stop, which is almost as important.

And if anyone out there has an infinite sheet of perfectly conductive material, I’m in the market.

How Did I Live Without A Microscope?

Get yourself a decent stereo inspection microscope, preferably optical. Something that can magnify from maybe 4x to 40x is fine, anything outside this range is icing on the cake. Some people claim they’re fine with a minimum of 10x, but if you go there, you’re going to need a reducing lens eventually. Either way, get one, and you’ll thank me.

How do I know this? I finally caved in and bought one about two years ago now, and while it’s not something I use daily, it’s something that I use at least once a month and for which there is simply no substitute.

This is Hackaday, so a lot of you will be thinking “inspection scope = fine-pitch soldering” and you’re not wrong. With clearance of 10 cm or more, and a slab of sacrificial optical glass (“neutral density filter”) to protect the optics from tarry flux fumes, a stereo scope at 4x makes even the fiddliest solder joints possible. Good lighting, and sharp tweezers are also a must, of course. That’s what got me in the door.

But that’s the half of it, or less. When my scope was new to me — it hasn’t been “new” since the late 1980s — we spent a whole rainy Sunday afternoon microscoping whatever would fit under the lens. Grains of salt, blades of grass, all manner of bugs living and otherwise, shells, skin, textiles. Everything is cooler under the microscope.

The event that triggered this article wasn’t my son’s school project this week to photograph dandelion seeds. Nope, today my wife found a bug in the basement; to the microscope! And with a very quick and unfortunately very positive identification, we now know that we have to strain all of our flour for bread beetles and pitch whichever bags they came in with. Hooray!

The inspection scope was intended for the soldering bench, but has found general use as an irreplaceable household tool. While I admittedly also intended to use it to lure my son into science, the real fight over scope time has been with my wife. And that’s why you want an optical scope instead of one that’s tethered to a monitor — as a general-purpose tool, portability is paramount. No menu diving, no power source, and anyone can just grab it and go.

Convinced? Ready to pull out your wallet? Microscopes are like cars. You can spend as much as you’d like on one, the cheapest will cause you nothing but pain and suffering, and the difference between the mid-range and high-end is full of diminishing returns. Buying used, especially if you can kick the metaphorical tires, can be a great bargain, and a high-end used scope will hold its value a lot better than a new budget model. Just around $200 is a sweet spot new and $300-$400 will get you the top of the line from yesteryear if you shop around. That’s not cheap, but if you’re the microscope type, it’s easily worth it. Trust me.

Growing Up With Computers

My son is growing up with computers. He’s in first grade, and had to list all of the things that he knows how to do with them. The list included things like mousing around, drawing ghosts with the paint program, and — sign of the times — muting and unmuting the microphone when he’s in teleconferences. Oh yeah, and typing emojis. He loves emojis.

When I was just about his age, I was also getting into computers. But home computers back then were in their early years as well. And if I look back, I’ve been getting more sophisticated about computers at just about the same pace that they’ve been getting more sophisticated themselves. I was grade school during the prime of the BASIC computers — the age of the Apple II and the C64. I was in high school for the dawn of the first Macs and the Amiga. By college, the Pentiums’ insane computational abilities just started to match my needs for them to solve numerical differential equations. And in grad school, the rise of the overclockable multi-cores and GPUs powered me right on through a simulation-heavy dissertation.

We were both so much younger then.

When I was a kid, they were playthings, and as a grownup, they’re powerful tools. Because of this, computers have never been intimidating. I grew up with computers.

But back to my son. I don’t know if it’s desirable, or even possible, to pretend that computers aren’t immensely complex for the sake of a first grader — he’d see right through the lie anyway. But when is the right age to teach kids about voice recognition and artificial neural networks? It’s a given that we’ll have to teach him some kind of “social media competence” but that’s not really about computers any more than learning how to use Word was about computers back in my day. Consuming versus creating, tweeting versus hacking. Y’know?

Of course every generation has its own path. Hackers older than me were already in high-school or college when it became possible to build your own computer, and they did. Younger hackers grew up with the Internet, which obviously has its advantages. Those older than me made the computers, and those younger have always lived in a world where the computer is mature and taken for granted. But folks about my age, we grew up with computers.

Wreck Your Mail Before You Check Your Mail

Every five years or so, I think it’s time to review my e-mail flow. (Oh no!) I run my own mail server, and you should too, but this means that I get to figure out managing and searching and archiving and indexing it all by myself. (Yippee!)

And I’ll be honest — sometimes I’m a bit of a luddite. I actually, literally have been using Mutt, or its derivative NeoMutt for maybe fifteen years, after a decade or so of mouse-intensive graphical mail readers. If e-mail is about typing words, and maybe attaching the occasional image, nothing beats a straight-up text interface. But what a lot of these simple mail clients lack is good search. So I decided to take that seriously.

Notmuch is essentially an e-mail database. It’s an e-mail searcher, tagger, and indexer, but it’s not much else. The nice thing is that it’s brutally fast. Searches and extraction of tagged subsets are faster than sending the same data back and forth to the Big G, and I have a ton more flexibility. It’s awesome. Of course good ol’ Mutt can work with Notmuch. Everything can. It’s Linux/UNIX. Continue reading “Wreck Your Mail Before You Check Your Mail”