Professional Software Development · 2nd Edition
A refined second beginners' cohort — sharpened by everything we learned the first time, with built-in exam checkpoints — taking new students from their first line of code to building web apps.
Running alongside our first Advanced cohort, this second beginners' edition took the proven structure of Edition 1 and tightened the pacing, added deliberate debugging practice, and built in exam checkpoints to consolidate learning before moving from C# fundamentals into web development.
Explained software, hardware and instruction set architectures, abstraction, and compilers vs interpreters. Students wrote a first "program" in a spreadsheet, then built a real C# console app that adds two values and prints the result.
Introduced variables, types and control structures with a C# syntax cheat sheet, applying them to compute the interior angles of a polygon from user input — stressing understanding the problem domain.
Emphasised "wearing two hats" as developer and user — readable code and clear messages — and extended the cheat sheet to if statements, with creative user-input calculation homework.
Added debugging practice through "spot the error" and "what does it do?" slides, with an exercise reading a number and reporting in green/red whether it equals 5, exceeds 10, and is even or odd.
Introduced while loops through guided walkthroughs, including printing 0–9 and reporting multiples with string interpolation, while reinforcing conditionals.
Consolidated the material, then a 30-minute exam: a console app that takes two numbers and shows their colour-coded sum parity, their product, and whether the product is prime.
Revisited conditionals and loops and revised the exam task, cementing confidence with the full sum/parity/product/primality program.
Moved to web development: HTML as a tag-based language, the page structure, attributes and inline CSS. Students built a page in Notepad, opened it in a browser, and explored real pages with Dev Tools.
Explained file paths and extensions, revisited inline CSS, and added debugging exercises including a flexbox layout of three bordered cards.
Reinforced page structure, browser behaviour and styling through debugging slides and a flexbox walkthrough, with practice building a page and a Roman-numeral calculator challenge.
Bridged static HTML to interactive pages and introduced Blazor. Students created a Blazor WebAssembly app, explored the Razor Home page, and ran the Counter — editing and recolouring the button.
Detailed a Blazor page — the @ symbol referencing C#, @onclick wiring a method, and the @code block — with exercises changing text and colour on click, building toward a calculator and an RSA simulator.