Education News

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

Comments below can no longer be edited.

23 Responses to JetBrains Debuts PyCharm Educational Edition

  1. Avatar

    Oskar Lyrstrand says:

    October 31, 2014

    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.

    • Avatar

      Oskar Lyrstrand says:

      November 5, 2014

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

    • Avatar

      Dmitry Filippov says:

      November 5, 2014

      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.

      • Avatar

        Oskar Lyrstrand says:

        November 5, 2014

        Thank you for the late reply! 😉

  2. Avatar

    joseph says:

    November 5, 2014

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

  3. Avatar

    Tony says:

    November 6, 2014

    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!

    • Avatar

      Dmitry Filippov says:

      November 7, 2014

      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.

      • Avatar

        Peter says:

        December 10, 2015

        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. Learn Python With PyCharm Educational Edition « adafruit industries blog says:

    November 7, 2014

    […] JetBrains recently released a free version of their PyCharm python development environment focused on education and learning.  The tool provides a simpler Python development environment for beginners, and adds support for guided lessons that teach Python programming.  If you’re an educator you can even use the tool to develop your own Python lessons.  This could be a great resource if you’re learning or teaching programming.  Find out more details from the blog post introducing it: […]

  5. Avatar

    Austin Cory Bart says:

    November 10, 2014

    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!

    • Avatar

      ktisha says:

      November 13, 2014

      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.

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

    December 30, 2014

    […] couple of months ago we announced the first version of PyCharm Educational Edition. Thousands of downloads and heaps of valuable […]

  7. Avatar

    gazebos nj says:

    January 2, 2015

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

  8. Avatar says:

    January 2, 2015

    Your blog was invaluable for me. Thanks!

  9. Avatar

    Michal Pravda says:

    May 21, 2015


    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.

    • Avatar

      Dmitry Filippov says:

      May 22, 2015

      Thank you for this valuable feedback. Currently we’re working on the next PyCharm Educational Edition Version. There’re a lot of bugs and feature requests already reported: please feel free to add yours.

  10. Avatar

    devarshi says:

    July 16, 2015

    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!

    • Avatar

      Dmitry Filippov says:

      July 20, 2015


      -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

  11. Week 44 | import digest says:

    September 5, 2015

    […] have released a free entry level version of their excellent IDE aimed at the educational coding space.  This could be a game changer for Code Clubs which […]

  12. Avatar

    Predrag Milicevic says:

    March 20, 2016

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

    • Avatar

      Dmitry Filippov says:

      March 21, 2016

      Could you please report the problem here:
      with details on what do you get as a stack trace.
      What Oracle Java are you using?
      Please also attach logs. The path is usually ~/.PyCharm[version]/system/log

Discover more