Project Jupyter

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Project Jupyter
(Jupyter)
Logo
Rechtsform Non-Profit-Organisation
Gründung 2014
Gründer Fernando Pérez
Zweck Unterstützung interaktiver wissenschaftlicher Datenauswertungen und wissenschaftlicher Berechnungen mit allen Programmiersprachen.[1]
Website https://jupyter.org/

Project Jupyter (Zum Anhören bitte klicken!Abspielen [ˈdʒuːpɪtər]) ist eine Non-Profit-Organisation, die gegründet wurde, um „Open-Source-Software, offene Standards und Services für interaktives Arbeiten mit Dutzenden Programmiersprachen zu entwickeln“. Der Name Jupyter bezieht sich auf die drei wesentlichen Programmiersprachen Julia, Python und R und ist auch eine Hommage an Galileos Notizbucheinträge zur Entdeckung der Jupitermonde, bei denen Galileo Beobachtungen und Messdaten zusammen mit Metadaten darstellte.

Project Jupyter hat die Produkte Jupyter Notebook, JupyterHub und JupyterLab entwickelt. Jupyter wird bereits als Alternative zu Microsoft Excel gehandelt, da es eine Vielzahl von Vorteilen gegenüber der klassischen Tabellenkalkulation bietet, z. B. geringere Fehleranfälligkeit, Wiederverwendbarkeit oder bessere interne Dokumentation.[2][3]

Geschichte[Bearbeiten | Quelltext bearbeiten]

Im Jahr 2014 gab Fernando Pérez eine Ausgliederung aus dem Projekt IPython bekannt mit dem neuen Namen Project Jupyter.[4] IPython existiert weiter als Python Shell und Kernel für Jupyter, während das Notebook und andere sprachunabhängige Teile nun unter dem Namen Jupyter weiterentwickelt werden.[5] Jupyter ist sprachunabhängig und unterstützt die Ausführung vieler verschiedener Sprachen wie Julia, R, Haskell, Ruby und natürlich Python (über den IPython-Kernel).[6]

Im Jahr 2015 gaben GitHub und das Project Jupyter bekannt, dass das Dateiformat des Jupyter Notebooks auf der GitHub-Plattform unterstützt wird.[7][8]

Philosophie[Bearbeiten | Quelltext bearbeiten]

Das Projekt Jupyter unterstützt interaktive wissenschaftliche Datenauswertungen und wissenschaftliche Berechnungen mit allen Programmiersprachen durch die Entwicklung von Open-Source-Software. „Jupyter wird immer 100 % Open-Source-Software sein, für alle frei zu benutzen unter der modifizierten BSD-Lizenz.“[1]

Produkte[Bearbeiten | Quelltext bearbeiten]

Jupyter Notebook[Bearbeiten | Quelltext bearbeiten]

Jupyter Notebook (früher IPython Notebooks) ist eine web-basierte interaktive Umgebung, mit der Jupyter-Notebook-Dokumente erstellt werden können. Ein Jupyter-Notebook-Dokument ist ein JSON-Dokument mit einem versionsabhängigen Schema, das aus einer Liste von Eingabe- und Ausgabezellen besteht, die jeweils Code, Text und Plots enthalten können. Die Dateinamensendung ist „.ipynb“.

Ein Jupyter Notebook kann aus der Browseroberfläche heraus in verschiedene Formate konvertiert werden (HTML, PDF, LaTeX und Folien für Präsentationen).

Das Jupyter Notebook bietet im Browser eine Schleife für Eingabe, Ausführung und Ausgabe, und baut dabei auf weit verbreitete Open-Source-Libraries auf:

Jupyter Notebook kann verschiedene Kernels aufrufen, um die Programmierung bzw. interaktive Ausführung von Anweisungen in verschiedenen Sprachen zu unterstützen.

Jupyter Kernel[Bearbeiten | Quelltext bearbeiten]

Ein Jupyter Kernel ist ein Programm, das verschiedene Arten von Anfragen bearbeitet (Ausführung von Code, Code-Vervollständigung und Code-Inspektion) und Antworten zurückschickt. Kernels kommunizieren über ZeroMQ, deswegen können sie auf der gleichen Maschine oder auf anderen Maschinen im Netzwerk laufen. Kernels erkennen nicht, mit welchem Dokument sie verbunden sind, und können von vielen Clients aufgerufen werden. In der Regel ist ein Kernel für eine Programmiersprache ausgelegt.

Der Kernel für Python wird mit ausgeliefert. Im Dezember 2019 existierten 137 kompatible Kernels für verschiedene Programmiersprachen.[6]

JupyterHub[Bearbeiten | Quelltext bearbeiten]

Ein JupyterHub ist ein Multi-User-Server für Jupyter Notebooks.[9]

JupyterLab[Bearbeiten | Quelltext bearbeiten]

Das JupyterLab ist das Nachfolgeprodukt für die Benutzeroberfläche. Es bietet die bekannten Elemente des Jupyter Notebooks in einer flexiblen Benutzeroberfläche. Das erste Release wurde am 20. Februar 2018 angekündigt.[10]

Produkte anderer Hersteller[Bearbeiten | Quelltext bearbeiten]

Das Jupyter Notebook hat sich als Benutzeroberfläche für Cloud Computing verbreitet. Große Cloud-Anbieter haben angepasste Tools für Cloud-Anwender entwickelt. Beispiele dafür sind Amazon SageMaker[11], Googles Colaboratory[12] und Microsofts Azure Notebook[13].

Neben Python und Jupyter Notebook ist Matlab ein weit verbreitetes Werkzeug im Bereich Data Science und des maschinellen Lernens. In der Version R2016a wurden in Matlab erstmals sog. Live Scripts eingeführt, die ebenfalls eine interaktive Verknüpfung von Code, Text, Formeln und Plots ermöglichen.

Medienberichte[Bearbeiten | Quelltext bearbeiten]

  • Am 11. Februar 2016 gab LIGO die erste Beobachtung von Gravitationswellen bekannt. Mit den Rohdaten wurden auch Jupyter Notebooks veröffentlicht, mit denen die Daten verarbeitet wurden, damit die Analyse der Daten nachvollzogen werden kann.[14]
  • Am 5. April 2018 veröffentlichte The Atlantic einen Artikel über die Bedeutung von Jupyter Notebooks und Mathematica Notebooks für zukünftige wissenschaftliche Veröffentlichungen.[15]

Auszeichnungen und Zuwendungen[Bearbeiten | Quelltext bearbeiten]

  • 2012 erhielt Fernando Pérez den FSF Award für seine Arbeit an IPython, dem Vorgänger von Project Jupyter.
  • 2013 erhielt das IPython-Team eine Zuwendung von 1,15 Millionen US-Dollar von der Alfred P. Sloan Foundation. Hiermit wurde die frühe Arbeit finanziert, die zum Project Jupyter führte.
  • 2015 erhielt das Project Jupyter eine Zuwendung von 6 Millionen US-Dollar von The Leona M. and Harry B. Helmsley Charitable Trust, Gordon and Betty Moore Foundation und Alfred P. Sloan Foundation. Damit wurde die Weiterentwicklung der Jupyter Tools und die Neuentwicklung des JupyterLabs finanziert.
  • Am 2. Mai 2018 wurde dem Lenkungsausschuss des Project Jupyter der ACM Software System Award verliehen „für die Entwicklung einer Software, die einen langfristigen Einfluss hat, der sich als Beitrag zu Konzepten, kommerzieller Akzeptanz oder beidem widerspiegelt.“

Siehe auch[Bearbeiten | Quelltext bearbeiten]

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. a b Project Jupyter – About Us. 20. April 2018, abgerufen am 12. Dezember 2019 (englisch).
  2. Sally Poundall: SearchLove London 2019: The Great Big Round Up. Abgerufen am 26. März 2020 (amerikanisches Englisch).
  3. Using Jupyter to make marketing easier | Robin Lord. In: Robin Lord - Marketer, Speaker, Writer. 16. März 2020, abgerufen am 26. März 2020 (englisch).
  4. Project Jupyter. 8. Juli 2014, abgerufen am 12. Dezember 2019 (englisch).
  5. The Big Split™. 16. April 2015, abgerufen am 12. Dezember 2019 (englisch).
  6. a b Jupyter kernels. GitHub, 10. Dezember 2019, abgerufen am 12. Dezember 2019 (englisch).
  7. GitHub + Jupyter Notebooks = <3. GitHub, 7. Mai 2015, abgerufen am 12. Dezember 2019 (englisch).
  8. Rendering Notebooks on GitHub. Jupyter Blog, 7. Mai 2015, abgerufen am 12. Dezember 2019 (englisch).
  9. What is JupyterHub? jupyter.org, abgerufen am 12. Dezember 2019 (englisch).
  10. JupyterLab is Ready for Users. Jupyter Blog, 20. Februar 2018, abgerufen am 12. Dezember 2019 (englisch).
  11. Amazon SageMaker. Amazon, abgerufen am 12. Dezember 2019 (englisch).
  12. Welcome to Colaboratory! Google, abgerufen am 12. Dezember 2019 (englisch).
  13. Develop and run code from anywhere with Jupyter notebooks on Azure. Microsoft, abgerufen am 12. Dezember 2019 (englisch).
  14. Use Python Notebook to Discover Gravitational Waves. IBM, 13. Februar 2016, abgerufen am 12. Dezember 2019 (englisch).
  15. Jupyter, Mathematica, and the Future of the Research Paper. paulromer.net, 13. April 2018, abgerufen am 12. Dezember 2019 (englisch).