Your browser is not supported. Please upgrade your browser to one of our supported browsers. You can try viewing the page, but expect functionality to be broken.
Learn the fundamentals with our self-paced courses
Express course
A great option for students getting started on their own. You'll learn the fundamentals of computer science with drag & drop blocks. Create your own drawings and games. Note: Express courses are currently only available in English, Hindi, Italian, and Spanish. For other languages, we recommend our 20-hour
Accelerated Course.
To see what's available in your language, visit our
course catalog.
Programming Modules for older students
Adapted from our CS Discoveries and CS Principles courses, these short, self-paced modules for middle and high school students are a great way to learn concepts that span all programming languages and tools.
Introduction to Game Lab
Program animations, interactive art, and games in Game Lab. Start off with simple shapes and build up to more sophisticated sprite-based animations and games, using the same programming concepts and the design process computer scientists use daily. In the final project, you’ll develop a personalized, interactive program.
Ages 13+.
Turtle Programming in App Lab
Begin working in App Lab where you’ll use simple JavaScript commands to draw shapes and images using a virtual “turtle.” Learn to break down big programming problems into manageable pieces. Design and program your own digital scene!
Ages 13+.
Event-Driven Programming in App Lab
Program in the JavaScript language using App Lab. Learn to design apps that respond to user interaction like clicks and key presses. Create a series of simple applications (apps) that live on the web!
For middle and high school students.
Make your own apps, games, and webpages
Videos: Watch these easy 3-5 minute educational videos
Introducing How AI Works
How AI Works: With an introduction by Microsoft CEO Satya Nadella, this series of short videos will introduce you to how artificial intelligence works and why it matters. Learn about neural networks, or how AI learns, and delve into issues like algorithmic bias and the ethics of AI decision-making.
How Computers Work: With an introduction by Bill Gates, this series of six short videos is designed to be approachable for everyone and easy to understand. The series explains what makes a computer a computer, how digital information is represented in 1s and 0s, how computer circuits work to manipulate digital information, and how a central processing unit (CPU) and operating system control the inputs, outputs, memory, and hardware of a computer.
How the Internet Works: This series of eight short videos features Vint Cerf, the inventor of TCP/IP, David Karp the founder of Tumblr to explain HTTP and HTML, Google's "Security Princess" to explain SSL and cybersecurity, and engineers from Microsoft.
CS Discoveries is an introductory course for 6-10th grade students that can be flexibly taught as a single semester, two semesters over multiple years, or as a full year course. Mapped to CSTA standards, the course takes a wide lens on computer science by covering topics such as problem solving, programming, physical computing, user-centered design, and data, artificial intelligence, and machine learning, while inspiring students as they build their own websites, apps, games, and physical computing devices.
Computer Science Principles (intro and AP course)
Designed for 9 - 12 grade students, CS Principles introduces students to the foundational concepts of computer science and challenges them to explore how computing and technology can impact the world. This year-long course can be taught as an introductory course and as an AP course - no prerequisites required for students or teachers new to computer science! CS Principles complements CS Discoveries with a deeper focus on concepts such as how the internet works and the societal impacts of computer science.
Computer Science A (CSA) introduces students to software engineering and object-oriented design while learning the Java programming language. The Code.org CSA curriculum is recommended for any high school student who wants to continue their computer science education after completing an introductory course, such as CS Principles or CS Discoveries. Students expand their programming skills by developing solutions in the Java programming language, building on the knowledge they acquired from their previous introductory computer science course.
Courses from 3rd parties
Partner tutorials that work on older systems
These should work on older Web browsers. To access all tutorials, upgrade to a modern Web browser.
With Scratch, you can create your own interactive games, stories, animations — and share them with your friends. Get started by animating your name, creating a holiday card, or making a pong game.
Create interactive games, stories, and animations.
Codecademy is an interactive, student-guided introduction to the basics of CS through JavaScript that's used by tens of millions of students around the world. We've prepared a no-hassle Hour of Code experience with accompanying quizzes, slides, and a completed project for students at the end.
Learn JavaScript programming, in a web-browser
High school | Modern web browsers. iOS, Android apps
With Scratch, you can create your own interactive games, stories, animations — and share them with your friends. Get started by animating your name, creating a holiday card, or making a pong game.
Create interactive games, stories, and animations.
Entertaining, quick video tutorials walk you through building three simple apps for your Android phone or tablet. Designed for novices and experts alike, this hour of code will get you ready to start building your own apps before you know it. Imagine sharing your own app creations with your friends! These activities are suitable for individuals and for teachers leading classes.
Tynker makes it fun & easy to learn programming. It makes it visual. Kids build games and mobile apps by arranging blocks of code. It removes the need to know programming syntax. Kids transform ideas into animated stories and math art right away. It promotes progressive learning. As kids learn fundamentals, Tynker introduces more advanced concepts including syntax driven programming.
A fun and engaging course for children in grades 4-9
Student-guided tutorial on the iPad using the Hopscotch programming language. Students will build games and apps for their iPad on their iPad. Students can work individually or with friends (up to 3 per iPad).
Learn how to use HTML and CSS to make webpages. Through a series of interactive challenges and projects, you'll learn how to use HTML to create headings, lists, tables, and more, plus use CSS to change the color, font, and layout of your page.
Learn how to use HTML and CSS to make webpages. Through a series of interactive challenges and projects, you'll learn how to use HTML to create headings, lists, tables, and more, plus use CSS to change the color, font, and layout of your page.
Build an interactive pizza web application using Blazor, C#, and ASP.NET Core on your computer with free developer tools! Through this learning path, you'll see the structure of a web application, learn how to interact with your pizza data, and so much more. At the end of this tutorial, you'll know how to build fully functioning web applications and may even be able to build a website for your local pizza place.
Build an interactive pizza web application using Blazor, C#, and ASP.NET Core on your computer with free developer tools!
Enable your students to learn the basics of HTML and CSS by making delicious treats in a virtual bakery competing with Supreme Chef Horus for best honors. Our self-directed, fully immersive and fun micro-lessons and exercises using story rich videos and real world problem solving will teach and engage your students for hours with just a facilitator to help move them along.
Enable your students to learn the basics of HTML and CSS by making delicious treats in a virtual bakery.
Students learn the basics of programming by controling their own virtual robot. The online course is fully self-contained with short presentations, movies, quizzes and automatic guidance/hints to help with the programming exercises.
Learn Python 3 for free with this interactive course, and get a handle on the most popular programming language in the world. Join us on an interactive journey through the syntax and functionality of Python. Fun quizzes and coding challenges are included.
Learn Python 3 for free with this interactive course, and get a handle on the most popular programming language in the world
Learn how to code, create, and build web applications, from the foundations of object-oriented programming in C and C++, to how to write Java. Our developer tutorials can help you learn to develop and create mobile apps, work with PHP and MySQL databases, get started with the statistical processing language R, and much more. [Note: payment is required]
Codesters is built for teaching coding in schools. Our project-based lessons ensure that students learn core coding skills while they create engaging, interactive programs. Our unique coding environment makes text-based coding easy and accessible for students in middle grades – even those with no block-coding experience. And Codesters eases the burden on teachers by providing built-in course management, automatic feedback, lesson plans, and more.
Codesters is built for teaching coding in schools. Students learn core coding skills with project-based lessons and our unique text-based coding environment. We provide built-in course management, lesson plans, and more for teachers.
Learn Python, the most popular programming language for AI, Data Science, and many other applications. The Create & Learn Python for AI course covers the basics of Python programming, incluing elements relevant to AI.
Learn Python, the most popular programming language for AI, Data Science, and many other applications.
Have fun and make games, or hack your homework using Ruby! Just tell your parents or teachers you're learning Ruby programming... ;). Free and works on any computer. [Note: Desktop install required]
Whether you've never seen a line of code or you code for a living, Udemy has a course for you, taught by professional instructors. [Note: payment is required]
An introductory course using the programming language Python for people with no programming experience. Our unique mix of introductory content and challenges will bring you to a thorough understanding of Python and programming itself. We've taught this content to students of varying ages from diverse backgrounds and we're sure it'll suit you too.
Student-guided tutorial on the iPad using the Hopscotch programming language. Students will build games and apps for their iPad on their iPad. Students can work individually or with friends (up to 3 per iPad).
Create your own game on your smart phone with Pocket Code! Help skydiver Steve to deliver his parcels. You can share it with friends and other users to try!
Create a game on your smartphone and share with friends to try!
Cargo-Bot is a puzzle game where you teach a robot how to move crates. Sounds simple, right? It features 36 fiendishly clever puzzles, haunting music and stunning retina graphics. You can even record your solutions and share them on YouTube to show your friends.
The micro:bit is a fun, handheld, easily programmable computer that uses a web browser to program in blocks, JavaScript or Python. The free, built-in web simulator allows students to run their program with or without connecting to a micro:bit. Simplicity and ease-of-use make micro:bit perfect for beginners while also having advanced features for experienced programmers and makers.
The micro:bit is a fun, handheld, easily programmable computer that uses a web browser to program in blocks, JavaScript or Python.
Build and code with the ultimate playful learning experience. The endless flexibility of LEGO bricks and the open-ended nature of our curriculum and coding software allows students to explore and develop their ideas as far as their curiosity will take them. We empower teachers with the tools for creating and delivering the most engaging lessons in STEM for every student.
The Finch Robot makes coding tangible in many programming languages ranging from Kindergarten to College-level computer science. The Hummingbird Robotics Kit is comprised of lights, sensors and motors, allowing students to build a robot out of any materials. Both of these products empower students to take ownership of their technical and creative skill sets and engage in flexible problem-solving activities.
Both the Finch Robot and the Hummingbird Robotics Kit empower students to take ownership of their technical and creative skill sets and engage in flexible problem-solving activities.
Designed to inspire curiosity, creativity, and invention through connected play and coding, SPRK+ is far more than just a robot. Powered by the Sphero Edu app, you can easily learn programming, complete hands-on activities, and share your creations with the community. Learning is evolving. Get on the ball.
SPRK lessons give kids a fun crash course in programming robots while sharpening skills in math and science.
Dash & Dot are robots that help kids learn the fundamentals of problem solving and coding while having fun. Download our four free iPad apps to control the robots. Use Path to learn basic sequencing and Blockly to start creating programs for Dash & Dot. Create programs for the robots to deliver a message for you, transform into a creature, and follow you around!
Dash & Dot are robots that help kids learn the fundamentals of coding.
Ozobot is the tiny robot that makes coding and computer science fun and easy to learn. Choose from a wide variety of STEM lessons and activities ranging from kindergarten to high school grade levels. Whether your students are novices or experts, Ozobot will keep them engaged for hours of learning and fun. Not an experienced programmer yourself? Not a problem! Simple instruction guides, how-to videos and introductory lessons will make you an Ozobot expert in no time!
Ozobot is the tiny robot that makes coding fun and easy with extensive resources for grades K-12.
Kano is the best solution for demystifying technology whether at home or at school - with exciting hardware kits, an engaging and intuitive learn-to-code platform, and full curriculum support. Kano kits bring coding to life in the physical world - build computers, visualize music with exciting pixel light displays, and make games that respond to motion.
Kano's hardware kits, learn-to-code platform, and full curriculum support bring coding to life in the physical world. Build computers, visualize music with exciting pixel light displays, and make games that respond to motion.
Elementary + | Modern web browsers; Robot purchase