Skip to content
System nominalUTC --:--:--Articles 041
DEV TRACK Beginner to advanced

Python from First Script to Service

A complete Python course: syntax, data, functions, objects, errors, testing, typing, concurrency, and packaging a real service you can run and keep running.

Modules
06
Lessons
18
Reading time
9H 25M
Words
31,713
0 of 18 complete0%

What you will be able to do

  • Read and write Python that survives a code review.
  • Structure a program across modules and packages instead of one long file.
  • Handle failure deliberately rather than catching everything and hoping.
  • Write tests that fail when the code is wrong and pass when it is right.
  • Add type annotations and get value from a checker instead of fighting it.
  • Package a service with pinned dependencies and run it under load.

Before you start

A computer where you can install software, and enough terminal comfort to move between directories and run a command.

Python is the language most likely to be somebody's first, and the one most often used badly by people who have been writing it for years. Both problems have the same root: the language makes it easy to write something that runs, and gives you no signal at all about whether the thing you wrote is going to survive a second month of use.

This course goes from installing the interpreter to shipping a service that makes outbound HTTP calls, handles their failure, and reports what it did. Nothing is skipped because it seems advanced. Type annotations, exceptions, context managers, tests and async all arrive in the order you would actually meet them, and each one arrives attached to a problem that makes its existence make sense.

It deliberately does not cover data science libraries, machine learning, GUI toolkits or web frameworks beyond the standard library. Those are separate subjects with their own prerequisites, and pretending otherwise is how courses turn into surveys. What you get here is the language and the engineering around it, which is the part everything else assumes you already have.

Curriculum

6 modules, 18 lessons

MODULE 01

Getting a program to run

Installing Python, running a file, and reading a traceback as information rather than as failure.

3 lessons · 1H 30M

MODULE 02

Data and control flow

The built-in types, how they actually behave, and the loops and decisions that turn them into programs.

3 lessons · 1H 30M

MODULE 04

Objects and errors

Classes, dataclasses, exceptions and context managers, and what a well-behaved object owes its caller.

3 lessons · 1H 30M

MODULE 05

Testing and typing

pytest, test design that catches real bugs, type annotations, and a checker running in CI.

3 lessons · 1H 35M

MODULE 06

Concurrency and shipping

Threads, asyncio, outbound HTTP, pinned dependencies, and a service that survives contact with the network.

3 lessons · 1H 45M

Go deeper

Articles that pair with this course