Core Devs Say A Fond But Firm Farewell To Python 2

Saying that it was finally time for the community to bid a “fond but firm farewell to Python 2”, core developer Benjamin Peterson marked the release of Python 2.7.18 on April 20th; officially ending support for the 2.x branch of the popular programming language. It was hardly a snap decision. Python 3.0 was released all the way back in December 2008, and it was never a secret that the newer branch was not only incompatible with the earlier version, but that it would eventually superseded it to become the standard.

But migrating the incredible amount of Python code in the wild over to the latest and greatest was easier said than done. Millions upon millions of lines of code used in everything from Linux distributions to virtually every major web service needed to be reviewed and migrated over to Python 3. In many cases the changes were relatively minor, but when code is being used in mission critical applications, even the smallest of changes are often avoided unless it’s absolutely necessary. The voluntary migration took far longer than expected, and the end-of-life (EOL) for Python 2 was pushed back by years to accommodate developers who hadn’t made the necessary changes yet.

Given the somewhat fluid nature of the Python 2 EOL date, it seems fitting that this last final release would come several months after the “official” January 2020 deadline. The intention was for it to coincide with PyCon 2020, but just like so many of the events planned for the first half of the year, the in-person conference had to be canceled in favor of a virtual one due to the COVID-19 epidemic. That might have stymied the celebration somewhat, but the release of Python 2.7.18 will still be looked on as a special moment for everyone involved.

Continue reading “Core Devs Say A Fond But Firm Farewell To Python 2”

Industrial Robot Given New Life And Controller

We all think we could use a third arm from time to time, but when we actually play this thought experiment out in our heads we’ll eventually come to the same hurdle [caltadaniel] found, which is a lack of a controller. His third arm isn’t just an idea, though. It’s a Yaskawa industrial robot that he was able to source for pretty cheap, but it was missing a few parts that he’s been slowly replacing.

The robot arm came without a controller or software, but also without any schematics of any kind, so the first step was reverse engineering the wiring diagram to get an idea of what was going on inside the arm. From there some drivers were built for the servos, but the key to all of it is the homemade controller. The inverse kinematics math was done in Python and runs on an industrial PC. Once it was finally all put together [caltadaniel] had a functioning robotic arm for any task he could think of.

Interestingly enough, while he shows the robot brushing his teeth for him, he also set it up to flip the switch of a useless machine that exists only to turn itself off. There’s something surreal about a massive industrial-sized robotic arm being used to turn on a $20 device which will switch itself back off instantly, but the absurdity is worth a watch.

Continue reading “Industrial Robot Given New Life And Controller”

Stay Informed: How To Pull Your Own COVID-19 Data

For all the technology we have, it can still be frustratingly difficult to get any concrete information from the media. Sometimes all you want to do is to cut through the noise and see some real numbers. Watching talking heads argue for a half hour probably isn’t going to tell you much about how the COVID-19 virus is spreading through your local community, but seeing real-time data pulled from multiple vetted sources might.

Having access to the raw data about COVID-19 cases, fatalities, and recoveries is, to put it mildly, eye-opening. Even if day to day life seems pretty much unchanged in your corner of the world, seeing the rate at which these numbers are climbing really puts the fight into perspective. You might be less inclined to go out for a leisurely stroll if you knew how many new cases had popped up in your neck of the woods during the last 24 hours.

But this article isn’t about telling you how to feel about the data, it’s about how you can get your hands on it. What you do with it after that is entirely up to you. Depending on where you live, the numbers you see might even make you feel a bit better. It’s information on your own terms, and in these uncertain times, that might be the best we can hope for.

Continue reading “Stay Informed: How To Pull Your Own COVID-19 Data”

OpenSource GUI Tool For OpenCV And DeepLearning

AI and Deep Learning for computer vision projects has come to the masses. This can be attributed partly to the  community projects that help ease the pain for newbies. [Abhishek] contributes one such project called Monk AI which comes with a GUI for transfer learning.

Monk AI is essentially a wrapper for Computer Vision and deep learning experiments. It facilitates users to finetune deep neural networks using transfer learning and is written in Python. Out of the box, it supports Keras and Pytorch and it comes with a few lines of code; you can get started with your very first AI experiment.

[Abhishek] also has an Object Detection wrapper(GitHub) that has some useful examples as well as a Monk GUI(GitHub) tool that looks similar to the tools available in commercial packages for running, training and inference experiments.

The documentation is a work in progress though it seems like an excellent concept to build on. We need more tools like these to help more people getting started with Deep Learning. Hardware such as the Nvidia Jetson Nano and Google Coral are affordable and facilitate the learning and experimentation.

Relive The Glory Days Of Cable TV With This Retro Weather Feed

This may surprise younger readers, but there was once a time when the reality programming on The Weather Channel was simply, you know, weather. It used to be no more than a ten-minute wait to “Local on the Eights”, with simple text crawls of local conditions and forecasts that looked like they were taken straight from the National Weather Service feed. Those were the days, and sadly they seem to be gone forever.

Or perhaps not, if this retro weather channel feed has anything to say about it. It’s the product of [probnot] and consists of a simple Python program that runs on a Raspberry Pi. Being from Winnipeg, [probnot] is tapping into Environment Canada for local weather data, but it should be easy enough to modify to use your local weather provider’s API. The screen is full of retro goodness, from the simple color scheme to the blocky white text; the digital clock and local news crawl at the bottom complete the old school experience. It doesn’t appear that the code supports the period-correct smooth jazz saxophone, but that too should be a simple modification.

All jibing aside, this would be a welcome addition to the morning routine. And for the full retro ride, why not consider putting it in an old TV case?

Continue reading “Relive The Glory Days Of Cable TV With This Retro Weather Feed”

An Eight-Day Home Automation Hackathon Is Inspiration For Getting More Projects Done

There’s nothing quite like a deadline to cut through extras and get right at the heart of the problem. Maybe we should all follow Interpreet’s example and stop thinking about automating our homes and just make it in an eight-day hackathon. His talk at the 2019 Hackaday Superconference covers the zero-to-deployment home automation build he finished in the eight days leading up to his move from one continent to another.

Hackaday’s very own Inderpreet Singh found himself pulling up roots and moving from his home in India to teach at Centennial College in Toronto, Canada. He needed a way to keep an eye on his home from afar and the name of the game is IoT. When the only choice is “whatever works right now”, you can learn a lot about simple solutions.

He chose familiar hardware to work with, with the ESP8266 making up the bulk of the nodes and a Raspberry Pi as as a central hub for the setup. He chose to communicate between all the nodes on his system using WiFi because the hardware is robust and available. With security in mind, he keeps the automation system separate from the daily use WiFi system by grabbing an extra access point to serve as the automation network. The Raspberry Pi serves as a router of sorts; its Ethernet port is connected to the IoT device’s AP, while the onboard WiFi is used to connect to the home’s main AP for a connection to the wider Internet.

Software for the system is built on a REST API served by a Python Flask app. Many would advocate for using MQTT but Inderpreet’s testing with that protocol came up short as the broker he intended to use was no longer available. One of the interesting parts of his system design is that all nodes will check in at regular intervals; this allows them to inquire about actions they need to take, but it also allows the system to detect a malfunctioning node immediately. I’ve seen a similar trick used by Elliot Williams where he assigns a “ping” topic to all MQTT devices that causes them to report in with their IP address. Having a system to query and ensure the health of every node is a big tip to take away from this talk.

Continue reading “An Eight-Day Home Automation Hackathon Is Inspiration For Getting More Projects Done”

Hackaday Links Column Banner

Hackaday Links: January 19, 2020

We’ve seen some interesting pitches in personal ads before, but this one takes the cake. Japanese billionaire Yusaku Maezawa is looking for a date to go along with him on his paid trip to the Moon, with the hope of finding a life partner. Maezawa is slated to be SpaceX’s first commercial lunar flyby customer, and will make the trip no earlier than 2023. That should give him plenty of time to go through the 20,000 applications he received from single women 20 and older with bright personalities and positive attitudes. And he should have plenty of time to make an awesome mixtape for the ride.

Imagine snooping through your kid’s garbage can only to find a used syringe lying in there. Most of us would likely be able to tell that the syringe once contained thermal compound or solder paste and be suitably proud of the little chip off the block, but apparently Cooler Master has fielded enough calls from panicked normie parents that they decided to change the design of their applicators. Given the design of the new applicator we doubt that’s really the reason, but it’s a good marketing story, and we can totally see how someone could mistake the old applicator for something illicit.

It looks as though SpaceX could be getting itself into legal trouble with its Starlink launches. Or more correctly, the FCC might, having apparently violated the National Environmental Policy Act, a Nixon-era law that requires government agencies to consider the environmental impact of any projects they approve. The Federal Communications Commission has been using a loophole in the law to claim a “categorical exemption” from these reviews when approving communications projects, particularly space-based projects. It’s not clear whether space is legally considered part of the environment, so the lawyers are hashing that out. If the FCC gets sued and loses, it’s not clear what happens to the existing Starlink satellites or future launches. Stay tuned for details.

Don’t forget that the Open Hardware Summit is coming soon. The 2020 meeting is the 10th anniversary of the confab, to be held on March 13 in New York. Hackaday is, of course, a proud sponsor of the conference, and our own Sophi Kravtiz will be the keynote speaker! Get your tickets soon.

Tired of off-loading data manipulation and analysis tasks to R in your Python programs? Then you’re probably already aware of Pandas, the Python library that converts data into dataframe objects for easier manipulation. Pandas has (have?) been in pre-release for years, but there’s now a legit 1.0.0 release candidate available. Now might be the time for you Python data mungers to get onboard the Pandas Express.

And finally, the Consumer Electronics Show is a yearly gift to anyone in the tech media, providing as it does so many examples of outrageous uses for the latest technology. To wit, we have LuluPet, the world’s first feces-analyzing cat litter box. LuluPet uses a built-in camera along with IR sensors and an “AI chip” to monitor your cat’s dookie and provide an alert if anything looks awry. On the one hand, inspecting cat poop is a job we’d love to outsource, but on the other hand, most cats we know are quick to cover the evidence of their excretions with kitty litter, leaving a clay-encrusted blob rather than the turds with defined borders that would seem to be needed for image recognition to do its job. We’ll reserve judgment on this one until we see a review.