Hello 👋 I'm Martin Fitzpatrick.

I write accessible projects, books, and tutorials that help people get more confident with Python.

6th Edition - Create GUI Applications with Python & Qt, Released

PyQt6 & PySide6 Books updated for 2025 with model view controller architecture, new Python/Qt features and more examples

PyQt6 Book now available in Korean: 파이썬과 Qt6로 GUI 애플리케이션 만들기

The hands-on guide to creating GUI applications with Python gets a new translation

Getting Started With Git and GitHub in Your Python Projects

Version-Controlling Your Python Projects With Git and GitHub

Working With Classes in Python

Understanding the Intricacies of Python Classes

Getting started with VS Code for Python

Setting up a Development Environment for Python programming

PyQt6, PySide6, PyQt5 and PySide2 Books -- updated for 2022!

New editions extended and updated, now 780+ pages

DiffCast: Hands-free Python Screencast Creator

Create reproducible programming screencasts without typos or edits

PySide6 tutorial now available

Complete course, updated for PySide2 & PySide6
1 2 3 4 5 6 7 8 9

Python GUIs

6th Edition - Create GUI Applications with Python & Qt, Released

PyQt6 & PySide6 Books updated for 2025 with model view controller architecture, new Python/Qt features and more examples

Tkinter Widgets

A walkthrough of Tkinter's basic widgets

Kivy's Complex Widgets

Learn How to Use Kivy's Complex UX Widgets in Your Apps

Getting Started with Streamlit

Build your first Streamlit app and explore some basic features

Basic Kivy Widgets

Learn the Basics of UX Widgets in Kivy

Getting Started With PyCharm for Python GUI Development

The Python-Specific Integrated Development Environment

Building a Translation Application Using Tkinter

Translate Your Text With Python and Tkinter

Introduction to the QGraphics Framework in PySide6

Creating vector interfaces using the QGraphics View framework

See more at Python GUIs