Python news wrap-up for November 2022
OpenAI's DALL·E API beta, Arduino microcontrollers, Weezer, and more!
Hey Grokking Python readers, and happy Thursday! Without further ado, let's jump right in.
DALL·E API is now available as a public API for Python
Python developers can now build apps with OpenAI's very own DALL·E API! The API is officially in public beta. DALL·E opens the door for state-of-the-art features like image generation from natural language and automated image content moderation.
If you plan on integrating the API for users to request images, it can automatically filter requests for hate symbols or gore. While these features are only available in a natural language filtering context, they pose a promising idea for the future of automated image moderation.
Automated content moderation is a big deal. Many human content moderators are at risk of developing mental health problems, and the introduction of highly advanced machine learning APIs can potentially help soften the load.
OpenAI has a well-known machine learning API enabling all kinds of advanced natural language processing and even code autocompletion. The official announcement of the DALL·E API public beta can be found on the OpenAI blog. Plus, read more about the full functionality of the DALL·E powered API in the newly expanded official OpenAI documentation.
Advanced malware detection due to unique attacks on PyPI
Cyber security companies Phylum and Check Point reported on novel ways of hiding malicious code on the Python Package Index. It appears that malicious code stored in packages date back to early October, but that the effort didn't kick into high gear until late October.
One of the malwares delivered was "W4SP Stealer." It targets sensitive or interesting files on the victim's computer like: Discord accounts, passwords, crypto wallets, and credit card information. The data then gets sent back to the attacker via a hardcoded Discord webhook address.
Check Point found malicious packages with non-trivial code that downloaded stenography modules containing malware. It was only when messages hidden in images were de-obfuscated that base64 Python code for installing malware was found.
These breaches demonstrate a new type of organized malware attacks. Those who are most vulnerable are professionals that work from home; especially those who use a work machine for side projects. These attacks serve as yet another reminder to stay vigilant.
Both Check Point and Phylum found some slightly different approaches to malware. Read more about the research on these attacks here:
Check Point: Check Point CloudGuard Spectral exposes new obfuscation techniques for malicious packages on PyPI
MicroPython is now a part of the Arduino ecosystem!
Microcontroller kit company Arduino now supports Python, or rather, MicroPython, the version of Python that runs on microcontrollers. Alongside this neat added functionality, the Arduino and MicroPython teams have collaborated on a totally new IDE built for any microcontroller with a serial REPL interface. The IDE is called Arduino Lab for MicroPython. It's a lightweight editor designed for simple interactions between computer and board like selecting a port, loading scripts, using the REPL shell, etc.
If you're unfamiliar with all the fun that can be had with Arduino boards, check out their own community project hub. Hopefully you can find some inspiration for a fun side project or two, like this clever remote control light switch.
More info on how to set up the IDE can be found in the official Arduino documentation on Arduino Lab for MicroPython.
The 2023 HackerRank Developer Skills Report is out
HackerRank uses its data to assess in-demand developer skills and forecast an outlook for the tech landscape each year. Despite the huge swath of layoffs cutting through the tech industry, the hiring company has some good news.
It is still a great time to get into the software development space as demand is predicted to grow for the foreseeable future. It seems like everyone is either learning to code or saying they should learn how to code these days, and that remains true.
Check out HackerRank's full 2023 report.
HackerRank claims that the languages that saw growth in 2021 and 2022 will continue to grow. The most notable are Python, Java, and SQL. Additionally, REST API skills grew in demand by a whopping 179%. Remembering that DALL·E API we mentioned earlier?
Well, you're in luck, because Educative recently launched 20+ new API courses all exclusively in Python. It's hard to imagine a better time than right now to try your hand at some new API integrations. If you're knee deep in building a web application, or brand new to APIs in general, we've got you covered with a blog on some of our favorite APIs to use in web development.
Guido Van Rossum talks to Rivers Cuomo
In much more niche news that was too strange to pass up, the creator of Python, Guido Van Rossum, is teaming up with the Weezer frontman and rock icon Rivers Cuomo for a meeting of the minds. The two pair up on a podcast called Sing for Science. The premise is that two accomplished professionals (a musician and a scientist) meet in the middle to talk art and science together.
In this episode, Rossum and Cuomo dive deep into the history of Python and coding, but also songwriting, specifically the making of Weezer's "The Sweater Song." The episode is titled: Come Undone: Revolutionizing the Digital Age with Open Source Coding.
Educative unveils new Python courses
To top it all off, we'd like to announce a brand new Python skill path on Educative. Pythonic Programming Tips for Software Engineers, is centered around how to write "Pythonic code." It outlines how to create efficient and maintainable code, designed specifically for Python in six parts.
Documentation
General tips
Data types and data structures
Functions
Performance
Safety
This course is especially useful to those who already know Python. Each section features tips and tricks that are valuable even to experienced Python developers. By the end of this path you'll know exactly how to build efficient, performative, and scalable code in a way that uses Python to its fullest potential.
Get more out of your favorite language with this path: Pythonic Programming Tips for Software Engineers.
We hope you enjoyed this month's recap. Watch this space for more exciting news to come!
As always, happy learning!