
Learn how programmers translate English steps into programming languages using variables, functions, loops, and object oriented programming concepts like class hierarchy and polymorphism.
Explore how programming evolved from Ada Lovelace's first program to modern languages, covering assembly, interpreted, compiled, object oriented, data, functional, and scripting approaches.
Explore how variables store values, allocate memory, and define types like integers (unsigned and signed) and strings, then perform arithmetic and output results.
Learn how to automate repeated tasks by defining and naming functions, call them by name, and follow program flow as it jumps into and returns from these blocks.
Break down complex tasks into smallest steps and define reusable functions with parameters to customize behavior, such as applying different tax and shipping rates in code.
Define how scope controls the lifetime and visibility of variables, from global to function scope, and explain how memory is freed when a program ends.
Explore how functions return values, distinguish literals, variables, and parameters, match return types, and build private and public APIs for scalable programs.
Explore how developers capture user input—from keyboard and voice to gestures and sensors—and create event-driven programs that listen for input and respond to events.
Explore how programs handle variable types, including dynamic typing, automatic conversions, and explicit type casting for literals, variables, and function parameters.
Explore boolean values and conditional tests to control program flow using if, else, and else if statements, and combine conditions with and, or, and not operators.
Explore loops in programming, including while, do while, and for loops, using conditional tests, iterators, and nested loops to repeat code safely and control iteration.
Discover how arrays group values under a single name, access items by 0-based indices, and use for loops, for-each loops, push, and slice to modify length and compute averages.
Define objects with characteristics, actions, and names to model anything in software, from scissors to cars, forming the core of object-oriented programming.
Explore how to work with classes and objects by creating instances, using constructors, and accessing properties and methods, including static members that apply to the whole class.
Explore designing a class with private properties and public getters and setters to enforce rules. See how a movie review rating is constrained to 0–5 and accessed safely.
Extend classes to create subclasses from a base animal blueprint, reusing attributes like weight and age while adding run, swim, or fly, forming a modular class hierarchy.
Master debugging by monitoring variable values, stepping through code in IDEs and web browsers. Create and catch exceptions to deliver meaningful feedback to users.
Refactor code to improve performance, support new features, and enhance readability while updating old references and keeping changes from harming the rest of the program.
Explore how code repositories like git and GitHub track progress with commits and snapshots, enabling restore to earlier versions, branching, and collaborative development.
Explore agile development and roadmaps to code apps for multiple platforms, using first party and third party tools like Cordova or Unity with C-Sharp and dot net.
In this course, you'll learn how programming languages work. We'll start by explaining the job of a programmer, taking a set of steps or a process that needs to be performed by a computer.
Next, we'll get into conditional statements, and for while and do while loops. Then we'll jump into object-oriented programming. We'll explain classes, hierarchy, and polymorphism. Finally, we'll go beyond programming, diving into debugging, refactoring, version control systems, and multi-platform support. Once you know the basics, you can more easily learn specific languages to build on top of what you already know. It's time to introduce you to skills you can apply to almost any programming language in the future.