Why PyCharm Community (free) edition is my Python IDE of choice

Gil Penz
6 min readFeb 18, 2023

--

PyCharm is a rock-solid IDE that comes in a free version that is feature rich.

PyCharm offers many features and is still a great choice if you create scripts and libraries and want the full power of an IDE. This post will walk through the differences between the free and paid editions, talk about some of my favorite features and touch on a couple of cutting-edge plugins that you shouldn’t live without!

PyCharm Pro vs Community Edition

First, let’s talk about the elephant in the room and compare the free community edition of PyCharm to its paid PyCharm Pro counterpart. PyCharm Pro is $249/year for the first year.

PyCharm annual pricing

The following quote on the JetBrains PyCharm comparison page does an excellent job of summing up the differences:

While PyCharm Community Edition is designed for ‘pure Python’ development, PyCharm Professional Edition bundles WebStorm and DataGrip functionality by default, offering best-in-class support for frontend technologies and databases. It also includes support for Python web frameworks, data science, remote development, and Python profilers.

PyCharm community edition has limitations, especially if you are doing web development and deep into work with databases. However, the community edition is still very featureful. With fewer features, PyCharm is a little lighter and simpler to use. The main differences for most people will come in the framework support. If you can live without the items in the PyCharm Pro column, you are good to go with the Community edition or at least get started.

My List of Favoite PyCharm Features

Local History

Let’s jump into some of my favorite features of PyCharm, starting with the Local History feature. PyCharm records every change you make in your project and allows you to restore changes in time. You can also label a specific change set. Adding a label can be helpful if you want to start experimenting with your code, but you might want to revert if it doesn’t work out. Using the Local History feature of PyCharm is no substitute for source control, but combining the two gives you fine-grain control over what you save and discard. The Local History feature has been a lifesaver for me many times. I have often used it to roll back code to a previous state to see if I introduced a bug — it’s an excellent way to step back and forth in time. PyCharm also gives you an easy-to-read diff of your changes in the Local History preview (see screenshot below).

Debugger

The PyCharm debugger is fantastic. Using a debugger can accelerate your development by allowing you to step through a tricky piece of code and understand it better. A debugger allows you to pause the code as it is running, inspect the variables’ value and follow the logic path. It’s transformative for most developers and will enable us to move out of the “print statement” debugging methodology and speed up both code creation and quality.

Run/Debug Configurations

Run/debug configurations allow you to specify the input parameters or environmental variables your code will use or accept when you run it on the command line. For example, do you have multiple command line parameters that you want to test? Setting up a run configuration makes managing one or more command line parameters straightforward. Run/debug configurations are one of my favorite features as it reduces the number of things I need to remember to test when I’m kicking out a quick script.

Dark Theme

I’m grateful that JetBrains enables the ability to choose a different theme from the standard “light” theme. In my opinion, it is much easier to look at a dark background for a longer time.

Debug Console

I love using the debug console in PyCharm. It’s fun and helpful to set a breakpoint in your code and interact with the live running code. In addition, the debug console is a great way to quickly prototype a small amount of logic or change the value of a variable as it runs.

Plugin ecosystem

PyCharm has a robust plugin ecosystem. However, a couple of PyCharm plugins offer very compelling functionality that I would like to highlight here.

GitHub Copilot

GitHub Copilot is fantastic and uses AI to help developers write code faster. There are several ways to interact with Copilot. You can easily install the GitHub Copilot plugin for PyCharm using these instructions. You can write comments, and Copilot will fill in the code. You can also write the signature of a function, and Copilot will take a stab at filling in the implementation of the function. Copilot works with Python code, and it also works well with every other major programming language. It feels like an absolute bargain at $10/month (free trial available) for an individual and is an indispensable tool for learning programming languages. Highly recommend this plugin; even Guido van Rossum (creator of the Python programming language) uses Copiloit.

GitHub Codespaces

GitHub Codespaces is a plugin-based offering that allows you to run your code inside a cloud-hosted docker container. A significant benefit of code spaces is that you no longer need a powerful computer to develop. Since the heavy lifting of compiling and running offloaded to the cloud, you can get by with nearly any computer that will run your IDE of choice. Codespaces represents a considerable advancement in lowering the bar to getting into software development.

The cost of Codespace is very reasonable, and there is a free tier that you can use forever. However, compute fees are billed per hour if you need more horsepower, and storage is billed per gigabyte.

Consider PyCharm community edition if you are looking for a Python IDE that will be an excellent option for beginners just starting out or any developers working on scripts and libraries and looking for a productivity boost.

Thanks for reading! Please follow me and let me know your thoughts with a comment and a clap.

--

--