
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Explore the course structure, featuring two parts: Python programming and computer science principles, each with six sections of easy videos plus practice exercises and solutions.
Explore how to run Python, from online editors to local installations, and discover free editors like Spyder with Anaconda or Notepad options for data science and machine learning.
Prepare for the AP CSP exam held every May by reviewing likely questions on coding, pseudo code, programming, logic, and algorithms, with April revision support from this course.
Seek help and engage with instructors through comments, questions, email, or our YouTube channel, and enjoy the AP CSP course with ample support.
Create a plan with milestones to learn Python, practice 15 minutes a day, seek help if stuck, and tick off goals like basic programs, zero/positive/negative checks, repetition, and core concepts.
Watch simple follow-along videos to reinforce programming concepts before practicing exercises, learn to handle errors, and know when to seek help to stay prepared and confident.
Explore running Python code with an online editor and Spider from Anaconda, view output and errors, and learn copy-paste tips to avoid invalid characters in data science contexts.
Learn to run Python using IDLE, Notepad, and Notepad++ on your computer, including saving as a .py file and executing from the command prompt to see outputs and errors.
Learn how to use Python for calculations and more, mastering tools like print, variables, and strings in your programs. Complete practice exercises and apply skills to the programming project.
Learn how Python prints numbers and strings using the print function, including single or double quotes, calculating inside print, and printing multiple items with spaces.
Explore Python operators such as plus, minus, multiply, divide, and modular, showing how remainders arise; learn how parentheses set the order of operations (PEMDAS) for expressions.
Assign and modify variables in Python, using integers, strings, and floats, with clear naming and underscores. Learn to print results and use built-in functions like abs for absolute values.
Learn how Python strings are sequences of characters, how to print them, and how to use concatenation, repetition, and slicing with indices, plus methods like len, upper, lower, and replace.
Follow along with a simple Python print statement to output strings and numbers, and explore arithmetic, division results, and how brackets control calculation order to avoid errors.
Learn to use strings and numbers with variables to calculate areas: define x as 6, square area x*x, and rectangle area with length 6 and width 8, then print.
Learn how to manipulate strings with lower and upper functions, converting 'hello' to lowercase or uppercase, printing results, and using comments to suppress unwanted output.
Follow along coding help explains common Python errors, from undefined variables and missing quotes to syntax and indentation mistakes, and how error messages guide debugging.
Explore how if statements control code flow by running the indented block only when a condition is true, such as age greater than eighteen.
Explore how if statements control code execution by evaluating conditions like X greater than 8 or less than 8, using indentation and colon to run or skip print statements.
Explore boolean values and conditional execution by examining true and false in an if statement; see how true prints and false does not print anything.
Explore conditional logic through everyday examples: if statements with rain and umbrella, hunger and eating, left/right decisions, u-turns, and morning am/pm, plus evaluating true/false outcomes.
Explain how an if-else statement routes output based on a condition, printing 10 when x is greater than eight and printing no when the condition is false.
Explain comparison operators, including greater than, less than, and equal to, using two equal signs for equality and exclamation mark plus equals for not equal to in if statements.
Learn how indentation in Python marks which statements belong to the if block or the else block, determining what runs, with print statements, conditions, and booleans as examples.
Explore if statements and if-else logic in Python to evaluate numeric conditions like greater than 50 and greater than or equal to 50, with examples that print pass or retake.
Explore common if statement mistakes in python, including boolean truth checks, equality, comparison operators such as greater than or equal to, syntax errors, and the importance of indentation.
Explore using if statements beyond two options by building a menu system or a multiple choice quiz, and learn how to implement conditionals effectively.
Learn how if, elif, and else statements control flow in Python by checking x against zero to print positive, negative, or zero, and using elif for multiple choices.
Explore nested if statements by building indented blocks, such as if outside and if rain use umbrella, and extend with inner ifs like receive change and take fruit.
Discover how the not operator reverses a condition, turning statements like x > 8 or x <= 8 into the opposite outcome and altering what prints.
Showcases using the or operator in conditional statements to print a message when either rain or burning sun is true, and compares it to using and in separate checks.
Explore how or logic shapes if statements and condition combinations. Map colors to actions: blue means shower, green means bath, red means dress.
Learn how the and operator makes both conditions true in if statements, with rain and umbrella as examples, and contrast it with the or operator that needs only one condition.
Demonstrate using if, elif, and else to decide pass or retake outcomes based on test and task scores, with print statements signaling results.
Explore how nested if statements control task and test outcomes by using the if and else structure and the and operator to decide between printing pass, retake, or test results.
Explore how loops simplify repeating tasks in python. Use for loops to repeat a set number of times and while loops to repeat while a condition is true.
Demonstrates a Python for loop that prints the numbers 2, 4, and 6 on separate lines using a colon and indentation to control iterations, showing simple multiplication and squaring results.
Explore for loop concepts with range and numbers one to ten. Demonstrate nested loops over strings like cat and dog, and break behavior that stops at three.
Explore how a while loop uses a condition to print numbers and update a counter, exiting via a false condition or break to avoid infinite loops.
Explore how range controls loop iterations with start, end, and optional step values, demonstrating end-exclusive behavior, forward and backward sequences, and the effects on printed numbers.
Explore Python loops using range and while to print 0 to 99, 1 to 100, and count down from 100 to 1 with a minus one step.
Learn how to use lists in Python to store multiple items, access elements by index, and iterate through a list. Master common list functions and build confidence as you learn.
Explore Python lists as a data type that holds multiple values, including integers, strings, and nested lists. Print lists, measure length, and test membership using in.
Learn how to access, modify, and slice list elements with zero-based indexes, including negative indices for the end, and understand that lists are mutable in Python.
Learn how to modify Python lists using append, extend, insert, remove, pop, clear, delete, and reverse, with examples of plus operator for concatenation and handling uppercase and lowercase letters.
Loop through a list to print each element using a for loop and range, and access elements by index from zero to four, including a reversed order example.
Create and print lists in Python with square brackets, including letters and numbers, then sort, append, index, and slice to access elements.
Learn how to reuse code by placing blocks of code inside functions, call a function multiple times, and pass data to and receive data from a function.
Learn how to define a function in Python, name it, use parentheses and a colon, indent the code, and print output like hello.
Call the print function in Python by writing its name followed by parentheses to produce hello; call it multiple times to repeat the result.
Learn how a function receives and prints values by passing arguments as parameters, including multiple arguments, and how parameter names can differ from local variable names.
Learn how functions return values, assign results to variables, and print outcomes, illustrated by returning a string and doubling a number through function calls.
Define a function named average speed, pass distance and time, and return distance divided by time to compute speed; print the result in miles per hour with context.
Discover how computers use binary numbers and zeros and ones to encode text, sound, images, and videos, foundational for digital media processing.
Explore how computers use bits and bytes to represent information, with on/off states forming true or false, and how sequences double to a byte of eight bits containing 256 values.
Explore how binary numbers use base two, with columns as powers of two, convert 1001 to 9, and grasp that 8-bit bytes range from 0 to 255.
Explore how bit width limits numeric range, causing overflow and rounding in floating point numbers, and how sign bits constrain integers, as shown by six bits representing up to 31.
Convert letters and digits to binary using a shared code like ASCII, enabling translation to lowercase, uppercase, and punctuation. Explore Unicode and UTF-8 to support many languages and more characters.
Convert binary data to sound by sampling analog waveforms into numbers at high sampling rates and suitable bit depth, enabling seamless playback of music and speech.
Explore how binary data becomes images by encoding pixel colors with red, green, and blue values from 0 to 255 using hexadecimal color codes.
Explore how compression reduces image and video data with lossless methods like run-length encoding, Huffman coding, and LZW, and lossy methods that average colors in pixel blocks.
Explore how the internet works and the role of networks, and learn practical basics you use every day online.
The internet is a vast interconnected network of networks that sends data packets through layered protocols, originating from ARPANET and supported by internet backbones and service providers.
Explore local and wide area networks, their star, ring, and bus topologies, devices and cables, and how bit rate, latency, and bandwidth shape data over copper, fiber, and wireless links.
Explore how IP addresses send data by turning into numbers, compare IPv4's four 0–255 parts with IPv6's expanded format, and see the hierarchical structure.
Explore how data packets are routed across the internet using headers and ip addresses to reach destinations, with fault tolerance through multiple paths and avoidance of single points of failure.
Explore how internet protocols manage data integrity and delivery, comparing UDP and TCP, their headers, ports, checksums, and features like sequence numbers, acknowledgments, retransmission, and the 3-way handshake.
Explore how the internet stacks protocols from the physical layer to the application layer. See how DNS translates URLs into IPs, and how HTTP/HTTPS, TLS, and Ethernet deliver pages.
Explore programming concepts using the syntax of pseudocode to prepare for the Computer Science Principles exam and apply pseudocode techniques.
Explore pseudocode basics, showing how to display numbers and strings with double quotation marks, differences from Python, arrow notation for variables, and operators like addition, subtraction, multiplication, division, and modulo.
Explore strings, string literals, and the distinction between Python and pseudo code; learn substring, concat, and slice operations, plus string and numeric procedures like abs and constants like pi.
Explore how if statements work in pseudo code, including condition syntax, comparison operators, and if else with not, and, or, and nested forms.
Explore core coding concepts like loops (for, while), lists and indexing, and list manipulation (swap elements). Compare procedures with functions, and note how pseudo code parallels Python.
Learn core computer science and practical python programming skills aligned with the AP CSP curriculum. This includes foundation pseudo code, logic, and computer science concepts essential for understanding the AP exam topics. Ideal for beginners seeking a strong start.
This course will teach you the basics of programming in the python programming language and computing in line with the syllabus of the Advanced Placement Computer Science Principles (AP CSP) course which introduces students to the breadth of the field of computer science.
Decades of experience teaching at schools and Universities across the world have allowed us to perfect a successful approach to teaching programming to students of different ages, background and abilities. You will have access to simple videos that introduce the essential python concepts, and practical exercises so that you can gain and improve your coding skills.
We will cover the essentials of the Python language such as operators, variables, data types, conditionals, loops, basic data structures including lists, and functions.
The areas of Computer Science includes an introduction to the world of digital media and how computers work, the Internet and networks, data analysis, data security and programming areas such as pseudo code, logic and algorithms. These areas are essential for the AP CSP Exam.
The course was designed to be clear and suitable for beginners, using simple language so all learners can understand, with captions (subtitles) if required.
You have found the right place to learn, take this opportunity and start now.