Комментарии 34
Эта штука работает только на вашем сайте и на своих мощностях ее не развернуть?
Что есть из инструментов командной работы? Разграничение доступа? Код-ревью? Комментарии? Ветки? Пулл-реквесты?
Для совместной работы у нас есть общий доступ к папкам и документам — позволяет видеть курсор друг друга и наблюдать изменения в реальном времени, при этом уровень доступа настраивается индивидуально для каждого пользователя (полный доступ, только редактирование или только чтение). Версионирование реализовано при помощи истории изменений, пулл-реквестов и коммитов нет. В редакторе можно вставлять python комментарии и вставлять заметки используя markdown блоки или docstring.
Пока это все больше похоже на забавное баловство, для серьезной работы с данными не пригодное вообще.
Чтобы сделать простенькую, но полезную модель надо написать 5000 строк кода, потом 28000 раз их отредактировать и в конце-концов 4500 строк стереть — история изменений станет нечитаемой, в ней ничего не получится найти.
Нужны нормальные коммиты, теги, версии.
Видеть курсор вообще не надо. Зато надо уметь сливать куски кода, написанные разными людьми.
Также нужна нормальная работа с python-модулями, чтобы при изменении не надо было перезапускать кернел и все ячейки.
Что с распределенной работой? Сможете сделать "удаленные" ячейки, каждая из которых запускается на отдельном сервере со своими данными? А в ноутбуке пусть будет виден прогресс.
Пока данных мало, то и проблем с анализом нет, а когда датасеты в сотнях и тысячах Гб, что вы можете предложить? Добавьте встроенный функционал по (фоновому) копированию данных на вычислительные инстансы.
Да и про запуск инстансов стоит внимательно подумать: сразу ставить драйвера, устанавливать пакеты, загружать и запускать докер-контейнеры.
Запуск вычислительного агента с дефолтным набором библиотек происходит для пользователя в фоне и не требует от него никаких действий.
По остальным пунктам идет работа, но деталей пока рассказать не могу.
Во-вторых, все потому «похоже на забавное баловство», что бета-версия. Чтобы можно было работать с серьезными данными — бета-версия теперь открыта, и нам нужны развернутая критика вроде вашего комментария. Поэтому честное спасибо.
В-третьих, по остальным пунктам идет серьезная работа, и вы подкинули нам пару идей в эту работу по улучшению функциональности.
Cистема контроля версий, как упомянул коллега, действительно базовая — для веб-приложения (а не полноценной IDE) в настоящем масштабе более продвинутый вариант не актуален, мы сосредоточены на других задачах. В том числе всего, связанного с нормальным функционированием инстансов. Stay tuned (:
Пока этот продукт выглядит как "Я менеджер по маркетингу, но теперь я называю себя дата-саентистом"
Для работы одного дата-саентиста вполне достаточно jupyterlab'а. Так что если вы хотите сделать удобный продукт для дата-саентистов, то datalore надо переписывать почти полностью.
- Полная поддержка групповой работы с гибким распределением прав (на инстансы, данные, контейнеры, репозитории и т.п.)
- Полная поддержка функций git.
- Интеграция с github'ом.
- Встроенный движок для удобного проектирования графиков, в том числе динамических/интерактивных.
- Интеграция с Tensorboard.
- Интеграция с docker
- Многоконный интерфейс с табами и виджетами.
- Удобный доступ к удобной консоли
- Мощный файловый менеджер с редактированием файлов разных форматов.
- Гибкое управление инстансами (в т.ч. своими, а не только провайдеров)
Как видите, редактора в списке нет совсем, потому что подойдет почти любой.
Если в восьмой версии выпустите автоматическое переименование, то мы порадуемся, но только если в восьмой. А в первой не надо.
Вот примеры реальных ноутбуков дата-саентистов:
https://github.com/analysiscenter/cardio/blob/master/tutorials/II.Pipelines.ipynb
https://github.com/analysiscenter/radio/blob/master/tutorials/RadIO.IV.ipynb
- https://github.com/analysiscenter/radio/blob/master/tutorials/RadIO.III.ipynb
Поработайте с ними и поймете, что проблемы дата-саентистов вообще не там, где вы думали. А им все еще нужна удобная среда для работы. И это даже близко не datalore.
А вы уже потыкали в Datalore или пока бегло ознакомились? Список исчерпывающий, но было бы жутко интересно узнать на конкретных местах, где ваш опыт работы с данными наткнулся на пробелы в продукте.
Про возможность локального развертывания — в некоторых областях, без нее будет достаточно сложно, даже без учета объема. Например в финтехе, нужно будет, как минимум, каждый раз обфусцировать часть данных, иначе можно очень больно получить пинка от безопасников. Да и даже с учетом этого, не факт что разрешат.
Возможна ли самостоятельная установка необходимых библиотек?
Ну и в целом, в чем преимущество перед тем же Colaboratory?
Установка библиотек доступна из conda, pip и git репозиториев (в т.ч. приватных).
Анализ данных — это не только про «подобрать модельку» или «посмотреть на графики».
И прочая работа редактора кода, направленная на то, чтобы человек как можно больше думал про специфику задачи машобуча и как можно меньше отвлекался на кодерскую рутину. Если редактор кода в этом помогает — почет и хвала такому редактору кода)
Но да, есть куда расти.
А Python — лидирующий язык data science (например, пруф), с ним и работаем.
В jupyter'е тоже есть автодополнение и поиск. Переименование в реальной жизни датасаентолога крайне редко когда требуется, чтобы этим можно было гордиться.
Интеншены — захардкоженное баловство. Ни один из них в реальной работе никогда не требуется.
Редактор кода вообще никогда не был проблемой для анализа данных. Так что вы совершенно зря педалируете эту "редакторовость". Не цепляет совершенно.
Им интеншены помогут. Но помогут они и тем, кто прекрасно умеет писать код, просто хочет автоматизировать этот процесс.
Я люто ненавижу jupyter notebook'и, но они повсюду, пойду гляну, вдруг Jet Brains хоть немного сделало их лучше.
Но идеально было бы нормально работать с ноутбуками в pycharm, конечно.
То что видел симпатично, но как то… не совсем то без чего жить тяжело и тоскливо.
1) Хочу оффлайн или возможность развернуть на своем железе. Нынешняя контора принципиально ничего в облака не кладет. Да и перевод всего нашего безобразия в облако, с рилтаймом, блекждеком и девочками — задача чуть более чем нетривиальная.
2) Пока не понял, как эта штука дружит со спарк зоопарком.
3) Опять же, может пока не разобрался как это сделать, но я хочу запустить кучу моделек и уйти пить кофий. А потом смотреть на красиво оформленные результаты.
Ну и то что сверху набросали, типа приличного контроля версий, командной работы и все такое.
Все предыдущие ваши продукты однозначно говорят — сделаете, допилите, будет счастье.
1) писать статью и код в одном окне,
2) хранить свои данные в Datalore (лишняя точка бэкапа не помешает, студенты и ученые на моих глазах не раз теряли данные когда ноутбук неожиданно сдох — да-да, несмотря на 2018 год уже),
3) когда написали и отладили код, иметь актуальный код прямо в статье + актуальную версию данных в облаке, все в одном workbook => нет проблем потом повторить исследование, если понадобится, или отдать все коллегам для проверки,
4) экспортировать (вот этого пока нет, а хотелось бы) результат в .pdf и отправить сразу в журнал для публикации.
Упомянутая в статье возможность отрисовывать данные на карте — это значительно круче, чем может показаться из короткого описания. Вот, например, у вас есть данные по местам, где произошли преступления в городе. Вы можете отрисовать crime heat map с точностью до дома, и посмотреть, какие районы в городе действительно опасны, а какие незаслуженно имеют плохую репутацию. И так по любому городу в мире, для которого есть такая статистика с геопривзякой. И делать динамические heat map, чтобы друг за другом показывались карты за разные годы, чтобы видеть, как в каком-нибудь, скажем, East Palo Alto становится менее стрёмно по мере постройки рядом все новых и новых корпусов Facebook.
Так что Datalore, на самом деле, может пригодиться не только тем, кто имеет дело с очень большими и очень секретными данными (проблема развертывания onsite/offline для них как раз очевидна), но и (пока еще) довольно широкой научной общественности, причем не только в условной Швейцарии.
Для тех сценариев работы с которыми я обычно работаю (в основном это работа с финансовыми данными) основная задача состоит в прототипировании, анализе, и работе с информацией скорее как аналитик, чем как разработчик. Соответственно быстрая работа с моделями и библиотеками, широкие возможности для интерактивной визуализации — это то, что нужно.
Несмотря на всю мощь, тот же PyCharm будет тяжеловат для задач «на лету». До недавних пор пользовался Azure Notebooks, но Datalore обещает быть ещё более лёгким и эффективным, если не потеряет целевую аудиторию в погоне за самоповтором продуктов и попыткой угодить всем и сразу.
Datalore: открываем бета-версию приложения для анализа данных на Python