Episode 64: Detecting Deforestation With Python & Using GraphQL With Django and Vue
The Real Python Podcast
Jun 11, 2021 1h 1m
Are you looking for an in-depth data science project to practice your skills on? Perhaps you would like to add new tools to your Python web development projects instead? This week on the show, David Amos is back, and he’s brought another batch of PyCoder’s Weekly articles and projects.
Episode Sponsor:
David shares an article about how to go about detecting deforestation from satellite images. He covers how a data science team built a machine learning (ML) solution to do just that, using FastAI for the modeling and Streamlit to create a dashboard.
We also discuss a Real Python article about building a blog using Django, Vue.js, and GraphQL. GraphQL is a great tool to enhance your API to make it more flexible. The step by step project walks you through turning your Django blog data models into a GraphQL API.
We cover several other articles and projects from the Python community including, the tools and tech used to run a one-woman hardware company, visualizing data in Python using plt.scatter(), why the sad face when using Black, how to iterate over dataframe rows (and should you?), pipx is now a PyPA member project, and real-time lossless audio compression in Python with pyFLAC.
Spotlight: Explore Your Dataset With Pandas
In this step-by-step course, you’ll learn how to start exploring a dataset with Pandas and Python. You’ll learn how to access specific rows and columns to answer questions about your data. You’ll also see how to handle missing values and prepare to visualize your dataset in a Jupyter Notebook.
Topics:
- 00:00:00 – Introduction
- 00:02:11 – Build a Blog Using Django, Vue, and GraphQL
- 00:10:06 – Detecting Deforestation From Satellite Images
- 00:16:35 – Sponsor: Digital Ocean’s App Platform
- 00:17:11 – The Tools and Tech I Use to Run a One-Woman Hardware Company
- 00:29:13 – Visualizing Data in Python Using plt.scatter()
- 00:34:24 – Why the Sad Face?
- 00:40:20 – Video Course Spotlight
- 00:41:26 – How to Iterate Over DataFrame Rows (And Should You?)
- 00:48:31 – pyFLAC: Real-Time Lossless Audio Compression in Python
- 00:53:47 – pipx: Install and Run Python Applications in Isolated Environments
- 00:59:59 – Thanks and goodbye
Show Links:
Build a Blog Using Django, Vue, and GraphQL – In this step-by-step project, you’ll build a blog from the ground up. You’ll turn your Django blog data models into a GraphQL API and consume it in a Vue application for users to read. You’ll end up with an admin site and a user-facing site you can continue to refine for your own use.
Detecting Deforestation From Satellite Images – How would you go about detecting deforestation — a contributor to climate change — from satellite images? In this article, you’ll learn how one team built a machine learning (ML) solution to do just that, using FastAI for the modeling and Streamlit to create a dashboard. The article discusses methodology and results, and is a great read about building an ML solution. The project code is available on GitHub.
The Tools and Tech I Use to Run a One-Woman Hardware Company – Winterbloom makes open-source, boutique synthesizers. There’s a lot that goes into running a hardware company. Someone has to design the hardware, code the firmware, write the documentation, not to mention administrate the company. Winterbloom does all of this with just one engineer — Stargirl Flowers. Learn what tools and tech Stargirl uses to run her company, and how Python fits into the big picture in more ways than one.
Visualizing Data in Python Using plt.scatter() – In this tutorial, you’ll learn how to create scatter plots in Python, which are a key part of many data visualization applications. You’ll get an introduction to plt.scatter(), a versatile function in the Matplotlib module for creating scatter plots.
Why the Sad Face? – The Black autoformatter adopts some conventions that might surprise you the first time you use it. One of those conventions — the “sadface dedent” — moves closing parentheses in function signatures and other block headers to their own lines. This creates a line containing nothing but “):”, which looks like a sad face emoji. Łukasz Langa, Black’s creator, explains why Black does this.
How to Iterate Over DataFrame Rows (And Should You?) – How to iterate over pandas DataFrame rows is one of the top voted questions with the pandas tag on Stack Overflow. That question is also the most copied answer with a code block on the entire site. Clearly, lots of people want to iterate over the rows in a DataFrame. But should you do this, or are there better options?
Projects
- pyFLAC: Real-Time Lossless Audio Compression in Python
- pipx: Install and Run Python Applications in Isolated Environments
Additional Links:
- Django: The Web Framework for Perfectionists With Deadlines
- Vue.js: The Progressive JavaScript Framework
- GraphQL: A query language for your API
- GraphQL? Here is what you need to know! - Syntax FM Episode
- FastAI: Simplifies training fast and accurate neural nets using modern best practices
- Streamlit: The fastest way to build and share data apps
- Winterbloom: Magical Musical Machines
- Black: The uncompromising code formatter
- pyFLAC: Real-Time Lossless Audio Compression in Python
- pipx Is Now a PyPA Member Project