Эволюция ноутбука Юпитера.

Проект Jupyter существует для разработки программного обеспечения с открытым исходным кодом, открытых стандартов и услуг для интерактивных и воспроизводимых вычислений.

С 2011 года ноутбук Jupyter является нашим флагманским проектом по созданию воспроизводимых вычислительных повествований. Jupyter Notebook позволяет пользователям создавать и обмениваться документами, которые сочетают живой код с повествовательным текстом, математическими уравнениями, визуализациями, интерактивными элементами управления и другими богатыми возможностями. Она также предоставляет строительные блоки для интерактивных вычислений с данными: файловый браузер, терминалы и текстовый редактор.

Ноутбук Jupyter стал вездесущей с быстрым ростом науки о знаниях и машинного обучения и, следовательно, с растущей популярностью открытого программного обеспечения в промышленности и научных кругах:

Сегодня Jupyter Notebook пользуется большим количеством пользователей во многих областях, от информатики и машинного обучения до музыки и образования. Наше международное сообщество приезжает практически из каждой страны мира.

В настоящее время ноутбук Jupyter поддерживает более 100 языков программирования, большинство из которых разработаны сообществом.

На GitHub установлено более 1,7 миллиона общественных ноутбуков Jupyter. Авторы выпускают тетради Jupyter совместно с исследовательскими проектами, научными журналами, журналистикой данных, образовательными курсами и книгами.

В то же время, сообщество столкнулось с проблемами в использовании различных программных процессов с ноутбуком, как, например, запуск кода из текстовых файлов в интерактивном режиме. Классическая ноутбук Jupyter, построенная на веб-технологиях с 2011 года, дополнительно сложна в настройке и расширении.

JupyterLab: Готова для пользователей

JupyterLab – это интерактивная среда разработки для работы с ноутбуками, кодом и данными. Самое главное, что JupyterLab имеет полную поддержку ноутбуков Jupyter. Кроме того, JupyterLab позволяет использовать текстовые редакторы, терминалы, программы просмотра файлов и другие пользовательские компоненты бок о бок с ноутбуками в рабочей области с вкладками

https://miro.medium.com/max/1320/1*O20XGvUOTLoFKQ9o20usIA.png

JupyterLab обеспечивает высокий уровень интеграции между ноутбуками, документами и мероприятиями:

Перетаскивание для переупорядочивания ячеек ноутбука и их репликации между ноутбуками.

Блокировка кода выполняется интерактивно из текстовых файлов (.py, .R, .md, .tex и т.д.).

Соедините кодовую консоль с ядром ноутбука, чтобы интерактивно исследовать код, не загромождая ноутбук временными царапинами.

Редактируйте популярные форматы файлов с живым предварительным просмотром, такие как Markdown, JSON, CSV, Vega, VegaLite и другие.

JupyterLab уже более трёх лет занимается созданием более 11 000 коммитов и пары тысяч релизов пакетов npm и Python. Более 100 участников широкого сообщества помогли создать JupyterLab в дополнение к нашим основным разработчикам JupyterLab.

Для начала ознакомьтесь с документацией по установке JupyterLab и пройдитесь по ней или попробуйте JupyterLab с Binder. Вы также найдете JupyterHub для использования JupyterLab.

Настройка опыта использования JupyterLab

JupyterLab изготовлена поверх системы расширений, которая позволяет настроить и усовершенствовать JupyterLab путем установки дополнительных расширений. Фактически, встроенная функциональность самой JupyterLab (ноутбуки, терминалы, файловый браузер, система меню и т.д.) обеспечивается группой основных расширений.

https://miro.medium.com/max/1320/1*OneJZOqKqBZ9oN80kRX7kQ.png

Среди прочего, расширения могут:

Предоставлять новые темы, редакторы файлов и зрителей, или рендеры для богатого вывода в ноутбуках;

Добавлять пункты меню, сочетания клавиш или дополнительные параметры настройки;

Предоставить API для использования других расширений.

Расширения, разработанные сообществом на GitHub, помечены тегом jupyterlab-extension и в настоящее время включают в себя просмотрщики файлов (GeoJSON, FASTA и т. д.), интеграцию с Google Drive, просмотр GitHub и поддержку ipywidgets.

Разработка расширений JupyterLab

В то время как многие пользователи JupyterLab установят дополнительные расширения JupyterLab, некоторые из вас захотят разработать свои собственные. API для разработки расширений развивается во время серии бета-версий и может стабилизироваться в JupyterLab 1.0. Для начала разработки расширения JupyterLab см. руководство разработчика расширений JupyterLab и, следовательно, шаблоны расширений TypeScript или JavaScript.

Сама по себе JupyterLab разработана поверх PhosphorJS, заменяющей Javascript-библиотеки для создания расширяемых, высокопроизводительных веб-приложений в стиле настольного компьютера. Мы используем современные технологии JavaScript, такие как TypeScript, React, Lerna, Yarn и webpack. Единичные тесты, документация, последовательные стандарты кодирования и исследование опыта пользователя помогают нам поддерживать высокое качество приложения.

JupyterLab 1.0 и выше

Мы решили выпустить JupyterLab 1.0 позже в 2018 году. Бета-релизы, ведущие к версии 1.0, будут специализироваться на стабилизации API разработки расширений, улучшении интерфейса и дополнительных основных функций. Все бета-версии будут достаточно стабильны для ежедневного использования.

JupyterLab 1.0 в конечном итоге заменит классический ноутбук Jupyter. На протяжении всего этого перехода классический ноутбук и JupyterLab будут поддерживать эквивалентный формат документа на ноутбуке.