Introduction to Python

Interested in learning programming with a general-purpose language? The Introduction to Python course is specially designed for programmers with little or no previous coding experience.

To take the course, go to Learn ⟶ Browse Courses and choose Introduction to Python from the list.

Find more details in the course's Quickstart Guide

Apache Beam Katas

Beam Katas is a course that provides a series of structured hands-on lessons to get started with Apache Beam. Solve exercises of gradually increasing complexity and get experience with all the Apache Beam fundamentals such as core transforms, common transforms, and simple use cases (word count), with more katas on the way.

To begin the course, go to Learn ⟶ Browse Courses. Search for Beam Katas, and once the course is loaded into the IDE, you’re good to go.

Algorithmic Toolbox

Algorithmic Toolbox by Coursera is a part of the Data Structures and Algorithms specialization. The course covers basic algorithmic techniques and ideas for computational problems arising frequently in practical applications: sorting and searching, divide and conquer, greedy algorithms, and dynamic programming.

Go to Learn ⟶ Start Coursera Assignment and select Algorithmic Toolbox.

CheckiO Integration

CheckiO is a programming learning platform and a gamified website that teaches Python through solving code challenges and competing for the most elegant and creative solutions.

You can now perform CheckiO missions right inside PyCharm Edu and have the IDE assist you every step of the way.

To take the course, go to Learn ⟶ Browse Courses and choose Py CheckiO from the list. Your progress is synchronized and the IDE automatically updates the list of missions based on it.

Hyperskill Integration

The first member of JetBrains Academy’s learning experience is Hyperskill, a project-based learning platform.

Project-based learning

Go beyond lectures — learn by developing. Challenge yourself to integrate all that you’ve learned into applications. Experience actual development on top of essential computer science knowledge.

Knowledge Map

Explore new topics and projects that become available to you as you learn. Use the Knowledge Map to track your progress and to navigate between topics.

JetBrains integration

Master professional tools to ease your transition into a future developer. Enjoy full integration with the JetBrains IDEs while working on your projects.

Find more info on the JetBrains Academy page

Please note that the courses are currently in Beta. Stay tuned for upcoming improvements and share your feedback in our tracker or twitter.

Integration with Stepik

Stepik is a learning management and MOOC platform, which can be used by an educator to share courses with you privately. Stepik has a lot of public courses available, which you can access from your IDE.

Progress synchronization

If you like learning the theory lessons on Stepik but prefer to do the coding exercises in the IDE – you don't need to worry about losing your course progress. All your progress is synchronized between the platforms.

Importing more courses

You can import any course from Stepik that has programming tasks, which you can solve right inside the IDE. You can easily switch back-and-forth with Stepik any time you want.


massive open online courses (MOOCs) and small private online courses (SPOCs) hosted on Stepik

60 000 000

solved asignments submitted by Stepik learners

Professional Environment

Productivity features such as smart code completion, code inspections, a visual debugger, and more not only boost your learning productivity, but later help you switch easily and seamlessly to other JetBrains tools.

Enjoy a fine–tuned workspace

Feel more at home with your IDE and help yourself stay focused and avoid distraction, with customizable color and keyboard shortcut schemes, and all the look-and-feel settings you need for productive development.

Learn faster with a smart editor

Take advantage of language-specific syntax & error highlighting to help you avoid code mistakes. Learn how to style your code right with the code formatting, and don't ever get stuck thanks to code completion and quick documentation.

Run & debug your code

Run your code to be sure everything goes right. Use the powerful debugger with a graphical UI to find out what went wrong—set breakpoints, run your code step by step and have all the information available to you at your fingertips.