VOOZH about

URL: https://thenewstack.io/introduction-to-jupyter-notebooks-for-developers/

⇱ Introduction to Jupyter Notebooks for Developers - The New Stack


TNS
SUBSCRIBE
Join our community of software engineering leaders and aspirational developers. Always stay in-the-know by getting the most important news and exclusive content delivered fresh to your inbox to learn more about at-scale software development.
REQUIRED
It seems that you've previously unsubscribed from our newsletter in the past. Click the button below to open the re-subscribe form in a new tab. When you're done, simply close that tab and continue with this form to complete your subscription.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.
Welcome and thank you for joining The New Stack community!
Please answer a few simple questions to help us deliver the news and resources you are interested in.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Great to meet you!
Tell us a bit about your job so we can cover the topics you find most relevant.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Welcome!

We’re so glad you’re here. You can expect all the best TNS content to arrive Monday through Friday to keep you on top of the news and at the top of your game.

What’s next?

Check your inbox for a confirmation email where you can adjust your preferences and even join additional groups.

Follow TNS on your favorite social media networks.

Become a TNS follower on LinkedIn.

Check out the latest featured and trending stories while you wait for your first TNS newsletter.

PREV
1 of 2
NEXT
VOXPOP
As a JavaScript developer, what non-React tools do you use most often?
Angular
0%
Astro
0%
Svelte
0%
Vue.js
0%
Other
0%
I only use React
0%
I don't use JavaScript
0%
Thanks for your opinion! Subscribe below to get the final results, published exclusively in our TNS Update newsletter:
NEW! Try Stackie AI
From clobbered drafts to real-time sync
Apr 14th 2026 10:00am, by David Moore
TypeScript 6.0 RC arrives as a bridge to a faster future
Mar 14th 2026 9:00am, by Darryl K. Taft
Mastra empowers web devs to build AI agents in TypeScript
Jan 28th 2026 11:00am, by Loraine Lawson
2024-02-24 05:00:00
Introduction to Jupyter Notebooks for Developers
AI / Data / Software Development

Introduction to Jupyter Notebooks for Developers

David Eastman road-tests Jupyter Notebooks, using Microsoft's .NET implementation in Visual Studio Code, Polyglot Notebooks.
Feb 24th, 2024 5:00am by David Eastman
👁 Featued image for: Introduction to Jupyter Notebooks for Developers
Photo by NASA on Unsplash.

For years now I have seen people talk about Jupyter Notebooks, but I was never sure exactly what they were for. They are tied to Python and academic use, so I never found it convenient to fire one up. Explanations from Python users usually involve references to other Python tools — always a bit of a problem with over-confident ecosystems.

Even in my last post, I mentioned Jupyter Notebooks in reference to talking to an LLM. But I also noticed that while Python is the native language, you can make notebooks use C#. Also, and even better, they use Markdown natively.

So first of all, what are they? A Jupyter Notebook is “a web-based application used to create and share interactive notebook documents, which can contain live code, text, data visualizations, videos and other computational outputs.” That is kind of useful, but before I dive in let me show another example:

So it gives you a continual or interactive environment, making it very good for explaining things step by step. And those code blocks or cells can be recalculated in any order. Technically, it isn’t a bad way to learn a programming language, and I can see why it should be popular in all forms of education. So my aim is to create a notebook that works with C#, but is still shareable.

Perhaps in their attempt to implement Jupyter Notebooks with .NET, Microsoft came out with Polyglot Notebooks, which are actually a little more ambitious than the original. More on that later. They work as an extension within Visual Studio Code. This sounds right for what I want to do.

Because VS Code has a rather opaque install chain, and combined with Microsoft’s habit of renaming things rapidly, prerequisites and dependencies are not always clear.

After opening VSCode and doing some experimentation, I installed PolyGlot Notebooks. This is “powered by” .NET Interactive. I also have the Jupyter Notebook support extension installed — I think I installed that before, but it might be a dependency.

👁 Image

You will then get the chance to “Create a default Polyglot Notebook” from the command palette. Then choose the standard Python notebook ‘ipynb’ extension, and then C# as your language:

👁 Image

You should then be able to write a simple code block or cell, as demonstrated below:

👁 Image

OK, so we have a notebook running in VS Code that should allow us to create and run code snippets within a continuous environment. That tick next to ‘0.1s’ in the cell indicates that the code has been run and it took that much time. And once you get here, everything is very simple to use. Next, we’ll write a cell that uses a variable defined in a previous cell, like we saw in the example at the top:

👁 Image

Note that you get the chance to evaluate a cell or all the cells above it. And you can see that a cell can use any evaluated variable from the cells above. Also, the console places its output just below the cell.

In addition to cells with code, I can write Markdown and mix that in. So we make a Markdown cell (see the “+ Markdown” above) and edit it appropriately:

👁 Image

After selecting the tick when I’m done, I can then move the cell above my code to act as documentation:

👁 Image

For my last trick, I’ll install a plotter library and draw a sine wave. Add the “NuGet package manager” as a VS Codes extension. I’m going to use the XPlot.Plotly library, and I can install this in a cell:

👁 Image

You need the interactive variant to work with the Notebook.

Then we write the code, and execute it. Voila.

👁 Image

This immediate feedback is gratifying. You will be able to turn that into a cosine wave very rapidly. By the way, you can export a notebook to a PDF or as an HTML file.

But one more thing. The other point of these is collaboration. Given that we specifically made this notebook in the common Python ‘ipynb’ format, I’d like to see how easy it would be to use this as a common Notebook environment. We are using a C# code kernel, but the actual notebook itself should still be portable.

Using Google Colaboratory, I was able to load the notebook successfully:

👁 Image

This is great. Of course, running it is a different matter. Colaboratory recognized that the cell kernel was not Python, but does not recognize any other languages as yet. This Google tool is designed with only vague and limited academic use in mind. Other online services offer something similar.

We could certainly run a Jupyter Notebook locally and change the kernel, but that would extend this post deep into Python territory, which isn’t where I want to go. But you could also view this as a simple way to introduce yourself to the language.

Currently, Python and Jupyter Notebooks are a little too tightly coupled, but in the future, I can see a more flexible structure allowing more languages to run as peers in notebook systems. Right now, both are embedded in the world of academia and data science. Microsoft has got Polyglot Notebooks to run multiple languages in one notebook, which is a sensible idea. As notebooks grow beyond the Python ecosystem, I can only see them getting more popular.

TRENDING STORIES
David has been a London-based professional software developer with Oracle Corp. and British Telecom, and a consultant helping teams work in a more agile fashion. He wrote a book on UI design and has been writing technical articles ever since....
Read more from David Eastman
SHARE THIS STORY
TRENDING STORIES
SHARE THIS STORY
TRENDING STORIES
TNS DAILY NEWSLETTER Receive a free roundup of the most recent TNS articles in your inbox each day.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.