Your next step

Programming Courses

Choose a language, learn a skill or follow a career path. Beginners welcome.

Question 1 / 3

What interests you most?

3 questions · no sign-up
Found: 28
ProfessionNew

TypeScript

Learn to make JavaScript code easier to maintain with types, interfaces and generics. Work through functions, classes, modules and practical TypeScript patterns.

9 modules
ProfessionNew

Java developer

Build a foundation in Java, from your first console program to classes, inheritance, files and collections. Follow a structured path through data, conditions, loops and methods.

10 modules
SkillNew

Build a Telegram bot with Python

Work through the creation of a Telegram bot in Python step by step. A focused skill course built around this practical task.

1 module
Skill

Python interview questions

Review common Python interview questions and the concepts behind them. Use this focused skill course to structure your preparation.

1 module
Skill

Python interview exercises

Work through coding exercises that can appear in Python interviews. Combine explanations with practice as you explore the tasks.

1 module
ProfessionNew

C++ developer

Start with C++ fundamentals and progress to classes, inheritance, polymorphism and modern memory management. Practise working with conditions, loops, arrays, functions and structures.

9 modules
Course

Go

Set up your Go environment and write your first program. Learn variables and types, conditions, loops, arrays and slices through the course modules.

5 modules
Profession

Backend developer

Explore server-side development with JavaScript, Express and SQL. Learn how application logic, asynchronous code and databases work together.

8 modules
CourseNew

JavaScript

Make web pages interactive with JavaScript. Learn conditions, loops, arrays, functions and objects, then work with the DOM and events and complete a mini-project.

9 modules
CourseNew

Lua

Discover the fundamentals of Lua scripting: conditions, loops, tables and functions. Put the concepts together in the final test and mini-project.

6 modules
CourseNew

Kotlin

Get to know Kotlin through conditions, loops, functions, lists and classes. Learn how null safety helps you handle missing values in your programs.

8 modules
Skill

Writing readable Python code

Explore a guide to writing Python code, from the basics to a clear and readable style. Focus on how your code is written, not just what it does.

1 module
Skill

Algorithms

Understand what algorithms are, where they are used and how to apply them in programming. A focused introduction to thinking through a sequence of steps.

1 module
Skill

Passwords and encryption

Learn how passwords work, why encryption is used and how these ideas relate to protecting your data. An introduction to the concepts behind everyday digital security.

1 module
Profession

Python developer

Develop Python skills step by step: control flow, lists, functions, data structures and object-oriented programming. Learn to use modules and work with APIs.

9 modules
Course

CSS

Learn to style web pages with CSS. Explore selectors, text styling, layouts and responsive design, then apply what you learn to a website.

6 modules
Profession

Frontend developer

Learn to build web interfaces with HTML, CSS, JavaScript and Vue. Move from page structure and responsive layouts to components, routing, state management and APIs.

13 modules
Course

HTML

Build the structure of a web page with HTML. Learn tags, tables, images, forms, semantic markup and metadata, then create a blog as your course project.

8 modules
Course

Python

Learn Python fundamentals, functions, modules and data handling. Explore objects and exceptions, then put your knowledge to work in a to-do list and a calculator project.

9 modules
Course

C#

Start programming in C# with variables, data types, operators and strings. Practise decisions, loops and methods before moving on to the practical module.

8 modules
Course

PHP

Explore PHP for server-side web development. Learn syntax, functions and arrays, then work with forms, files, databases, objects, sessions and cookies.

12 modules
Course

Generative AI

Learn to work with generative AI, from everyday interactions to prompt engineering and automation. Explore practical uses and more advanced applications of AI tools.

5 modules
Course

Git

Learn version control with Git. Practise essential commands, branches and remote repositories so you can keep track of changes and work with your code history.

5 modules
Course

SQL

Learn to query and organise relational data with SQL. Work with tables, filters, aggregate functions, joins and subqueries in a structured sequence.

6 modules
Course

Dart

Build a foundation in Dart with control flow, functions and collections. Learn the core ideas of object-oriented programming in the language.

5 modules
Course

Flutter

Learn to build mobile interfaces with Flutter. Explore widgets, state and routing, forms, native features, media and animation, with a module on publishing.

7 modules
Course

C++

Get started with C++ through data types, conditions, loops, arrays, pointers and functions. A focused introduction to the core building blocks of the language.

4 modules
Profession

QA engineer / software tester

Learn how to test websites, mobile apps and APIs. Explore test design, documentation, tester tools and SQL, then prepare for interviews and a final project.

10 modules