2020: Everything Is Virtual

It’s like the dystopian future arrived out of the blue. From one year to the next we went from holing up in overly air-conditioned hotel ballrooms and actually meeting our fellow meatbags in the flesh, to huddling in our pods and staring at the screens. I’m looking for the taps to hook me in to the Matrix at this point.

But if you haven’t yet received your flying car or your daily Soma ration, you can still take comfort in one thing: all of the hacker conferences are streaming live, as if it were some fantastic cyber-future! In fact, as we type this, someone is telling you how to print your way to free drinks on USAir flights as part of HOPE’s offering, but the talks will continue for the next few days. (Go straight to live stream one.)

If retrocomputing is more your thing, Saturday marks the start of the virtual Vintage Computer Festival West of which Hackaday is a proud sponsor. (Here’s the schedule.)

And next weekend is DEF CON in Safe Mode with Networking. While we can totally imagine how the talks and demo sessions will work, the Villages, informal talks and hack-togethers based on a common theme, will be a real test of distributed conferencing.

OK, I’ll admit it: I really miss getting together with folks and having the truly random conversations that pre-scripted teleconferences just don’t seem to facilitate. Lobbycon suffers in lockdown. But if you’ve never been to any of these events, and you just want a taste of the talks and presentations at least, now’s your chance to get in for free. And if you like what you see, and if the virus lets us, we’ll see you in person next summer!

Stop Bad Laws Before They Start

With everything else going on this summer, you might be forgiven for not keeping abreast of new proposed regulatory frameworks, but if you’re interested in software-defined radio (SDR) or even reflashing your WiFi router, you should. Right now, there’s a proposal to essentially prevent you from flashing your own firmware/software to any product with a radio in it before the European Commission. This obviously matters to Europeans, but because manufacturers often build hardware to the strictest global requirements, it may impact everyone. What counts as radio equipment? Everything from WiFi routers to wearables, SDR dongles to shortwave radios.

The idea is to prevent rogue reconfigurable radios from talking over each other, and prevent consumers from bricking their routers and radios. Before SDR was the norm, and firmware was king, it was easy for regulators to test some hardware and make sure that it’s compliant, but now that anyone can re-flash firmware, how can they be sure that a radio is conformant? Prevent the user from running their own firmware, naturally. It’s pretty hard for Hackaday to get behind that approach.

The impact assessment sounds more like advertising copy for the proposed ruling than an honest assessment, but you should give it a read because it lets you know where the commission is coming from. Reassuring is that they mention open-source software development explicitly as a good to be preserved, but their “likely social impacts” include “increased security and safety” and they conclude that there are no negative environmental impacts. What do you do when the manufacturer no longer wants to support the device? I have plenty of gear that’s no longer supported by firmware updates that is both more secure and simply not in the landfill because of open-source firmware.

Similarly, “the increased capacity of the EU to autonomously secure its products is also likely to help the citizens to better protect their information-related rights” is from a bizarro world where you can trust Xiaomi’s home-automation firmware to not phone home, but can’t trust an open-source replacement.

Public comment is still open, and isn’t limited to European citizens. As mentioned above, it might affect you even if you’re not in the EU, so feel free to make your voice heard. You have until September, and you’ll be in some great company if you register your complaints. Indeed, reading through the public comments is quite heartening: Universities, researchers, and hackers alike have brought up reasons to steer clear of the proposed approach. We hope that the commission hears us.

The Sincerest Form Of Flattery

In the art world, it’s often wistfully said that imitation is the sincerest form of flattery. In the open-source hardware world, this flattery takes the shape of finding your open-source project mass produced in China and sold at outrageously low markups. Looking around on my lab, I’ve been the direct beneficiary of this success.

I see an AVR Transistor Tester that I picked up for a few bucks a long time ago. Lacking anything better, it’s my go-to device for measuring inductance and capacitor ESR. For $7, it is worth much more than I paid for it, due to some clever design work by a community of German hackers and the economics of mass production. They’re so cheap that we’ve seen people re-use them just for the displays and with a little modification, turned them into Tetris consoles. That’s too cool. Continue reading “The Sincerest Form Of Flattery”

Hackaday Made Me Buy It!

Reading Hackaday is great! You get so many useful tips from watching other people work, it’s truly changed nearly everything about the way I hack, especially considering that I’ve been reading Hackaday for the past 15 years. Ideas, freely shared among peers, are the best of the free and open-source hardware community. But there’s a dark downside: I’m going CNC mill shopping.

It all started with [Robin]’s excellent video and website tutorial on his particular PCB DIY procedures. You see, I love making PCBs at home, because I’m unafraid of chemistry, practiced with a rolling pin and iron, and super-duper impatient. If I can get a board done today, I’m not waiting a week, even if that means an hour of work on my part.

Among other things, he’s got this great technique with a scriber pen and a cleverly designed registration base that make it easy for him to do nearly perfectly aligned two-sided boards with a resolution approaching etching. The ability to make easy double-sided boards, with holes drilled, makes milling attractive, but the low resolution of v-cutter milled boards has been the show-stopper for me. If that’s gone, maybe it’s time to take a serious look.

And heck, making PCBs is really just the tip of the iceberg for what I’d want to do with a CNC mill. Currently, I do dodgy metalworking with an x-y table and a drill press, some of which may someday land me in the hospital. But if I had a mill, I’d be doing all sorts of funny wood joinery and who knows what else. I lack experience with a mill, but coincidentally, we just had a Hack Chat on Linux for machine tools this week. You see? It’s all conspiring against me.

The only question left is what I should get. I’m looking at the ballscrew 3040 range of CNCs, and maybe upgrading the spindle. I’d like to mill up to aluminum, but don’t really need steel. What do you think?

A Reason To Code

My son is just getting to the age that puts him in the crosshairs of all of the learn-to-code toys. And admittedly, we’ve been looking at some of those Logo-like toys where you can instruct a turtle-bot to make a few moves, and then to repeat them. After all, if breaking down a problem into sub-problems and automating the repetition isn’t the essence of programming, I don’t know what is.

But here’s the deal: I think drawing ‘bots are cooler than he does. If you ask a kid “hey, do you want a car that can draw?” that’s actually pretty low on the robot list. I’m not saying he won’t get into it once he’s got a little bit more coding under his belt and he can start to make it do fun things, but by itself, drawing just isn’t all that impressive. He can draw just fine, thank-you-very-much.

Meanwhile, I was making a robot arm. Or rather, I started up on yet another never-to-be-completed robot arm. (Frankly, I don’t know what I would do with a robot arm.) But at least I started with the gripper and wrist. Now that’s pretty cool for a kid, but the programming is waaaay too complicated. So I pulled the brains out and hooked up the servos to an RC plane remote. Just wiggling the thing around, duct-taped to the table, got him hooked. And this weekend, we’re building a remote controlled cherry-picker arm to put on a pole, because cherries are in season. His idea!

So no coding. He’s a little too young anyway, IMO. But silly little projects like these, stored deep in his subconscious, will give him a reason to program in the future, will make it plainly obvious that knowing how to program is useful. Now all I need is a reason to finish up a robot arm project…

Nothing Comes From Nowhere

How do you come up with new ideas? As much as it sometimes seems like they arrive in a flash out of the blue, they don’t just come out of nowhere. Indeed, we all have well-stocked mental toolboxes that say “this thing can be used to do that” and “if you want to get there, start here”.

One incredibly fertile generator of “new” ideas is simply putting old ideas next to each other and realizing that a chain of two or three can get you to someplace new. It just happened to me while listening to Mike and myself on this week’s Hackaday Podcast.

bikelangelo

Here’s the elevator pitch. You take something like the player-pianoesque MIDI barrel piano that we featured last Thursday, and mix it together with the street-painting bicycle trailer that we featured on Friday. What do you get? A roll of paper that can be drawn on by normal kids, rolled up behind a bicycle, with a tank that they can pressurize with a bike pump, that will spray a pixelated version of their art as they roll down the sidewalk.

Now how can I make this real? One of my neighbors has a scrap bike trailer…

But see what I mean about ideas? I just took two existing ideas and rubbed them together, and in this case, they emitted sparks. And I’ve got a mental catalogue of all of the resources around me, some of which fell right into place. This role as fountain of good proto-ideas is why I started reading Hackaday fifteen years ago, and why it’s still a daily must-read for folks like us everywhere. A huge thank you to everyone who’s sharing! Read more Hackaday!

Seeing Code: The Widescreen Rant

A couple of weeks ago, Linus Torvalds laid down the law, in a particularly Linusesque sort of way. In a software community where tabs vs. spaces can start religious wars, saying that 80-character-wide code was obsolete was, to some, utter heresy. For more background on how we got here, read [Sven Gregori]’s history piece on Hackaday, and you’ll learn that sliced bread and the 80-character IBM punch card both made their debut in July, 1928. But I digress.

When I look at a codebase, I like to see its structure, and I’m not alone. That’s one of the reasons for the Linux Kernel style guide’s ridiculously wide 8-character tabs. Combined with a trend for variable names becoming more and more descriptive, which I take to be a good thing, and monitors’ aspect ratios growing seemingly without end, which I don’t, the 80-column width seems like a relic from the long-gone era of the VT-220.

Hazeltine TerminalIn Linus’ missive, we learn that he runs terminals at 100 x 50, and frequently drags them out to a screen-filling 142 x 76. (Amateur! I write this to you now on 187 x 48.) When you’re running this wide, it doesn’t make any sense to line-wrap argument lists, even if you’re using Hungarian notation.

And yet, change is painful. I’ve had to re-format code to meet 73-column restrictions for a book, only to discover that my inline comments were too verbose. Removing even an artificial restriction like the 80-column limit will have real effects. I write longer paragraphs, for instance, on a wider screen.

I see a few good things to come out of this, though. If single thoughts can be expressed on single lines, it makes the shape of the code better reflect its function. Getting rid of pointless wrapping takes up less vertical space, which is at a premium on today’s cinematic monitors. And if it makes inline comments better (I know, another holy war!) or facilitates better variable naming, it will have been worth it.

But any way you slice it, we’re no longer typing on the old 80-character Hazeltine. It’s high time for our coding style and practice to catch up.