Jupyter Lab — повод для каждого наконец изучить Python

На прошлой неделе вышел первый бета-релиз Jupyter Lab. Аналитики и дата-саентисты всего мира уже ликующе купаются в фонтанах и закапывают MATLAB.

TL;DR для тех, кто в теме. По сути это Jupyter Notebook в богатом интерфейсе. Мультиоконность с приятностями типа поддержки drag-n-drop, редактированием в отдельном окне и лайв-превью data-файлов (скриншот ниже). Топ-фичей называют возможность писать сторонние плагины. Например плагин совместного редактирования кода. Формат ноутбуков и сервер-ядро остались универсальными.

Если вам хоть раз пригождалось серьезно использовать Excel, делать выборки на SQL и вы понятия не имеете ни о каком Jupyter — сегодня нам нужно поговорить.

Под серьезными я понимаю задачи типа «взять тысячу строк и построить по ним график». Или наложить эти данные на карту. Например сделать карту ДТП в Московской Области за февраль. Вот тут Excel уже всё, а Jupyter делает это за три строчки.

Не углубляясь в детали, есть такая штука — Jupyter Notebook. Суть как у Google Docs — создаёшь документ, пишешь в него, сохраняешь. Кроме одного — он умеет исполнять написанные кусочки текста как код на Python. В любом месте документа вы пишете код, жамкаете Cmd+Enter и результат появляется прямо под ним.

Для наглядности посмотрите галерею интересных jupyter-ноутбуков. Например как просто и красиво можно рисовать карты. Cтроить разношерстные графики или за пять строк визуализировать рост ВВП по странам.

Любой блокнот затем можно выложить в сеть. Дать возможность читателям его посмотреть, выполнить код, поправить, или вообще отредактировать вместе. Полный гуглдокс, короче.

Jupyter Notebook’и уже убили MATLAB, а релиз Jupyter Lab — последний гвоздь в крышку гроба. Специально для тех, кто хочет всё в одном. Это мощнейший инструмент, в котором можно даже нейросети обучать. Помните моего нейромирона? Он полностью был написан и обучен в том самом Jupyter Notebook, вот его исходник.

Python — простейший язык, которому можно научить даже девочку за несколько дней. А знание основ написания кода пригодится всегда. Это уже как знание Excel — никто не спрашивает юриста или аналитика умеет ли он таблички считать.

Живой пример: наш CTO. По профессии он iOS-разработчик и век бы не видовал этот мой Python. Однако, по роду своей должности, ему постоянно приходится считать всякие бизнесовые аналитики. От подбора коэффициентов для формулы популярных постов, до банальной статистики посещений по месяцам. Однажды меня задолбало выгружать ему данные из базы, я установил ему Jupyter Notebook и научил строить графики там. С тех пор он уже раза три вслух ликовал как всё удобно и быстро, никаких больше Wolfram Alpha и экселей.

Данные теперь везде и каждому надо уметь с ними работать. Программисты не сделают это за вас.

Дизайнерам иногда нужно строить хитмапы сайтов. Рекламщикам смотреть плотность пользователей в регионах. Аналитикам считать свои выборки по когортам. Даже журналисты сейчас поголовно топят за Data Journalism и фактчекинг, на волне всех этих Fake News. Гуманитарий со знанием Python неплохо пригодился бы в BBC.

Даже если вы не умеете в Python или в программирование вообще, Jupyter Notebook — лучшее место, чтобы начать. Остальным совет: попробуйте, поиграйтесь. Точно пригодится в жизни и по работе. Это больше и мощнее, чем эксель. Никак его при этом не заменяет (таблички в нём считать проще), но когда нужен программируемый калькулятор с мощными возможностями визуализации — это лучшее, что сейчас есть. А то скоро будете как та бабушка, которая просит научить внука пользоваться браузером.

Вот книга по питону 3.x, вот песочница для игр с Jupyter Notebook. У меня всё.