🔥 Знакомьтесь, преподаватель нашего нового курса по ML — Мария Жарова.
В карточках рассказали, чем Мария занимается и какие советы даёт тем, кто хочет расти в IT и Data Science ☝️
А если вы уже поняли, что тянуть нечего, начните свой путь в ML правильно: с реальной практикой, поддержкой ментора и видимым результатом.
👉 Записывайтесь на курс
В карточках рассказали, чем Мария занимается и какие советы даёт тем, кто хочет расти в IT и Data Science ☝️
А если вы уже поняли, что тянуть нечего, начните свой путь в ML правильно: с реальной практикой, поддержкой ментора и видимым результатом.
👉 Записывайтесь на курс
❤2👍1
🚦 Долгосрочное планирование: мираж или необходимость
IT — это уникальная отрасль, где скорость изменений настолько велика, что планировать дольше, чем на спринт кажется безумием.
Почему планирование — это опасная ловушка:
• Сложно предсказать технологические тренды.
• Чаще требуется гибкость и быстрота изменений, чем спланированный ком задач.
• Конкуренты не спят и могут испортить ваши планы.
Когда планирование полезно:
• Крупные проекты не могут плавать вечно, им нужен фундамент и горизонт запланированных действий.
• Долгосрочные планы показывают инвесторам, что компания думает о будущем и готова к масштабированию.
💬 Какой у вас горизонт планирования? Нужно ли долгосрочное планирование в IT? Делитесь мыслями в комментариях 👇
🐸 Библиотека шарписта #междусобойчик
IT — это уникальная отрасль, где скорость изменений настолько велика, что планировать дольше, чем на спринт кажется безумием.
Почему планирование — это опасная ловушка:
• Сложно предсказать технологические тренды.
• Чаще требуется гибкость и быстрота изменений, чем спланированный ком задач.
• Конкуренты не спят и могут испортить ваши планы.
Когда планирование полезно:
• Крупные проекты не могут плавать вечно, им нужен фундамент и горизонт запланированных действий.
• Долгосрочные планы показывают инвесторам, что компания думает о будущем и готова к масштабированию.
💬 Какой у вас горизонт планирования? Нужно ли долгосрочное планирование в IT? Делитесь мыслями в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔1
📰 Новости семи прошлых дней
Прошла неделя и мы снова собрали для вас то, что могло уйти из вашего инфополя.
— .NET 10 Preview 6
Microsoft представила шестую предварительную версию .NET 10, снова улучшения и фиксы.
— MCP-сервер на .NET и публикация его на NuGet
С помощью новых шаблонов .NET 10 и SDK ModelContextProtocol разработчики могут создавать мощные серверы, расширяющие возможности AI, и делиться ими с сообществом через NuGet.
— Как защитить поставки ПО
Рекомендации по защите цепочки поставок программного обеспечения. Разумно ли внедрение Software Bill of Materials (SBOM), практик DevSecOps и принципа Zero Trust.
— Ваш секретный козырь для резюме
— Как продвинуть резюме в ТОП на HeadHunter
🐸 Библиотека шарписта #свежак
Прошла неделя и мы снова собрали для вас то, что могло уйти из вашего инфополя.
— .NET 10 Preview 6
Microsoft представила шестую предварительную версию .NET 10, снова улучшения и фиксы.
— MCP-сервер на .NET и публикация его на NuGet
С помощью новых шаблонов .NET 10 и SDK ModelContextProtocol разработчики могут создавать мощные серверы, расширяющие возможности AI, и делиться ими с сообществом через NuGet.
— Как защитить поставки ПО
Рекомендации по защите цепочки поставок программного обеспечения. Разумно ли внедрение Software Bill of Materials (SBOM), практик DevSecOps и принципа Zero Trust.
— Ваш секретный козырь для резюме
— Как продвинуть резюме в ТОП на HeadHunter
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Вы ещё можете застать старый добрый Proglib — с вечным доступом к курсам.
С 1 августа всё меняется: навсегда — останутся только те, кто успел купить сейчас.
-40% на все курсы. Включая обновлённый Python (кроме курса по AI-агентам)
Это не просто распродажа. Это — последняя точка входа в Proglib Academy по старым правилам.
📚 Выбрать и забрать свой курс навсегда → https://clc.to/TBtqYA
С 1 августа всё меняется: навсегда — останутся только те, кто успел купить сейчас.
-40% на все курсы. Включая обновлённый Python (кроме курса по AI-агентам)
Это не просто распродажа. Это — последняя точка входа в Proglib Academy по старым правилам.
📚 Выбрать и забрать свой курс навсегда → https://clc.to/TBtqYA
❤1
Forwarded from Библиотека задач по C# | тесты, код, задания
Какой из методов интерфейса IEnumerator должен быть реализован для поддержки итерации в C#?
👾 — MoveNext()
👍 — MovePrevious()
🥰 — ResetCurrent()
⚡️ — Advance()
Библиотека задач по C#
👾 — MoveNext()
👍 — MovePrevious()
🥰 — ResetCurrent()
⚡️ — Advance()
Библиотека задач по C#
👾138🤩2🌚2
.NET Developer — 100 000 ₽, Удалёнка.
Middle C# backend разработчик — до 2 000 $, Удалённо.
C# / .NET Core Backend Разработчик — от 140 000 до 180 000 ₽, Удалёнка.
Senior .NET Developer — от 225 000 до 365 000 ₽, Удалёнка.
.NET‑разработчик (стажер) — Гибрид (Москва).
Бустер — Удалённо (в любом городе мира).
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱5👍2🤩1
🛠 Кастомная обработка событий
NEsper — это библиотека для .NET, предназначенная для сложной обработки событий.
Она позволяет анализировать потоки данных в реальном времени с минимальной задержкой, используя принципы, похожие на SQL, но для событий.
Основные возможности:
• Обрабатывайте события по мере их поступления, выявляйте аномалии или интересные паттерны без задержки.
• Язык для описания правил обработки событий, чем-то похож на SQL, что делает его удобным для разработчиков.
• Поддерживает распределённые системы и интегрируется с Кафкой и RabbitMQ.
Пример использования:
В этом примере создаётся обработчик событий, который срабатывает, когда значение события превышает 100.
Такой шустрый инструмент пригодится в финансах, мониторинге и для обнаружения аномалий.
➡️ Обработать все события
🐸 Библиотека шарписта #буст
NEsper — это библиотека для .NET, предназначенная для сложной обработки событий.
Она позволяет анализировать потоки данных в реальном времени с минимальной задержкой, используя принципы, похожие на SQL, но для событий.
Основные возможности:
• Обрабатывайте события по мере их поступления, выявляйте аномалии или интересные паттерны без задержки.
• Язык для описания правил обработки событий, чем-то похож на SQL, что делает его удобным для разработчиков.
• Поддерживает распределённые системы и интегрируется с Кафкой и RabbitMQ.
Пример использования:
using EsperTech.NEsper;
using EsperTech.NEsper.Client;
using EsperTech.NEsper.Config;
var config = new Configuration();
config.AddEventType("MyEvent", typeof(MyEvent));
var epService = EPServiceProviderManager.GetDefaultProvider(config);
var epStatement = epService.EPAdministrator.CreateEPL("select * from MyEvent where value > 100");
epStatement.Events += (sender, e) =>
{
foreach (var ev in e.NewEvents)
{
Console.WriteLine($"Detected event: {ev.Get("value")}");
}
};
В этом примере создаётся обработчик событий, который срабатывает, когда значение события превышает 100.
Такой шустрый инструмент пригодится в финансах, мониторинге и для обнаружения аномалий.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍3
🤖 Как выбрать подходящий режим GitHub Copilot
GitHub Copilot Chat от Microsoft теперь предлагает два режима — Ask Mode и Agent Mode. Оба инструмента предназначены для улучшения работы разработчиков, но каждый из них ориентирован на разные типы задач.
Сами Microsoft помогают разобраться у себя в блоге какой режим выбрать вам.
В Ask Mode Copilot помогает вам, предоставляя четкие ответы и примеры, но при этом не взаимодействует с кодом, находящимся в вашем проекте. Например, запрос «Что такое LINQ?».
В Agent Mode Copilot не только предоставляет ответы, но и выполняет действия в вашем коде, что делает его незаменимым инструментом для более сложных задач. Как пример будет запрос «Отрефактори этот метод».
➡️ Блог разработчиков
🐸 Библиотека шарписта #свежак
GitHub Copilot Chat от Microsoft теперь предлагает два режима — Ask Mode и Agent Mode. Оба инструмента предназначены для улучшения работы разработчиков, но каждый из них ориентирован на разные типы задач.
Сами Microsoft помогают разобраться у себя в блоге какой режим выбрать вам.
В Ask Mode Copilot помогает вам, предоставляя четкие ответы и примеры, но при этом не взаимодействует с кодом, находящимся в вашем проекте. Например, запрос «Что такое LINQ?».
В Agent Mode Copilot не только предоставляет ответы, но и выполняет действия в вашем коде, что делает его незаменимым инструментом для более сложных задач. Как пример будет запрос «Отрефактори этот метод».
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Git worktrees — это возможность использовать несколько рабочих деревьев (worktrees) для одного репозитория.
В каждом таком дереве будет своя ветка, и вы можете работать с ними одновременно, без необходимости каждый раз переключаться с одной на другую.
Как это работает
1. Вы создаете новый worktree для выбранной ветки. В результате появляется отдельный каталог, где будет находиться эта ветка:
git worktree add ../my-feature-branch my-feature-branch
2. После создания worktree вы можете работать с веткой, не вмешиваясь в другие ветки. Это удобно, когда нужно параллельно тестировать изменения или делать ревью PR, не мешая текущей работе.
Когда работа с веткой завершена, можно её удалить:
git worktree remove ../my-feature-branch
Практический пример
Если вам нужно протестировать PR, вы можете создать отдельный worktree для его ветки:
git worktree add ../pr-branch pr-branch
cd ../pr-branch
Применяйте и властвуйте над ветками гита.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔8❤1
✏️ Промпт для создания абстракции
Мы подготовили для вас полезный промпт, который поможет создать абстракцию для любой задачи.
Используйте его, чтобы сделать ваш код более гибким, расширяемым и удобным для поддержки.
Промпт:
Хороший способ улучшить архитектуру вашего кода и овладеть лучшими практиками ООП.
🐸 Библиотека шарписта #буст
Мы подготовили для вас полезный промпт, который поможет создать абстракцию для любой задачи.
Используйте его, чтобы сделать ваш код более гибким, расширяемым и удобным для поддержки.
Промпт:
Опиши, как создать абстракцию для задачи "[вставьте краткое описание задачи]" с использованием методик объектно-ориентированного проектирования. В ответе подробно изложи основные этапы проектирования абстракции, включая выявление ключевых классов и их ответственности, применение принципов SOLID и паттернов проектирования. Добавь пример кода на С# или диаграмму классов UML, иллюстрирующую предложенную абстракцию.
Хороший способ улучшить архитектуру вашего кода и овладеть лучшими практиками ООП.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🤩2🌚1👾1
🔄 Обновление MCP C# SDK
В свежем обновлении Microsoft выводит разработку AI‑приложений на новый уровень. Разберём самое вкусное в обновлении.
• Диалоговый сбор данных
Механизм, позволяющий вашим приложениям заранее задавать пользователю структурированные вопросы — например, «Введите количество элементов» (число), «Укажите путь к файлу» (строка) или «Разрешить доступ?» (флаг).
• Структурированный вывод инструментов
Позволяет инструментам явно описывать формат возвращаемых данных через JSON‑схему: какие поля будут, какого они типа и какие обязательны.
• Улучшенные метаданные
Расширенный блок _meta, включающий человекочитаемые поля name и title для каждого инструмента и подсказки.
Как обновиться
Чтобы начать пользоваться всеми этими возможностями, достаточно ввести в консоли проекта команду:
После этого пересоберите приложение и убедитесь, что используемая версия пакета соответствует 2025‑06‑18.
🐸 Библиотека шарписта #свежак
В свежем обновлении Microsoft выводит разработку AI‑приложений на новый уровень. Разберём самое вкусное в обновлении.
• Диалоговый сбор данных
Механизм, позволяющий вашим приложениям заранее задавать пользователю структурированные вопросы — например, «Введите количество элементов» (число), «Укажите путь к файлу» (строка) или «Разрешить доступ?» (флаг).
• Структурированный вывод инструментов
Позволяет инструментам явно описывать формат возвращаемых данных через JSON‑схему: какие поля будут, какого они типа и какие обязательны.
• Улучшенные метаданные
Расширенный блок _meta, включающий человекочитаемые поля name и title для каждого инструмента и подсказки.
Как обновиться
Чтобы начать пользоваться всеми этими возможностями, достаточно ввести в консоли проекта команду:
dotnet add package ModelContextProtocol --prerelease
После этого пересоберите приложение и убедитесь, что используемая версия пакета соответствует 2025‑06‑18.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁25❤1
🔥 Хороший ML-разработчик не начинает с нейросетей
На собеседовании по ML System Design кандидату дают задачу «предсказать отток», а он сразу лезет в нейросети. Красиво, модно, дорого.
Но профи думает иначе:
💭 Логрегрессия? Градиентный бустинг?
💭 А сколько у нас данных и времени?
💭 Что с интерпретируемостью?
Потому что не выбрать адекватную модель — это уже ошибка.
Нейросети — это круто. Но без понимания классического ML вы просто «подключаете модельку», а не строите решения.
➡️ На курсе разберём:
— линейные модели, деревья, PCA, кластеризацию
— метрики, переобучение, bias vs variance
— инженерные подводные камни, которые идут сразу после fit()
🎁 Скидка 10 000₽ по промокодуEarlybird , только до 27 июля.
А ещё — подарок для первых 10 участников: специальный лонгрид по теме курса, чтобы вы могли начать погружение в материал уже сегодня.
🔗 Успей записаться — и начни карьеру в Data Science уже через 3 месяца!
На собеседовании по ML System Design кандидату дают задачу «предсказать отток», а он сразу лезет в нейросети. Красиво, модно, дорого.
Но профи думает иначе:
💭 Логрегрессия? Градиентный бустинг?
💭 А сколько у нас данных и времени?
💭 Что с интерпретируемостью?
Потому что не выбрать адекватную модель — это уже ошибка.
Нейросети — это круто. Но без понимания классического ML вы просто «подключаете модельку», а не строите решения.
➡️ На курсе разберём:
— линейные модели, деревья, PCA, кластеризацию
— метрики, переобучение, bias vs variance
— инженерные подводные камни, которые идут сразу после fit()
🎁 Скидка 10 000₽ по промокоду
А ещё — подарок для первых 10 участников: специальный лонгрид по теме курса, чтобы вы могли начать погружение в материал уже сегодня.
🔗 Успей записаться — и начни карьеру в Data Science уже через 3 месяца!
👍2❤1
🧑💻 Как отменить асинхронную операцию с помощью CancellationToken
Одной из ключевых особенностей асинхронного программирования в C# является возможность отменить долгие или зависшие операции, используя
Для создания токена отмены используется объект типа
Пример отмены с помощью токена. Вызываем функцию и передаём в неё токен:
Сама функция:
При отмене операции метод выбрасывает исключение
🐸 Библиотека шарписта #буст
Одной из ключевых особенностей асинхронного программирования в C# является возможность отменить долгие или зависшие операции, используя
CancellationToken
. CancellationToken
— это объект, который передается в метод асинхронной операции. Он позволяет сигнализировать об отмене операции, если она больше не требуется. Для создания токена отмены используется объект типа
CancellationTokenSource
, который предоставляет токен для отмены, а также метод Cancel()
, который сигнализирует об отмене.Пример отмены с помощью токена. Вызываем функцию и передаём в неё токен:
using System;
using System.Threading;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
// Создаем объект CancellationTokenSource
var cancellationTokenSource = new CancellationTokenSource();
// Получаем токен отмены
var cancellationToken = cancellationTokenSource.Token;
// Запускаем асинхронную задачу
var task = LongRunningOperation(cancellationToken);
// Через 3 секунды отменяем операцию
await Task.Delay(3000);
cancellationTokenSource.Cancel();
try
{
// Ожидаем завершения операции
await task;
}
catch (OperationCanceledException)
{
Console.WriteLine("Операция была отменена.");
}
}
}
Сама функция:
// Асинхронная операция, которая может быть отменена
static async Task LongRunningOperation(CancellationToken cancellationToken)
{
Console.WriteLine("Операция началась.");
for (int i = 0; i < 10; i++)
{
// Проверка на отмену операции
if (cancellationToken.IsCancellationRequested)
{
Console.WriteLine("Операция отменена.");
throw new OperationCanceledException();
}
// Имитация работы
Console.WriteLine($"Шаг {i + 1}...");
await Task.Delay(1000); // Задержка в 1 секунду
}
Console.WriteLine("Операция завершена.");
}
}
При отмене операции метод выбрасывает исключение
OperationCanceledException
, которое можно ловить и обрабатывать соответствующим образом. Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤8😁3🥱1
Асинхронное программирование стало неотъемлемой частью разработки на C#. Но появляется вопрос: нужно ли использовать асинхронность в каждом методе?
Когда стоит использовать
async
— Асинхронность идеально подходит для работы с медленными операциями, такими как запросы к базе данных, сетевые операции или чтение/запись файлов.
— Асинхронный код позволяет серверам и приложениям обрабатывать значительно больше запросов без блокировки.
— Применяя async/await, мы освобождаем потоки от ожидания завершения I/O операций.
Но за плюсами спрятались и минусы
— Асинхронные методы всегда требуют дополнительных накладных расходов, таких как создание задач, контекст переключения и управление потоками.
— Применение асинхронности везде может привести к проблемам с синхронизацией данных и контекстом выполнения.
— Если приложение не работает с большим количеством асинхронных операций, добавление
async/await
в каждый метод не даст значительного прироста производительности.Please open Telegram to view this post
VIEW IN TELEGRAM
❤9
💻 Удалённая разработка в Rider
Не всегда нужно хранить код у себя на пк. Хранение и выполнение кода на удалённых хостах и контейнерах давно стало реальностью.
Rider делает работу с с такими хостами настолько удобной, что даже самые сложные задачи становятся простыми.
Подключение к серверу через SSH
Настроить SSH-подключение в Rider — проще, чем вы думаете. Всё, что нужно — это пару кликов в настройках IDE.
1. Откройте File → Settings → Tools → Deployment.
2. Выберите Add Remote Server и в качестве типа соединения выберите SSH.
3. Введите IP-адрес удалённого сервера, пользовательские данные и путь к приватному ключу (или пароль).
4. Нажмите Test Connection и, если всё в порядке, готово — подключение установлено!
🧑💻 Работа с проектами на удалённом сервере
Когда подключение установлено, вы получаете доступ к файловой системе удалённого сервера. Это значит, что вы можете:
• Перемещать файлы между локальной машиной и сервером
• Редактировать код, компилировать и запускать его на сервере.
• Открывать логи, работать с конфигурационными файлами и запускать процессы прямо из Rider.
Один из самых полезных инструментов при удалённой разработке — это отладка через SSH.
Вы можете подключиться к процессу, который работает на удалённом сервере, и отлаживать код, как если бы он выполнялся локально.
Чтобы начать удалённую отладку:
1. Запустите приложение на удалённом сервере
2. Выберите Run → Edit Configurations и создайте конфигурацию для Remote Debugging.
3. Подключитесь к удалённому процессу через SSH и начинайте отладку прямо из Rider.
Если вы ещё не настроили SSH в Rider, самое время попробовать.
🐸 Библиотека шарписта #буст
Не всегда нужно хранить код у себя на пк. Хранение и выполнение кода на удалённых хостах и контейнерах давно стало реальностью.
Rider делает работу с с такими хостами настолько удобной, что даже самые сложные задачи становятся простыми.
Подключение к серверу через SSH
Настроить SSH-подключение в Rider — проще, чем вы думаете. Всё, что нужно — это пару кликов в настройках IDE.
1. Откройте File → Settings → Tools → Deployment.
2. Выберите Add Remote Server и в качестве типа соединения выберите SSH.
3. Введите IP-адрес удалённого сервера, пользовательские данные и путь к приватному ключу (или пароль).
4. Нажмите Test Connection и, если всё в порядке, готово — подключение установлено!
🧑💻 Работа с проектами на удалённом сервере
Когда подключение установлено, вы получаете доступ к файловой системе удалённого сервера. Это значит, что вы можете:
• Перемещать файлы между локальной машиной и сервером
• Редактировать код, компилировать и запускать его на сервере.
• Открывать логи, работать с конфигурационными файлами и запускать процессы прямо из Rider.
Один из самых полезных инструментов при удалённой разработке — это отладка через SSH.
Вы можете подключиться к процессу, который работает на удалённом сервере, и отлаживать код, как если бы он выполнялся локально.
Чтобы начать удалённую отладку:
1. Запустите приложение на удалённом сервере
2. Выберите Run → Edit Configurations и создайте конфигурацию для Remote Debugging.
3. Подключитесь к удалённому процессу через SSH и начинайте отладку прямо из Rider.
Если вы ещё не настроили SSH в Rider, самое время попробовать.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍7
😤 Устал листать туториалы, которые не складываются в картину
У тебя в голове уже есть логрегрессии, деревья, метрики и какая-то PCA, но системного понимания всё нет?
Пора с этим разобраться!
Наш курс по классическому ML:
— научит выбирать адекватные модели под задачу
— разложит метрики, переобучение и bias по полочкам
— покажет, что скрывается за fit/predict, и что с этим делать
🔔 До 27 июля по промокодуEarlybird — минус 10.000₽
P.S. Первые 10 участников получат эксклюзивный лонгрид, чтобы начать изучать тему ещё до старта курса.
👉 Поменяй свою жизнь: старт карьеры в AI — успей до закрытия набора!
У тебя в голове уже есть логрегрессии, деревья, метрики и какая-то PCA, но системного понимания всё нет?
Пора с этим разобраться!
Наш курс по классическому ML:
— научит выбирать адекватные модели под задачу
— разложит метрики, переобучение и bias по полочкам
— покажет, что скрывается за fit/predict, и что с этим делать
🔔 До 27 июля по промокоду
P.S. Первые 10 участников получат эксклюзивный лонгрид, чтобы начать изучать тему ещё до старта курса.
👉 Поменяй свою жизнь: старт карьеры в AI — успей до закрытия набора!
Когда вы рассказываете о своих проектах в резюме, важно не только указать, что было сделано, но и правильно подать информацию.
В карточках объяснили какие ошибки могут быть при описании пет-проектов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤4🔥2