Как стать автором
Обновить
0.89

Julia *

Высокоуровневый высокопроизводительный язык

Сначала показывать
Порог рейтинга
Уровень сложности

Доверяем но проверяем: DevOps

Время на прочтение5 мин
Количество просмотров3.9K

Очень популярный проект, но совершенно, на мой взгляд не заслуженно. Качество кода вызывает вопросы, нельзя указывать свои списки с regex паттернами для проверки, и он не умеет отдавать правильный JSON в stdout, что делает его бесполезным автоматизации или пользовании на бэкенде.

Прекрасная возможность:

Использовать Julia – один из лучших языков программирования, который почему-то считается нишевым. Область его применения гораздо шире HPC. Он идеально подходит для решения самых разных задач.

Научиться как правильно публиковаться на GitHub.

Научиться делать линуксовые пакеты.

Читать далее

Новости

Старый конь борозды не испортит: классические методы обработки изображений все ещё актуальны

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров2.2K

Что такое цифровая обработка изображений? Зачем нам вообще знать про алгоритмы обработки, когда есть фотошоп и фильтры в телефоне? Или всё можно отдать нейросети и получить крутой результат? И при чём тут Julia, наконец? Будем разбираться!

Мы запускаем серию статей про обработку изображений с использованием языка Julia и вычислительной среды Engee. Задача – ответить на часто встречающиеся вопросы вроде актуальности этого направления компьютерной науки, задач, решаемых методами обработки изображений, применения и реализации стандартных и «умных» алгоритмов. 

В первой части ознакомимся с основами на примере сегментации спутникового снимка.

Читать далее

Доверяем, но проверяем

Время на прочтение3 мин
Количество просмотров2.2K

Config Sprawl – конфигов становится все больше, каждый IaC инструмент «изобретает» свой диалект Yaml или Json. K8s, Helm, CloudFormation, Ansible, Istio, Spring Boot properties – современные проекты зачастую содержат больше конфигов чем кода и если для Java или Kotlin есть отличные IDE, линтеры и статические анализаторы кода вроде Sonarqube, то для IaC какого-то одного инструмента нет.

Поэтому сделаем его сами.

Читать далее

Шпаргалка по типам Julia для инженеров и не только

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров995

Статья-шпаргалка о типах данных в Julia: от примитивных, до параметрических абстрактных. Рассказывается, почему range умеет работать как массив, почему Vector{Int64} не является подтипом Vector{Real}, но является подтипом Vector{<:Real}, чем отличается неизменяемая структура от изменяемой структуры с неизменяемыми полями

Читать далее

Julia и Engee: созданы для параллельных вычислений

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров5.5K

Как загрузить GPU инженерными вычислениями? Давайте я расскажу, как с помощью Julia наконец смог втащить высокопроизводительные вычисления в свою немудрёную инженерную работу. Это был долгий путь, но мне кажется, что Julia стала моим лучшим другом в мире GPU/HPC.

Читать далее

Биорадиолокация в Engee

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров1K

Привет, Хабр! По своей профессиональной деятельности я занимаюсь моделированием и разработкой цифровых алгоритмов в области радиолокации. Однако универ закончил по специальности «Биотехнические и медицинские аппараты и системы», поэтому всегда хотел совместить эти два направления. И для этого как нельзя лучше подходит область биорадиолокации.

Биорадиолокация – набирающий популярность бесконтактный метод измерения жизненно важных показателей (ЖВП) человека, таких, как сердцебиение и дыхание. В отличие от контактных систем радары не нуждаются в прикреплении каких-либо датчиков на поверхность тела пациента. 

В статье разберём построение относительно простой, но в то же время полезной модели биорадара. Модель разбита на две части. Первая часть посвящена моделированию перемещения грудной клетки человека. Вторая часть модели – про разработку FMCW-радара с последующим анализом его эффективности и применимости для обнаружения ЖВП. Итак, начнем…

Читать далее

Engee – лучшая альтернатива MATLAB, Simulink, Amesim

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров10K

Современные реалии рынка инженерного ПО в России бросают вызов техническим специалистам любого уровня, так как перед ними встает задача найти отечественную альтернативу привычным CAE-системам для технических вычислений и модельно-ориентированного проектирования, таким как MATLAB, Simulink, Amesim. Это непросто, поскольку предприятиям нужно максимально сохранить привычный рабочий процесс и имеющиеся наработки, в том числе многолетние, и при этом безболезненно внедрить новую систему на рабочие места и обучить сотрудников.

Мы можем с уверенностью заявить, что соответствующая таким требованиям альтернатива MATLAB, Simulink, Amesim найдена, и это среда Engee.

Читать далее

Моделирование блэкаутов: какой софт сейчас используют российские электроэнергетики?

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров3K

Привет, Хабр! Всем известно, на чём программисты пишут код, — большинство из вас хоть раз слышали о Python, Java или C++. Но задумывались ли вы когда-нибудь, какими инструментами разработки пользуются инженеры-электроэнергетики? Ведь их задача — не просто написать код, а смоделировать целую энергосистему и внедрить в нее новый алгоритм без катастрофических последствий. Сегодня мы хотим погрузить вас в мир электроэнергетики и рассказать про то, какой российский софт пришел на смену зарубежному.

Читать далее

Шесть причин выучить Julia в 2024 году

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров16K


В этом году Экспонента вместе со средой разработки
Engee стали информационными партнерами бесплатной Летней школы Julia. Это уникальное событие для России, ведь еще никто не проводил онлайн-курсы по этому современному и очень перспективному языку программирования. Мы уверены, что в современных политических и экономических реалиях за этим языком видится большое будущее, особенно в научной и инженерной средах, и приглашаем всех желающих принять участие в этом важном событии.

А чтобы подогреть ваш интерес, мы подготовили небольшую статью (опирались на этот материал, спасибо авторам, и добавили много тезисов на основе нашего опыта с Julia) с описанием основных причин, почему вы должны срочно заинтересоваться Julia и подать заявку на Летнюю школу. Приятного чтения!

Читать далее

Искусство мозговых волн. Как ученые визуализируют вызванные потенциалы: результаты опроса

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров1.4K

Меня зовут Владимир Михеев, я работаю в лаборатории Вычислительный когнитивных наук Университета Штутгарта. Мы разрабатываем библиотеки для анализа, симуляции и визуализации ЭЭГ данных на языке Julia под зонтичным брендом Unfold.

В социальных и психологических науках уже лет десять бушует кризис невоспроизводимости: результаты многих исследований не повторяются. Обычно уделяют внимание статистическим методам, размерам выборки, честности ученых. Мы решили обратить внимание на визуализацию. Это не только вопрос о красоте графиков, это еще и серьезный вопрос о корректности представления данных. И, как показывает наше исследование, ученые часто допускают при этом досадные ошибки.

Эта статья может быть вам полезна если вы:

Хоть раз рисовали потенциал вызванного действия.
Визуализируете временные данные.
Радеете за воспроизводимость научных исследований.
Разрабатываете аналитическое ПО.
Делаете красивые графики и хотите, чтобы они были корректными.

Раскрыть тайны мозга

Julia. Метапрограммирование и макросы

Уровень сложностиСредний
Время на прочтение20 мин
Количество просмотров3K

Julia является одним из самых востребованных математических языков программирования. Однако некоторые особенности этого языка, которые обеспечивают гибкость и позволяют расширять её области применения, не столь часто используются программистами. В этой статье пойдёт речь о механизме макросов, который выгодно её отличает от прочих скриптовых языков программирования.

Механизм макросов используется в Julia довольно часто. Макрос при использовании начинается с символа @ и имеет вид @show, @benchmark… А также, в неявной форме, макросами являются регулярные выражения r"[a..z]" (это макрос с полным именем r_str), а также многочисленные другие способы применения, включая примеры Modia.jl / Unitful.jl с макросом u_str, где физическая величина «вшита» в число:

L = 0.8u"m",
m = 1.0u"kg",
d = 0.5u"Nms/rad",
g = 9.81u"m/s^2",

Читать далее

Кратко про FP в Julia

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.4K

В отличие от императивного подхода, где выражается последовательность операций, функциональное программирование (FP) сосредотачивается на "что" и "как" должно быть вычислено, а не на "когда". Это приводит к более чистому, модульному и легко тестируемому коду.

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

Читать далее

Временные ряды с Julia с библиотекой TimeSeries.jl

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.8K

Julia позволяет достигать скорости, сравнимой с C, что делает её хрошим выбором для временных рядов.

Пакет TimeSeriesпредоставляет удобные методы для работы с данными временных рядов в Julia.

Читать далее

Ближайшие события

Julia в машинном обучение: база

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров3.8K

Привет, Хабр!

Julia зародилась в 2012 году, благодаря усилиям четырех энтузиастов-разработчиков: Джефф Безансон, Стефан Карпински, Вирал Би Шах, и Алан Эдельман. Они стремились создать язык, который сочетал бы легкость Python, скорость C, динамичность Ruby, лингвистическую чистоту Lisp и возможности математических систем вроде Matlab. Им удалось! Julia – это слияние простоты и мощи.

Благодаря JIT-компиляции, код Julia может выполняться с скоростью, сопоставимой с кодом, написанным на C или Fortran.

Читать далее

Automate the boring stuff with Julia

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров5.3K

Считается, что Julia – это нишевый язык созданный для лабораторий, научных симуляций и HPC. Хотя на самом деле благородя свой экспрессивности и динамизму Julia можно и нужно использовать для автоматизации и скриптинга. Давайте на паре простых примеров посмотрим как Julia можно использовать для решения рутинных задач.

Читать далее

Julia 1.9. Основные моменты

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров3.8K

перевод

7-го мая 2023, после 3-х бета-версий и 3-х релиз-кандидатов наконец выпущена новая версия языка программирования Julia 1.9. Мы хотели бы поблагодарить всех участников, разработчиков этого выпуска и всех тех, кто тестировал и помог выявить проблемы в предварительных выпусках. Без вас этот выпуск был бы невозможен.

Полный список изменений можно найти в файле release-1.9/NEWS.md, а здесь мы дадим развернутый обзор некоторых ключевых моментов выпуска.

Читать далее

Mojo может стать крупнейшим достижением в области разработки языков программирования за последние десятилетия

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров127K

Mojo — это новый язык программирования, основанный на Python, который устраняет имеющиеся у него проблемы производительности и развёртывания.

Об авторе: Джереми Говард (Jeremy Howard) — Data Scientist, исследователь, разработчик, преподаватель и предприниматель. Джереми является одним из основателей исследовательского института fast.ai, занимающегося тем, чтобы сделать глубокое обучение более доступным, а также он является почётным профессором Университета Квинсленда. Ранее Джереми был выдающимся научным сотрудником в Университете Сан‑Франциско, где он был основателем Инициативы Уиклоу «Искусственный интеллект в медицинских исследованиях».

Mojo – это Python++

Genie Builder v0.2: ускорьте разработку вашего приложения на Julia

Время на прочтение8 мин
Количество просмотров2K

В этой статье представлен перевод руководства: "How to quickly turn your Julia code into a web app with Genie Builder". В статье пойдет речь о новом инструменте быстрой разработки web-приложений на основе Ginie Framework - платформы для интернет приложений на языке Julia.

Читать далее

Максимальная оптимизация игры «Жизнь» на Julia

Время на прочтение10 мин
Количество просмотров10K

Это очень хорошой case для оптимизации. Алгоритм крайне прост и его знают все. Но сколько можно сделать!

Читать далее

Glider guns vs случайная конфигурация в игре «Жизнь»

Время на прочтение2 мин
Количество просмотров3.4K

И снова к старой теме. В старой статье я сделал два предположения:

Гипотезы

Первая гипотеза касается окончания 'движухи' - в широком диапазоне изначальных плотностей p от 0.1 до 0.7, после окончания 'движухи' 'пепел' имеет одну и ту же плотность, около 0.27

Так как ружья накачают 'вселенную' глайдерами при сколь угодно малой изначальной плотности, и снова начнется 'движуха', то вторая гипотеза сильнее:

В пределе при любой плотности p (кроме вырожденных случаев p=0, p=1) получается 'пепел' плотности 0.027

На Julia, имея теперь огромные мощности, я решил проверить обе. Вас ждет красивое видео

Читать далее