Linux Fu: Python GUIs For Command Line Programs (Almost) Instantly

Not every programmer likes creating GUI code. Most hacker types don’t mind a command line interface, but very few ordinary users appreciate them. However, if you write command line programs in Python, Gooey can help. By leveraging some Python features and a common Python idiom, you can convert a command line program into a GUI with very little effort.

The idea is pretty simple. Nearly all command line Python programs use argparse to simplify picking options and arguments off the command line as well as providing some help. The Gooey decorator picks up all your options and arguments and creates a GUI for it. You can make it more complicated if you want to change specific things, but if you are happy with the defaults, there’s not much else to it.

At first, this article might seem like a Python Fu and not a Linux Fu, since — at first — we are going to focus on Python. But just stand by and you’ll see how this can do a lot of things on many operating systems, including Linux.

Continue reading “Linux Fu: Python GUIs For Command Line Programs (Almost) Instantly”

Hacking Diabetes Hack Chat

Join us on Wednesday, October 16 at noon Pacific for the Hacking Diabetes Hack Chat with Dana Lewis!

When your child is newly diagnosed with Type 1 diabetes (T1D), everyone is quick to point out, “It’s a great time to be a diabetic.” To some degree, that’s true; thanks to genetically engineered insulin, more frequent or even continuous glucose monitoring (CGM), and insulin infusion pumps, diabetics can now avoid many of the truly terrifying complications of a life lived with chronically elevated blood glucose, like heart disease, kidney failure, blindness, and amputations.

Despite these advances, managing T1D can be an overwhelming task. Every bite of food, every minute of exercise, and every metabolic challenge has to be factored into the calculations for how much insulin to take. Diabetics learn to “think like a pancreas,” but it’s never good enough, and the long-promised day of a true artificial pancreas always seems to remain five years in the future.

Dana Lewis is one diabetic who decided not to wait. After realizing that she could get data from her CGM, she built a system to allow friends and family to monitor her blood glucose readings remotely. With the addition of a Raspberry Pi and some predictive algorithms, she later built an open-source artificial pancreas, which she uses every day. And now she’s helping others take control of their diabetes and build their own devices through OpenAPS.org.

Join us on the Hack Chat as Dana drops by to discuss OpenAPS and her artificial pancreas. We’ll find out what her background is – spoiler alert: she wasn’t a hacker when she started this – what challenges she faced, the state of the OpenAPS project, and where she sees the artificial pancreas going.

join-hack-chatOur Hack Chats are live community events in the Hackaday.io Hack Chat group messaging. This week we’ll be sitting down on Wednesday, October 16 at 12:00 PM Pacific time. If time zones have got you down, we have a handy time zone converter.

Click that speech bubble to the right, and you’ll be taken directly to the Hack Chat group on Hackaday.io. You don’t have to wait until Wednesday; join whenever you want and you can see what the community is talking about.

[Dana Lewis image source: GeekWire]

Continue reading “Hacking Diabetes Hack Chat”

Hackaday Links: October 13, 2019

Trouble in the Golden State this week, as parts of California were subjected to planned blackouts. Intended to prevent a repeat of last year’s deadly wildfires, which were tied in part to defective electrical distribution equipment, the blackouts could plunge millions in the counties surrounding Sacramento into the dark for days. Schools have canceled classes, the few stores that are open are taking cash only, and hospitals are running on generators. It seems a drastic move for PG&E, the utility that promptly went into bankruptcy after being blamed for last year’s fires, but it has the support of the governor, so the plan is likely to continue as long as the winds do. One group is not likely to complain, though;  California amateur radio operators must be enjoying a greatly decreased noise floor in the blackout areas, thanks to the loss of millions of switch-mode power supplies and their RF noise.

Good news, bad news for Fusion 360 users. Autodesk, the company behind the popular and remarkably capable CAD/CAM/CAE package, has announced changes to its licensing scheme, which went into effect this week. Users no longer have to pay for the “Ultimate” license tier to get goodies like 5-axis machining and generative design tools, as all capabilities are now included in the single paid version of Fusion 360. That’s good because plenty of users were unwilling to bump their $310 annual “Standard” license fee up to $1535 to get those features, but it’s bad because now the annual rate goes to $495. In a nice nod to the current userbase, those currently on the Standard license, as well as early adopters, will get to keep the $310 annual rate as long as they renew, and The $495 pricing tier went into effect in November of 2018, while anyone still on the $310 annual price was grandfathered in (and will remain to be). At that time there was still a $1535 tier called Ultimate, whose price will now be going away but the features remain in the $495 tier which is now the only pricing option for Fusion 360. Ultimate users will see a $1040 price drop. As for the current base of freeloaders like yours truly, fear not: Fusion 360 is still free for personal, non-commercial use. No generative design or tech support for us, though. (Editor’s Note: This paragraph was updated on 10/14/2019 to clarify the tier changes after Autodesk reached out to Hackaday via email.)

You might have had a bad day at the bench, but was it as bad as Román’s? He tipped us off to his nightmare of running into defective Wemos D1 boards – a lot of them. The 50 boards were to satisfy an order of data loggers for a customer, but all the boards seemed caught in an endless reboot loop when plugged into a USB port for programming. He changed PCs, changed cables, but nothing worked to stop the cycle except for one thing: touching the metal case of the module. His write up goes through all the dead-ends he went down to fix the problem, which ended up being a capacitor between the antenna and ground. Was it supposed to be there? Who knows, because once that cap was removed, the boards worked fine. Hats off to Román for troubleshooting this and sharing the results with us.

Ever since giving up their “Don’t be evil” schtick, Google seems to have really embraced the alternative. Now they’re in trouble for targeting the homeless in their quest for facial recognition data. The “volunteer research studies” consisted of playing what Google contractors were trained to describe as a “mini-game” on a modified smartphone, which captured video of the player’s face. Participants were compensated with $5 Starbucks gift cards but were not told that video was being captured, and if asked, contractors were allegedly trained to lie about that. Contractors were also allegedly trained to seek out people with dark skin, ostensibly to improve facial recognition algorithms that notoriously have a hard time with darker complexions. To be fair, the homeless were not exclusively targeted; college students were also given gift cards in exchange for their facial data.

For most of us, 3D-printing is a hobby, or at least in service of other hobbies. Few of us make a living at it, but professionals who do are often a great source of tips and tricks. One such pro is industrial designer Eric Strebel, who recently posted a video of his 3D-printing pro-tips. A lot of it is concerned with post-processing prints, like using a cake decorator’s spatula to pry prints off the bed, or the use of card scrapers and dental chisels to clean up prints. But the money tip from this video is the rolling cart he made for his Ultimaker. With the printer on top and storage below, it’s a great way to free up some bench space.

And finally, have you ever wondered how we hackers will rebuild society once the apocalypse hits and mutant zombie biker gangs roam the Earth? If so, then you need to check out Collapse OS, the operating system for an uncertain future. Designed to be as self-contained as possible, Collapse OS is intended to run on “field expedient” computers, cobbled together from whatever e-waste can be scrounged, as long as it includes a Z80 microprocessor. The OS has been tested on an RC2014 and a Sega Master System so far, but keep an eye out for TRS-80s, Kaypros, and the odd TI-84 graphing calculator as you pick through the remains of civilization.

Hackaday Podcast 039: Elliot <3 Lightning Detectors, Ikea Dark Mode, The Smartest Watch, Solar Sailing The Sky, And VAWT Controversy

Hackaday Editors Elliot Williams and Mike Szczys recap a week full of hacks from the solar sailing RC plane that has zero power storage, to geeking out about lightning detectors and hacking Ikea LED controllers to unlock real dimming to building backyard wind turbines. We look up an IoT egg tray with appreciation not for the concept but certainly for the engineering, and scratch our heads on why one-hacker-smartwatch-to-rule-them-all seems like something that should happen but so far has only been a fleeting concept.

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 (68 MB)

Places to follow Hackaday podcasts:

Continue reading “Hackaday Podcast 039: Elliot <3 Lightning Detectors, Ikea Dark Mode, The Smartest Watch, Solar Sailing The Sky, And VAWT Controversy”

This Week In Security: Signal, WhatsApp, Oauth Fishing, And More State-Sponsored Attacks

A bug was recently fix in Signal that allowed a caller to force a call connection without any user interaction on the receiving side. We’ve seen this sort of problem in other chat applications, most recently the Zoom debacle.

The Signal client uses the same function to connect an outgoing call as an incoming call. This bit of code re-use allows a malicious client to initiate a call, and then send the “Accept Call” message. Because of the code re-use, this message triggers the same code as the accept call button on the receiving side. It’s as if the attacker uses reverse psychology to trick the other client into connecting.

It seems this bug only affected the Android client, and didn’t trigger a video call. It’s unclear whether the bug was discovered and exploited before it was fixed, but now that it has been announced, be sure to get Signal up to date. Continue reading “This Week In Security: Signal, WhatsApp, Oauth Fishing, And More State-Sponsored Attacks”

Tools, You Can’t Take Them With You

When I die I hope be buried in the English rural churchyard that has been my responsibility as churchwarden, after a funeral service that has been a celebration of my life. I am neither an Egyptian pharaoh nor a Viking queen though, so my grave will not contain all my tools and equipment to serve me in the afterlife. Instead aside from my mortal remains it will contain only a suitably biodegradable coffin, and my headstone will be a modest one bearing perhaps a technical puzzle to entertain visitors to the churchyard.

My workshop, my bench, and my tools will be the responsibility of my nearest and dearest, and I hope I will have suitably equipped them for the task of their dispersal. But for anyone who has a sizeable collection of gear, have you thought of what would happen if someone else had to clean it all out? What is profession for some and hobby for others, we deal in specialization that might as well be tools of arcane magic to the uninitiated.

Continue reading “Tools, You Can’t Take Them With You”

Willem Kolff’s Artificial Organs

In my youth I worked for a paid ambulance service, and while we all lived for the emergency calls, the routine transports were the calls that paid the bills. Compared with the glamor and excitement of a lights-and-siren run to a car wreck or heart attack, transports were dull as dirt. And dullest of all were the daily runs from nursing homes to the dialysis center, where rows of comfy chairs sat, each before a refrigerator-sized machine designed to filter the blood of a patient in renal failure, giving them another few days of life.

Sadly, most of those patients were doomed; many were in need of a kidney transplant for which there was no suitable donor, while some were simply not candidates for transplantation. Dialysis was literally all that stood between them and a slow, painful death, and I could see that at least some of them were cheered by the sight of the waiting dialysis machine. The principles of how the kidneys work have been known since at least the 1800s, but it would take until 1945 for the efforts of a Dutch doctor, using used car parts and sausage casings, to make the predecessor of those machines: the first artificial kidney.

Continue reading “Willem Kolff’s Artificial Organs”