Julia
От: MaximVK Россия  
Дата: 23.04.22 18:31
Оценка: 2 (1)
Привет,

Кто использовал Julia в рабочих проектах? Очень хочется уйти с Питона в скриптовых и ML задачах, смотрю в сторону Julia.
Основное беспокойство:
1) Количество библиотек,
2) Возможное наличие багов в языке,
3) Размер коммьюнити.
Re: Julia
От: Буравчик Россия  
Дата: 23.04.22 19:13
Оценка:
Здравствуйте, MaximVK, Вы писали:

MVK>Кто использовал Julia в рабочих проектах? Очень хочется уйти с Питона в скриптовых и ML задачах, смотрю в сторону Julia.


А что не устраивает в питон?
Периодически слышу про julia, но не пойму ее киллер-фичи
Best regards, Буравчик
Re: Julia
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 23.04.22 19:13
Оценка: +2
Здравствуйте, MaximVK, Вы писали:

MVK>Кто использовал Julia в рабочих проектах? Очень хочется уйти с Питона в скриптовых и ML задачах, смотрю в сторону Julia.


Я как-то смотрел, но не пошло. Меня беспокоит не столько перечисленное, сколько тот факт, что не найдёшь потом никого со знанием языка. Ну и все статьи выходят с примерами на Питоне. Не хочется самому всё имплементировать.
Re[2]: Julia
От: MaximVK Россия  
Дата: 23.04.22 19:56
Оценка: 7 (1)
Здравствуйте, Буравчик, Вы писали:

Б>А что не устраивает в питон?

Почти всем, кроме большого количества библиотек.

Б>Периодически слышу про julia, но не пойму ее киллер-фичи


1) компилируемый, ощутимо быстрее питона,
2) концептуально стройный, построенные с нуля и заточенный под ds/ml задачи
3) намного более адекватная типизация, чем у питона,
4) лучше с функциональщиной,
5) лучше с многопоточностью,
6) мультидиспатч,
7) метапрограммирование
Re[2]: Julia
От: MaximVK Россия  
Дата: 23.04.22 20:00
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>Я как-то смотрел, но не пошло. Меня беспокоит не столько перечисленное, сколько тот факт, что не найдёшь потом никого со знанием языка. Ну и все статьи выходят с примерами на Питоне. Не хочется самому всё имплементировать.


Да, тут ты прав. Я использую пока для домашних проектов. Время от времени приходится писать какого-нибудь клиента, который уже есть для Питона (Binance, ClickHouse REST client). Но в целом, если есть код для Питона, то переписать его под Julia больших проблем нет. А вот для рабочих проектов — это да, проблема. Мы уже так в скалу поиграли
Re: Julia
От: Anton Batenev Россия https://github.com/abbat
Дата: 24.04.22 08:45
Оценка: +3
Здравствуйте, MaximVK, Вы писали:

MVK> Основное беспокойство:

MVK> 1) Количество библиотек,
MVK> 2) Возможное наличие багов в языке,
MVK> 3) Размер коммьюнити.

4) "In particular, do not sexualize the term "Julia" or any other aspects of the project. While "Julia" is a female name in many parts of the world, the programming language is not a person and does not have a gender." (отсюда). Люди, сосредоточены на гендерной повестке вместо продукта, что заставляет задуматься.

5) С параллелизацией вычислений (собственно, единственная его киллер-фитча) раньше там было все очень и очень плохо (никакая аутентификация, лимитирование, распределение ресурсов и т.д.) и не было планов на исправление этого.
Re[2]: Julia
От: MaximVK Россия  
Дата: 24.04.22 10:22
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, MaximVK, Вы писали:


MVK>> Основное беспокойство:

MVK>> 1) Количество библиотек,
MVK>> 2) Возможное наличие багов в языке,
MVK>> 3) Размер коммьюнити.

AB>4) "In particular, do not sexualize the term "Julia" or any other aspects of the project. While "Julia" is a female name in many parts of the world, the programming language is not a person and does not have a gender." (отсюда). Люди, сосредоточены на гендерной повестке вместо продукта, что заставляет задуматься.


Ну это еще с Ады началось. Зато как звучит: Всю ночь про%&£?я с Julia

AB>5) С параллелизацией вычислений (собственно, единственная его киллер-фитча) раньше там было все очень и очень плохо (никакая аутентификация, лимитирование, распределение ресурсов и т.д.) и не было планов на исправление этого.


А можно что-то подробней про это? Можно в виде ссылок.
Re: Julia
От: vaa  
Дата: 24.04.22 11:21
Оценка:
Здравствуйте, MaximVK, Вы писали:

MVK>Привет,


MVK>Кто использовал Julia в рабочих проектах? Очень хочется уйти с Питона в скриптовых и ML задачах, смотрю в сторону Julia.

MVK>Основное беспокойство:
MVK>1) Количество библиотек,
MVK>2) Возможное наличие багов в языке,
MVK>3) Размер коммьюнити.

Может лучше https://github.com/knocte/2fsharp/blob/master/python2fsharp.md
язык уже очень зрелый, все время развивается.
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re: Julia
От: Miroff Россия  
Дата: 24.04.22 14:01
Оценка: +2
Здравствуйте, MaximVK, Вы писали:

MVK>Привет,


MVK>Кто использовал Julia в рабочих проектах? Очень хочется уйти с Питона в скриптовых и ML задачах, смотрю в сторону Julia.

MVK>Основное беспокойство:
MVK>1) Количество библиотек,
MVK>2) Возможное наличие багов в языке,
MVK>3) Размер коммьюнити.

Совершенно правильное беспокойство. По гамбургскому счету, ресурсы, которые будут впустую потрачены на борьбу с Джулией эффективнее пустить на оптимизацию Python там, где это действительно нужно.
Re[3]: Julia
От: Anton Batenev Россия https://github.com/abbat
Дата: 24.04.22 15:36
Оценка:
Здравствуйте, MaximVK, Вы писали:

MVK> А можно что-то подробней про это? Можно в виде ссылок.


Судя по https://docs.julialang.org/en/v1/manual/distributed-computing/ с тех пор ничего не поменялось. Все так же full-mesh связность всех нод, которые запускаются по passwordless ssh, а дальше между собой "Subsequent master-worker and worker-worker connections use plain, unencrypted TCP/IP sockets".
Re[4]: Julia
От: Слава  
Дата: 24.04.22 16:37
Оценка: +1
Здравствуйте, Anton Batenev, Вы писали:


AB>Судя по https://docs.julialang.org/en/v1/manual/distributed-computing/ с тех пор ничего не поменялось. Все так же full-mesh связность всех нод, которые запускаются по passwordless ssh, а дальше между собой "Subsequent master-worker and worker-worker connections use plain, unencrypted TCP/IP sockets".


А скажите, для чего в HPC нужно шифрование? Чтобы тормозов прибавлять?
Re[2]: Julia
От: MaximVK Россия  
Дата: 24.04.22 17:09
Оценка: +1
Здравствуйте, Miroff, Вы писали:

M>Совершенно правильное беспокойство. По гамбургскому счету, ресурсы, которые будут впустую потрачены на борьбу с Джулией эффективнее пустить на оптимизацию Python там, где это действительно нужно.


Да я понимаю. Просто подташнивает от питона
Re[5]: Julia
От: Anton Batenev Россия https://github.com/abbat
Дата: 25.04.22 09:19
Оценка:
Здравствуйте, Слава, Вы писали:

С> А скажите, для чего в HPC нужно шифрование? Чтобы тормозов прибавлять?


Все данные, передаваемые по сети (или через любую другую недоверенную среду), должны быть защищены от MITM. Или вопрос был в чем-то другом?
Re[6]: Julia
От: · Великобритания  
Дата: 25.04.22 09:40
Оценка: +1
Здравствуйте, Anton Batenev, Вы писали:

AB> С> А скажите, для чего в HPC нужно шифрование? Чтобы тормозов прибавлять?

AB> Все данные, передаваемые по сети (или через любую другую недоверенную среду), должны быть защищены от MITM. Или вопрос был в чем-то другом?
Если нам нужен High Performance и "сеть" это проводочки между серверами в одной стойке в охраняемой комнате data centre, то прикручивать шифрование это, мягко говоря, неразумно.
А иначе, там написано: "Securing and encrypting all worker-worker traffic (via SSH) or encrypting individual messages can be done via a custom ClusterManager."
avalon/3.0.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[6]: Julia
От: Слава  
Дата: 25.04.22 12:14
Оценка: +1
Здравствуйте, Anton Batenev, Вы писали:

С>> А скажите, для чего в HPC нужно шифрование? Чтобы тормозов прибавлять?

AB>Все данные, передаваемые по сети (или через любую другую недоверенную среду), должны быть защищены от MITM. Или вопрос был в чем-то другом?

В этом и вопрос. У вас есть свой собственный кластер со своей собственной сетью. С чего бы этой сети считаться недоверенной?

А если хочется шифрования в такой сети, то есть IPSec.
Re[7]: Julia
От: Anton Batenev Россия https://github.com/abbat
Дата: 25.04.22 13:55
Оценка: -1 :)
Здравствуйте, Слава, Вы писали:

С> В этом и вопрос. У вас есть свой собственный кластер со своей собственной сетью. С чего бы этой сети считаться недоверенной?


А с чего бы ей считаться доверенной? Начиная от межконтинентальной/трансграничной/междатацентровой передачи данных и заканчивая потенциальным вторжением злоумышленника на один+ хостов внутри контура.

С> А если хочется шифрования в такой сети, то есть IPSec.


IPSec худо-бедно работает точка-точка или между оборудованием одного вендора. В промышленных масштабах это не применимо.

P.S. В каких-то вырожденных случаях мы можем принять риски и отказаться от защиты (но это скорее должно быть исключением нежели правилом). Но для решения, которое претендует на универсальность, данные возможности должны идти по умолчанию и из коробки. Возможно когда-нибудь они там будут, но пока они в зачаточно-игрушечном состоянии.
Re[2]: Julia
От: student__  
Дата: 25.04.22 15:21
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>4) "In particular, do not sexualize the term "Julia" or any other aspects of the project. While "Julia" is a female name in many parts of the world, the programming language is not a person and does not have a gender." (отсюда). Люди, сосредоточены на гендерной повестке вместо продукта, что заставляет задуматься.


Я прочитал тот абзац и в упор не увидел, где там "гендерная повестка".
Сначала идет просьба не атаковать кого-либо по какому-либо признаку, принадлежности к той или иной социальной/религиозной/половой группе.
Просьба сначала подумать, не оскорбит ли участника дискуссии написанное.
Обычные правила хорошего тона, нармальные на любом форуме, в т.ч. и на РСДН.

Потом говорится, что Julia — это просто название ЯП, и у него нет пола.
Никакой "повестки" я тут не вижу.
Повестка — это когда говорится "мы топим за Х", где Х меньшинство, "потому что они недопредставлены в сообществе" и проч.
Там подобного нет.
Re[3]: Julia
От: student__  
Дата: 25.04.22 15:37
Оценка: +1
Здравствуйте, MaximVK, Вы писали:

MVK>Да, тут ты прав. Я использую пока для домашних проектов. Время от времени приходится писать какого-нибудь клиента, который уже есть для Питона (Binance, ClickHouse REST client). Но в целом, если есть код для Питона, то переписать его под Julia больших проблем нет. А вот для рабочих проектов — это да, проблема. Мы уже так в скалу поиграли


На сколько я понял — хоть на оффсайте написано более общо и общеупотребительно — основная цель создания Julia в том, чтобы заменить множество до сих пор используемых для научных и околонаучных вычислений ЯП (Fortran, Matlab, R, Python, C, C++) одним ЯП, который был бы лишен ограничений данных языков, но обладал достоинствами оных, также включая новые фичи.
Т.е.:
— код компилируется динамически при помощи LLVM, и оптимален по производительности, сравномо с Fortran/C
— Но явно его компилировать не надо, и для пользователя он интерпретируемый с динамической типизацией, как Python и Matlab
— Поддерживаются блокноты, как в Python
— Но нет GIL, как в Python
— Поддерживаются алгебраические типы данных, полноценные лямбды
— Поддерживается параллелизм из коробки, с корутинами и GPU
— Есть встроенный менеджер пакетов
— Бесплатный и открытый, в отличие от Matlab и Mathematica.

Если нет такой задачи что-то вычислять, то и выгоды от использования Julia может и не быть.
Re: Julia
От: Tiamer  
Дата: 25.04.22 19:37
Оценка: 11 (3)
Здравствуйте, MaximVK, Вы писали:

MVK>Привет,


MVK>Кто использовал Julia в рабочих проектах? Очень хочется уйти с Питона в скриптовых и ML задачах, смотрю в сторону Julia.


Мы использовали для написания HFT trading system. Вся бизнес логика на julia, trading framework, api с++

Tick to Trade < 2us 99% (это включает в себя framework + Julia logic)

Клевый язык. Все очень удобно. Интеграция с С++ на ура (memory layouts mapping c++<->julia)
Ну и быстро все.
Ну и вообще приятно на нем писать. Библиотек много, все что нужно есть в принципе.
Re: Julia
От: El Camino Real США  
Дата: 26.04.22 00:29
Оценка: 2 (1)
Здравствуйте, MaximVK, Вы писали:

MVK>Кто использовал Julia в рабочих проектах? Очень хочется уйти с Питона в скриптовых и ML задачах, смотрю в сторону Julia.

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