News

VS Code Python Updates Include New Jupyter Extension

Since Microsoft went all in on Python for its open source, cross-platform Visual Studio Code editor years ago, the company has steadily been adding new features, tools and functionality, including a brand-new Jupyter extension that will bring Notebook coding support to other languages.

Jupyter Notebooks are interactive constructs (web apps/documents) popularized with Python that may include elements like code, rich text elements, equations, visualizations, narrative text and more, commonly used for data science projects and tasks such as data cleaning and transformation, numerical simulation, statistical modeling, data visualization, machine learning and so on.

Microsoft has steadily been improving Notebook functionality for Python coders in VS Code for a while now, and is now taking it to other languages.

The Jupyter Extension
[Click on image for larger, animated GIF view.] The Jupyter Extension (source: Microsoft).

Thus the new Jupyter extension borrows Notebook tech from the super-popular Python extension for VS Code, which at 24.4 million downloads is by far the No. 1 tool in the VS Code Marketplace (No. 2 C/C++ is at 15.3 million).

The idea is to provide a separate tool to help developers use Notebook tech in VS Code with other languages beyond Python including R, Julia and Scala.

"To enable the same rich Jupyter Notebook experience for other languages, we've refactored the Jupyter support out of the Python extension and into the Jupyter extension that we're shipping today," Microsoft said in a Nov. 11 blog post. "This makes it much easier to build new Jupyter experiences for languages beyond Python by taking a dependency on the Jupyter extension, which itself has no dependency on the Python runtime or the Python extension."

A Julia Notebook in VS Code in Animated Action Using the Jupyter Extension
[Click on image for larger, animated GIF view.] A Julia Notebook in VS Code in Animated Action Using the Jupyter Extension (source: Microsoft).

Microsoft said the Jupyter extension will work with many language kernels with no modifications required, but modifications may be needed in the existing VS Code language extensions to enable advanced features.

As of this writing, the Jupyter extension has been downloaded more than 2 million times.

Other improvements to Python in VS Code in the November 2020 update include:

  • Updated the logic for parsing and sending selected code to the REPL. This is currently under experimentation, but available in the Insiders Program. (#14048)
  • Fixed "TypeError: message must be set" error when debugging with pytest. (#14067)

More information is available at the Python VS Code GitHub site, while the new Jupyter extension's development is carried out on GitHub here. Also available is documentation titled "Working with Jupyter Notebooks in Visual Studio Code."

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus

Featured

  • AdaBoost Binary Classification Using C#

    Dr. James McCaffrey from Microsoft Research presents a C# program that illustrates using the AdaBoost algorithm to perform binary classification for spam detection. Compared to other classification algorithms, AdaBoost is powerful and works well with small datasets, but is sometimes susceptible to model overfitting.

  • From Core to Containers to Orchestration: Modernizing Your Azure Compute

    The cloud changed IT forever. And then containers changed the cloud. And then Kubernetes changed containers. And then microservices usurped monoliths, and so it goes in the cloudscape. Here's help to sort it all out.

  • The Well-Architected Architect on Azure

    In the dynamic field of cloud computing, the architect's role is increasingly pivotal as they must navigate a complex landscape, considering everything from the overarching architecture and individual service configurations to the various trade-offs involved. Here's help.

  • Windows Community Toolkit Update Improves Controls

    The Windows Community Toolkit advanced to version 8.1, adding new features, improving existing controls and making dependency changes.

Subscribe on YouTube