Обновить

Все потоки

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

Как мы ускоряли прошивку ESP (спойлер: совы не то, чем кажутся)

Уровень сложностиСредний
Время на прочтение42 мин
Охват и читатели7.3K

Производство пожаловалось: модуль WB-MGE v.3 на ESP32 шьётся слишком долго — 42 секунды на устройство. Что начиналось как простое «склеить вызовы esptool в один», превратилось в копание в исходниках загрузчиков на Си и Расте, патч прошивальщика, разгон системной шины, физику NOR-флеша (туннелирование Фаулера–Нордхайма — теперь я знаю что это такое), и в итоге ускорение почти в четыре с половиной раза. И да, совы оказались совсем не тем, чем казались.

Читать далее

Новости

Яндекс.Музыка: как нарисовать красивые метрики, испортив продукт

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

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

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

Читать далее

Электронно-лучевые видеопроекторы. Это как?

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

Картинка: Peter F. Yanczer, earlytelevision.org

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

Перечень их основных технологий тоже известен — DLP, 3LCD, LCoS.

Однако как вам понравится, пожалуй, один из самых странных (и потрясающих с технической точки зрения!) проекционных аппаратов в истории — видеопроектор на электронно-лучевой трубке?! О_о Где электронно-лучевая трубка — это только маааленький кусочек странностей!

Как старый поклонник видеопроекторов, я никак не мог пройти мимо этой темы… :-) Итак…

Читать далее

Python: как один из самых медленных языков стал королем нейросетей

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели19K

Python. IT-курсы разрекламировали его как один из самых легких языков для входа в разработку, любители ИИ создают на нем свои первые нейросети, а некоторые сеньоры Java и C++ по-прежнему смотрят на него свысока, считая недостаточно строгим и производительным для «серьезной» разработки. В любом случае сегодня о Python знают все.

Поскольку заметный рост его популярности пришелся на 2010-е годы, многие считают, что язык появился сравнительно недавно. Но это неверно: Python старше большинства современных веб- и ML-фреймворков, массовой мобильной разработки и нынешнего AI-бума.

Как язык с репутацией медленного стал основным инструментом data science и машинного обучения, почему он поднялся на вершину рейтингов популярности и какую роль в этом сыграли его архитектура и экосистема — разберем в этой статье.

Читать далее

Жрать или втирать в себя стволовые клетки — это развод?

Время на прочтение7 мин
Охват и читатели6K

Жила-была в Швейцарии яблоня. Сорт назывался Uttwiler Spätlauber — кислый, твёрдый, есть его свежим почти невозможно, лицо сводит. Аналог нашей коломенской косорыловки. Зато была у этих яблок одна особенность: их можно было снять с ветки, бросить в погреб и забыть на несколько месяцев. Соседние сорта за это время сморщивались и сгнивали, а Uttwiler Spätlauber лежал себе целёхонький. Крестьяне держали такие яблоки на чёрный день — до весны, когда свежей еды уже не остаётся.

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

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

Маркетинг получился гениальный. «Стволовые клетки редчайшего яблока, которое не стареет» — за такое и платить не жалко. Кремы на этом активе и сегодня уходят за несколько тысяч за баночку, а у премиальных марок — за десятки тысяч.

Мы в лаборатории сталкиваемся с такой магией регулярно. То заказчик попросит «добавить стволовые клетки, это сейчас хорошо продаётся», то знакомая принесёт баночку размером с напёрсток, заплаченную как за неделю продуктов, и спросит: правда работает?

Поэтому давайте один раз спокойно откроем эту баночку и посмотрим, работает или нет.

Спойлер — нет, конечно!

Читать далее

Отзыв на книгу «Не усложняй! Управление проектами по методу P3.express»

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

Делюсь впечатлениями о недавно вышедшей книге «Не усложняй! Управление проектами по методу P3.express» за авторством @daIlenkov и @lera_ilenkova

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

Я хочу взглянуть на неё чуть глубже. Это книга-матрёшка.

Первый уровень действительно такой, каким его описывают в большинстве отзывов, — хорошо написанная книга, которую можно смело рекомендовать новичкам. На самом деле это ценное качество, потому что в интернете довольно часто спрашивают, что почитать/посмотреть/поучить новичкам по теме управления проектами. Отсылать сразу к PMBOK — и непродуктивно, и негуманно. Что там ещё рекомендуют из года в год? «Дедлайн» Тома ДеМарко? На самом деле отличная книга, люблю её, но сам же признаю, что жанр бизнес-романа имеет свои недостатки и подходит не всем. А надеяться на качественный онбординг на новой работе/роли не приходится — у руководителей проектов это устроено гораздо грустнее, чем у каких-нибудь айтишников. К тому же на эту первую работу ещё надо как-то умудриться попасть, и довольно часто это оказывается переходом на новую роль внутри компании. Но это идеальный случай, а ведь частенько бывает так, что какой-либо проект поручают не выделенному руководителю проектов, а опытному специалисту или руководителю подразделения — в довесок к основным обязанностям. Если до этого они не сталкивались с дисциплиной проектного управления и не имеют внутри организации поддержки от проектного офиса (или чего-то подобного), то приходится устраивать забег по граблям. Книга поэтапно показывает будни менеджера проектов — что вообще он делает и что от него ожидается. Так что если у вас нет возможности заранее ознакомиться с должностной инструкцией, положением о проектном управлении, регламентами проектных работ (а это мало где есть или есть, но частенько не работает), вы сможете понять, что от вас требуется и каких ошибок стоит избегать.

Читать далее

Как устроен ГИГАХРУЩ: Как мы заставили линейную алгебру и теорию категорий писать процедурную речь для НПС

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

В прошлых статьях про инженерную архитектуру ГИГАХРУЩА мы разбирали, как в одном браузерном файле на чистом TypeScript держится тороидальный клеточный мир 1024x1024, кастомный WebGL-рэйкастер, симуляция A-Life и объемный генератор MESH PASS.

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

В этой статье мы покажем, как с помощью векторного анализа корпусов, классов эквивалентности и PCA-осей нам удалось заставить Марковское ядро генерировать живую, контекстную речь для тысяч НПС — без сторонних фреймворков ("dependencies": {}), с задержкой 0 миллисекунд и 100% детерминизмом по SeedRng.

Читать далее

Траблшутинг ИИ-багхантинга, или Как не стать бесплатным триажером для своего агента

Время на прочтение11 мин
Охват и читатели6.1K

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

Привет, Хабр! Меня зовут Владислав, я работаю в отделе реагирования на инциденты в Бастионе и около полутора лет активно ханчу на багбаунти. Под Новый год мы с другом так пробили ИБ-интегратора (он, кстати, остался доволен), а недавно я выиграл Bug Zone 7.0. Подобные активности — хорошая возможность поэкспериментировать и выработать новые подходы, и последние полгода я ищу баги при помощи LLM. Так что с ИИ можно добиваться хороших результатов, а не сдавать мусор. Но как это делать? 

Под катом вас ждут: 

• четыре подхода к ИИ-багхантингу; 

• четыре способа платить за модель; 

• три слоя верификации;

• пайплайн из двух агентов; 

• живой разбор blind SSRF. 

Спойлер: готовой кнопки «сделать хорошо» не ждите. 

Статья будет интересна всем, кто уже натравливал ИИ на BB-программу и тонул в фолз-позитивах, а также новичкам и матерым этичным хакерам — хотя последним отдельные рекомендации наверняка покажутся очевидными.

Читать далее

Mac mini feat OpenClaw: проверяем локальный инференс LLM

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели5.2K

Локальный инференс LLM требует не только мощного GPU, но и огромной ширины шины памяти. Объединенная память Apple Silicon частично решает проблему нехватки VRAM за разумные деньги, превращая Mac miniTM в портативный сервер для AI-агентов вроде OpenClaw. В этом материале протестируем Mac miniTM M4 Pro на языковых моделях среднего размера, разберем настройку окружения и выясним, где проходят реальные границы возможностей этой конфигурации.

Читать далее

Что такое 10 REM"_(C2SLFF4, или как в комментарий 1980 года спрятали машинный код

Время на прочтение9 мин
Охват и читатели4.2K

В июле 1980 года Recreational Computing напечатал листинг The Wizard's Castle — рогалика на BASIC для микрокомпьютера Exidy Sorcerer. Первая строка выглядела так: 10 REM"_(C2SLFF4 .

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

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

Читать далее

Загадочный комментарий в древней игре на BASIC

Время на прочтение13 мин
Охват и читатели4.4K

Давайте исследуем замок волшебника (точнее, его исходный код)!

10 REM"_(C2SLFF4

Это первая строка написанной на BASIC игры 80-х годов The Wizard's Castle, которую изначально создавали для платформы Exidy Sorcerer.

Она представляет собой REMарку, комментарий языка. 10 — это номер строки.

Но интересна здесь строка "_(C2SLFF4. Опечатка или мусор? Нет. Точно в таком же виде она встречается в исходном коде, опубликованном в выпуске журнала Recreational Computing за июль 1980 года .

Что это за чертовщина?

Читать далее

SPI-контроллер на FPGA: от идеи до сигналов на осциллографе

Уровень сложностиСредний
Время на прочтение173 мин
Охват и читатели5.1K

Откройте любой учебный материал по FPGA. С вероятностью девяносто процентов он закончится мигающим светодиодом, бегущей строкой на семисегментнике или, в лучшем случае, генератором VGA-сигнала с цветными полосами. Это нормальные учебные задачи, но у них есть общее свойство, о котором редко говорят вслух: они работают сразу или не работают совсем. Прошили — мигает. Не мигает — перепроверили три строчки кода, нашли опечатку, мигает.

Реальная инженерная работа с ПЛИС устроена иначе. Реальная задача — это когда ваша микросхема должна разговаривать с другой микросхемой по протоколу, у которого есть спецификация на сорок страниц, четыре режима тактирования и подводные камни в каждом втором абзаце даташита. Когда «вроде работает» — это худший из возможных результатов, потому что «вроде» означает «упадёт у заказчика». И когда между «код написан» и «устройство работает» лежат недели верификации и отладки.

Эта статья - следующий шаг в моем обучении и попытка показать полный путь: от фразы "нам нужен SPI-контроллер" до момента, когда логический анализатор показывает красивые пачки импульсов на ножках кристалла. Здесь будут не только архитектурные решения и листинги, но и все ошибки, которые были сделаны по дороге: testbench, который врал, потому что master и slave-модель содержали один и тот же баг; гонка на один такт, из-за которой тест прерываний падал при исправном железе; и финальный детектив — прошивка, в которой SPI-сигналы честно генерировались... на других ножках, потому что файл назначения пинов на диске оказался не тем, который мы правили. Каждая такая история — это методика: симптом, гипотеза, эксперимент, причина, фикс.

Читать далее

Полный геном и его анализ в домашних условиях: сам себе генетик с Just-DNA-Lite, плагин для Claude Code. Часть 4

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

В прошлой части мы говорили об опыте анализа генома ИИ-моделями и о базовых функция опенсурсной программы Just-DNA-Lite, а также о простой пересборке генома.

В этой статье поговорим о том, как подойти к анализу генома более профессионально: о специальном плагине к Claude Code, MCP-сервере и более подробно о том, как получить полигеномные оценки от Just-DNA-Lite. Ну и о диагностике по геному.

Читать далее

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

Через меня проходит 5 тысяч чертежей в год, и 99% ошибок в них одинаковые

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели5.5K

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

Причина такой поломки бывает старше устройства. Ошибку сделали ещё на компьютере, когда проектировали плату. Она пережила производство, проверки, сборку и полгода работы. Внутри с первого дня осталась заводская химия, которая за полгода “съела” важный проводник.

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

Читать далее

Как я склеиваю 23 тысячи событий из пяти афиш — и почему дедуп нельзя делать необратимым

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели13K

Зашёл тут на карту и вижу странную картину. На Чистых прудах висят три пина ровно друг на друге. Тыкаю, а там один и тот же «Вишнёвый сад» в Ленкоме. Совпадает всё, вплоть до времени и зала. Просто данные прилетели из трёх разных мест. Где-то площадка записана просто как Ленком, где-то полностью с именем Марка Захарова, а в третьем случае вообще пусто. Для пользователя это три разных события на карте, хотя спектакль на самом деле один.

У меня сейчас Окрест тянет афиши по шестнадцати городам из Яндекс Афиши, Afisha.ru, Timepad, KudaGo и телеграм-каналов самих площадок. Сейчас в базе 23 097 активных событий, и пересечений между источниками много. 8260 событий приходят из двух источников, 533 из трёх, десять встречаются сразу в четырёх. На карте всё это должно превращаться в одну точку, а не в гирлянду пинов.

Читать далее

Что останется от облаков, когда инфраструктурой займутся агенты

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

У нашего облака появился новый тип пользователей, и это не люди. Каждый третий запрос к документации Timeweb Cloud сегодня приходит из сетей ИИ-вендоров, а серверы всё чаще создаются не из панели управления, а запросами к API, которые пишет ассистент по просьбе человека.

Привет! Меня зовут Михаил Шпаков, я руковожу разработкой Timeweb Cloud. Раньше я рассказывал, как мы построили систему автотестов с 5 000+ проверками и как делаем визуализацию облака. Сегодня текст другого масштаба: не про одну систему, а про то, куда движется рынок облачных услуг. Трендов там, разумеется, больше одного, но этот текст про тот, который я вижу ближе всего: про агентов. Покажу картину, которая складывается изнутри провайдера, подкреплю её цифрами и расскажу, какие выводы я делаю из неё на ближайшие годы.

Читать далее

Как навести порядок в оформлении YARA-правил

Время на прочтение11 мин
Охват и читатели4.7K

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

Меня зовут Максим Мотиков, я специалист по кибербезопасности в «Гарде».

Написать рабочее yara-правило несложно. Создать такое правило, которое через полгода поймет не только автор, но и любой другой аналитик в команде — задачка со звездочкой. У YARA нет строгого стандарта на то, как называть правило, что писать в meta и как оформлять условие. Каждый пишет как привык, и со временем база правил превращается в набор разномастных, подчас не очень логичных файлов.

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

Читать далее

Когда стоит задуматься о выходе из «Сколково»: налоговые последствия, позиция ФНС и переход на IT-льготы

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

В конце июня по соц. сетям разлетелась новость от РБК про претензии от налоговой к 50 резидентам «Сколково». В сообществе начали говорить о том, что  государство взяло под прицел резидентов, льготы заканчиваются, а сам статус превращается в источник дополнительных рисков. Что же произошло на самом деле?

В статье разберу из-за чего претензии ФНС к резидентам «Сколково» всех так напугали, почему это касается вообще не всех, что происходит при превышении финансовых лимитов и в каких случаях стоит заранее задуматься о смене налогового режима.

Читать далее

Как добавить в умную колонку новые команды и ничего не сломать

Время на прочтение7 мин
Охват и читатели5.7K

Чтобы дать команду умной колонке, не обязательно говорить активационное слово «Алиса»: есть быстрые команды — короткие фразы, с помощью которых можно управлять музыкой, громкостью или умным домом. Например, чтобы переключить трек, достаточно просто сказать «дальше», а чтобы убавить звук — «тише». Весь список команд можно посмотреть в настройках вашего аккаунта в приложении «Дом с Алисой».

Быстрые команды удобнее не только пользователям, но и системе: запросы через слово «Алиса» требуют обращения к модели распознавания речи ASR, которой из‑за её размеров необходимы серверные вычислительные ресурсы, а модель быстрых команд устроена гораздо компактнее. Она работает прямо на устройстве, а значит, ограничена вычислительными ресурсами самой колонки — её CPU и оперативной памятью. Из‑за этого модель нельзя сильно увеличить: ей приходится оставаться компактной, зато запрос обрабатывается быстрее. 

За распознавание быстрых команд отвечает нейросеть. Её архитектура почти полностью совпадает с решением для наушников Яндекс Дропс, которое подробно описал в своей статье Григорий Афанасенко. Разница в основном в масштабе: наша модель весит всего от 0,5 до 1,5 МБ в зависимости от железа конкретного устройства.

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

Читать далее

Document Driven Development: превращаем хаос разработки в порядок с помощью TypeSpec и не только

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

Всем привет! Меня зовут Егор Гурин и я разработчик в компании MTC Web Services. Работаю в стриме, который занимается разработкой контактного центра МТС. Практически любые обращения клиентов в компанию, будь то неработающий интернет или вопрос по заказу в интернет-магазине, проходят через нас. 

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

В этом материале я поделюсь инструментами, которые помогли наладить процессы в нашей команде в рамках методологии Document Driven Development, — возможно, вам она знакома под такими терминами как design-first или API-first. Покажу, как в удобной форме описывать контракты с помощью TypeSpec, использовать мокирующие сервера не дожидаясь реализации серверной, а еще — расскажу про инструмент кодогенерации на Go и автотесты с помощью Schemathesis.

Читать дальше