Notebook interface


A notebook interface is a virtual notebook environment used for literate programming. It pairs the functionality of word processing software with both the shell and kernel of that notebook's programming language. Millions of people use notebooks interfaces to analyze data for science, journalism, and education.

History

The notebook interface was first introduced in 1988 with the release of Wolfram Mathematica 1.0 on the Macintosh. It was followed by Maple in 1989 when their first notebook-style graphical user interface was released with version 4.3 for the Macintosh. As the notebook interface increased in popularity over the next two decades, kernels/backends to notebooks for many languages were introduced, including MATLAB, Python, Julia, Scala, SQL, and others.

Use

Notebooks are traditionally used in the sciences as electronic lab notebooks to document research procedures, data, calculations, and findings. Notebooks track methodology to make it easier to reproduce results and calculations with different data sets. In education, the notebook interface provides a digital learning environment, particularly for the teaching of computational thinking. Their utility for combining text with code makes them unique in the realm of education. Digital notebooks are sometimes used for presentations as an alternative to PowerPoint and other presentation software, as they allow for the execution of code inside the notebook environment. Due to their ability to display data visually and retrieve data from different sources by modifying code, notebooks are also entering the realm of business intelligence software.

Notable examples

Example of projects or products of notebooks:

Free/open-source notebooks

Early titles