Freed At Last From Patents, Does Anyone Still Care About MP3?

The MP3 file format was always encumbered with patents, but as of 2017, the last patent finally expired. Although the format became synonymous with the digital music revolution that started in the late 90s, as an audio compression format there is an argument to be made that it has long since been superseded by better formats and other changes. [Ibrahim Diallo] makes that very argument in a recent blog post. In a world with super fast Internet speeds and the abstracting away of music formats behind streaming services, few people still care about MP3.

The last patents for the MP3 format expired in 2012 in the EU and  2017 in the US, ending many years of incessant legal sniping. For those of us learning of the wonders of MP3 back around ’98 through services like Napster or Limewire, MP3s meant downloading music on 56k dialup in a matter of minutes to hours rather than days to weeks with WAV, and with generally better quality than Microsoft’s WMA format at lower bitrates. When portable media players came onto the scene, they were called ‘MP3 players’, a name that stuck around.

But is MP3 really obsolete and best forgotten in the dustbin of history at this point? Would anyone care if computers dropped support  for MP3 tomorrow?

Continue reading “Freed At Last From Patents, Does Anyone Still Care About MP3?”

Software In Progress

Open source software can be fantastic. I run almost exclusively open software, and have for longer than I care to admit. And although I’m not a serious coder by an stretch, I fill out bug reports when I find them, and poke at edge cases to help the people who do the real work.

For 3D modeling, I’ve been bouncing back and forth between OpenSCAD and FreeCAD. OpenSCAD is basic, extensible, and extremely powerful in the way that a programming language is, and consequently it’s reliably bug-free. But it also isn’t exactly user friendly, unless you’re a user who likes to code, in which case it’s marvelous. FreeCAD is much more of a software tool than a programming language, and is a lot more ambitious than OpenSCAD. FreeCAD is also a program in a different stage of development, and given its very broad scope, it has got a lot of bugs.

I kept running into some really serious bugs in a particular function – thickness for what it’s worth – which is known to be glitchy in the FreeCAD community. Indeed, the last time I kicked the tires on thickness, it was almost entirely useless, and there’s been real progress in the past couple years. It works at least sometimes now, on super-simple geometries, and this promise lead me to find out where it still doesn’t work. So I went through the forums to see what I could do to help, and it struck me that some people, mostly those who come to FreeCAD from commercial programs that were essentially finished a decade ago, have different expectations about the state of the software than I do, and are a lot grumpier.

Open source software is working out its bugs in public. Most open source is software in development. It’s growing, and changing, and you can help it grow or just hang on for the ride. Some open-source userland projects are mature enough that they’re pretty much finished, but the vast majority of open-source projects are coding in public and software in progress.

It seems to me that people who expect software to be done already are frustrated by this, and that when we promote super-star open projects like Inkscape or Blender, which are essentially finished, we are doing a disservice to the vast majority of useful, but still in progress applications out there that can get the job done anyway, but might require some workarounds. It’s exactly these projects that need our help and our bug-hunting, but if you go into them with the “finished” mentality, you’re setting yourself up for frustration.

Networking History Lessons

Do they teach networking history classes yet? Or is it still too soon?

I was reading [Al]’s first installment of the Forgotten Internet series, on UUCP. The short summary is that it was a system for sending files across computers that were connected, intermittently, by point-to-point phone lines. Each computer knew the phone numbers of a few others, but none of them had anything like a global routing map, and IP addresses were still in the future. Still, it enabled file transfer and even limited remote access across the globe. And while some files contained computer programs, others files contained more human messages, which makes UUCP also a precursor to e-mail.

What struck me is how intuitively many of this system’s natural conditions and limitations lead to the way we network today. From phone numbers came the need for IP addresses. And from the annoyance of having know how the computers were connected, and to use the bang notation to route a message from one computer to another through intermediaries, would come our modern routing protocols, simply because computer nerds like to automate hassles wherever possible.

But back to networking history. I guess I learned my networking on the mean streets, by running my own Linux system, and web servers, and mail servers. I knew enough networking to get by, but that mostly focused on the current-day application, and my beard is not quite grey enough to have been around for the UUCP era. So I’m only realizing now that knowing how the system evolved over time helps a lot in understanding why it is the way it is, and thus how it functions. I had a bit of a “eureka” moment reading about UUCP.

In physics or any other science, you learn not just the status quo in the field, but also how it developed over the centuries. It’s important to know something about the theory of the aether to know what special relativity was up against, for instance, or the various historical models of the atom, to see how they inform modern chemistry and physics. But these are old sciences with a lot of obsolete theories. Is computer science old enough that they teach networking history? They should!

Learn New Tools, Or Hone Your Skill With The Old?

Buried in a talk on AI from an artist who is doing cutting-edge video work was the following nugget that entirely sums up the zeitgeist: “The tools are changing so fast that artists can’t keep up with them, let alone master them, before everyone is on to the next.” And while you might think that this concern is only relevant to those who have to stay on the crest of the hype wave, the deeper question resounds with every hacker.

When was the last time you changed PCB layout software or refreshed your operating system? What other tools do you use in your work or your extra-curricular projects, and how long have you been using them? Are you still designing your analog front-ends with LM358s, or have you looked around to see that technology has moved on since the 1970s? “OMG, you’re still using ST32F103s?”

It’s not a simple question, and there are no good answers. Proficiency with a tool, like for instance the audio editor with which I crank out the podcast every week, only comes through practice. And practice simply takes time and effort. When you put your time in on a tool, it really is an investment in that it helps you get better. But what about that newer, better tool out there?

Some of the reluctance to update is certainly sunk-cost fallacy, after all you put so much sweat and tears into the current tool, but there is also a real cost to overcome to learn the new hotness, and that’s no fallacy. If you’re always trying to learn a new way of doing something, you’re never going to get good at doing something, and that’s the lament of our artist friend. Honing your craft requires focus. You won’t know the odd feature set of that next microcontroller as well as you do the old faithful – without sitting down and reading the datasheet and doing a couple finger-stretching projects first.

Striking the optimal balance here is hard. On a per-project basis, staying with your good old tool or swapping to the new hotness is a binary choice, but across your projects, you can do some of each. Maybe it makes sense to budget some of your hacking time into learning new tools? How about ten percent? What do you think?

In Praise Of Simple Projects

Hackaday was at Chaos Communication Congress last week, and it’s one of those big hacker events that leaves you with so much to think about that I’m still processing it. Just for scope, the 38th CCC is a hacker event with about 15,000 attendees from all around Europe, and many from even further. If I were to characterize the crowd on a hardware-software affinity scale, I would say that it skews heavily toward the software side of the hacker spectrum.

What never ceases to amaze me is that there are a couple of zones that are centered on simple beginner soldering and other PCB art projects that are completely full 20 hours of the day. I always makes me wonder how it is possible to have this many hackers who haven’t picked up a soldering iron. Where do all these first-timers come from? I think I’m in a Hackaday bubble where not only does everyone solder at least three times a day, some of us do it with home-made reflow ovens or expensive microscopes.

But what this also means is that there’s tremendous reach for interesting, inviting, and otherwise cool beginner hardware projects. Hands-on learning is incredibly addictive, and the audience for beginner projects is probably ten times larger than that for intermediate or advanced builds. Having watched my own son putting together one of these kits, I understand the impact they can have personally, but it’s worth noting that the guy next to him was certainly in his mid-30s, and the girl across the way was even a few years younger than my son.

So let’s see some cool beginner projects! We’d love to feature more projects that could lure future hackers to the solder-smoky side.

Front panel of a GPO Brooklyn with cassette player (Credit: VSchagow, Wikimedia)

Physical Media Is Dead, Long Live Physical Media

Much has been written about the demise of physical media. Long considered the measure of technological progress in audiovisual and computing fields, the 2000s saw this metric seemingly rendered obsolete by the rise of online audiovisual and software distribution services. This has brought us to a period in time where the very idea of buying a new music album, a movie or a piece of software in a physical, or even online, retail store has  become largely impossible amidst the rise of digital-only media.

Even so, not all is well in this digital-only paradise, as the problems with having no physical copy of the item which you purportedly purchased are becoming increasingly more evident. From increases in monthly service costs, to items being removed or altered without your consent, as well as concerns over privacy and an inability to resell or lend an album or game to a buddy, there are many reasons why having the performance or software on a piece of off-line, physical media is once again increasing in appeal.

Even if the demise of physical data storage was mostly a trick to extract monthly payments from one’s customer base, what are the chances of this process truly reverting, and to what kind of physical media formats exactly?

Continue reading “Physical Media Is Dead, Long Live Physical Media”

Rethinking Your Jellybean Op Amps

Are your jellybeans getting stale? [lcamtuf] thinks so, and his guide to choosing op-amps makes a good case for rethinking what parts you should keep in stock.

For readers of a certain vintage, the term “operational amplifier” is almost synonymous with the LM741 or LM324, and with good reason. This is despite the limitations these chips have, including the need for bipolar power supplies at relatively high voltages and the need to limit the input voltage range lest clipping and distortion occur. These chips have appeared in countless designs over the nearly 60 years that they’ve been available, and the Internet is littered with examples of circuits using them.

For [lcamtuf], the abundance of designs for these dated chips is exactly the problem, as it leads to a “copy-paste” design culture despite the far more capable and modern op-amps that are readily available. His list of preferred jellybeans includes the OPA2323, favored thanks to its lower single-supply voltage range, rail-to-rail input and output, and decent output current. The article also discussed the pros and cons of FET input, frequency response and slew rate, and the relative unimportance of internal noise, pointing out that most modern op-amps will probably be the least thermally noisy part in your circuit.

None of this is to take away from how important the 741 and other early op-amps were, of course. They are venerable chips that still have their place, and we expect they’ll be showing up in designs for many decades to come. This is just food for thought, and [lcamtuf] makes a good case for rethinking your analog designs while cluing us in on what really matters when choosing an op-amp.