Since summer 2018, 245 Fred Hutch employees have taken Introduction to Python through Fredhutch.io. This introductory course introduces participants to Jupyter Notebooks as an integrated development environment, or IDE.
While Jupyter notebooks are a great tool, there are other options for interfaces to write and run Python code. In the Python User Group, we recently looked at three popular IDEs for Python. Frequent attendees of the group wrote up a few overviews highlighting the more popular Python IDEs nowadays which you can peruse below.
Visual Studio Code (VS Code)
Other options and choosing one to use
But these aren’t the only options…
Therefore, with so many free options it really comes down to personal preference. There are some features that you should look for in your IDE of choice such as:
Debugger - a debugger allows you to quickly resolve bugs, issues or errors in your code by allowing you to quickly setup breakpoints at a particular line and then step in, out, or thru the code while viewing not only code output and actions but also variable assignment.
Version Control Integration - version control facilitates collaboration as it assists in the management of changes to documents or code and constructs some rigor around a development process. A popular version control platform is GitHub but it isn’t the only one. What is important is that your IDE of choice integrates with the version control your team is using.
Shell Integration - this isn’t a deal breaker but it makes it nice and most IDEs have this where with a keystroke you can pull up a window that has a shell instance running allowing you to interact with your OS, or ssh into remote computing or cloud resources.
Text Editor Integration - again not a deal breaker but most of them have a text editor. What is important is that it can render or preview Markdown files
Word to the wise, most of these features just mentioned are usually not built into the IDE itself and are made available to the user as an extension that they have to install in the IDE. The major IDEs though are getting better at including these features/extensions as default or pre-installed for the user. If not you might have to search and install to add them to your IDE environment.
I hope these points have inspired you to try out a new IDE and or help to make you more productive. Thanks for supporting the bioinformatics and data science community!