JetBrains Debuts PyCharm Educational Edition

If you’ve ever wanted to learn Python programming, get ready to be blown away.

Today we’re launching the free and open source PyCharm Educational Edition for students and teachers. This easy-to-use yet powerful Python IDE includes special interactive educational functionality to help novice programmers learn the craft and turn professional quicker than ever before! It combines the easy learning curve of interactive coding platforms with the power of a real-world professional tool.


Why PyCharm Educational Edition?

We all know that computer programming studies are one of today’s major global trends, driven by open-access, non-credit education. Python has long been used for educational purposes and is now the most popular language used to teach programming for beginners. We decided to create this new educational IDE, because we at JetBrains PyCharm, being a part of the Python community, are committed to providing quality, professional, seamless solutions for learning programming with Python, keeping the needs of both novice programmers and educators in mind.

What is so special about PyCharm Educational Edition?

In designing this tool we have been inspired by Guido van Rossum, the creator of the Python programming language, who said:

guido“We believe that there should be no clear-cut distinction between tools used by professionals and tools used for education—just as professional writers use the same language and alphabet as their readers!”

PyCharm is a professional tool recognized among professionals all around the globe. At some point it occurred to us that, with some work, its power could also be harnessed to serve educational purposes.

We analyzed educational trends and tools on the market carefully. To understand what should be improved in PyCharm and how to make it the best educational IDE possible, we polled hundreds of instructors from different universities all around the world.

We found out that there are two opposite approaches to learning programming. One is based on using interactive online educational platforms and editors, which are extremely easy to start with. Despite an easy learning curve, these are not real development tools, and once you get used to them it may be difficult to switch to a real development environment and develop something real. The other approach is centered around real code editors and IDEs tools. While advanced, they are often too complex for beginners. Instead of learning programming, you must invest considerable efforts and time just into understanding how the tool works, before actually learning the essentials of programming.

PyCharm Educational Edition aims to combine both these two worlds. We’ve made it easy to get started with, not intimidating, yet powerful enough to guide you all the way through to becoming a professional developer.

All the learning you need, for FREE

freePyCharm Educational Edition is absolutely free and open-source. Novice programmers can download and use it for educational or any other purposes—for free. Instructors and course authors can use it to create, modify and share their own courses.

Included are learning essentials like an integrated Python console, Debugger and VCS, along with unique educational features such as “fill in the missing code” exercises, intelligent hints, checks, smart suggestions, code auto-completion, and much more.

So, what’s inside, besides the PyCharm Community Edition?

  • Special new Educational project type. From a student’s point of view, an Educational project is like an interactive course that includes tasks and files for editing, and a Check button that gives instant feedback and scores your assignment. With this type of project, teachers can create courses or assignments with lessons and tasks, create exercise code, define expected results, write tests that will work in the background. In particular, they can employ the “fill in the missing code” educational technique where you ask a student to insert the correct code in an already existing code sample.
  • A greatly simplified interface to make the learning curve as easy as possible. The advanced tools are hidden by default and may be activated as you progress.
  • On Windows, Python is installed together with PyCharm, with no additional installation required. Linux and Mac OS installers automatically detect a system interpreter. All you need to start learning is just to install PyCharm.

Possible Applications

possiblePyCharm Educational Edition can be used in MOOCs, self-studying courses or traditional programming courses. In addition to going through interactive courses, you can also use normal Python projects and the integrated Python console, as well as the debugger, VCS, and everything else that PyCharm already offers.

What to do next?

Don’t wait any longer — download PyCharm Education Edition for your platform and start learning Python programming today!

For more details and learning materials, visit the PyCharm Educational Edition website and check the Quick Start guide to get rolling. Or, for a quick visual overview, watch this introductory video:

Then, get involved:

Read our blog to stay tuned for news, updates and everything that goes on with PyCharm Educational Edition. And do give us feedback on how we’re doing.

Did you know?
JetBrains recently launched the Free Student License program. With this program any student or educator can use any JetBrains product for free!

Develop with pleasure!
JetBrains PyCharm Team

About Dmitry Filippov

Product Marketing Manager at JetBrains
This entry was posted in Release Announcements and tagged , , . Bookmark the permalink.

23 Responses to JetBrains Debuts PyCharm Educational Edition

  1. Oskar Lyrstrand says:

    Hi, and thank you for this beautiful contribution!

    I’m just wondering, because I’ve been learning for a while using Python 2.7 and Powershell. It seems PyCharm uses a later version, can I have both? Or do I need to uninstall something? I’m on Windows 8, and I don’t know if im ready to jump to latest version of Python, having a Django-project on 2.7.

    • Oskar Lyrstrand says:

      Thank you for not replying. Must be a really hard question.

    • Dmitry Filippov says:

      Hi Oskar,

      sorry for the late reply.
      Regarding your initial question:
      You can have both Python 2 and 3 installed on your system. You don’t have to uninstall anything. You can continue working on your Django projects with Python 2.7 while developing some new projects with the latest version of Python – Python 3.4. By the way, PyCharm works with both Python 2 and 3.

  2. joseph says:

    Edu edition is great to make available a great tool to students

  3. Tony says:

    This is really cool, thanks for releasing such a nice tool focused on education. One thing I’m curious about and can’t really see a clear answer on from using the tool and looking at the site, can the educational version support remote python interpreters?

    There’s a really good use case for this in education with small Linux development boards like the Raspberry Pi. It’s quite painful for beginners to learn how to develop python code for these systems because they need to either develop on the board itself (using simple editors or not very full featured web-based IDEs), or learn how to write code on their system and copy it over to the board to run.

    Having support for writing Python code and remotely running it on a Raspberry Pi, BeagleBone Black, etc. all from inside the educational IDE would be fantastic. Add to that the ability to write educational lessons that walk beginners through how to use the hardware features of the board with Python and it would be something truly amazing. Just wanted to throw this question out there in the hopes that maybe there’s a way to get this kind of remote development support available in the education version if it isn’t possible already. Thanks!

    • Dmitry Filippov says:

      Hi Tony, thank you for this nice feedback and valuable suggestions on how we can improve PyCharm Educational Edition.
      Answering to your question: PyCharm Educational Edition is based on PyCharm Community Edition and has a similar feature set.
      Unfortunately it doesn’t support any remote development capabilities. The only way is to use the integrated local terminal to access remote hosts with ssh or whatever manually.
      We’re considering to expand this educational functionality to PyCharm Pro as a separate plugin. PyCharm Pro has the remote development support so it will probably be a solution in your case. Thanks for the feedback anyway.

      • Peter says:

        I would like to second Tony’s comment. I run a Raspberry Pi club at a local school, and would really love for the students to be able to use a decent editor like PyCharm. I know that the school would not be able to afford buying the pro edition (they balk at buying LEDs) for the students, so it would be great if the educational edition could be able to be linked up to a Raspberry Pi.

        Best regards


  4. Pingback: JetBrains Debuts PyCharm Educational Edition | Ideas for Teaching Computer Technology to Kids

  5. Pingback: Learn Python With PyCharm Educational Edition « adafruit industries blog

  6. Austin Cory Bart says:

    Hi! I’m an instructor/research using Python to teach a non-majors course this semester. We’re currently using Anaconda+IDLE, and it’s been a mess. We wanted Anaconda because we use an extensive number of packages (Matplotlib, nltk, and many custom ones that we’ve created!); we wanted IDLE because we wanted a simple editor that didn’t expose complexity to students. Everything works pretty well on Windows, but the version of TCL/TK that ships with Anaconda is busted on Mac 10.9, so we’ve had to go back and manually install python+packages. And as I’m sure you’re aware, IDLE is barebones but terrible.

    So I’ve been extremely hopeful about pycharm educational edition. However, I don’t know that it’s ready for our use cases in the spring. I’ve tried to list my fears and reactions below, although it’s a little stream of consciousness. For reference, I’ve booted up a new project and it looks like this on my computer (
    * I’m a little worried about “Refactor”, “VCS”, etc. being visible to the students this early on. I really love the idea of having fewer icons/commands available up front, and then expanding what students see as we go on. The Racket Lang gang uses this gradual reveal for their language, and it seems a great way to scaffold the learning experience.
    * I haven’t been able to figure out the debugger – I expected to be able to press the debug button and use it to step through my program, visualizing its state a la the Online Python Tutor ( Instead it seems I have to use Breakpoints? I don’t think I’m stupid or anything, but I feel like this is a little more than my students are ready to handle.
    * The windows version comes with its own python version (or it can find an existing one), which seems good. How do I add more packages? I need to install 5-7 packages for my students, and I don’t want them to do the usual process of “Here’s the list of python installers from Gohlke, I hope you know your version of Python and whether it’s 64/32 bit.”
    * The mac version uses the system install. Well, I’ve been told that’s typically out of date, and won’t have the packages I need either. Is there any chance of a stupid-easy package manager and the option to bundle it with certain packages? I really just want to be able to send my students a list of packages, and have them magically installed on their computers with no fuss.
    * I do want to compliment you on the “classes” idea – this is brilliant, and I really want to leverage it in my course. We have an online textbook with interactive components (based on the Runestone “Interactive Python” platform), but we didn’t have a way to move from the internet to the desktop, and the class seems like the way. Is there a way for me, as an instructor, to create my own classes? And, this is even more wishful thinking, is there a way to have the “class” report success/files back to my online server? If I could set up the environment to automatically send me completed classwork, or even ping me (i.e., a given URL) on a success, it would be amazing for my bookkeeping.

    In the long run, I really want:
    * A simple editor (that can scale into a professional one – my students know that IDLE is a child’s toy)
    * Installing Python if it’s not on the file system, or using my existing one if it is; but always give me the choice of installing the latest version of Python.
    * Handling package management in a way that even a 5-year-old could do it.
    * Allow the coder to step through the program and reveal the current value of variables (bonus points for contextualized rendering: e.g., long lists are collapsed and can be viewed in a separate window, images are rendered, etc.).
    * Extra bonus points: I can have student’s IDE’s report data/files to my special course server software via REST – perhaps as some python code that gets run when a student is using your “course” software.

    I really want to compliment you guys – this is a great step to be making. Python has become a fantastic tool for education, but IDEs still aren’t being built around the needs of a classroom. I’m really glad you guys are stepping up to this challenge!

    • ktisha says:

      Hi Austin Cory Bart,

      thanks a lot for the review and suggestions!

      > I’m a little worried about “Refactor”, “VCS”, etc. being visible to the students this early on.

      Any menus could be hidden using Settings->Appearance&Behaviour->Menus and Toolbars now. It’s definitely not the best way so we are considering the way we can simplify this but keep features discoverable.

      > I haven’t been able to figure out the debugger
      I really like the idea so I created an issue in our tracker — EDU-291.

      > The windows version comes with its own python version (or it can find an existing one), which seems good. How do I add more packages?

      We have an embedded pip package management in Settings->Project Interpreter. Unfortunately, it’s not possible to install everything using pip at the moment so it’s time for PyCharm to look at the package management closely.

      > Is there a way for me, as an instructor, to create my own classes?
      Yes, please check out this article.

      Please, note, it’s possible to make your course available publicly for other educators and students(

      > And, this is even more wishful thinking, is there a way to have the “class” report success/files back to my online server?
      Not in this version. We think it’s very important feature and we are moving this way.

      Any other suggestions and bug reports are welcome in our tracker.

  7. Pingback: Take (or design!) Programming 101 with PyCharm Educational Edition 1.0.1 | JetBrains PyCharm Blog

  8. gazebos nj says:

    So nice to find somebody with original opinions on this topic.

  9. Your blog was invaluable for me. Thanks!

  10. Michal Pravda says:


    I am an experienced programmer new to Python and PyCharm. I’ve tried to run a “winning course” for logging. PyCharm is so far wonderfull, but I’ve got two issues with it.

    1. Although I have downloaded the source from github in about a minute, I spent about an hour trying to “run” the course. The point was (that I finally googled at your page for course creators) that I was trying to “open a project” or create a new one from a location but always overlooked line “courses” at creating a new project wizard with its threedots to actually “load to run” a course. So I was always opening the source code of the course instead of the course.
    Educational project IMO should have in its context menu a “run option” to try the course or some similar way to open a course other than little box in create project wizard.

    2. While trying the course I almost immediately failed at second task.
    It requires:
    logging.basicConfig(set default logging level)
    I tried:
    logging.basicConfig(level = logging.DEBUG)
    and a correct solution is:

    The course engine should ignore insignificant whitespace diferences.

  11. devarshi says:

    hi there!
    i’m new to programming. i bought a raspberry pi 2 B+ recently, n hv started learning python on it. i was referring a book for the same reason. the book said that it was recommended that i use an editor like pycharm for my coding n stuff. so i landed up here looking for pycharm. i downloaded pycharm for linux, but wen i started extracting it it showed an error dialog box. i’ve been working on the default text editor on my pi as of now. please help!

    • Dmitry Filippov says:


      -Copy the pycharm-*.tar.gz to the desired installation location
      (make sure you have rw permissions for that directory)
      -Unpack the pycharm-*.tar.gz using the following command:
      tar xfz pycharm-*.tar.gz
      -Remove the pycharm-*.tar.gz to save disk space (optional)
      -Run from the bin subdirectory
      NOTE: PyCharm on Linux doesn’t need special installation or running any installation script. It runs out of the pycharm-*.tar.gz

  12. Pingback: Week 44 | import digest

  13. Pingback: PyCharm Educational Edition ~ Solusi Jetbrains Untuk Media Pembelajaran Python | POSS UPI

  14. Predrag Milicevic says:

    After installing Oracle Java on Raspberry Pi, PyCharm is crashing.

Leave a Reply

Your email address will not be published. Required fields are marked *