Announcing the EAP for JetBrains DataSpell, Our New Data Science IDE
With the emergence of Python as the go-to language for data science, it was only natural for JetBrains’ PyCharm to be eventually equipped with data science features. Based on the feedback that our team received over the past year, we have been working to significantly improve PyCharm’s support for data science. During this process, it became evident that data scientists and software developers have different workflows and expectations of their tools.
As a result of that process, we decided that the best course of action would be to use PyCharm’s IDE engine as the foundation for a brand new IDE that is focused solely on data science. Today we are thrilled to share some of the details about this new IDE with you and also invite you to join its EAP.
The working name of the IDE is JetBrains DataSpell (the final name may change when it’s released). JetBrains DataSpell offers a productive developer environment for data science professionals who are actively involved in exploratory data analysis and prototyping machine learning models.
To sign up for the EAP, please submit the short form on the official page. Please note that we will send invitations gradually and not to everyone at once. Don’t worry—after you’ve signed up, you’re guaranteed to get an invite in your Inbox sooner or later.
JetBrains DataSpell will offer native support for Jupyter notebooks:
- The Jupyter Notebook experience will be an enhanced version of web-based Jupyter. The outputs are displayed underneath cells. The visual appearance of the notebooks will be similar to the traditional web-based Jupyter notebooks. The IDE will be able to switch between Command mode and Editor mode for easier manipulation of cells and their content. The enhancements will include intelligent coding assistance for Python, out-of-the-box table of contents, folding tracebacks, and interactive tables, among other things.
- Cell outputs will support both Markdown and JavaScript (e.g. Plotly, Bokeh, IPyWidgets, etc.).
- The IDE will support local Jupyter notebooks as well as remote Jupyter, JupyterHub, and JupyterLab servers.
JetBrains DataSpell will support Python scripts equally well, offering a scientific REPL for running code as well many additional tools for working with data and data visualizations (both static and interactive).
Even though Python will be the primary short-term focus for JetBrains DataSpell, support for R, and eventually other data science languages, will be added as well. Basic support for R is already bundled, even though it is limited.
Currently, JetBrains DataSpell is still under heavy development. The first EAP builds that you’ll try as part of the EAP program will have limitations:
- The support for remote notebooks are categorized as “Experimental features”. This means that by default this support is disabled and it must be explicitly enabled by the user in Settings. The user experience of remote notebooks will be significantly reworked before the public release.
- The support for JavaScript outputs may not always be smooth (e.g. scrolling sometimes doesn’t work perfectly), but it will be improved in future versions.
FAQ
Q: Why introduce a new IDE in addition to PyCharm Professional Edition?
With JetBrains products, we always try to offer a great user experience and not just features.
JetBrains DataSpell’s interface will focus on data as much as on code. Features that relate to working with data will be prioritized. This will be reflected in the layout of the tool windows, main menu, actions, etc.
JetBrains DataSpell will treat the codebase more as a workspace than a project. Within this workspace, the user will be able to switch between tasks and re-use notebooks just like they re-use configured environments.
Overall, we expect DataSpell to be a more practical and efficient environment for working with data.
In order to provide the best possible experience, we’d like to offer users a choice over their environment based on the way they use our tools.
Q: When will the new functionality make it into PyCharm Professional Edition?
As soon as JetBrains DataSpell is officially released, though there is no specific date yet.
Q: How do I choose which product to use: JetBrains DataSpell or PyCharm Professional Edition?
If you’re involved in both data science and development, we recommend you use PyCharm Professional Edition. If you’re involved more in data science than development, we recommend you use JetBrains DataSpell.
Q: Will the new data science functionality be available with PyCharm Community Edition?
No. There are no plans to include it in the community version.
Q: Will JetBrains DataSpell support other languages than Python? How about R, Julia, and others?
One of the purposes of JetBrains DataSpell is to provide a multi-language data science platform. Because Python is the most popular language for data science, we plan to focus on it in the first place. Once Python support is polished enough, we’ll also look at other languages one by one, e.g. first R, then Julia, and then others. For the record, the basic support for R is already available.
Q: Will JetBrains DataSpell bundle database integration?
Yes.
Q: Will JetBrains DataSpell bundle web development capabilities?
No. PyCharm Professional Edition is the best option for web development combined with data science.
Q: Will JetBrains DataSpell be a free or a paid product? What is the pricing going to be?
We plan for DataSpell to be a paid product priced similar to other JetBrains IntelliJ-based IDEs (such as DataGrip, PyCharm Professional Edition, etc.).
Q: Why is the EAP private and why does it require registration? Will you spam me?
We won’t spam you. The email you register with will be only used to send the final invitation to try the product when we’re sure it’s suitable for your use case.
In the registration form, we ask about your use case, whether you have prior PyCharm experience, whether you work with local or remote notebooks, how often you use Jupyter notebooks, and so on. We may contact you later to ask for feedback.
You’re welcome to ask questions, and by all means, feel free to spread the news!
The JetBrains team