⚙️ Разработка масштабируемого векторного расширения в .NET
Kunal Pathak, разработчик в JIT-команде .NET Runtime, рассказывает о внедрении поддержки Scalable Vector Extension (SVE) на процессорах Arm в .NET.
SVE — это технология, позволяющая обрабатывать данные в параллельных потоках с гибкой длиной векторов, что значительно повышает производительность приложений, таких как машинное обучение и научные вычисления.
Команда Microsoft интегрировала поддержку SVE в .NET как экспериментальную функцию, позволяя разработчикам писать высокопроизводительный код, который использует современные архитектуры. Особое внимание уделено вызовам векторов и предикатов в API .NET, что упрощает адаптацию к различным аппаратным конфигурациям.
👉 Подробнеее
Kunal Pathak, разработчик в JIT-команде .NET Runtime, рассказывает о внедрении поддержки Scalable Vector Extension (SVE) на процессорах Arm в .NET.
SVE — это технология, позволяющая обрабатывать данные в параллельных потоках с гибкой длиной векторов, что значительно повышает производительность приложений, таких как машинное обучение и научные вычисления.
Команда Microsoft интегрировала поддержку SVE в .NET как экспериментальную функцию, позволяя разработчикам писать высокопроизводительный код, который использует современные архитектуры. Особое внимание уделено вызовам векторов и предикатов в API .NET, что упрощает адаптацию к различным аппаратным конфигурациям.
👉 Подробнеее
⚒️ Fluent Assertions — .NET-библиотека, которая предназначена для более читабельного и удобного написания тестов. Она предоставляет методы для проверки ожидаемых значений в тестах с использованием синтаксиса, который делает код тестов более выразительным и понятным.
👉 GitHub & Сайт
var recipe = new RecipeBuilder()
.With(new IngredientBuilder().For("Milk").WithQuantity(200, Unit.Milliliters))
.Build();
Action action = () => recipe.AddIngredient("Milk", 100, Unit.Spoon);
action
.Should().Throw<RuleViolationException>()
.WithMessage("*change the unit of an existing ingredient*")
.And.Violations.Should().Contain(BusinessRule.CannotChangeIngredientQuantity);
👉 GitHub & Сайт
💬 А вы используете
В C# символ
Строка формата может содержать до трёх секций, разделённых точкой с запятой. Это позволяет настраивать отображение чисел в зависимости от их значения ☝️
; section separator в C#?В C# символ
; в строках форматирования чисел служит разделителем секций, каждая из которых применяется в зависимости от знака числа (положительное, отрицательное или ноль). Строка формата может содержать до трёх секций, разделённых точкой с запятой. Это позволяет настраивать отображение чисел в зависимости от их значения ☝️
🤔 Основы математики в Machine Learning / Deep Learning
🗓 16 октября мы разберем ряд Тейлора, собственные векторы и другие ключевые понятия в ML – https://proglib.io/w/f98345b3
Спикер: Иван Потапов – Staff Machine Learning Engineer at ShareChat. Руководит командой, отвечающей за качество рекомендаций, и имеет 8-летний опыт в сфере машинного обучения.
😮 Что будем обсуждать:
– Теорию вероятностей: случайные величины, математическое ожидание и дисперсию.
– Линейную алгебру: векторы, матрицы, собственные векторы и собственные значения.
– Математический анализ: производные и разложение функций в ряд Тейлора.
👨💻 А еще после каждого блока вас ждет практика в применении полученных знаний.
🎯 Почему это важно?
Понимание математических основ помогает глубже разобраться в работающих под капотом алгоритмах ML/DL и эффективно применять их на практике.
Присоединяйтесь к нам и совершенствуйте свои навыки в машинном обучении!
📌 Регистрация по ссылке: https://proglib.io/w/f98345b3
🗓 16 октября мы разберем ряд Тейлора, собственные векторы и другие ключевые понятия в ML – https://proglib.io/w/f98345b3
Спикер: Иван Потапов – Staff Machine Learning Engineer at ShareChat. Руководит командой, отвечающей за качество рекомендаций, и имеет 8-летний опыт в сфере машинного обучения.
😮 Что будем обсуждать:
– Теорию вероятностей: случайные величины, математическое ожидание и дисперсию.
– Линейную алгебру: векторы, матрицы, собственные векторы и собственные значения.
– Математический анализ: производные и разложение функций в ряд Тейлора.
👨💻 А еще после каждого блока вас ждет практика в применении полученных знаний.
🎯 Почему это важно?
Понимание математических основ помогает глубже разобраться в работающих под капотом алгоритмах ML/DL и эффективно применять их на практике.
Присоединяйтесь к нам и совершенствуйте свои навыки в машинном обучении!
📌 Регистрация по ссылке: https://proglib.io/w/f98345b3
🔒🔥 В .NET 9 появится новый тип
Отличный вариант для выделенного типа
#dotnet #tip by Steven Giesel
Lock()Отличный вариант для выделенного типа
lock, поскольку это дает нам способ более четко выразить намерение нашего кода. #dotnet #tip by Steven Giesel
🔥 Продвинутый C#: серия статей для начинающих
▪️ Intro
▪️ Delegates
▪️ Multicast Delegates
▪️ Anonymous Functions, and Lambdas
▪️ Understanding Action and Func
▪️ Events
▪️ Subscribing to Events
▪️ Passing Data into Event Handlers
▪️ Unsubscribing from Events
▪️ Operator Overloading
▪️ Extension Methods
▪️ Extension Methods Demo
▪️ Creating Reusable Extension Methods
▪️ Intro
▪️ Delegates
▪️ Multicast Delegates
▪️ Anonymous Functions, and Lambdas
▪️ Understanding Action and Func
▪️ Events
▪️ Subscribing to Events
▪️ Passing Data into Event Handlers
▪️ Unsubscribing from Events
▪️ Operator Overloading
▪️ Extension Methods
▪️ Extension Methods Demo
▪️ Creating Reusable Extension Methods
This media is not supported in your browser
VIEW IN TELEGRAM
😎 Тем временем до .NET Conf 2024 осталось меньше месяца. Программа очень насыщенная, поэтому добавляйте в календарь, чтобы не пропустить 📆
👉 Ознакомиться с программой
👉 Ознакомиться с программой
👾🎮 Инди-студия StarlightLabsCo закрылась, а разработчик и её основатель Харрис Ротаермель опубликовал исходный код своих проектов.
Студия специализировалась на разработке игр с применением моделей машинного обучения для NPC и генерации сценариев.
Ну а теперь все желающие могут улучшать эти проекты или разрабатывать на их основе новые. Команда PVS-Studio решила не оставаться в стороне и разобрала основные ошибки в кодовой базе. Под катом — краткий обзор👇
🔗 Читать
Студия специализировалась на разработке игр с применением моделей машинного обучения для NPC и генерации сценариев.
Ну а теперь все желающие могут улучшать эти проекты или разрабатывать на их основе новые. Команда PVS-Studio решила не оставаться в стороне и разобрала основные ошибки в кодовой базе. Под катом — краткий обзор👇
🔗 Читать
🤯 Ситуация:
Вам поступает задача, вы на глаз оцениваете ее в две недели и получаете одобрение по срокам. Сначала все идет хорошо, пилите проект и ничто не предвещает беды.
Со временем задача усложняется, потому что данные приходят с задержками и вразнобой. Вы не делитесь с руководителем своими трудностями, потому что тогда это можно посчитать за некомпетентность.
А когда приходит время сдачи работы, выясняется, что большинство работы сделано неправильно.
💬 Как думаете, как стоило поступить исполнителю?
Вам поступает задача, вы на глаз оцениваете ее в две недели и получаете одобрение по срокам. Сначала все идет хорошо, пилите проект и ничто не предвещает беды.
Со временем задача усложняется, потому что данные приходят с задержками и вразнобой. Вы не делитесь с руководителем своими трудностями, потому что тогда это можно посчитать за некомпетентность.
А когда приходит время сдачи работы, выясняется, что большинство работы сделано неправильно.
💬 Как думаете, как стоило поступить исполнителю?
🔥 Работа с паттерном result: серия статей для C#-разработчика от Эндрю Лока
🔸 Первая часть посвящена замене использования исключений для управления потоком выполнения на паттерн result. Это позволяет избежать ряда проблем, но часто добавляет лишний шаблонный код.
🔸 Вторая часть показывает, как с помощью синтаксиса LINQ можно уменьшить этот шаблонный код. В результате методы становятся проще для чтения, точно описывают возвращаемые значения без исключений и корректно обрабатывают ошибки на промежуточных этапах.
🔸 Первая часть посвящена замене использования исключений для управления потоком выполнения на паттерн result. Это позволяет избежать ряда проблем, но часто добавляет лишний шаблонный код.
🔸 Вторая часть показывает, как с помощью синтаксиса LINQ можно уменьшить этот шаблонный код. В результате методы становятся проще для чтения, точно описывают возвращаемые значения без исключений и корректно обрабатывают ошибки на промежуточных этапах.
🔤 Код без боли: шрифты, которые спасут твои глаза
Если ты всё ещё не нашел идеальный шрифт для работы, эта статья может спасти твоё зрение.
Рассказываем:
▪️как настроить шрифт в Visual Studio Code;
▪️что такое лигатуры шрифтов;
▪️какие шрифты для программирования популярны.
👉 Читать обо всём здесь
Если ты всё ещё не нашел идеальный шрифт для работы, эта статья может спасти твоё зрение.
Рассказываем:
▪️как настроить шрифт в Visual Studio Code;
▪️что такое лигатуры шрифтов;
▪️какие шрифты для программирования популярны.
👉 Читать обо всём здесь
❗Вакансии «Библиотеки программиста» — ждем вас в команде!
Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем:
👉контент-менеджеров для ведения телеграм-каналов
👉Переводчик и автор оригинальных статей
Подробности тут
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Ждем ваших откликов 👾
Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем:
👉контент-менеджеров для ведения телеграм-каналов
👉Переводчик и автор оригинальных статей
Подробности тут
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Ждем ваших откликов 👾
job.proglib.io
Вакансии в медиа «Библиотека программиста»
Количество проектов в редакции постоянно растет, так что нам всегда нужны специалисты
🔥 Команда Microsoft представила .NET 9 Release Candidate 2 и System.Text.Json 9.0
Выпуск System.Text.Json 9.0 включает множество функций, в первую очередь с упором на схему JSON и интеллектуальную поддержку приложений + вас ждет поддержка ссылочных типов nullable, настройка имен членов enum, out-of-order metadata deserialization и customizing serialization indentation.
В анонсе релиз-кандидата вы можете найти заметки о следующих улучшениях:
📚 Библиотеки
⏱️ Рантайм
🛠️ SDK
🌐 ASP.NET Core с обновлением до последних версий Bootstrap, jQuery и jQuery Validation
📱.NET MAUI, включая Xcode 16 и последние версии SDK
#новости
Выпуск System.Text.Json 9.0 включает множество функций, в первую очередь с упором на схему JSON и интеллектуальную поддержку приложений + вас ждет поддержка ссылочных типов nullable, настройка имен членов enum, out-of-order metadata deserialization и customizing serialization indentation.
В анонсе релиз-кандидата вы можете найти заметки о следующих улучшениях:
📚 Библиотеки
⏱️ Рантайм
🛠️ SDK
🌐 ASP.NET Core с обновлением до последних версий Bootstrap, jQuery и jQuery Validation
📱.NET MAUI, включая Xcode 16 и последние версии SDK
#новости
🎮⚙️ Неправильные настройки импорта в Unity убивают вашу игру
Есть много вещей, которые могут пойти не так при разработке вашей игры. Модели могут иметь больше треугольников, чем может обработать целевая платформа, у них может быть слишком много материалов, поэтому батчинг не будет работать эффективно, а алгоритмы могут быть слишком затратными для процессора.
Это сложные проблемы, и вы, как разработчик игр, всегда должны помнить о необходимости соблюдать баланс между визуальной составляющей и производительностью. Тем не менее, есть некоторые вещи настолько простые, что мы часто забываем об их существовании, но они могут серьезно повлиять на производительность вашей игры:
☑️ Настройки импорта текстур: тип текстуры, размер и формат.
☑️ Настройки импорта аудиоклипов (звуковых файлов) и оптимизация звуковых эффектов.
👉 Подробнее об этом читайте в нашей статье
👉 Зеркало
Есть много вещей, которые могут пойти не так при разработке вашей игры. Модели могут иметь больше треугольников, чем может обработать целевая платформа, у них может быть слишком много материалов, поэтому батчинг не будет работать эффективно, а алгоритмы могут быть слишком затратными для процессора.
Это сложные проблемы, и вы, как разработчик игр, всегда должны помнить о необходимости соблюдать баланс между визуальной составляющей и производительностью. Тем не менее, есть некоторые вещи настолько простые, что мы часто забываем об их существовании, но они могут серьезно повлиять на производительность вашей игры:
☑️ Настройки импорта текстур: тип текстуры, размер и формат.
☑️ Настройки импорта аудиоклипов (звуковых файлов) и оптимизация звуковых эффектов.
👉 Подробнее об этом читайте в нашей статье
👉 Зеркало