Skip to main content

Training programme

Programming Language Foundations

Learn to write, read and debug real code in one language, taught by working engineers around the problems that actually come up — for career changers and for teams whose non-engineers need to read what their developers ship.
Foundation
Delivery
Online, live instructor-led
Modules
6
Price
On request

Learning outcomes

What you'll be able to do afterwards

  • Write, run and debug a working program from a blank file, without copying a template
  • Read unfamiliar code and explain what it does before changing it
  • Choose the right data structure for a problem and say why the alternatives are worse
  • Use version control the way a team does — branches, review, and a history someone else can follow
  • Diagnose a failure from an error message and a stack trace rather than by guessing

Prerequisites

  • Comfortable using a computer day to day — no previous programming required

Curriculum

6 modules

Every module and the topics it covers.

Module 01

Getting the language running

  • A working local environment, set up by you rather than handed over
  • The read-eval-print loop as a thinking tool, not a novelty
  • Running, editing and re-running a program until the loop is automatic

Module 02

The building blocks

  • Values, types and what the language does when they disagree
  • Control flow, and why deeply nested conditions become unreadable
  • Functions: arguments, return values, and keeping one job per function

Module 03

Data and its shapes

  • Lists, maps and records, and the cost of choosing the wrong one
  • Iteration and transformation over manual index juggling
  • Modelling a real problem's data before writing the logic for it

Module 04

Reading other people's code

  • Navigating an unfamiliar codebase to find where something happens
  • Following a value through several functions to understand a bug
  • Naming and structure as the difference between code that lasts and code that is rewritten

Module 05

When it breaks

  • Reading an error message and a stack trace properly
  • Debugger, print statements and bisection — when each is the fastest route
  • Writing a test that reproduces the bug before fixing it

Module 06

Working like a team

  • Version control: commits that explain themselves, branches, merging
  • Submitting work for review and responding to it
  • Dependencies, and what you take on by adding one

Enquire

Ask about Programming Language Foundations

We'll reply with confirmed dates, delivery format and pricing.

Include the country code.

Weekdays, evenings, weekends — or specific dates.

Your current experience level, or how many people you'd be booking for.