Обновить

Все потоки

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

Мобильная разработка за неделю #636 (22 — 28 июня)

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

В этом выпуске хардкорная агентская разработка под iOS и Preview-Driven скриншот тестирование для Android, кольца-расстояния и инерция пальца, пять ошибок начинающих Android‑разработчиков и пять ошибок при работе с Jetpack Compose, динамические иконки приложения на Flutter, ручной DI в Kotlin Multiplatform, расширенные возможности оплаты и низкие комиссии в Google Play, и многое другое. Заходите!

Читать далее

Как я писал диплом в LaTeX: Docker, CI/CD, Latexmk, Mermaid, и многое другое

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

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

В статье покажу, как превратить обычный диплом в воспроизводимый проект с современными практиками: Git, CI/CD, Docker, автоматической сборкой, генерацией диаграмм, сравнением PDF между версиями и собственными инструментами автоматизации.

Отдельно расскажу, почему выбор пал на LuaLaTeX, какие проблемы пришлось решить (от ссылок и библиографии до кастомных callout'ов и программной генерации метаданных PDF), а также как Python, Lua и GitHub Actions превратили написание документа в почти такой же процесс, как разработка программного обеспечения.

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

Читать далее

Как я собираю мини‑аналитику по рынку профессий

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

Давно работая с HR‑аналитикой, мне в какой‑то момент стало интересно не просто смотреть на рынок, но и самому выделить что‑то основное, что с этого рынка я могу собрать и какие новые данные в новых разрезах представить (зарплатная аналитика, аналитика подбора персонала и тому подобное).

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

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

Что‑то может быть и правдой, но без данных такие фразы быстро превращаются в ощущения. А ощущения, как ни крути — плохая основа для выводов.

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

Читать далее

Загружаем bitstream из Linux через FPGA Manager на Zynq-7000

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

Добрый день!
В прошлой статье мы подготовили кастомную плату на Zynq-7000 для загрузки Linux: Buildroot, U-Boot SPL, device tree и минимальная rootfs уже работают. Но PL-часть при этом оставалась почти пустой.

На первых этапах bring-up это нормально: bitstream обычно шьют через JTAG или кладут в BOOT.BIN, чтобы FPGA конфигурировалась ещё до старта Linux. Но для реального проекта такой подход быстро становится неудобным: иногда нужно менять PL-логику уже после загрузки системы.

В этой статье разберём, как загрузить bitstream в Zynq-7000 из Linux через FPGA Manager, какие параметры ядра для этого нужны, и как завернуть загрузку в небольшую C++ утилиту.

Читать далее

Мезосомы или обман научного зрения

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

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

В 1931 году Макс Кнолль и Эрнст Руска построили первый прототип электронного микроскопа. И вскоре после этого электронную микроскопию начали применять для изучения живых существ, например бактерий. Много времени ушло на изобретение методов резки и фиксации образцов, чтобы на картинке было видно как можно больше деталей. Биологические объекты сами по себе плохо поглощают электроны, да к тому же еще и норовят разрушиться от всего подряд, и решать эти проблемы учёные стали соединениями осмия (например тетраоксидом осмия OsO₄).

В 1953 году свет увидела статья “Electron microscopy of ultra-thin sections of Bacteria” (Электронная микроскопия сверхтонких срезов бактерий), где были описаны срезы бактерии Bacillus cereus, приготовленные с помощью осмия. Во время изучения этой бактерии были найдены странные впячивания мембраны, которые авторы первоначально назвали “периферическими телами”. Через некоторое время за этими объектами закрепилось название “мезосомы”, и вот тут-то наша история и начинается по-настоящему.

Читать далее

Вычурное название для вредной еды

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

В очередной раз американцы в панике из-за того, что они едят. Согласно исследованию, опубликованному в июне 2026 года в журнале American Journal of Public Health, более двух третей опрошенных сейчас считают, что промышленно произведённые ультрапереработанные продукты (УПП), которые доминируют в продовольственном рынке США, вызывают привыкание. И это только начало. Большинство респондентов заявили, что УПП являются основной причиной диабета 2-го типа, сердечно-сосудистых заболеваний и ожирения. По крайней мере, треть опрошенных считают, что эти продукты вызывают рак, СДВГ, депрессию и тревожность. А почти половина — что соответствует примерно 130 миллионам взрослых американцев, если экстраполировать результаты опроса — полагает, что УПП просто «не то, что бог предназначил людям для еды».

В течение последних нескольких лет опасения относительно потенциального воздействия УПП на здоровье активно освещаются в СМИ и обсуждаются практически на всех уровнях системы общественного здравоохранения. Новые ограничения на продажу УПП вводятся или принимаются как в законодательных органах демократических, так и республиканских штатов. Министр здравоохранения и социальных служб Роберт Ф. Кеннеди-младший неоднократно заявлял, что УПП «отравляют» американцев. А Всемирная организация здравоохранения планирует выпустить глобальные рекомендации по этой проблеме.

В некоторой степени это не что иное, как переименование старой идеи о том, что продукты, продаваемые в круглосуточных магазинах или ресторанах быстрого питания, отнюдь не полезны для нас. Эти продукты, по крайней мере некоторые из которых почти наверняка вредны для нашего здоровья, исторически называли по-разному. Многие ещё помнят, что в XX веке их называли не «ультрапереработанными», а просто «переработанными» продуктами или «нездоровой пищей». Теперь к этой же расплывчатой категории добавлена приставка «ультра-». В мире питания примерно 2026 года термин «ультрапереработанный» — это, прежде всего, просто новейший синоним слова «нездоровый».

Читать далее

Тап по тысяче точек за O(log n): QuadTree и сферическая геометрия в гео-соцсети

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

9 лет назад я разрабатывал геолокационную соц.сеть на заказ, где мы отображали чаты на карте. До релиза не дошло, но интересного опыта было получено много. В очередной статье из серии рассказываю про то, как обрабатывать нажатия на MapBox и любой другой карте (Google, Yandex – не важно) и находить нужные объекты на ней, привязанные к координатам.

Читать далее

Почему Google не индексирует страницы, хотя технически всё в порядке

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

У меня есть сайт на Next.js. Часть страниц индексируется почти сразу. Часть застряла в статусе «Обнаружено, не проиндексировано» уже две недели. Самое неприятное в том что все страницы технически одинаковые. Тот же фреймворк, тот же сервер, тот же sitemap.

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

Читать разбор

12 факторов хорошего агента

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

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

Читать далее

Мгновенный информер о вакансиях из центров занятости

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

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

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

Для устранения таких походов к стенду я разработал и делюсь с сообществом бесплатным веб-приложением, которое, будучи загруженным на хостинг, сможет через заданный интервал времени подключаться к государственной базе "Работа России" с целью забрать новые вакансии для интересующего города и вывести в ваш Telegram-канал.

Читать далее

Ассоциативное упражнение К.Юнга — мощный инструмент самоанализа и поиска ответов на важнейшие вопросы

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

Специальное предисловие для Хабра.

{

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

Путь в мою нынешнюю профессию - психологию - начался с программирования: в 90-х у меня было много задач - сперва инженерные прочностные и массово-центровочные рассчёты, потом обработка больших массивов текста (немного писал об этом ранее в серии статей «Как мы программировали в 90-е»), и, постепенно, этот интерес привёл меня в когнитивно-поведенческое направление (КПТ). И уже внутри КПТ стали интересны исследования «взаимоотношений» между рациональным и эмоциональным.

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

Пусть эта фраза моего собеседника будет эпиграфом к этой статье.

}

Читать далее

Как я делаю нейромультик про Михалыча

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

У меня есть мультик про мебельщика Михалыча. Снят в жанре мокьюментари — как будто кто‑то пришел с камерой к небольшому производству и снял документалку про обычный рабочий день. Интервью на камеру, бытовые сцены, узнаваемые типажи. Только всё это нарисовано и анимировано нейросетями — без художника, без аниматора, без актеров.

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

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

Как добиться от ИИ нормального результата

Делаем свое контекстное меню для полей ввода в Qt на мобильных устройствах

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

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

Читать далее

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

Структуры данных на практике. Глава 16: Фильтры Блума и вероятностные структуры данных

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

Наш веб-краулер потреблял 128 МБ ОЗУ только на отслеживание посещённых URL. На встраиваемом устройстве с 256 МБ это была половина всей памяти.

Задача краулера была простой: отслеживать посещённые URL, чтобы не краулить одну и ту же страницу дважды. После обработки 1 миллиона URL (средняя длина 80 байт) хэш-таблица, в которой хранились эти URL, разрослась до 96 МБ плюс оверхед.

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

Этот вопрос изменил всё. На самом деле, идеальная точность не требуется. Если мы случайно обработаем одну страницу дважды, то впустую потратим часть пропускной способности, но ничего не поломаем. Главным ограничением была память.

Читать далее

Попросили Claude создать WCAG-доступный DatePicker на React и потратили 3 дня на доработки

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

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

Нам понадобился настраиваемый DatePicker на React для процесса записи на прием к врачу, где пользователи, работающие с keyboard navigation, и люди, использующие screen reader’ы, должны были выбрать дату без лишних затруднений.

Claude сделал нам хорошую первую версию: структуру компонента, ARIA-атрибуты, базовую keyboard navigation и логику календаря. На первый взгляд результат выглядел почти готовым.

Затем мы запустили NVDA, VoiceOver и протестировали сценарий keyboard navigation.

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

Код выглядел нормально, но UX оставлял желать лучшего.

В этой статье мы рассмотрим реальную работу, стоящую за WCAG-доступным DatePicker'ом: где AI сэкономил нам время; где он не справился; как нам помог WAI-ARIA APG; какие детали нам пришлось исправлять вручную и почему доступность нельзя проверить, просто прочитав сгенерированный код.

Приготовьтесь к инсайтам, багам и победам!

Читать далее

Все демонические насельники ИИ… по старшинству

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

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

В конце апреля OpenAI опубликовала у себя в блоге пост, в котором объяснила, почему модели OpenAI то и дело говорят о гоблинах. А также о гремлинах.

Получился интересный документ, как минимум, частично касающийся той работы, которой мы вместе с Мюрреем Шанаханом и Гамильтоном Моррином занимались на протяжении нескольких месяцев. Теперь, в зависимости от того, с кем именно мы беседуем, я могу сказать, что этот проект был призван помочь разобраться в глубинной психологии больших языковых моделей (БЯМ) и о том, как она влияет на коммуникацию нейронок с пользователями. Но другому собеседнику я мог бы сказать, что наша работа скорее сближалась с демонологией.   

Читать далее

Организовал весь пентест-арсенал в одном месте: всё под рукой, офлайн и на русском

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

Привет, Хабр. Я Александр, мне 33. Хакинг у меня хобби, а не работа: CTF, Hack The Box, иногда багбаунти по выходным. И каждый раз одно и то же.

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

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

Словарь. И где он лежит-то. /usr/share/wordlists? seclists? А подкаталог? Опять ls, find, вспоминаешь путь, который вбивал сто раз.

Пейлоад. Лезешь в PayloadsAllTheThings — а там стена. Какой брать? На каком этапе? Что выстрелит, а что лежит для галочки? Непонятно.

И так весь тест размазан по тридцати вкладкам. HackTricks, PayloadsAllTheThings, GTFOBins, revshells, рядом гугл с переводчиком — половина же на английском. Плюс папка своих заметок.

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

В какой-то вечер я психанул и начал сваливать всё нужное в одно место. Локально, на русском, поиск по одной кнопке. Оно разрослось, и я сам не заметил, как это стало отдельным проектом. Выложил в опенсорс. Назвал ARS3NAL — тут без фантазии, арсенал он и есть арсенал.

Читать далее

Первый промт-инженер компьютерных душ: как Алан Тьюринг предлагал воспитывать ИИ

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

Многие из нас регулярно доказывают сайтам, что они люди: выбирают светофоры на картинках, отмечают велосипеды, передвигают паззлы или расшифровывают искаженные символы. Такие проверки зачастую называют «тестом Тьюринга», хотя сам Алан Тьюринг не имел отношения к CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart, о ней мы писали здесь). Название технологии лишь отсылает к предложенной им в 1950 году идее: если машину невозможно отличить от человека по поведению, то можно ли считать ее разумной?

Когда искусственный интеллект из научной фантастики стал повседневным рабочим инструментом, имя Тьюринга вновь оказалось в центре внимания. Один из основателей современной вычислительной техники в 1940-х годах размышлял не только о проверке интеллекта машины, но и о его формировании.

Читать далее

Как с помощью Мегафон и Max навсегда потерять доступ к клиентам- информационная безопасность на уровне тупика

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

Статья для @MegaFon, в меньшей степени для Мах, но их тут и не призвать к ответу, тем более что они как-то и не совсем при делах, но в принципе тоже могли бы как-то поучаствовать. ( впрочем, поддержка Мах на удивление быстро отреагировала в субботу вечером)

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

Ах да, Max все же в меньшей степени, а скорей про то, что если моему приложению/компании нужна служба поддержки, то её регистрировать можно только на реальную симку, а это очень неудобно.

Итак, предыстория: я как разработчик ПО имел и имею канал поддержки клиентов в телеграм канале, после усиления блокировок часть клиентов оттуда отвалилось (не хотят квн смотреть) и перешли в Мах, и соответственно клиентам нужно иногда выставлять счета, также оказывать поддержку, и для этого пришлось завести аккаунт МАХ отдельного для этого (не с личного же номера это делать, тем более если доступ надо давать кому-то ещё к этому каналу).

У Мегафона БЫЛА (и есть) удобная услуга, дополнительный номер, это когда есть основной номер по сим-карте, и можно еще приделать хоть три номера дополнительных виртуальных ( за 2р в сутки- 60р в месяц), при этом смс туда приходят и звонки, да и звонить можно с этого номера, удобно, и выгодней-удобней чем делать доп.сим-карту, и вот на такой номер были более двух лет назад созданы аккаунты поддержки в телеграме и не так давно в Махе ( причем доступ дан и некоторым другим со-админам- которые также отвечают в поддержке). Смс естественно при регистрации туда пришли.

Читать далее

Экспериментальный самолёт DARPA, управляющийся импульсами сжатого воздуха, наконец получил крылья

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

Компания Aurora Flight Sciences в настоящее время устанавливает крылья на экспериментальный беспилотник X-65. Это важный шаг вперёд для X-65, который предназначен для маневрирования с помощью импульсов сжатого воздуха, а не традиционных управляющих систем. Эта технология может значительно повлиять на будущие разработки военных и гражданских летательных аппаратов, особенно в том, что касается конструкций, обеспечивающих скрытность.

X-65 разрабатывается в рамках программы Агентства передовых оборонных исследовательских проектов (DARPA) «Управление революционными летательными аппаратами с новыми эффекторами» (CRANE), запущенной ещё в 2020 году. Впоследствии DARPA выбрала компанию Aurora Flight Sciences, дочернюю компанию Boeing, для самостоятельной разработки проекта. В 2024 году «Аврора» перешла к последнему этапу программы и теперь планирует совершить первый полёт в следующем году. На протяжении нескольких лет программа CRANE сталкивалась с рядом задержек и ростом затрат, к чему мы вернёмся позже.

Читать далее