Blog Tutorials

The Python, AWS Lambda and Sentry logos are copyright their respective owners.

Application Performance Monitoring AWS Lambda Functions with Sentry

Post updated by Matt Makai on August 26, 2021. Originally posted on August 23, 2021.

Amazon Web Services (AWS) Lambda is a usage-based computing infrastructure service that can execute Python 3 code. One of the challenges of this environment is ensuring efficient performance of your Lambda Functions. Application performance monitoring (APM) is particularly... (read more)

The Python, AWS Lambda and Sentry logos are copyright their respective owners.

How to Monitor Python Functions on AWS Lambda with Sentry

Post updated by Matt Makai on April 23, 2021. Originally posted on April 22, 2021.

Amazon Web Services (AWS) Lambda is a usage-based compute service that can run Python 3 code. Errors can happen in any environment you are running your application in, so it is necessary to have reliable monitoring in place to have visibility... (read more)

Logos for the implementations used in this blog post. Copyright their respective owners.

Using Django & AssemblyAI for More Accurate Twilio Call Transcriptions

Post updated by Matt Makai on September 13, 2021. Originally posted on January 05, 2021.

Recording phone calls with one or more participants is easy with Twilio's Programmable Voice API, but the speech-to-text accuracy can be poor, especially for transcription of words... (read more)

Logos for the implementations used in this blog post. Copyright their respective owners.

Higher Accuracy Twilio Voice Transcriptions with Python and Flask

Posted by Matt Makai on October 10, 2020.

Twilio's Programmable Voice API is commonly used to initiate and receive phone calls, but the transcription accuracy for recordings often leaves a lot to be desired. In this tutorial, we'll see how to connect an outbound phone... (read more)

Logos for the implementations used in this blog post. Copyright their respective owners.

Using Sentry to Handle Python Exceptions in Django Projects

Posted by Matt Makai on August 23, 2020.

Web applications built in Django can become sprawlingly complex over time, which is one reason why centralized error handling is important. This tutorial will guide you through adding a free, basic Sentry configuration to a new Django project.

When we're done, you will be able to view centralized error... (read more)

Logos for the implementations used in this blog post. Copyright their respective owners.

How to Transcribe Speech Recordings into Text with Python

Post updated by Matt Makai on September 13, 2021. Originally posted on August 09, 2020.

When you have a recording where one or more people are talking, it's useful to have a highly accurate and automated way to extract the spoken words into text. Once you have the text, you can use it for further analysis or as an accessibility feature.

In this tutorial, we'll use a high accuracy speech-to-text web... (read more)

Logos for the implementations used in this blog post. Copyright their respective owners.

Tracking Daily User Data in Django with django-user-visit

Posted by Matt Makai on July 19, 2020.

It can be tedious to figure out what data to track, create data models and build middleware for your Django project if you just want to collect some basic information about clients that connect to your web application . Fortunately, the... (read more)

Logos for the implementations used in this blog post. Copyright their respective owners.

Quickly Use Bootstrap 4 in a Django Template with a CDN

Posted by Matt Makai on July 05, 2020.

The Django web framework makes it easy to render HTML using the Django template engine. However, the default styling on HTML pages usually need a Cascading Style Sheet (CSS) framework such as... (read more)

Logos for the implementations used in this blog post. Copyright their respective owners.

How to Report Errors in Flask Web Apps with Sentry

Post updated by Matt Makai on July 02, 2020. Originally posted on June 30, 2020.

Flask web applications are highly customizable by developers thanks to the framework's extension-based architecture, but that flexibility can sometimes lead to more errors when you run the application due to rough edges between the libraries.

Reporting errors is crucial to... (read more)

Python and Sentry logos. Copyright their respective owners.

Reporting Exceptions in Python Scripts with Sentry

Posted by Matt Makai on May 25, 2020.

Python scripts are the glue that keep many applications and their infrastructure running, but when one of your scripts throws an exception you may not know about it immediately unless you have a central place to aggregate the errors. That's where adding Sentry can solved this distributed error logging... (read more)

pandas and SQLite logos. Copyright their respective owners.

Exporting pandas DataFrames into SQLite with SQLAlchemy

Posted by Matt Makai on March 30, 2020.

It is common when performing exploratory data analysis, for example when examining COVID-19 data with pandas, to load from files like a CSV, XML, or JSON into a pandas DataFrame. You may then do some work... (read more)

pandas logo. Copyright the PyData Foundation.

Learning pandas by Exploring COVID-19 Data

Posted by Matt Makai on March 28, 2020.

The European Centre for Disease Prevention and Control provides daily-updated worldwide COVID-19 data that is easy to download in JSON, CSV or XML formats. In this... (read more)

Python programming language and Full Stack Python logos.

The Best Resources for Developers to Learn Finance

Posted by Matt Makai on March 08, 2020.

Software developers should understand the basics of finance not only to manage their own money but also to understand how businesses' software projects are funded.

Understanding how other people who work in accounting, finance and project management think about business and finance in particular can help you make better... (read more)

Learn basic Python data types in TwilioQuest 3 - Booleans

Basic Data Types in Python 3: Booleans

Posted by Kevin Whinnery on November 15, 2019.

Welcome back to our ongoing series of blog posts on basic data types in Python 3! Last time, we explored the functionality of strings. Today, we dive in to another key data type - booleans. Booleans (and "boolean logic") are an important concept in... (read more)

Learn basic Python data types in TwilioQuest 3 - Strings

Basic Data Types in Python 3: Strings

Posted by Kevin Whinnery on October 18, 2019.

There is a lot to learn on your Python journey when you are new to the programming language. Once you are comfortable writing and executing code, your first stop becomes understanding how to represent data in your code. No matter the language, there are a few basic data types you'll use all the time... (read more)

Comment bubble with code representing a technical talk-based blog post.

Developer-led Sales for Startups

Post updated by Matt Makai on July 11, 2019. Originally posted on June 26, 2019.

This blog post contains the slides along with a loose transcript from my talk on the promises and perils of developer-led sales as an early-stage company method to acquire customers.

I gave this talk remotely to Ubiquity.VC portfolio company startup founders and the Extended Team on June 26,... (read more)

Python programming language and Full Stack Python logos.

Introduction to Ansible video course released!

Posted by Matt Makai on January 13, 2019.

Check out the just-launched video course, Introduction to Ansible on Talk Python Training. This is the perfect course for you if you want to learn to configure servers and deploy web apps... (read more)

Flask and Okta logos. Copyright their respective owners.

Adding Okta Authentication to an Existing Flask Web App

Post updated by Matt Makai on November 02, 2018. Originally posted on October 31, 2018.

It can be a lot of work to piece together a full authentication system if you have an existing Flask web application that you are coding. Okta makes it much easier to drop-in a complete user authentication system without a lot of additional effort. In this tutorial we... (read more)

Python programming language and Full Stack Python logos.

Fresh Tutorials on Full Stack Python

Posted by Matt Makai on October 22, 2018.

There are a bunch of new tutorials on Full Stack Python that were written since the last time I sent out an email newsletter. These range from getting started with some popular open source projects to integrating third party APIs to... (read more)

Flask, Green Unicorn and Ubuntu logos. Copyright their respective owners.

How to Provision Ubuntu 18.04 LTS Linux Servers on DigitalOcean

Posted by Matt Makai on October 14, 2018.

Python web applications need to be deployed to a production server or service so your users have access to the application.

DigitalOcean is one such... (read more)

Flask and Okta logos. Copyright their respective owners.

How to Add User Authentication to Flask Apps with Okta

Post updated by Matt Makai on October 10, 2018. Originally posted on October 08, 2018.

User authentication is a basic feature in web applications so people can create and access their own accounts. Unfortunately, authentication is not always easy to set up and there are many ways to incorrectly implement login and logout features.

This tutorial walks through how to use the read more)

Flask, Green Unicorn and Ubuntu logos. Copyright their respective owners.

Configure Python 3, Flask and Gunicorn on Ubuntu 18.04 LTS

Post updated by Matt Makai on June 15, 2018. Originally posted on June 14, 2018.

Ubuntu Linux's latest Long Term Support (LTS) operating system version is 18.04 and was released in April 2018. The 18.04 update is code named "Bionic Beaver" and it includes Python 3 by default.... (read more)

Bottle, Docker and Apple logos, copyright their respective owners.

Running Bottle Apps in Docker Containers on macOS

Post updated by Matt Makai on June 05, 2018. Originally posted on June 04, 2018.

It can be confusing to figure out how to use Docker containers in your Python and Bottle development environment workflow. This tutorial will quickly show you the exact steps to get Docker up and running on... (read more)

Comment bubble with code representing a technical talk-based blog post.

How to Explain Your Products to Developers

Posted by Matt Makai on May 25, 2018.

This blog post contains the slides along with a loose transcript from my talk on appropriately marketing products to software developers that I gave at Silicon Valley Bank during Ubiquity.VC's summit for founders, investors and technical advisors on May 24,... (read more)

Python, Django and Mapbox logos are copyright their respective owners.

How to Add Maps to Django Web App Projects with Mapbox

Post updated by Matt Makai on October 06, 2019. Originally posted on May 19, 2018.

Building interactive maps into a Django web application can seem daunting if you do not know where to begin, but it is easier than you think if you use a developer tool such as Mapbox.

In this post we will build a simple Django project with a single app and add an... (read more)

Python programming language and Full Stack Python logos.

Full Stack Python at PyCon US 2018

Posted by Matt Makai on May 09, 2018.

PyCon US 2018 kicked off today with the first day of tutorials. I am flying in tomorrow and will be there through the end of the weekend. If you're around, come by either the Twilio booth or the... (read more)

Python, AWS Lambda and Rollbar logos are copyright their respective owners.

Monitoring Python 3.6 Functions on AWS Lambda

Post updated by Matt Makai on April 25, 2018. Originally posted on April 20, 2018.

Amazon Web Services (AWS) Lambda is a usage-based execution environment that can run Python 3.6 code. If you have never previously used AWS Lambda then you can read
How to Create Your First Python 3.6 AWS Lambda Function. However, this tutorial will give you... (read more)

Flask, Docker and Apple logos, copyright their respective owners.

Developing Flask Apps in Docker Containers on macOS

Post updated by Matt Makai on June 05, 2018. Originally posted on March 09, 2018.

Adding Docker to your Python and Flask development environment can be confusing when you are just getting started with containers. Let's quickly get Docker installed and configured for developing Flask web... (read more)

Python programming language and Full Stack Python logos.

ReportLab and Future Community Project Launches

Posted by Matt Makai on March 04, 2018.

Congratulations to fellow Python developer Mike Driscoll for his successful ReportLab: PDF Processing with Python Kickstarter that just concluded with over double his funding... (read more)

Django and Rollbar logos, copyright their respective owners.

Monitoring Django Projects with Rollbar

Post updated by Matt Makai on May 20, 2018. Originally posted on February 02, 2018.

One fast way to scan for exceptions and errors in your Django web application projects is to add a few lines of code to include a hosted monitoring tool.

In this tutorial we will learn to add the Rollbar monitoring service to a web app to... (read more)

Python programming language and Full Stack Python logos.

5 Years of Full Stack Python

Posted by Matt Makai on December 23, 2017.

Full Stack Python began five years ago today, on December 23, 2012, with Git commit 69f5f46.

I originally built the site to help out a group of junior... (read more)

Python programming language and Full Stack Python logos.

GitPython and New Git Tutorials

Posted by Matt Makai on December 11, 2017.

First Steps with GitPython is a quick tutorial that shows how to get started using the awesome GitPython library for programmatically interacting with Git repositories in your Python applications. In the spirit of the... (read more)

Python and Git logos, copyright their respective owners.

First Steps with GitPython

Post updated by Matt Makai on November 30, 2017. Originally posted on November 29, 2017.

GitPython is a Python code library for programmatically reading from and writing to Git source control repositories.

Let's learn how to use GitPython by quickly installing it and reading from a local cloned Git... (read more)

Python programming language and Full Stack Python logos.

DevOps, Thank You Maintainers and Contributing to Open Source

Posted by Matt Makai on November 13, 2017.

DevOps, Continuous Delivery... and You is a blog post with the slides and notes based on a class I taught at the University of Virginia this past week. The talk is relevant as a brief introduction to read more)

Comment bubble with code representing a technical talk-based blog post.

DevOps, Continuous Delivery... and You

Post updated by Matt Makai on November 05, 2017. Originally posted on November 01, 2017.

This blog post contains the slides along with a loose transcript and additional resources from my technical talk on DevOps and Continuous Delivery concepts given at my alma mater, the University of Virginia, to the