Choice, Control, And Interruption

We were talking about [Maya Posch]’s rant on smartphones, “The Curse of the Everything Device”. Maya’s main point is that because the smartphone, or computer, can do everything, it’s hard for a person to focus down and do one thing without getting distracted, checking their whatever feed, or getting an important push notification about the Oscars. She was suggesting tying your hands to the mast by using a device that can only accommodate the one function, like a dedicated writing tool or word processor.

[Kristina Panos] compared the all-singing, all-dancing black rectangle to an everything-device of old: the all-in-one stereo receiver with built-in tape player, record player, and not just FM, but also AM radio receiver. The point being, the hi-fi device also does a whole lot of things but isn’t similarly cursed. The tape player never interrupts your listening to the AM radio station. When the record is over, it doesn’t swap over to FM. Your agency is required.

Similarly, it’s probably not intrinsically problematic that the smartphone has a camera, a web browser, text messages, and heck even a telephone built in. It’s how they interact with each other and the user, each vying for user attention, and interrupting with popups and alarms. It’s maybe a simple matter of software! (Says the hardware guy.)

Where would a distraction-free, but fully featured, phone begin? With the operating system? It would be perverse to limit you to one app at a time, or to make switching between them more cumbersome. How about turning off notifications, and relying on changing context only when you think about it? Maybe that’s a middle ground. How do you cope with the endless distractions offered to you by your smartphone? By your main computer?

California’s Problematic Attempt To Add Age-Verification To Software

Last year California’s Digital Age Assurance Act (AB 1043) was signed into law, requiring among other things that operating system providers implement an API for age verification purposes. With the implementation date of January 1, 2027 slowly encroaching this now has people understandably agitated. So what are the requirements, and what will its impact be, as it affects not only OS developers but also application stores and developers?

The required features for OS developers include an interface at account setup during which the person indicates which of the four age brackets they fit into. This age category then has to be used by application developers and application stores to filter access to the software. Penalties for non-compliance go up to $2,500 per affected child if the cause is neglect and up to $7,500 if the violation was intentional.

As noted in the Tom’s Hardware article, CA governor Newsom issued a statement when signing the unanimously passed bill, saying that he hopes the bill gets amended due to how problematic it would be to implement and unintended effects. Of course, the bigger question is whether this change requires more than adding a few input fields and checkboxes to an OS’ account setup and an API call or two.

Continue reading “California’s Problematic Attempt To Add Age-Verification To Software”

Art of 3D printer in the middle of printing a Hackaday Jolly Wrencher logo

The Joys Of 3D Printing

Al and I were talking on the podcast today about a sweet 3D printed wide-format camera build, and we got to musing on why we 3D-print.

For Al, it’s an opportunity to experiment with 3D printing itself: tweaking his machines to get the best performance out of them. Other people make small, functional objects that they need in their daily life, like bag clips or spare parts for broken appliances. Some folks go for the ornamental or the aesthetic. The kids in my son’s class all seem obsessed with sci-fi props and fidget toys. The initial RepRap ideal was to replace all commercial fabrication with machines owned by the individual, rather than by companies – it was going to be Marxist revolutionary.

But there’s another group of 3D printer enthusiasts that I think doesn’t get enough coverage, and I’m going to call them the hobbyist industrial designers. These are the people who design a custom dog-poop-bag holder that exactly fits their extra-wide dog leash, not because they couldn’t find one that fit in the pet store, but because it’s simply fun to design and fabricate things. (OK, that’s literally me.)

It’s fun to learn CAD tools, to learn about how things are designed, how they work, and how to manufacture them at least in quantity one. Dreaming, designing, fabricating, failing, and repeating until you get it right is a great joy. And then you get to use the poop-bag holder every day for a few years, until you decide to refine the design and incorporate the lessons learned on the tough streets of practical use.

Of course none of this is exclusive to 3D printing. There were always people who designed-and-built things in the metal machine shop, or made their creations out of wood. In that sense, the 3D printer is just another tool, and the real fun isn’t in using the 3D printer, but rather in the process of bringing things out of your mind and into the world. So maybe there is nothing new here, but the latitude that 3D printing affords the hobby designer is amazing, and that makes it all the more fun, and challenging.

So do you 3D print for necessity, to stick it to the man, to pimp your printer, for the mini-figs, or simply for the joy of the process of making things? It’s all good. 3D printing is a big tent.

Reflections On Ten Years With The Wrencher

An auspicious anniversary passed for me this week, as it’s a decade since I started writing for Hackaday. In that time this job has taken me all over  Europe, it’s shown me the very best and most awesome things our community has to offer, and I hope that you have enjoyed my attempts to share all of that with you. It’s worth a moment to reflect on the last ten years in terms of what has made our world during that time. Continue reading “Reflections On Ten Years With The Wrencher”

The Curse Of The Everything Device

In theory having a single device that combines the features of multiple dedicated devices is a great idea, saving a lot of space, time and money. However, in reality it mostly means that these features now conflict with each other, force us to deal with more complex devices that don’t last nearly as long, and become veritable vampires for your precious attention.

Whereas in the olden days a phone was just used for phone calls, now it’s also a video and photo camera, multimedia computer, pager, and more, but at any point an incoming phone call can interrupt what you are doing. There’s also always the temptation of doom scrolling on one of the infinite ‘social media’ apps. Even appliances like televisions and refrigerators are like that now, adding ‘smarts’ that also vie for your attention, whether it’s with advertisements, notifications, or worse.

Meanwhile trying to simply do some writing work on your PC is a battle against easy distractions, leading people to flee to the digital equivalent of typewriters out of sheer desperation. Similarly, we increasingly see ‘dumb’ phones, and other single-task devices making a comeback, both as commercial options and as DIY projects by the community.

Are we seeing the end of the ‘everything device’ and the return to a more simple time?

Continue reading “The Curse Of The Everything Device”

In Praise Of The Proof Of Concept

Your project doesn’t necessarily have to be a refined masterpiece to have an impact on the global hacker hivemind. Case in point: this great demo of using a 64-point time-of-flight ranging sensor. [Henrique] took three modules, plugged them into a breadboard, and wrote some very interactive Python code that let him put them all through their paces. The result? I now absolutely want to set up a similar rig and expand on it.

That’s the power of a strong proof of concept, and maybe a nice video presentation of it in action. What in particular makes [Henrique]’s POC work is that he’s written the software to give him a number of sliders, switches, and interaction that let him tweak things in real time and explore some of the possibilities. This exploratory software not only helped him map out what directions to go, but they also work in demo mode, when he’s showing us what he has learned.

But the other thing that [Henrique]’s video does nicely is to point out the limitations of his current POC. Instantly, the hacker mind goes “I could work that out”. Was it strategic incompleteness? Either way, I’ve been nerd-sniped.

So are those the features of a good POC? It’s the bare minimum to convey the idea, presented in a way that demonstrates a wide range of possibilities, and leaving that last little bit tantalizingly on the table?

The Requirements Of AI

The media is full of breathless reports that AI can now code and human programmers are going to be put out to pasture. We aren’t convinced. In fact, we think the “AI revolution” is just a natural evolution that we’ve seen before. Consider, for example, radios. Early on, if you wanted to have a radio, you had to build it. You may have even had to fabricate some or all of the parts. Even today, winding custom coils for a radio isn’t that unusual.

But radios became more common. You can buy the parts you need. You can even buy entire radios on an IC. You can go to the store and buy a radio that is probably better than anything you’d cobble together yourself. Even with store-bought equipment, tuning a ham radio used to be a technically challenging task. Now, you punch a few numbers in on a keypad.

The Human Element

What this misses, though, is that there’s still a human somewhere in the process. Just not as many. Someone has to design that IC. Someone has to conceive of it to start with. We doubt, say, the ENIAC or EDSAC was hand-wired by its designers. They figured out what they wanted, and an army of technicians probably did the work. Few, if any, of them could have envisoned the machine, but they can build it.

Does that make the designers less? No. If you write your code with a C compiler, should assembly programmers look down on you as inferior? Of course, they probably do, but should they?

If you have ever done any programming for most parts of the government and certain large companies, you probably know that system engineering is extremely important in those environments. An architect or system engineer collects requirements that have very formal meanings. Those requirements are decomposed through several levels. At the end, any competent programmer should be able to write code to meet the requirements. The requirements also provide a good way to test the end product.

Continue reading “The Requirements Of AI”