Python IDE | Pycharm | Sublime Text | Jupyter Notebook | Atom

That is one of the most frequent question raised by a new Python learner. Mostly, it is asked by a new member of  Facebook or Telegram group who just joined the group. They should ask this simple question to Google first. There are dozens of great reviews about this topics. Nevertheless, I ended up writing this topic as well. I want to share my experience and hopefully would help new Python programmers choosing an IDE suitable for them.

But first, let's talk about IDE (integrated development environment) in brief. IDE is a computer program or application that integrate different tools needed by developers to write and test a program he writes. That tools may include text editor, code libraries, compiler, interpreter and debugger. Without an IDE, a programmer would have to juggling around from one program to another to build an application.

Enroll Nanodegree in Programming with Python Now!


In this post, I would also show you some Python gurus that use a particular IDE on their Youtube videos. Okay, let's have a look at some popular IDE on the market that you can use to code Python.


1. IDLE



When you install Python on Windows or Linux, the chance is that you already have IDLE on your computer. So, all you have to do is just use it. It is simple, light, avoid feature clutter and suitable for beginners.

However, some users called IDLE a disposable IDE. The majority of users utilize more advance IDE as soon as they progress their coding experience. IDLE lacks of various features such as copying to clipboard and line numbering system. Users also criticize the user interface design, losing focus and cluttered multi-window feature.

Nevertheless, as shown on Youtube video above, Sentdex used IDLE on most of his Python tutorials. That include Flask, Django, Pygame, Matplotlib and other series. It is absolutely doable, but for me.. I go with most of Python developers moving to a more rich features IDE.

2. Pycharm




Pycharm is an IDE specifically for Python language. It is developed by a company named JetBrains. Pycharm is intended for professional developers but it also offers community edition (free, open-source). The main features of Pycharm are:
  • Coding assistance and analysis (code completion, error pinpointing and quick fixes)
  • Project and code navigation 
  • Multi web-frameworks support (Flask, Django, Pyramid, web2py)
  • Integrated Python debugger and unit testing
  • version control integration (Git, Mercurial, Subversion)
  • Cross platform and remote development 
In the video above, we can watch thenewboston install Pycharm on his laptop, moving from IDLE in his 5 previous videos. In another video, we can watch thenewboston using various feature available on Pycharm. One example is how to install Python libraries easily via Pycharm. The main feature that makes me very comfortable using Pycharm is the automatic code versioning control facility so that we can pull or push our code to GitHub without typing anything into command line.

We can also watch Pycharm in action while learning Python Basic through the following YouTube videos:


3. Sublime Text 3



Lightweight, fast and stable. I think that three words are the best definition of this IDE. The lightweight feels and looks can already be noticed from the downloading the installation file (only 8 MB) and starting the program (no intro, no help screen or other annoyances). Sublime Text is very suitable for a Python beginners who want to put more focus on the text editor side of the IDE.

One feature that I really love from Sublime is minimap located in the right corner of the windows. It provides flash instant overview of the file we working on. It really helps me by giving  the impression of how large my file has expand and shows the current location while scrolling the window.

Other features that can be found in most modern IDE include autocompletion, syntax highlight, code folding, powerful search and customizability. Another great feature is the ability of simultaneous editing. This feature enable several cursors to be placed on the editor at once. I use this quite often when I write an HTML file. For example I can write several <li></li> codes in difference lines by using this cool feature.

Sublime text is widely used by some good Youtuber who provide tutorials about Python and other programming languages. The video above shows Corey Schafer uses this IDE in his tutorial video. Actually I was so comfortable using Pycharm and was reluctant to try sublime text. But a couple months ago I was involved in a job using the PHP programming language. Therefore I was forced to install sublime text on my computer. This IDE is indeed lighter than Pycharm, but its features are not as complete as Pycharm. And what's even more annoying is that pop-ups always appear asking us to buy the paid version when we try to save a file.

4. Jupyter Notebook




Unlike previous IDEs, Jupyter Notebook is a web-based application on a server-client structure. It is a development environment designed for data scientist. It is a robust tool to make a readable analyses. The user can manage the code, comments, images, formula and plots in one place.

I tried Jupyter Notbook when I joined an online course. I didn't installed it in my computer, but I was using an online service from CoCalc. I think I will install and use it regularly when I am ready to dive in into data science one day. This is the reason why I put this IDE on my list, maybe you are a Python beginner who want to jump right in into data science world.

In the video above, CS Dojo provide a brief glimpse of Jupiter Notebook and how to install it by using Anaconda.


5. Atom



Atom is one of the most recent IDE on the market, it was first released in 2014. It is absolutely free and open source (MIT Licence). The developer of this IDE is GitHub, so the git integration is really great.

 The main feature that I like from Atom is the flexibility of customization. You can start with basic customization by following this documentation. Atom also comes with a package manager which will enable us to add more features that we need. On the other hand, thousands of packages and themes available on Atom can leads us into confusion. I installed several packages and found that it's not the one that I really needed. We need video tutorials like from Mark Jay above to know the benefits and flaws of Atom packages.

The number one frustration among Atom users is it's painfully slow. It takes more than 15 seconds to load for the first time. Switching between tabs and opening a file are also require sometime. This is the first IDE I tried when I decided leaving IDLE, and now I am leaving it as well.

Lean Python
Learn Just Enough Python to Build Useful Tools
Python Crash Course
A Hands-On, Project-Based Introduction to Programming

Alternatives

There are more popular IDE like Visual Studio Code and Vim, and other less well-known like PyDev, Thony, Komodo or Spyder. But I haven't tried them and so comfortable using PyCharm right now. Don't forget to make a little research before you try one of them.

0 Comments