Support

Free Chapters

Read Three Full Chapters Free

No payment, no account. Three complete chapters from across the book, exactly as paying readers get them.

Chapter 03 Free

Your First API Call

Make your first real API request in Python, read the JSON that comes back, and understand exactly what happened on the wire.

Read free →
Chapter 14 Free

OAuth and Authentication Fundamentals

Demystify OAuth 2.0. Walk the authorization-code flow step by step and log a user in against a real provider, no hand-waving.

Read free →
Chapter 15 Free

Database Fundamentals with SQLite

Give your app a memory. Design a SQLite schema, run your first queries, and persist API data between runs.

Read free →

Free Guides

Full-length technical guides

Free to read. No account needed.

Guide

How to Call an API in Python

Start here. Install requests, make GET and POST calls, send params and headers, read JSON, and handle status codes, with links to deeper guides on each topic.

Read free →
Guide

How to Build an App with AI

Turn an app idea into a requirements document, Claude project setup, safe first prompts, and a version 1 build plan you can actually follow.

Read free →
Guide

Handling API Errors in Python

Why a 200 is not always success, and how to handle failures at the right layer: status codes, the requests exception hierarchy, raise_for_status, and graceful fallbacks.

Read free →
Guide

requests: Timeouts, Retries, and Backoff

Python requests has no timeout or retries by default. How to add both, plus exponential backoff, the right way, with a reusable session you can copy into any project.

Read free →
Guide

Storing API Keys Safely with .env

Stop hardcoding secrets. Use a .env file and python-dotenv to keep API keys out of your code and out of version control, locally and in production.

Read free →
Guide

Validating JSON with jsonschema

Validate the JSON an API returns before you trust it. Define a schema, catch bad data at the boundary, and know when a simpler check is enough.

Read free →
Guide

OAuth 2.0: The Authorization Code Flow

The OAuth dance, demystified. The four roles, the redirect, exchanging a code for tokens, refresh tokens, state, and PKCE, then a complete runnable script and a table of the errors you'll hit.

Read free →
Guide

Using PostgreSQL with Python

From the psycopg driver to your first query: connect, run safe parameterized queries that dodge SQL injection, read rows, and handle transactions cleanly.

Read free →
Guide

Flask vs FastAPI

A fair, hype-free comparison: sync vs async, type-hint validation, automatic docs, templating, and ecosystem, plus which one to learn first in 2026.

Read free →
Guide

Web App vs Mobile App

A practical first-product decision guide: when to build a browser-based web app, when native iOS or Android is worth it, and where PWAs fit.

Read free →
Guide

Testing Real-World Python APIs

A complete, hands-on guide to testing API code with pytest: mocking requests, the Flask test client, OAuth flows, and a production test suite.

Read free →
Guide

Local Hosting vs Deployment

What actually changes when Python code leaves your laptop: the dev server vs production, what gunicorn is for, and why "it works locally" is not the finish line.

Read free →
Guide

Deploy a Flask App

A practical first deployment: add Gunicorn, declare dependencies, set the start command, configure env vars, and take your Flask app live on a managed platform.

Read free →
Guide

Dockerizing a Python API

Write your first Dockerfile line by line, add a .dockerignore, keep secrets out of the image, then build and run your API in a container.

Read free →
Tool

curl to Python Converter

Paste a curl command and get clean, runnable Python requests code instantly, in your browser. Handles headers, query params, JSON and form bodies, and auth, with a production-ready mode.

Open the tool →
Tutorial

Build a Spotify Music Time Machine

A real-world walkthrough of the Spotify API in Python: OAuth login, pulling your listening history, and building a playlist, with current 2026 policy notes.

Read free →