Обновить

Все потоки

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

Кластеры, перезагрузка

Энтузиаст bitluni собрал кластер из 8192 микроконтроллеров CH570. Эта частная инициатива показывает возможный большой тренд.

Способности кластера как видеокарты не впечатляют — воспроизводят картинку в разрешении 320 × 240 точек. Но ценность решения в возможном масштабировании. Контроллеры созданы на базе ядер RISC-V, которые популярны благодаря открытой архитектуре — это облегчает проектирование и программирование устройств на них. Каждый чип стоит всего 13 центов )), хотя конкретно в этом случае больше всего ресурсов ушло на разработку и отладку платы для подключения чипов в систему.

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

Концепция кластеров из отработавших свое устройств тестируется не только на уровне энтузиастов. Исследователи Google и Калифорнийского университета в Сан-Диего в июне 2026 года собрали кластер из бэушных смартфонов Pixel. По их расчетам 25–50 смартфонов могут заменить двухпроцессорный сервер и поддерживать несложные сервисы для целого университета.

Пока кластеры из бушных устройств выглядят экспериментом. Таким же, как исследование Beowulf, проведенное NASA в 1994 году. Оно показало эффективность кластерных вычислений на старых ПК. В результате стало ясно, что множество недорогих серверов могут работать эффективнее больших и безумно дорогих мейнфреймов. Фактически это был шаг к современному миру облачных технологий.

Теги:
+26
Комментарии0

Илон Маск заявил, что в скором времени после завершения рецензирования безопасности кодовой базы весь исходный код социальной сети X (Twitter), без исключений и сокрытия частей, будет опубликован в рамках открытого проекта. Для подтверждения, что в инфраструктуре X используется именно тот открытый исходный код, что был опубликован, будут привлечены независимые проверяющие. По мнению Маска, полное доверие достижимо только при условии полной прозрачности процессов.

Теги:
+8
Комментарии1

Про автоматизацию автора и мёртвый интернет

 Обложка и кадры из выпуска #4
Обложка и кадры из выпуска #4

Недавно я рассказал на Хабре, как сделал собственного цифрового аватара и создал серию коротких роликов для озвучки своих текстовых заметок.

И почти сразу после публикации мне предложили адаптировать разработку под контент-завод.
Для тех, кто не в курсе: это когда контент производится вообще без участия человека.

Технически до такого режима оставалось не так много: генерировать текст, синтезировать голос, автоматически подбирать слайды и передавать всё моему сборщику. На входе — тема, на выходе — готовый ролик.

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

Потому что смысл моего проекта — автоматизировать всё скучное, чтобы у автора оставались силы на творчество.

А контент-завод делает ровно наоборот.

Человеку он оставляет KPI, воронку и план публикаций, а машине отдаёт мысль, голос, текст и шутки. И, по-моему, это какой-то бред: освобождать человека от необходимости присутствовать в собственном высказывании.

Это буквально «мёртвый интернет» в действии.

Автоматизировать можно почти всё, но не причину, по которой контент вообще должен существовать.

В нормальной фантастике о будущем машины забирали у человека рутину, чтобы ему оставалось творчество. А мы почему-то упорно строим будущее, в котором человек заполняет таблицу с лайками, пока машина творит за него.

И кажется, Булычёв и Стругацкие завещали нам немного другое.

Эту же мысль я собрал в короткий анимационный выпуск — видеоверсия длится 1:09 и доступна на YouTube.

Теги:
+6
Комментарии0

Всем привет! Делимся обновлениями VK HR Tek — модульной платформы с готовыми кадровыми сервисами (КЭДО, график отпусков, ЛНА, командировки, электронная подпись, модуль найма и другие). В этом выпуске — новые функции.

 Новые возможности заместителей

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

 Разграничение доступа для графиков отпусков

Новая настройка позволяет ограничить доступ к заявкам планирования отпусков по профилям доступа. Так специалист увидит только «своих» сотрудников.

 Метка «На доработке»

В карточке и листинге заявок теперь видно, что этап активирован в результате возврата. При наведении открывается история возвратов. Также добавили фильтр «Только заявки на доработке».

 Валидация номера карты и минимальной длины полей

Для текстовых атрибутов появилась опция «минимальное количество символов». Для номера банковской карты добавили проверку по алгоритму Луна — он позволяет найти ошибки в реквизитах на этапе заполнения.

 Загрузка списка сотрудников из CSV при публикации ЛНА

Список сотрудников для ознакомления с ЛНА можно загрузить из файла .csv — это быстрее, чем выбирать вручную. Отдельная опция позволяет автоматически добавлять в список руководителей выбранных подразделений.

 Новое в отпусках

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

 Авторизация кандидатов через Госуслуги

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

 Отдельный листинг заявок на командировки

Добавили раздел «Командировки» в Сервисы компании. В нем собраны заявки от всех сотрудников. Заявки конкретного пользователя можно посмотреть в Моих сервисах.

 О том, как компании автоматизируют кадровые процессы, рассказываем в блоге на сайте

 Подробное описание всех изменений и видео-инструкции доступны в Базе знаний.

Теги:
+4
Комментарии0

Дайджест: новости за июнь 2026

Рассказываем, что произошло в июне и объясняем, зачем это может пригодиться.

🧠 AI Factory  —  цифровая среда для работы с генеративным ИИ
AI Agents — EvoClaw в Evolution AI Agents вышел в общий доступ и теперь покрыт SLA: сервис можно закладывать в прод без опасений.
Managed RAG — в сервисе появились OCR для doc/docx с картинками, загрузка данных через API источником Custom и полноценный API для работы с чанками. Документы из объектного хранилища синхронизируются по расписанию, а новый экстрактор разбирает аудио и видео.
ML Inference — появилась возможность при пиковых нагрузках маршрутизировать запросы с Foundation Models, чтобы производительность не падала.
Notebooks — в сервисе добавили совместное редактирование ноутбуков, управление логами и алертами без выхода из интерфейса, а также готовые дашборды мониторинга. Команда может работать над экспериментами параллельно и мгновенно обнаруживать проблемы, если они возникают.

📈 Evolution Data Platform — комплекс управляемых сервисов для работы с данными
Managed Airflow — сервис вышел в общий доступ: оркестрация данных теперь под SLA.
Managed Trino — топики Kafka теперь читаются прямо SQL-запросом без ETL, а кластер можно развернуть с одной нодой и автомасштабированием. Аналитика стриминга стала проще и дешевле.
Managed Spark —  добавили несколько улучшений в сервис; задачи теперь создаются за секунды, добавлена поддержка Gang Scheduling, чтобы они блокировали друг друга по ресурсам.
Evolution Managed Flink — сервис для работы с потоковыми данными вышел на стадию открытого тестирования, а значит настал момент, когда его функции можно оценить бесплатно и без обязательств.

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

☁️ Новости других сервисов Cloud.ru Evolution
Evolution Artifact Registry — поддержка PyPI-реестров перешла в публичный доступ: Docker-, RPM- и Python-артефакты теперь хранятся в одном месте без отдельной инфраструктуры.
Evolution Managed Kubernetes — обновили ключевые плагины (Istio, KEDA, Trivy Operator и другие), добавлен Spegel для ускорения загрузки образов, а Ingress Nginx получил поддержку PROXY-протокола.
Evolution Managed PostgreSQL — кластеры можно вручную останавливать на срок до 30 дней, платя только за диск, — заметная экономия на неактивных базах.
Evolution Managed Redis — добавлено мультизональное размещение кластеров Master/Replica: одна зона упала — кластер жив.
Evolution Distributed Train — появился Jupyter Server с мультидоступом: несколько пользователей работают в изолированных окружениях под одним сервером. Совместная работа над ML-задачами стала стабильнее и удобнее.

🏢 Cloud.ru Advanced и Облако VMware
В сервисе Advanced Data Warehouse Service поменялся интерфейс создания кластера и появились новые возможности, а в Terraform добавились новые ресурсы. 

Подробнее читайте в полной версии дайджеста.

📽️Вебинары
В июне провели четыре вебинара, записи которых уже доступны на страничке с мероприятиями. Там же можно зарегистрироваться на июльские вебинары от экспертов. 

💼 Свежие кейсы
Рассказали, как Agentic Lab запустили в продакшен ИИ-помощника для юристов, который способен выстраивать хронологию событий любого дела и быстро находить нужные сведения в огромных массивах данных.

Остаемся на связи! ✌️


Теги:
+3
Комментарии0

Как VPN может украсть вашу криптовалюту

VPN принято считать защитным инструментом. Он шифрует соединение, скрывает реальный IP и переносит доверие от интернет-провайдера к владельцу VPN-сервера. Но именно здесь появляется неприятный парадокс. Пользователь устанавливает приложение ради безопасности и добровольно отдаёт ему контроль над маршрутом почти всего сетевого трафика.

Сам по себе VPN не получает магический доступ к seed-фразам и не может просто расшифровать нормальное HTTPS-соединение. Но вредоносный VPN-клиент может оказаться обычным инфостилером в красивой упаковке. Вместе с туннелем он способен читать буфер обмена, искать расширения криптокошельков, красть cookies и сохранённые пароли, подменять адрес получателя или показывать фальшивые окна авторизации. В таком сценарии VPN нужен злоумышленнику не как технология перехвата, а как причина убедить пользователя установить вредоносную программу.

На смартфонах риск ещё интереснее. Android позволяет VPN-приложению создавать виртуальный сетевой интерфейс, через который проходят исходящие пакеты устройства. Это нормальная функция системы, но она требует огромного доверия к разработчику. Если приложение дополнительно просит доступ к специальным возможностям, уведомлениям, экрану, буферу обмена или установке неизвестных сертификатов, оно уже получает возможности, которые к обычному VPN почти не относятся. На iPhone похожим тревожным сигналом будет просьба установить профиль управления или вручную доверять корневому сертификату. Такой сертификат потенциально позволяет организовать перехват защищённого трафика на самом устройстве.

Есть и менее очевидный сценарий через DNS. VPN может назначить собственный DNS-сервер и решать, на какой IP отправить пользователя после ввода адреса сайта. Подделать HTTPS незаметно всё равно сложно, но пользователя можно направить на похожий домен, фальшивую страницу биржи или копию интерфейса кошелька. Если человек не проверяет адрес и подтверждает вход, VPN уже выполнил свою задачу. Иногда вредоносный клиент вообще не трогает трафик, а просто меняет скопированный криптоадрес перед отправкой. Пользователь видит знакомый процесс, но деньги уходят на другой кошелёк.

Поэтому опасен не VPN как протокол, а приложение и инфраструктура, которым пользователь передаёт слишком много доверия. Особенно рискованны клиенты из рекламы, Telegram-архивов, неизвестных GitHub-репозиториев и сайтов-клонов. Перед установкой стоит проверить разработчика, цифровую подпись, источник загрузки, запрашиваемые разрешения и наличие открытого кода. А устройство, с которого проводятся крупные криптооперации, лучше вообще не превращать в полигон для случайных VPN-клиентов. Защищая IP-адрес, легко случайно отдать злоумышленнику куда более ценную часть своей цифровой жизни.

Теги:
-6
Комментарии1

Продолжаем серию экскурсий с криптографами «Криптонита»!

23 июля в 18:30 в Музее криптографии пройдёт вторая экскурсия — её проведёт Иван Чижов, заместитель руководителя лаборатории криптографии по научной работе в компании «Криптонит».

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

Экскурсии рассчитаны на студентов, абитуриентов и молодых технических специалистов.

Следить за расписанием можно по ссылке!

Теги:
+4
Комментарии1

Как настроить TLS в клиенте Python при HTTPS-запросах?

Бывает так, что после обновления OpenSSL часть HTTPS-вызовов к внешним сервисам падает с ошибкой ssl.SSLError. Сейчас разберемся, как настроить Python, чтобы handshake проходил успешно и соединение оставалось безопасным.

После апдейтов OpenSSL часто отключают старые протоколы и слабые шифры — старые серверы не проходят handshake. Решение на клиенте — явно создать ssl.SSLContext, задать минимальную версию TLS и, при необходимости, набор шифров, а затем передать этот контекст в HTTP-клиент (например, httpx).

import ssl
import httpx

ctx = ssl.create_default_context(purpose=ssl.Purpose.SERVER_AUTH)
ctx.minimum_version = ssl.TLSVersion.TLSv1_2
ctx.set_ciphers('ECDHE+AESGCM:!ECDSA:!aNULL:!eNULL')

with httpx.Client(verify=ctx, timeout=10.0) as client:
    r = client.get('https://api.example.com')
    r.raise_for_status()
    print(r.status_code)

В коде мы указываем TLSv1_2 как минимальный порог. Это удобно: если сервер уже поддерживает TLS 1.3, все само заработает на самой новой версии. Но если какой-то внешний сервис еще не успел обновиться, соединение не разорвется, и все продолжит работать на стабильном 1.2. Так мы получаем универсальный код, который не сломается при работе со старыми API.

Для отладки TLS handshake применяйте openssl s_client -connect host:443 -tls1_2 чтобы увидеть, какие шифры поддерживает сервер. Временное ослабление minimum_version даст совместимость, но хуже для безопасности — лучше апгрейдить серверную часть. Сертификаты и ключи храните вне кода (секреты/volumes), не логируйте их, и при работе в контейнерах используйте безопасные механизмы передачи секретов.

Если хотите освоить инструменты Python, то в Академии Selectel у нас есть отдельная подборка статей. Там мы рассказываем, как настраивать инструменты, работать с базами данных, создавать программы с интерфейсом и использовать Python для парсинга.

Теги:
+7
Комментарии0

Я несколько месяцев искал идеальный «бабушкофон» , куда можно поставить Telegram, приложение из трех букв и аутентификаторы. Спойлер: покупать ничего не пришлось.

Сейчас мой сетап состоит из двух девайсов. Первый - iPhone 13 mini (основная звонилка и аутентификаторы). Второй - Android (рабочие/развлекательные чаты и банки). Но внимание всё равно постоянно утекает.

Я загорелся идеей купить кнопочный телефон, чтобы свести экранное время к минимуму. Но кнопочник с Android — это костыль. Телегу туда поставить сложно, затащить приложение из трех букв для обхода блокировок — тот еще квест. Да и совсем без смарта обойтись нереально, потому что есть жесткие ограничения:
💬 Telegram: для личной коммуникации.
🔐 Аутентификаторы: без них просто не пускает в корпоративную сеть на работе.
📷 Камера: отсканировать QR-код или сфоткать документ.
🚇 База в дороге: иногда нужно открыть банковское приложение в метро или построить маршрут в навигаторе.

Таскать с собой третий девайс в виде тупой звонилки - карманы не резиновые.

Но кто ищет, тот всегда найдет. Оказалось, что в iOS есть встроенная киллер-фича — «Упрощённый доступ» (Assistive Access).

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

Мой iPhone 13 mini буквально превратился в тот самый «бабушкофон». И работает это гениально: в него просто не хочется лишний раз залезать. Во-первых, там нет никаких отвлекающих аппок. Во-вторых, во всех приложениях снизу висит гигантская кнопка «НАЗАД». Она мешает юзать клавиатуру, делает интерфейс топорным и физически отбивает желание бездумно скроллить.

Кстати, идея для пет-проекта: сделать такой же хардкорный лаунчер для Android. В базовых настройках мой Pixel так не умеет — там всё равно остается слишком много лазеек.

А как вы боретесь с думскроллингом? Покупаете кнопочные звонилки, ставите лимиты экранного времени (которые потом сами же скипаете) или забили?

Дебаж 🐞с ноги 🦶

Теги:
+5
Комментарии5

Хочу сделать своего бота для монетизации платного контента в Telegram.

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

Кандидаты, которых изучил:

Tribute и Paywall - деньги идут через внутряннию систему сервисов, они забирают комиссию с каждой транзакции (от 10 до 20%). Tribute официально декларирует плоскую комиссию 10% выплаты по расписанию два раза в месяц. Для меня это хорошая модель: чем больше оборот, тем больше я заработаю. Но если смотреть глазами пользователя, при росте оборотов 10-20% начинают очень заметно съедать прибыль, и сегодня многие склоняются в пользу другой модели.

Nemiling - там переводы идут напрямую на счёт, а вместо комиссии фиксированный тариф за оборот: бесплатно до 5k руб/мес, дальше два плана без ограничения по количеству проектов - 1790 руб/мес при обороте до 60 000 руб/мес и 2990 руб/мес при обороте выше - без ограничений. По сути, это классическая SaaS-модель с подпиской.

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

Как ведут себя цифры при обороте

Если по‑честному взглянуть на цифры, разница между процентной моделью (как у Tribute/Paywall) и фиксированной подпиской (как у Nemiling) становится болезненной уже на средних оборотах.

Если владелец канала стабильно делает 50 000 в месяц.
С комиссией 10% он каждый месяц отдаёт по 5 000, а за год набегает около 60 000 только за пользование платформой.
В фиксированной истории вроде Nemiling на таком уровне автор платит около 2 000 в месяц, то есть примерно 21-22 тысячи в год. Получается, вместо 60k он отдаёт чуть больше двадцати - просто потому, что платит фикс за сервис, а не процент с каждой оплаты.

А если автор стабильно держит в районе 300-500 тысяч в месяц?
При процентной модели 10% это уже 30-50 тысяч в месяц, то есть от 360 до 600 тысяч в год только за то, что он пользуется сервисом.
В фиксированной модели он всё так же платит несколько тысяч в месяц, суммарно порядка 35. Разница уже не просто ощутимая, а стратегическая.

Так вот как создателю бота, мне хочется запуститься с моделью как у Tribute или Paywall, она она обещает хорошие деньги, но с другой стороны, смогу ли я успешно конкурировать с такими закоренившимися ботами. Хочется зайти в нишу и при этом сделать всё так, что-бы иметь конкурентное приемущество.

Если выбрать решение типа Nemiling: удобный рублёвый вывод на счёт, фиксированная плата при росте оборотов и экономия в разы. У меня будет "козырь" с котрым проще зацепиться и удержаться, хотя и окупаемость будет дольше.

Вопросы к сообществу

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

  2. Какие тонкие нюансы с выводом и отчётностью вы встречали при работе с Tribute, Paywall, Stars, Nemiling, investmember? Особенно интересует опыт с рублёвой отчётностью и валютным контролем.

  3. Есть ли на сегодняшний день надёжные гибридные решения - например, фиксированная подписка + внутренняя опция «оплатить через Telegram (Stars)»?

Буду признателен за конкретные цифры, кейсы и ссылки на опытные расчёты. Спасибо!

Теги:
+3
Комментарии2

Представлен сборник лучших скиллов Cursor Team Kit от разработчиков Cursor: 

  • внутри 18 скиллов, 2 субагента и 2 правила;

  • есть навыки для написания точного и понятного кода, для мощного ревью, удаления код‑слопа и импорта необходимых библиотек.

Теги:
+3
Комментарии0

А нет ли у вас ощущения, что некоторые известные ИИ модели как-то поскучнели и испортились?

Раньше, бывало, даёшь ему вопрос типа: как скрестить ежа с ужом? - и в ответ получаешь массу разнообразной информации, от религиозных запретов племен Южной Африки до особенностей днк-структур и деталей среды обитания, из которой уже самостоятельно можно извлечь для себя что-то ценное и полезное, в том числе позволяющее при определенных условиях получить такой гибрид. Или нечто функционально похожее на него.

А сейчас он тупо ответит, что так нельзя, но "если вы уточните точный размер и вид, то я смогу дать вам рекомендации" (спойлер: все равно нельзя)

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

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

Теги:
+9
Комментарии4

AI-нагрузка пришла в прод: Serverless или Kubernetes?

Когда команда приносит очередную AI-фичу, инфраструктуре быстро приходится отвечать на вполне приземлённые вопросы: где её запускать, как масштабировать, что делать с GPU, состоянием и холодным стартом — и во сколько всё это обойдётся после выхода в прод.

Serverless выглядит удобным способом снять часть операционной нагрузки. Kubernetes даёт больше контроля, но вместе с ним добавляет сложность эксплуатации. Универсального выбора здесь нет: решение зависит от характера нагрузки, требований к задержкам, бюджета и того, насколько инфраструктурная команда готова управлять платформой самостоятельно.

21 июля в 20:00 на бесплатном уроке разберём, как сравнивать Serverless и Kubernetes для AI-ворклоадов и какие ограничения учитывать до того, как архитектурное решение превратится в дорогую миграцию. Отдельно посмотрим на холодный старт, работу с состоянием, поддержку GPU, масштабирование и гибридные сценарии.

Другие бесплатные уроки от экспертов по инфраструктуре, Linux, K8s, сетям, безопасности и наблюдаемости собрали в дайджесте.

Теги:
+7
Комментарии0

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

Нанимают ли ИТ-компании летом — и стоит ли сейчас искать работу

Каждое лето среди ИТ-специалистов возникает один и тот же вопрос: есть ли смысл искать работу в июле или лучше дождаться сентября, когда все, кто принимает решения, вернутся из отпусков? Короткий ответ — искать стоит.

Летом темп найма действительно немного снижается. Часть руководителей и HR в отпусках, собеседования переносятся, некоторые проекты ждут утверждения бюджетов на вторую половину года. Но это не значит, что рынок замирает.

По данным hh.ru, рынок труда в 2026 году остается неоднородным. В одних профессиях работодатели конкурируют за специалистов, в других — конкуренция выше среди кандидатов. Для ИТ сохраняется один устойчивый тренд: опыт и реальные навыки полностью перевешивают дипломы и корочки курсов, а владение ИИ-инструментами названо одним из ключевых конкурентных преимуществ. Поэтому даже летом компании продолжают искать сильных специалистов под текущие проекты, а не откладывают всё до осени.

Теперь про наблюдение у Хабр Карьеры. По их статистике, активность найма в ИТ постепенно становится менее сезонной. Компании продолжают публиковать вакансии даже в периоды отпусков, хотя скорость принятия решений ниже. Многие работодатели используют лето для формирования кадрового резерва и проведения первых этапов отбора — чтобы быстрее закрыть позиции, когда отпускной сезон закончится.

Если вы сейчас в статусе «кандидат» — летнее затишье это ваше преимущество, а не помеха. Хорошее время, чтобы обновить резюме, привести в порядок портфолио, добавить завершенные проекты на GitHub, разобраться с каким-нибудь новым инструментом. Осенью, когда конкуренция за интересные позиции возрастет, такая подготовка будет заметна на собеседованиях.

Главное — не воспринимай лето как потерянные два-три месяца. Если бизнес запускает новый проект в июле — ждать сентября HR не станет.

Мы в SSP SOFT нанимаем сейчас

В SSP SOFT занятость — это не про «отсидеть часы». Это про задачи, которые заставляют думать, искать нестандартные решения и видеть результат своих усилий. Мы предлагаем удаленку, гибрид или офис в Москве и Томске, ДМС, обучение по выбору сотрудника и среду, где мнение сотрудников стараются слышать. Задачи — реальные, коллеги — сеньоры, у кого есть чему учиться.

Сейчас в середине июля мы ищем:

— Ведущего аналитика 1С (финансовый контур, КТ 2000)
— Системного аналитика (Ритейл)
— Разработчика ЦФТ
— Архитектора 1С (Управление Договорами)

Подробности о вакансиях читайте на нашей странице ХХ.ру, но там откликаться необязательно. Ждем резюме напрямую Евгении Беловой, директору по развитию персонала: @EvgVBelova в Telegram.
Не забудьте добавить «секретную фразу» в сопроводительное письмо: «Увидел(а) вашу вакансию на Хабре».

💚 Солнечного лета и До новых встреч!

Теги:
+3
Комментарии0

Понял asyncio только когда бот начал зависать под нагрузкой

Писал на Python и честно говоря asyncio воспринимал как магию. Работает и ладно.

Пока однажды бот не завис.

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

Начал разбираться. Оказалось я вызывал синхронную функцию прямо внутри async хендлера. requests.get внутри async def. Это блокирует весь event loop. Все корутины ждут пока эта одна функция не завершится.

Решение простое: либо заменить requests на aiohttp, либо обернуть синхронный вызов через asyncio.to_thread. Второй вариант проще когда менять библиотеку лень:

python

result = await asyncio.to_thread(requests.get, url)

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

Кто сталкивался с похожим, как отлаживали?

Теги:
+4
Комментарии2

Обещанная статья про yggvault

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

Правда, связываться с Хабром после этого желания больше нет. Поэтому полноценное описание проекта опубликовано на Hackaday, а этот короткий пост — просто выполнение обещания опубликовать статью (в прошлом месяце, ага).

---

Что такое yggvault

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

Оно забирает выбранные версии проектов с GitHub, GitLab, Bitbucket, Gitea или другого узла yggvault, проверяет их, сохраняет локально и публикует сразу в нескольких форматах.

Один процесс предоставляет:

  • совместимые с GOPROXY маршруты для Go-модулей;

  • репозиторий Composer v2;

  • исходные архивы .zip и .tar.gz;

  • JSON API и OpenAPI;

  • Atom-ленты обновлений;

  • веб-интерфейс с каталогом, версиями, хешами, командами установки и ссылками на архивы.

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

Зеркало можно поднять локально, на VPS или в домашней сети. Дополнительно yggvault умеет работать внутри сети Yggdrasil — без публичного IP, DNS, проброса портов, root-доступа и отдельного системного демона. (Еще одна причина для статьи — популяризация Yggdrasil)

Несколько узлов могут использовать друг друга как доверенные «братские» зеркала и синхронизировать релизы через обычный Web или Yggdrasil.

Проект не пытается быть полным реестром всех пакетов или прозрачным прокси для всего Go. Его задача проще: надёжно хранить и раздавать выбранные зависимости через контролируемую вами точку.

Репозиторий:
https://github.com/voluminor/yggvault

Работающее публичное зеркало:
https://www.ratatoskr.space/pkg/

Полная статья и технические заметки:
https://hackaday.io/project/206175-yggvault-mirror-your-dependencies-in-one-binary

Теги:
+8
Комментарии0

Всем привет!

Очень много CTF-соревнований проводится с использованием платформы CTFd. Как они сами скромно про себя пишут:

CTFd - The best Capture The Flag framework out there for hiring hackers, training developers, and teaching students.

Я, в одной из своих статей, писал, что полностью автоматическое решение всей CTF-площадки AI- агентом затруднено и перечислил те трудности, с которыми тогда боролся.

Оказывается, у CTFd есть API!

Так вот, работа по API решает тьму из тех проблем, с которыми я тогда столкнулся! Это прям прорыв в моих исследованиях на эту тему!

Для использования API CTFd я написал skill для OpenCode, про который и хочу вам рассказать!

CTFd-Skill — skill, позволяющий ИИ-агенту играть в любой CTF на платформе CTFd через REST API от лица обычного участника: список и чтение задач, скачивание файлов, подача флагов, подсказки, рейтинг, анонсы. Покрывает только player-действия (без админ-эндпоинтов) и работает с любым инстансом CTFd — не привязан к конкретной площадке.

Ключевые возможности:

  • Подача флагов с обработкой всех статусов задачи и авто-backoff без риска заблокировать себя перебором;

  • Персистентный журнал под каждую задачу: файлы, solve-скрипты и статусы решения задач переживают случайные перезагрузки;

  • Авто-обнаружение новых задач и анонсов организаторов (подсказки, уточнения) с классификацией по тегам — ничего не теряется по ходу соревнований;

  • Интеграция с HexStrike;

... и многое другое.

github.com/Chumikov/CTFd-Skill

Теперь промт на решение всей CTF-площадки может выглядеть так:

Используя CTFd-skill, реши все задачи площадки ctf.url.com, token - ...., формат флага ctf{...}. Все задачи, по которым тебе требуются моё мнение или моя помощь, переноси в конец. Решай все задачи, которые можешь решить автоматически.

Пробуйте, пишите обратную связь, ну поставьте мне лайк тут и звезду проекту на GitHub!

Мой телеграм-канал.

Теги:
-2
Комментарии2

WMS как инструмент контроля затрат на персонал: считаем окупаемость

WMS традиционно относят к статье IT-расходов. Это задаёт неверную точку отсчёта: систему сравнивают с другим ПО, а не с реальной альтернативой — расширением штата.

В новом выпуске подкаста «Сначала процессы» считаем окупаемость через персонал.

Несколько вопросов, которые мы разбираем:

— Почему при росте объёмов дополнительные люди в смене не дают пропорционального роста выработки?

— Куда уходит рабочее время руководителя смены, если задачи раздают голосом и в мессенджерах?

— Что происходит с операционной устойчивостью склада, когда директор по логистике, в чьей голове живёт вся бизнес-логика, уходит?

— Почему ФОТ непредсказуем от месяца к месяцу — и можно ли это контролировать?

— При кадровом дефиците в 30–50% стратегия «нанять ещё людей» остаётся планом?

К выпуску — статья с расчётами по пяти сценариям и Excel-калькулятором.

🎧 Выпуск: https://intekey.mave.digital/ep-5
📖
Статья с расчётами: https://intekey.ru/articles/skolko-stoit-wms-okupaemost-cherez-personal/

Сначала Процессы. Новый выпуск подкаста.
Сначала Процессы. Новый выпуск подкаста.
Теги:
+3
Комментарии0

Число Пи как теория всего

Физики мечтают о нахождении теории всего. Эта теория будет выражаться уравнением, которое по словам физика Шона Кэрролла, должно поместиться на футболке, и которое позволяет точно описывать абсолютно все процессы, протекающие во Вселенной. Таким образом, теория всего будет одновременно являться полным описанием всей истории Вселенной.

С другой стороны, можно представить себе теорию всего в виде 'все-в-меню' (статья Хаттера 'Полная теория всего'). Это не то, к чему стремятся физики, но, также является вариантом описания Вселенной. Ряд физиков говорит, что число бит, содержащихся во Вселенной, находится в пределах от 10^90 до 10^120 (Universe from bit). Это большое, но конечное число и это является основанием для последующих рассуждений. В совокупности с предположением о дискретности времени предположение выше приводит к возможности записать всю историю Вселенной от Большого Взрыва до любого выбранного времени в будущем в виде одного длинного числа.

На этом пути требуется выбрать определенную кодировку: систему счисления, каким образом будет записываться состояние вселенной и каким образом состояния вселенной будут объединяться друг с другом, но это не меняет конечного вывода. Все история Вселенной будет представлена в виде одного конечного числа, то есть строки символов конечной длины.

Теперь начинается самое интересное. Размышления о вероятности появления в нерациональном числе определенной последовательности цифр привели Эмиля Бореля к понятию нормального числа. Это такое число, в котором вероятность обнаружения строки цифр длины k равняется n^(-k), где n является основанием выбранной системы счисления. Борель далее показал, что абсолютное большинство чисел обладает таким свойством, отсюда появилось и название - нормальное число. Таким образом, рациональные числа пришлось отнести к ненормальным.

Сказанное означает, что нормальное число содержит в себе любое конечное число. Таким образом история Вселенной будет являться частью нормального числа. Более того, нормальное число будет теорией мультиверса, поскольку оно будет включать также в себя все возможные истории вселенных.

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

Идея взята из статьи ниже (см. All-a-Carte).

Hutter, M. A Complete Theory of Everything (Will Be Subjective). Algorithms 2010, 3, 329-350.

Источник

Теги:
+5
Комментарии28

Изучаем GitHub за выходные — IT-платформа выпустила подробный роадмап для новичков-разрабочтков, где понятным языком объясняются все тонкости работы с ветками, репозиториями и контролем версий, а также рассказывают, как делать свой вклад в Open Source.

Теги:
+5
Комментарии0