
Explore the common concepts behind an introduction to programming course, across languages, using light code examples to show that concepts—not language—shape understanding.
Explore core programming principles and concepts common to most languages, building a language-agnostic foundation to learn any language, with illustrative examples in C++ and JavaScript.
Explore how programming uses code to tell a computer what to do. See simple samples in C++, Java, and JavaScript that achieve the same outputs across languages.
Compare high level and low level programming languages, and understand how high level languages shield memory and hardware details while low level languages enable direct interaction with machine language.
Explore how programs run as compiled or interpreted languages, and see how compilers convert code to machine language, with examples like C++, .NET, JavaScript, Python, and PHP.
Explain compiled versus interpreted languages using a sugar cane analogy. Demonstrate how compiled code runs through a compiler to refined code, while interpreted code runs directly via an interpreter.
Explore data types across languages, comparing strongly typed and weakly typed systems, and learn how variables hold numbers, characters, booleans, and how input validation enforces correct data types.
Explore C data types, including character types, integers (signed and unsigned, short int), floating point types (float, double, long double), boolean and void, and understand cross-language syntax similarities.
Understand how variables act as memory placeholders that store changeable values, using meaningful identifiers and declaration rules across Java, C++, and JavaScript.
Explore how variables work in strongly typed languages like C++ and Java, and contrast with JavaScript's dynamic typing, covering type declarations, initial values, and assignment.
Declare and initialize variables in javascript using var and let, assign string values with quotes, and compute a rectangle's area with length times width, reflecting dynamic user input.
Learn how constants protect values by declaring them read-only after initialization in languages like C and C++. Note JavaScript has a similar concept but no exact constant equivalent, ECMAScript.
Explore how operators manipulate operands like variables and numbers, and assign values with =, distinguishing programming assignment from mathematics. Use addition, subtraction, multiplication, division, and modulus.
Explore the modulo operator and its remainder output, compare integer versus float division, and apply modulo to determine even or odd numbers via conditionals.
Explore compound operators such as plus equals, minus equals, times equals, divide equals, and modulo equals, and see how x updates by applying these operators to y.
Explore unary operators such as x++/++x and x--/--x, and the not operator. Contrast unary with binary operators, and shorthand forms like x += y and x = x + 1.
Explore the difference between prefix and suffix increment operators in C++, with examples showing how ++x and x++ affect x and y and why this matters for avoiding logic errors.
Demonstrates the prefix vs suffix operator demo, showing how increment and decrement affect evaluation order and variable values in programming.
Explore relational operators like equals, not equals, greater than, less than, and greater or equal to, and learn their boolean results for if-else style conditional programming.
Explore logic operators not, and, or, and how combinations of conditions determine true or false in programming, with practical classroom-style examples.
Explore operator precedence to determine which operations execute first, using examples like plus, minus, times, divide, and bracketed expressions, across languages with similar rules.
Learn how the if statement controls program flow by executing code when a condition is true, with a C++ example where x equals 10 and optional else behavior.
Master if-else statements and defensive programming, decide if a number is even or odd using the remainder when divided by two, and handle true and false branches.
Understand how else if extends the if else structure to test multiple conditions and fall back to else, using an age check example for an online liquor store.
Demonstrates how if-else statements govern access by age in a simple program, using an online liquor store example to show less than 18, 18 or older, and invalid ages.
Use an if-else chain to assign grades from a points score (0–40, 40–60, 60–80, 80–100), and add an else branch for invalid inputs to enable defensive programming.
Explore loops as a core control flow feature, using true conditions to repeat statements and exit when false, with examples of while and do-while loops and practical use cases.
Learn how while loops initialize a variable, test a condition, execute the loop body, and then increment or decrement before repeating, with practical examples.
See how a while loop works in C++ by counting from zero to 49 or from one to 50. The video shows x values with line breaks to illustrate iteration.
Learn how the do-while loop runs its body at least once before evaluating the condition, unlike the while loop, and how this impacts output when counted up to 50.
Discover how a for loop handles initialization, a test condition, and incrementing in JavaScript, with examples outputting 0 to 50 and 1 to 100 using curly brackets.
Explore how jump statements control program flow by using break to exit loops and continue to return to the top of a loop, with practical examples.
Demonstrate how break and continue manage a while loop, halting execution when x reaches 10 and displaying the value before aborting.
Explore how the continue statement works in a for loop to skip odd numbers and show only even outputs, building on earlier break examples.
Explore the switch statement as a selection mechanism that matches an expression to cases, uses break to exit the switch, and includes a default fallback.
Explore how the switch statement works across languages, with a focus on C and C-based languages, contrasts with Python, and practical examples of multi-way branching.
demonstrate how a switch statement matches age values and uses break to prevent fall-through. show how indentation and line breaks improve readability, and how a default handles unmatched values.
Demonstrate how to implement a month-based switch statement in Java, including cases, break, and output, showing August for month eight.
Explore loops in JavaScript by defining iterations, repeating actions with while, do-while loops, for in loops, and practicing with examples to cement understanding.
Explore how while and do-while loops work in JavaScript, including condition evaluation, incrementing with x, and practical examples that print numbers until a limit.
Master how a for loop controls execution with initialization, condition, and update, printing values and showing that updates can be x++ or x += 10.
Master for loop basics by printing 1 to 5, then 0 to 50 in steps of 10 using x += 10 and x = x + 10.
Master for loop concepts by troubleshooting syntax errors, learning when to use break to exit loops, and iterating over literal arrays with practical examples.
Learn to list all elements in an array using a for loop by initializing an index, checking the array length, and incrementing to access zero-based indices like Jerry, Peter, Milo.
Cache the array length in a variable and use it in a for loop to iterate efficiently, avoiding repeated length lookups as you traverse an array in JavaScript.
Learn how to write single-line and multi-line comments in C family languages, Java, and Python, and how well-commented code serves as essential documentation.
Learn how comments explain your code without changing functionality, note expected results, and apply debugging techniques by commenting out lines or using multi-line comments to isolate issues.
Explore arrays as memory-backed containers that hold a fixed number of values of a single type using zero-based indexing, with language-specific definitions for Java, C++, and JavaScript.
Declare a string array in c++ with six elements and learn to access items by array name and index using zero-based indexing.
this lecture explains declaring arrays in java by specifying the data type and an array name, and demonstrates camelCase naming along with snake_case in the id one editor.
Explore declaring, allocating, and initializing a five-element integer array in Java using zero-based indices, then access and print each element with its index using string concatenation.
Learn to use a for loop in Java to list array elements by the length property, replacing manual listing and handling arrays of any size.
Explore how a for loop iterates through an array using its length, indexes each element, and prints concatenated results to demonstrate output consistency.
Explore arrays and their role across programming languages, and remember that many advanced topics aren’t covered here; learners should explore and practice arrays in their chosen language.
Learn how functions group code to perform tasks, illustrated by a calculator's add, subtract, and logarithmic tasks, and how parameters and named functions enable reusable code across languages.
Learn how to write a C++ function that adds two integers and returns the result. Declared outside main, the addition function is called from main, with subtraction shown for clarity.
Define a simple JavaScript function named addition to add two numbers a and b, and call it to show results in an alert box, demonstrating addition, subtraction, and multiplication.
Define and call a simple python function to add two numbers using def, parameters, and indentation; print and return the sum for external use.
Explore the many facets of functions, from named and anonymous (lambda) forms to built-in helpers like Math.abs and Math.floor, with JavaScript examples and the importance of reusable code.
Learn to handle errors and exceptions in real programming, focusing on syntax errors, compilation, and how to present user-friendly recovery when things go wrong.
Explore semantic and logical errors in code, and how a misplaced operator can mislead results. Learn how assignment versus comparison operators affect flow and loops using practical examples.
Identify compile time versus runtime errors and how syntax errors block compilation before execution. Illustrate division by zero as a runtime error with Python, JavaScript, and C++ examples.
Learn how to anticipate and handle errors with try-catch blocks, catch statements, and throw custom errors to provide graceful feedback instead of crashes.
Learn how to handle errors with exceptions across languages, throw custom errors, convert user input to numbers, and enforce a 10 to 100 range using try-catch-finally blocks.
reflect on continuing learning after this course by exploring pseudo codes, flowcharts, databases, algorithms, data structures, design patterns, and regular expressions; practice what you learn and teach to reinforce mastery.
You now have enough knowledge to learn any new programming language with what you already know, and more videos will be added to support your ongoing learning.
This introduction to the Caitlin programming language guides beginners through syntax, variables, and functions, and shows how to install intelligence to write Caitlin code for android, desktop, and web apps.
Learn how to install IntelliJ IDEA Community Edition on ubuntu via snap, configure the ide, and create a new project while preparing for jdk setup and a windows installation walkthrough.
Install the Java Development Kit on Windows and set its path in system variables. Install IntelliJ IDEA community edition on Windows, then verify by running the Java compiler.
Create your first Kotlin project in an IDE and set the JDK path on Windows. Write a simple main function to add two numbers and compare print and print line.
Learn to use Kotlin comments to document code, including single-line and multi-line styles, for clarity and debugging. Understand the main function as the program's entry point that ties code together.
Declare and manipulate variables with var and val to store integers and understand memory. See how VAT remains fixed as an immutable example while other variables can be reassigned.
Explore Kotlin variables with practical dog grooming business examples, learning explicit type declarations, type inference, immutability with val, and proper syntax for numbers, floats with F suffix, and strings.
Explore Kotlin variable declarations, perform arithmetic to derive the number of dogs groomed from total legs, and format the result using concatenation and template strings.
Choose a programming language based on your goals—mobile, web, or cloud—focusing on JavaScript, Python, Golang, Kotlin, Java, C#, and PHP. Rely on strong communities for guidance and jobs.
This introduction to programming course will teach you as much as is necessary about programming.
If you’ve ever felt like learning programming, this is a good course for you to start with . Watch this course before you embark on a journey to learn any new programming language as a beginner.
You will notice that I created this course with non- Computer Science students in mind. Nonetheless, new CS students should feel very free to join this course.
This course will equip you with the necessary skills and tools to go out and learn any new programming language. This intro to programming is intended for those who want to learn basic programming concepts. Concepts that are applicable in most programming languages used today.
Update :
I've added a new section for you to learn Kotlin as a beginner. As a complete beginner in the Kotlin programming language, you will learn the basics of the Kotlin Programming language in the Kotlin section.
Join this Introduction to programming course.