Course content
Overview
Python for Architects is a free, open course created to help architects understand and work with computation in a way that actually fits architectural practice.
There is no shortage of material online for learning how to code. What's missing is context.
Most Python courses teach you to build web apps or process text files. Useful — if you're building web apps. Not useful if you're managing BIM data at 3am before a deadline.
This course exists for that gap.
What This Course Is (and Isn't)
Python is taught here through real architectural workflows, rather than generic programming examples.
Every example, exercise, and explanation is rooted in things architects already deal with:
- BIM data
- Geometry
- Repetitive workflows
- Naming, checking, organizing, and automating work
You won't see shopping carts, guessing games, or abstract programming puzzles here.
Every concept answers a simple question:
Where does this show up in an actual office?
How This Course Works
Architects already think in steps, rules, and systems.
Design standards, building codes, office templates, and personal workflows are all structured ways of thinking. This course starts there and shows how that same logic can be written down in a form computers understand.
Python is one such language. It allows you to take architectural logic and:
- Make it explicit
- Repeat it reliably
- Apply it at scale
We start with how you already think. Syntax comes later.
What You'll Learn
This course intentionally covers a broad foundation before getting technical.
You'll start by learning how to:
- Break architectural tasks into clear steps
- Understand how data and geometry are structured
- Recognize patterns that can be automated
- Read simple Python scripts without fear
From there, you'll gradually apply the same ideas to:
- BIM-related tasks
- Geometry and coordinates
- File and data workflows
- Repetitive office processes
By the end of the course, you should understand what Python is doing, why it's useful, and where it fits in architectural practice — even if you don't consider yourself "technical."
A Note About Tools
This course doesn't start with tools.
Tools change. Concepts last.
Once you understand data, logic, and structure — documentation makes sense. New scripts feel readable.
That's the goal.
A Note on Language
This course is written and maintained in English. Python itself, along with most documentation and community resources, also operates primarily in English.
If English is not your first language, this isn't meant to discourage you — only to set expectations. You may occasionally need extra time with unfamiliar terms, and that's completely normal.
We encourage you to:
- Pause on concepts that feel unclear
- Look up terms as you encounter them
- Use translation tools or resources in your native language when helpful
Learning to work with technical material often involves reading, searching, and cross-referencing information. These are skills that develop naturally as you progress through the course.
Take your time. Understanding grows with exposure and use.
One Last Thing
This course is cumulative.
Each part builds on what came before it. Skipping sections will create gaps that show up later.
Take it slow. Stay curious. Don't skip the foundations
About the author
Prajwal Kumar
Architect turned technologist. Prajwal started Bugs and Binary with one goal: to cut the busywork in AEC and give firms back their time. He’s the hand behind our scripts, plugins, and ideas, and the voice you’ll often read in our blog and newsletter.