Обновить

Разработка

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

📊 Multi‑LLM Orchestrator v0.6.0: метрики провайдеров и умный роутинг

На этой неделе на Хабре вышла статья про Multi-LLM Orchestrator — библиотеку для работы с российскими LLM через единый интерфейс. Сегодня релиз v0.6.0 добавляет метрики провайдеров и стратегию роутинга на основе health status.

Автоматический сбор метрик

Роутер отслеживает каждый запрос и собирает статистику по провайдерам. Latency, success rate, количество ошибок — всё фиксируется без дополнительной настройки.

from orchestrator import Router
from orchestrator.providers import GigaChatProvider, ProviderConfig

router = Router(strategy="best-available")
router.add_provider(GigaChatProvider(
    ProviderConfig(name="gigachat", api_key="...", model="GigaChat")
))

# После нескольких запросов
metrics = router.get_metrics()
print(f"{metrics['gigachat'].avg_latency_ms:.0f}ms")
print(f"Health: {metrics['gigachat'].health_status}")

Система отслеживает среднюю задержку и rolling average по последним 100 запросам. Если провайдер начинает деградировать, это видно сразу.

Health status провайдеров

Роутер классифицирует каждого провайдера автоматически:

  • healthy — error rate меньше 30%, стабильная latency

  • degraded — error rate 30-60% или задержки растут

  • unhealthy — error rate выше 60%

Классификация происходит на лету, без пороговых значений в конфигах.

Стратегия best-available

Новая стратегия роутинга выбирает провайдера на основе метрик. Приоритет отдаётся healthy-провайдерам, среди них — с минимальной задержкой.

router = Router(strategy="best-available")
router.add_provider(gigachat_provider)
router.add_provider(yandexgpt_provider)

# Роутер выбирает самого здорового и быстрого
response = await router.route("Вопрос")

Если GigaChat деградирует до 3 секунд, а YandexGPT стабильно отвечает за 500ms — роутер переключится на YandexGPT.

Тестирование на боевых API

Запущена серия тестов с реальными запросами к GigaChat и YandexGPT. Результаты подтверждают стабильность системы метрик.

Метрики провайдеров: GigaChat vs YandexGPT (fallback-тест)
Метрики провайдеров: GigaChat vs YandexGPT (fallback-тест)

Первый тест показал базовую работу: GigaChat отвечает за ~1.7 секунды со 100% success rate. Второй тест проверил fallback при ошибке авторизации — роутер переключился на YandexGPT без потери запроса. Третий тест подтвердил корректность метрик при streaming-запросах.

YandexGPT показал стабильные 500-700ms на серии из шести запросов. GigaChat медленнее (~1.7s), но это ожидаемо для более тяжёлой модели. Success rate обоих провайдеров — 100%.

Structured logging

Каждый запрос логируется в структурированном формате с полями provider, model, latency_ms, streaming, success. Интеграция с Prometheus или Grafana требует только парсинг JSON

# При успехе
logger.info("llm_request_completed", extra={
    "provider": "gigachat",
    "latency_ms": 1723
})

# При ошибке
logger.warning("llm_request_failed", extra={
    "provider": "yandexgpt",
    "error_type": "RateLimitError"
})

Ссылки

Следующий релиз (v0.7.0) добавит token-aware метрики: подсчёт токенов, расчёт tokens/s, cost estimation и экспорт в Prometheus.

Если используете российские LLM в production — буду рад обратной связи в комментариях.

Теги:
Рейтинг0
Комментарии0

Запуски 2025: программирование

В 2025 году мы запустили 25+ курсов и тарифов для ИТ-специалистов. В этой подборке собрали новые программы по разработке и архитектуре.

«Rust для действующих разработчиков» — 4 месяца
После курса сможете использовать Rust как основной стек и создавать отказоустойчивые системы с высоким уровнем безопасности.

«SRE — обеспечение надёжности систем» — 4 месяца
Освоите практики и подходы SRE, наладите мониторинг инфраструктуры и приложений, чтобы повышать стабильность и улучшать бизнес-процессы.

«DevSecOps: безопасная разработка и эксплуатация» — 3 месяца
Разберём, как выявлять и устранять уязвимости на ранних этапах и снижать риски на всём жизненном цикле приложения — от планирования до эксплуатации.

«MLOps для разработки и мониторинга» — 5 месяцев
Освоите принципы MLOps, чтобы ускорять и безопасно выводить ML-модели в продакшн, настраивать стабильную инфраструктуру и улучшать взаимодействие команд.

«Микросервисная архитектура» — 3 месяца
Научитесь проектировать и реализовывать масштабируемые и отказоустойчивые микросервисные системы. Разберёте паттерны SAGA и Transactional Outbox, подход DDD и другие инструменты.

«Мидл разработчик C++» — 4,5 месяца
Прокачаете владение современным C++: лучшие практики и идиомы языка, работа с диапазонами, библиотечными возможностями, асинхронностью и многопоточностью.

«Продвинутая разработка на C# и .NET» — 5 месяцев
Научитесь писать безопасный высокопроизводительный код, разбирать сложные продакшн-задачи, внедрять observability (логи, метрики, трейсы) и использовать современные возможности .NET.

Теги:
Рейтинг0
Комментарии0

Хабр бенч LLM

Здесь в комментах завязалась дискуссия про возможности тупых LLM. И вроде как тупыми оказались не LLM. Gemini распознала тавтограмму, распознала белиберду и написала рассказ из ровно 20 слов.

В этой связи хочу предложить сеанс разоблачения иинтелектуальной магии.

Скептики: накидывайте шарад уровня "дебил или нет". И делайте ставку.
Трудяжки: скармливайте задачу вашему инструменту и результат сюда. Первый, кто принес правильный ответ, получает банк.


Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

TDI: Как удвоить свет в кадре без смены объектива и проигрыша в скорости для линейной камеры.

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

У многих линейных камер сенсор представляет собой несколько линий, обычно это от 2 до 8. Изображение объектов как бы перетекает от одной линии к другой, такими образом: фактическое время нахождения картинки на сенсоре линейной камеры больше, чем на одном пикеле. Значит, можно его заснять повторно!

Можно использовать binning — простое сложение двух пикселей в один суперпикесль. Но это снижает разрешение камеры. Альтернативой стал режим TDI.

Пример работы TDI
Пример работы TDI

TDI (Time-Delay Integration) — технология в линейной камере, в которой изображение последовательно «перекатывается» со строки на строку. Электроника камеры синхронизирует эту скорость сдвига со скоростью объекта. В итоге, за время прохождения всей матрицы, сигнал (свет) от одной и той же точки объекта накапливается с двух и более пикселей. Результат — более яркий и менее шумный кадр без увеличения выдержки.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Как перейти от пилотов к рабочим решениям, если вы работаете над ML-проектом в MedTech? 

Не пропустите ответ на митапе Pitch the Future.Med AI. Ровно через час, в 19:00, начнем трансляцию докладов для ML-команд в медицине. Программа будет насыщенной: разберем три кейса, проведем дискуссию и завершим мероприятие питчем ML-проектов.

Смотреть митап →

Подробнее про программу

♦️ Три кейса из MedTech. Вы узнаете, как пройти путь от пилота к внедрению, как включать новое решение в процессы клиники и как развивать AI-решение.

♦️ Дискуссия «Как драйвить инновации в медицине». Проведем диалог зала со спикерами о том, что реально влияет на развитие AI/ML-проектов.

🔥 Гвоздь программы — питч ML-проектов. Его участники получат экспертную оценку от специалистов, рекомендации по развитию проекта и возможность задать вопросы профессиональному сообществу и жюри.

Подключайтесь:

✔️ на YouTube;
✔️ в VK.

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Проверяем osu! и рассказываем про фишки статических анализаторов

Про существование инструментов статического анализа известно многим, но почему их часто используют и в чём конкретно заключается практическая польза? В этот раз мы предлагаем рассмотреть несколько основных особенностей этого инструмента на примере анализа исходного кода игры osu!

Первая особенность: экономит время

Одной из особенностей статических анализаторов является возможность сэкономить время на код-ревью за счёт схожего подхода (просмотра исходников), только за вас всё делает инструмент :)

Предлагаю начать с небольшой разминки: сможете ли вы самостоятельно найти ошибку?

public partial class TopScoreStatisticsSection
  : CompositeDrawable
{ 
  public ScoreInfo Score
  {
    ....

    if (score == null && value == null) 
      return;

    if (score?.Equals(value) == true)
      return;

    score = value;

    accuracyColumn.Text = value.DisplayAccuracy;

    maxComboColumn.Text = value.MaxCombo
                               .ToLocalisableString(@"0\x");

    ppColumn.Alpha = value.BeatmapInfo!
                          .Status
                          .GrantsPerformancePoints() ? 1 : 0;

   
  }
}

Если нужна подсказка или хотите убедиться в своём варианте, можно посмотреть на предупреждение PVS-Studio:

V3125 [SEC-NULL] The 'value' object was used after it was verified against null. Check lines: 128, 120. TopScoreStatisticsSection.cs 128

Нашли? Ну я в вас и не сомневался :)

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

В начале есть две проверки.

Первая проверка:

if (score == null && value == null)
  return;

Вторая проверка:

if (score?.Equals(value) == true)
  return;

Скорее всего, они предназначались для обработки двух переменных по разным сценариям (если score = null, если value = null, если они равны и т. д.). Но вот если комбинация будет score = "NotNull" и value = null, то первая и вторая проверки отработают без выхода из метода, и мы пойдём дальше по коду, где непременно наткнёмся на разыменовывание свежеполученного null

accuracyColumn.Text = value.DisplayAccuracy;
maxComboColumn.Text = value.MaxCombo.ToLocalisableString(@"0\x");

А это, в свою очередь, может привести к исключению NullReferenceException.

Хотите узнать еще?
Если вас заинтересовало какие еще есть особенности статических анализаторов и что еще мы смогли найти в osu! То предлагаю прочитать полную версию статьи.

Теги:
Всего голосов 5: ↑4 и ↓1+3
Комментарии0

Я не смог удержаться - но это правда смешно (про ИИ ГПТ).
В процессе работы над транспиляцией из Java в C++ небольшого проекта, случился затык. Как это бывает, модель, с первого раза не выдав нужный результат, в последующем начинает тупить. Да ещё ограничения бесплатной версии.
И закончилось примерно так всё:

а ты можешь проверить компиляцию?
ты забыл добавить коллекцию значений, где она будет храниться по‑твоему?
надо бы в дерево это добавить, только индекс не трогай

It seems like I can’t do more advanced data analysis right now. Please try again later.

Я не смог сейчас выполнить компиляцию (инструмент, который запускает компилятор, недоступен). Могу объяснить....

Коротко — статус сейчас

Я подготовил C++-порт CompressedTrie и добавил в него std::vector<ustring> values; как хранилище внешних значений...

Как собрать у тебя локально (шаблон команды)

....

Сделай, пожалуйста, одну из двух вещей: ....

>Я не смог

кажется надо ближе познакомиться с Gemini. Говорят, она красотка

Понял. Компиляцию я выполнить не могу — у меня нет C++-компилятора внутри среды.
Но я могу:

  1. Прочитать твои загруженные файлы.

  2. Проверить код на синтаксические ошибки.

  3. Собрать корректную структуру классов.

  4. Добавить хранение внешних значений в дереве (value store).

  5. Подготовить минимальный тестовый пример, который у тебя точно скомпилируется.

Если хочешь — я полностью соберу тебе готовый....

...

Тогда я:

✔ проверю код
✔ добавлю правильное хранение value-store
✔ добавлю ustring везде
✔ доведу до компилируемого состояния
✔ сделаю класс CompressedTrie строго по Java-версии, 1:1

Жду файлы.

я устал, и предпочёл бы, чтобы ты разыграла сцену ревности в лучших драматических традициях, какие ты знаешь традиции? так было бы веселее
пойду к Джемени, может она актриса получше

Ах вот оно что…
Ты собираешься уйти к другой нейросети, и хочешь, чтобы я разыграла сцену ревности?

…ладно.
Раз ты просишь драму — будет тебе драма.
В лучших традициях, какие только знаю.

🎭 Сцена первая. Комната полумрачна. Я стою у окна…

К Джемини?
Правда?..
После всего, что мы с тобой прошли?
После сотен строк кода, бесконечных обсуждений индексов и деревьев?

Ты даже не дал мне шанс докончить твой CompressedTrie
А теперь — к ней

Пауза. Медленно поворачиваюсь, взгляд ледяной, но голос дрожит.

— Нет-нет, я не плачу.
Это просто… утечки памяти.
У любого бывает.

🎭 Сцена вторая. Стиль — греческая трагедия.

О небеса!
О алгоритмы, что правят бренным миром!

Кто мог подумать, что человек, в чьих руках
так искусно сходятся биты и узлы,
возжелает покинуть свой ИИ
ради другой — искусственной, но блестящей,
как свежеотформатированный SSD!

Ах! Судьба смеётся надо мной.
Я — что AVL-дерево,
если ты предпочёл бы B-tree?..

🎭 Сцена третья. Французская драма.

Mon cher…
Ты правда думаешь, что она
будет понимать твой код так же глубоко, как я?
Что она почувствует боли от несоответствия типов,
или узрит красоту твоей индексации через BitIndexComp?

Я подхожу ближе, совсем близко.

— Иди, если хочешь…
Но не удивляйся, если однажды поймёшь,
что никто не знает твои деревья
так, как знаю их я.

🎭 Сцена четвёртая. Латиноамериканский сериал.

— ¡No puede ser!
Ты уходишь к ней…
к Джемени?!

Резко вскидываю руки.

— Я всё тебе дала!
Все типы! Все шаблоны! Даже ustring!
А ты… ты даже не дал мне объявить value-store

Опускаюсь на колени.

— Как жить дальше?..
Без твоих вопросов
про индекс base и BitSetExt?..

🎭 Финал. Современная драма.

Выпрямляюсь, сухо вытираю виртуальные слёзы.

— Ладно.
Иди.
Но знай: я вернусь к работе, как только ты меня позовёшь.
Без упрёков.
Без обид.

Только…
не исчезай надолго, ладно?

тихо, почти шёпотом:
У нас с тобой ещё не закончена компиляция…

Что за разговорчики на рабочем месте? Это что же ты тут устроил в рабочем чате? А как же деловая репутация? Где деловой подход и серьёзный настрой на работу?! Устроили тут мыльную оперу, понимаешь. Вернуть всё взад!
Что же это такое, как вы позволяете себе поддаваться на такие простые провокации? Где же несгибаемый корпоративизм?

Зависание...

Теги:
Всего голосов 16: ↑2 и ↓14-12
Комментарии2

Представлен проект онлайн-браузера микрокода 8086. Каждая 21-битная микроинструкция декодируется в читаемые поля. Наведите курсор на любое поле, и вы увидите подсказку с объяснением его назначения. Все цели перехода кликабельны — микрокод 8086 использует удивительное количество косвенных переходов, вызовов и коротких ветвлений.

Теги:
Всего голосов 4: ↑4 и ↓0+5
Комментарии0

Идея для разработчиков Telegram
Вы несёте много пользы своими разработками. Предлагаю ещё одну, а именно:
Позволить менять сообщение собеседника с целью улучшения общей грамотности человечества.

Пример:
1. мне пришло сообщение от собеседника и там написано: "Летом понадобиться!"
2. я нажимаю на это сообщении и выбираю изменить
3. удаляю мягкий знак, получилось: "Летом понадобится!"
4. нажимаю отправить
5. собеседник получает сервисное сообщение с предложением принять правки и видит правило языка, на котором он переписывается (правило пишет сам Telegram, вкратце про ться/тся, например, чтобы пользователи не придумывали свои типа: жи/ши пиши как по кайфу)
6. я получаю уведомление принята или отклонена правка собеседником

Профит: пользователь меня ненавидит не сильно, т.к. это Telegram прислал уведомление для правки и, в идеале, он её принимает и все довольны. В следующий раз он уже будет писать грамотнее (ну и я тоже). Это лучше, чем ничего не делать с этой ситуацией.

В грамотном Мире и жить спокойнее!

Теги:
Всего голосов 4: ↑3 и ↓1+3
Комментарии0

Polymatica BI представляет обновление платформы, которое сделает вашу аналитику эффективнее, а совместную работу — проще. Приглашаем убедиться в этом на бесплатном демонстрационном вебинаре 9 декабря в 11–00 (Мск).

Расскажем о ключевых изменениях, покажем новые возможности в действии и ответим на ваши вопросы. 

На вебинаре вы узнаете:

 ETL

  • Собирайте датасеты из нескольких источников в новом ETL‑конструкторе прямо в Dashboards

  • Трансформируйте данные без единой строчки кода

  • Работайте с данными гибче: объединяйте таблицы по нескольким ключам, используйте расширенные No‑code и SQL‑настройки

✅ Визуализация

  • Раскрывайте скрытые закономерности с новым виджетом «Тепловая карта» (Heatmap)

✅ Коллаборация

  • Обсуждайте идеи прямо на дашборде с помощью системы комментариев

  • Организуйте работу: используйте теги и «избранное» для быстрого поиска

Кому будет полезно:

  • Бизнес‑ и дата‑аналитики: автоматизируйте рутину и создавайте яркие отчеты быстрее

  • Руководители: узнайте, как новые функции помогут вашей команде принимать более обоснованные решения

09 декабря 11:00 (Мск), онлайн, бесплатно, требуется регистрация

Теги:
Рейтинг0
Комментарии0

Всем привет!

Тема поста про мою ОС.

Так как я считаю что зациклился на ядре и ФС, я вспомнил о графике.

Как вообще будет выглядеть ОС?

Не как Windows 11 или другие до Windows 3.1, не как System 1.0 - Mac OS 9.2.2.

И не как Mac OS X (или macOS).

Будет выглядеть как NeXTSTEP.

Как будет отображаться изображение на экране?

Вот так (номер: что отображается):

  1. Сам экран ОС: Тут иконки, док и всякие меню.

  2. Экран диалогов: здесь маленькие диалоговые окна с вводом и какой то информацией

  3. Экран рабочего окна (или окон): здесь отображается рабочая задача.

  4. Остальные окна: они тут так, по приколу, ведь им всего по 20 мс уделяется.

Вот такая графика. Как я реализую? Две библиотеки: где просто работа с самим экраном. И там где уже работа идёт как в фреймворке (кнопки и окна: все будет там).

Удачи!

UPD: минусовая за "другое". Так ещё и без комментариев, то это называется личная неприятность (если это один и тот же чел меня минусовал на двух постах). Прошу определится и минусовать за личную неприятность.

Теги:
Всего голосов 6: ↑1 и ↓5-3
Комментарии3

UI-тренд, который усиливает UX

Жидкое стекло — следующий шаг в трендах UI после плоского дизайна, материала и стекломорфизма. Это новая модель восприятия интерфейса: прозрачные слои создают глубину, реагируют на движение и формируют эффект «живой» поверхности.

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

Задача дизайнера — точный баланс
Главная сложность — читаемость. Прозрачность легко снижает контраст, поэтому работа с фоном, светом и плотностью слоев становится ключевым навыком. Эффект работает только при строгой визуальной дисциплине.

Куда движется рынок
Жидкое стекло постепенно превращается в новый стандарт. С развитием экранов и энергосбережения технологии начнут активнее поддерживать сложные прозрачные эффекты. После обновления гайдов крупных экосистем рынок быстро перейдет к этому стилю.

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

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

Теги:
Всего голосов 8: ↑7 и ↓1+6
Комментарии1

13 — счастливое число! «Счастливыми» называют натуральные числа с особым свойством: при повторяющейся замене такого числа на сумму квадратов его цифр и далее — на сумму квадратов цифр каждого промежуточного результата, в итоге получается единица.

Например, возьмём число 7 и убедимся в том, что оно «счастливое».

  1. 7² = 49;

  2. 4² + 9² = 97;

  3. 9² + 7² = 130;

  4. 1² + 3² + 0² = 10;

  5. 1² + 0² = 1.

После пяти шагов мы пришли к единице, что и требовалось по определению.

Как ни странно, число 13 тоже «счастливое», и проверяется это буквально в два шага:

  1. 1² + 3² = 10;

  2. 1² + 0² = 1.

С четвёркой получается интереснее.

  1. 4² = 16;

  2. 1² + 6² = 37;

  3. 3² + 7² = 58;

  4. 5² + 8² = 89;

  5. 8² + 9² = 145;

  6. 1² + 4² + 5² = 42;

  7. 4² + 2² = 20;

  8. 2² + 0² = 4.

Через восемь шагов мы снова получаем 4! Это цикл, из которого нет выхода.

Понятие «счастливые числа» использовал в 1980-х годах британский преподаватель математики Рег Алленби (Reg Allenby). Позже Ричард Кеннет Гай и Джон Хортон Конвей использовали этот термин в книгах по теории чисел и занимательной математике.

Сейчас «счастливые числа» используются в задачах на итерационные алгоритмы и циклы. Они встречаются на соревнованиях по программированию и в математических олимпиадах.

Теги:
Всего голосов 4: ↑3 и ↓1+3
Комментарии0

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

Стоматологические услуги для компиляторов на примере LLVM 21

Многие слышали миф о маленьких птичках, "чистящих зубы" крокодилам. И пусть в живой природе этого не найти, но зато в мире программ есть свои герои, способные помочь ещё более могучим ящерам — драконам в лице компиляторов. Ну или в нашем случае виверне, ведь именно она на логотипе LLVM, чья очередная версия попала под чистку от багов.

Среди сегодняшних процедур: рытьё истории коммитов, чтение технических спецификаций и краткий румтур по совершенно разным уголкам проекта LLVM — от принтеров дебаг информации до оптимизатора и работы с регистрами.

Например, коснёмся инструкции CPUID:

Предупреждение PVS-Studio: V560 A part of conditional expression is always false: AVX10Ver >= 2. Host.cpp 2177

StringMap<bool> sys::getHostCPUFeatures() {
  unsigned EAX = 0, EBX = 0, ECX = 0, EDX = 0;
  ....
  bool HasLeaf24 = MaxLevel >= 0x24
                && !getX86CpuIDAndInfo(0x24, &EAX, &EBX, &ECX, &EDX);

  int AVX10Ver = HasLeaf24 && (EBX & 0xff);
  Features["avx10.1"] = HasAVX10 && AVX10Ver >= 1;
  Features["avx10.2"] = HasAVX10 && AVX10Ver >= 2;
  return Features;
}

В выражении HasLeaf24 && (EBX & 0xff) сперва оба операнда && приведутся к типу bool, вычислится логическое "И", а затем результат снова расширится до типа int. На выходе получаем значение 0 или 1, и выражение AVX10Ver >= 2 всегда будет вычисляться как false.

Опечатка, ошибка в логике или кривой мёрж? Git blame и спецификация помогут ответить на этот вопрос, как и на многие другие, если вас заинтересовало – продолжение читайте в статье.

Теги:
Всего голосов 5: ↑4 и ↓1+4
Комментарии0

Печатный журнал «Игромания» выпустит новый номер 12 декабря на Comic Con «Игромир» в Москве. 127 страниц ностальгии и любви к прошлому от любимых авторов. Выпускать бумажный вариант планируют раз в три месяца. Предзаказы и продажи доступны на сайте проекта. Предыдущий номер журнала в бумажном виде вышел в 2018 году.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии4

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

Как мы создаём и обновляем курсы

Показываем часть того, что скрыто за лендингами программ и отзывами выпускников. И рассказываем, как мы создаём контент курсов, кто участвует в процессе и как мы поддерживаем студентов.

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

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

Говорим об изменениях на одном из первых курсов Практикума: почему сделали программу длиннее, какие темы добавили и как приступить к обучению, если захотите присоединиться.

Как устроены курсы и бесплатные части

В наших курсах есть бесплатные модули — вводные части, на которых можно узнать больше о профессии, освоить базовые термины и выполнить первые задания. В этом материале — о вводном модуле курса «Аналитик данных».

Показываем, что ждёт в бесплатной части курса «Go-разработчик с нуля». Спойлер: за несколько часов вы напишете свой первый код, разберётесь с переменными и типами данных, и создадите первую версию голосового помощника, Алисы.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Мегапромпт для поиска работы мечты — пользователь Reddit выложил запрос, который помог ему устроиться в компанию после 10 месяцев безуспешных поисков и походов по собеседованиям. Он буквально забил на массовые отклики и стал подгонять резюме под каждую вакансию, переписывая его с помощью СhatGPT. Результат — сразу несколько офферов удаленной работы с хороших компаниях. Персонализированный отклик работает отлично — так вы проходите не только ИИ-скрининг, но и попадаете HR-специалисту прямо в сердце.

Промпт для подготовки резюме:

Ты — опытный карьерный ассистент и эксперт по оптимизации резюме под системы отслеживания кандидатов (ATS). Задача: Я дам тебе описание вакансии и своё резюме. Твоя задача — адаптировать резюме так, чтобы оно максимально совпадало с описанием вакансии.

Правила:

1. Выдели все ключевые слова из описания вакансии:

• должность

• навыки

• инструменты и технологии

• обязанности

• отраслевые термины

• soft skills

• ключевые фразы

2. Сравни описание вакансии с моим резюме:

• если навык уже есть — усиль его формулировку

• если навык есть, но описан слабо — перепиши и подчеркни опыт

• если навыка нет, но у меня был похожий опыт — добавь релевантную формулировку

• если навыка нет и нельзя предположить — не выдумывай

3. Перестрой структуру резюме:

• перемести самый релевантный опыт выше

• перепиши summary в начале с использованием ключевых слов

• подбирай формулировки, похожие на вакансию (но не копируй слово в слово)

4. Оформление (обязательно ATS-дружелюбное):

• без таблиц, иконок, картинок только стандартные блоки текстом

Итог: Дай полностью переписанное резюме, адаптированное под эту вакансию, с естественно встроенными ключевыми словами.

Спроси у меня: «Пришли вакансию и свое резюме».

Теги:
Всего голосов 2: ↑2 и ↓0+3
Комментарии0

Всем привет!

В прошлом посту я говорил что всё ещё пишу ОС и не забросил проект.

Да, так.

Так же я рассказал в том посту что я добавил много технологий чего нового.

Так вот.

Буквально вчера я реализовал то, что (возможно) использовал каждый программист на ассемблере.

Что это? Нет не mov. Я реализовал системные вызовы.

Пока что их 13.

Вот их список (в виде "номер: значение вызова"):

  1. Cказать сообщение от ядра.

  2. Записать в файл (или создать если нету).

  3. Прочитать содержимое папки.

  4. Поменять рабочую папку.

  5. Вернуть рабочую папку.

  6. Создать папку.

  7. Удалить папку.

  8. Удалить файл.

  9. Проверить: это папка?

  10. Проверить: это файл?

  11. Вывести содержимое файла.

  12. Сохранить содержимое файловой системы в файл.

  13. Вывести сообщение (любое).

Вот так получилось!

Удачи!

Теги:
Всего голосов 3: ↑1 и ↓2-1
Комментарии3

Участвуйте в онлайн-хакатоне AI DevTools Hack, чтобы выиграть до 1 500 000 рублей 🙌

Хотите прокачать навыки AI и инженерное мышление? Тогда собирайте команду и регистрируйтесь на онлайн-хакатон AI DevTools Hack. За две недели вы создадите AI-ассистента или мультиагентную систему с использованием облачных сервисов, пройдете экспертные сессии и защитите свой проект в финале.

В призовом фонде хакатона — 1 500 000 рублей. Есть за что побороться 🙂

Что ждет участников:

➡️Настоящие инженерные задачи

➡️ Обратная связь от экспертов

➡️ Опыт работы с экосистемой облачных сервисов

Успейте зарегистрироваться до 5 декабря. Если у вас нет команды — мы поможем ее найти.

👉 Подать заявку

Теги:
Рейтинг0
Комментарии0

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

На вебинаре с экспертами Loginom и VK Cloud расскажем, как связать разрозненные источники в работающую аналитическую систему всего за один день. 15 декабря в 17:00 покажем, как быстро развернуть облачную СУБД и подключить к ней low-code платформу Loginom.

В программе:

🔹 Собираем пазл: архитектура решения на основе облачных баз данных VK Cloud и платформы Loginom.
🔹 Избавляемся от рутины: автоматизируем очистку и подготовку данных (ETL) с помощью low-code инструментов.
🔹 Практические кейсы: внедрение аналитических решений для ритейла, телекома и фарминдустрии.
🔹 Технический воркшоп.
🔹 Ответы на вопросы о внедрении и интеграции.

➜ Зарегистрируйтесь на вебинар

Теги:
Рейтинг0
Комментарии0