- 01 - Housekeeping
- 02 - Python the Language
- 03 - Your Engineering System
- 04 - Jupyter Notebooks 101
- 05 - Basic Syntax
- 06 - Data Structures
- 07 - Control Flow
- 08 - Functions
Python is approachable, expressive, and loaded with libraries that map onto real engineering problems. The syntax reads like plain English, indentation keeps code tidy, and the ecosystem moves fast without leaving beginners behind.
If your background is spreadsheets and VBA, you're in good shape. Loops, conditionals, and data wrangling concepts transfer directly. The steep part of the learning curve is usually the tooling, package managers, environments, and keeping projects organised. Stick with it. Once your setup is dialled in, the rest of the journey moves quickly.
Python was designed to "fit your brain." A small set of ideas shows up everywhere: objects, readable syntax, and one obvious way to do something. Because the language is consistent, you'll spend less time memorising keywords and more time thinking about the actual problem you need to solve.
Python is interpreted, which means you can run code line by line as you write it. This rapid feedback loop is perfect for testing calculations, prototyping automation, or validating data.
Even at the essentials level, you can lean on Python's built-in modules. They cover math, file paths, dates, random numbers, and more without installing anything extra.
import math
from pathlib import Path
radius = 1.5
area = math.pi * radius ** 2
project_dir = Path.home() / 'projects' / 'wind_analysis'Import the pieces you need, use them, and move on. We'll go deeper on modules in the intermediate course, but it's worth knowing these batteries are already included.
Python is interpreted, which means you can run a line of code the moment you write it. That rapid feedback loop is perfect for testing calculations, prototyping automation, or validating data. Yes, compiled languages can be faster, but in structural and civil work the bottleneck is rarely the CPU, it's almost always the human chasing the right assumptions.
Everyone moves through similar stages. Knowing the map helps you stay patient.
- Beginner - Learn syntax, variables, data types, control flow, and functions. Practice debugging.
- Intermediate - Take on domain problems, learn object-oriented patterns, and explore generators, decorators, and context managers.
- Advanced - Work with concurrency, vectorisation, and performance tuning. Profile and optimise your solutions.
- Expert - Understand how Python works under the hood, design larger systems, and stay current with new tools in your niche.
Use AI assistants when you get stuck, but treat them like teammates, not oracles. The point is to sharpen your judgment, not to outsource it.
Python is the power tool that lets you move beyond manual workflows. Stick with the fundamentals, keep experimenting, and share what you learn. The dividends show up faster than you expect.
There's a long road ahead, but the fundamentals move fast once they click. Let's get started.
- Plato
(c) Flocode, 2025