Комментарии 9
Для непосвященных можно как-то пояснить, что это такое и для чего нужно? Странный какой-то обзор получился. Вот вам пару ссылок, разбирайтесь. Ну и куда кликнуть, чтоб оно запустилось. Хорошо, что есть отметка о том, что это перевод. Но зачем переводить кусочек из новостной ленты с сайта разработчиков и называть это обзором?
С языка сняли! Увидев такое описание - "JupyterLab Desktop — кросс-платформенный дистрибутив JupyterLab для десктопа", несколько растерялся. Картинка интересная, а зачем, почему..
Поправили заголовок. Приносим извинения.
JupyterLab -- это что-то вроде IDE для интерактивного python, которая позволяет исполнять код в отдельных ячейках и хранит в памяти промежуточные значения. Также позволяет добавлять ячейки с markdown-форматированием, формулами LaTeX, изображениями и так далее.
Вроде позволяет работать с R, Julia, Scala и может даже C++, но лично не проверял.
Изначально запускается в браузере.
Исторически популярна в научной среде и у аналитиков, потому что позволяет на основе результатов выполнения небольших (ну или больших) блоков кода рассказывать историю (пресловутый storytelling with data).
То есть результаты работы в JupyterLab могут выглядеть, например, так или так.
Из плюсов:
- это довольно удобно;
- расчёты можно делать поэтапно, не перезапуская весь код заново и не сохраняя специально промежуточные значения;
- можно запустить на удалённой машине/узле кластера и пробросить туннель, после чего работать с ресурсами прямо из браузера;
- есть JupyterHub для ещё более простого использования ресурсов общего пользования.
Из минусов:
- расхолаживает;
- перезапуск ячеек не в том порядке может привести к ошибкам и неопределённостям;
- без сознательной работы над структурой набор блоков очень быстро может скатиться в хаотичное спагетти;
- инструментов в JupyterLab всё же поменьше, чем во "взрослых" IDE -- ранний останов, отслеживание текущих значений переменных не через исполнение кода, инструменты по рефакторингу, удалению дублирований, отслеживанию неиспользуемых переменных (что частично решается плагинами, но с их установкой могут возникать свои сложности);
- не все библиотеки python работают так же, как в скриптах (например, argparse просто так не заработает); результирующий файл (.ipynb -- ipython notebook) не является скриптом python (.py), требует дополнительной конвертации.
В целом, инструмент, на мой взгляд, хорошо подходит для прототипирования, первой проверки гипотез, создания красивого рассказа на основе анализа данных.
Это скорее способ красиво оформить презентацию уже готовых работ. Поддержка markdown и формул значительно этому способствует. Другой вопрос, зачем нужна desktop версия, если все отлично работает и в браузере...
Мне понравилось, что Юпитер - это такой гибрид редактора кода и консоли. После каждой ячейки есть свой вывод, он не теряется. Если делаешь какое-то исследование и нужно перед глазами иметь вывод сразу нескольких шагов - очень удобно.
Я за это же купил DataGrip, он умеет с SQL работать по такому же принципу
1) удобно перемежать код графиками. Это даже не столько графики, как логи многомерных данных - в удобном для человека виде
2) удобно вычислять пошагово - представьте что у вас программа имеет точки сохранения состояни, и вам необязятельно перезапускать ее всю, чтобы поменять формулу и посчитать что-то заново
3) НЯП .ipynb умеет экспортироваться в .py , так что не должно быть проблемой
JupyterLab Desktop
Это хорошо, что есть альтернативы, но предпочитаю Spyder IDE.
Обзор изменений в JupyterLab Desktop за год