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 at Converge 360.

comments powered by Disqus

Featured

  • Microsoft Agent Framework Makeover: Claws, Loops and Harnesses

    Microsoft's newly released Agent Framework Harness packages the loops, planning, memory, context management and safety controls that developers previously had to assemble around AI models themselves.

  • Visual Studio 2026 Gives Copilot Built-In Skills -- and Makes Them Prove Their Worth

    Microsoft is moving Agent Skills beyond bring-your-own instructions by shipping expert-authored workflows with the IDE, while keeping them off by default until testing shows their benefits justify the additional token use.

  • Copilot AI Billing Shock Met with Meters, Caps and Token-Saving Tools

    GitHub is layering spending limits, expanded credit allowances and increasingly granular usage reporting onto Copilot, while Microsoft is reworking Visual Studio and VS Code to expose -- and reduce -- the cost of agentic development.

  • The AI-Powered Software Development Lifecycle

    René van Osnabrugge makes the case that AI's biggest opportunity in software development is not faster coding -- it's reducing the friction everywhere else in the SDLC.

Subscribe on YouTube