Jupyter Notebook è un'applicazione web interattiva per la creazione e la condivisione di documenti contenenti codice, equazioni, visualizzazioni e testo narrativo. È supportato da oltre 40 linguaggi di programmazione, tra cui Python, R, Julia, Matlab e Octave. Jupyter Notebook è utilizzato principalmente per la scienza dei dati e la ricerca nei campi delle scienze, dell'ingegneria e dell'economia.
Jupyter Notebook è stato originariamente creato nel 2014 con il nome di IPython Notebook ed era uno spinoff dell'ambiente Python interattivo chiamato IPython. L'applicazione è stata ribattezzata Jupyter Notebook nel 2015, per riflettere la sua evoluzione verso l'indipendenza dal linguaggio e il supporto di altri linguaggi oltre a Python.
I documenti di Jupyter Notebook sono composti da celle. Le celle possono contenere codice, testo, matematica, grafici e immagini. Il notebook contiene anche una GUI basata su browser web, che è una dashboard dove gli utenti possono accedere ai loro notebook, modificarli, impostare le lingue e selezionare i kernel. Sia la GUI che i documenti possono essere condivisi in rete, utilizzando reti locali o strumenti di cloud computing.
Jupyter Notebook è stato ampiamente adottato da data scientist e ricercatori. Ciò è dovuto alla natura intuitiva dell'interfaccia grafica, che consente agli utenti di creare rapidamente documenti con codice, output e commenti. Inoltre, la possibilità di mescolare le lingue all'interno dello stesso documento è diventata sempre più popolare. Ciò consente agli utenti di utilizzare più lingue per l'analisi dei dati e la creazione di rapporti.
Anche Jupyter Notebook sta guadagnando terreno nel settore per le applicazioni in DevOps, sviluppo web e machine learning. La struttura organizzativa del notebook offre un ottimo modo per gestire facilmente il codice e le dipendenze, rendendolo uno strumento ideale per automatizzare le attività e gestire l'infrastruttura cloud.
A seguito della sua popolarità, esistono diverse estensioni open-source di Notebook che permettono di ottenere funzionalità aggiuntive come il controllo ortografico, l'esecuzione riga per riga e l'incorporazione di widget. Jupyter Notebook è utilizzato da sviluppatori, data scientist, ricercatori e docenti di tutto il mondo.