Обновить

Разработка

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

Ассемблер для гоферов. Структура и макросы. Часть 2

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

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

Читать далее

PG_EXPECTO: Анализ влияния размера shared_buffers на производительность СУБД PostgreSQL

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

Производительность СУБД — ключевой фактор , однако спонтанные проверки часто искажают реальную картину. PG_EXPECTO — это не просто набор скриптов, а чёткая методология, превращающая анализ PostgreSQL из хаотичного поиска проблем в структурированный, воспроизводимый эксперимент

Задача

Используя классическую задачу о влиянии значения параметра shared_buffers на производительность СУБД, подготовить и протестировать общую методологию проведения экспериментов по анализу производительности СУБД PostgerSQL c использованием нейросети для анализа статистических данных, собранных комплексом pg_expecto в ходе нагрузочного тестирования.

Читать далее

Исследование комет: анализ патентов

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

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

Читать далее

Как обновить n8n на своем сервере(Docker)

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

Послезавтра, 15 декабря, выходит n8n 2.0. Обновляется он, кстати, достаточно часто. В этом материале я описал безопасный способ обновления при использовании Docker с сохранением данных. Расскажу в том числе как обновится не только на стабильную версию, но и на beta/preview(если вдруг есть желание посмотреть, что станет доступно в ближайших обновлениях). Инструкция актуальна для n8n, развернутого через docker.

Бежим обновляться!

11 полезных фичей Chrome DevTools часть 2

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

Всем привет!

Пока из каждого утюга рассказывают о различных ИИ-инструментах, агентах и прочих радостях упрощающих жизнь, я хочу рассказать о 11 незаслуженно потерянных фичах в недрах Chrome Devtools. Про фишки ИИ в DevTools рассказывать не вижу смысла, так как в нашем регионе они пока не работают.

Кстати, первая часть тут - тык.

Погнали!

Погнали!

Как мы использовали Codex, чтобы запустить приложение Sora под Android за 28 дней четырьмя инженерами

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

Это статья из официального блога OpenAI, но подход меня так зацепил, что решил перевести для всех. Я тоже часто переношу веб-приложения на мобилки примерно таким же способом и было очень здорово увидеть такой же подход (архитектура+рабочее_приложение-как-пример) у по сути создателей сильного AI. Пишу про разные похожие интересные вещи тут

В ноябре мы представили миру приложение Sora для Android, предоставив любому пользователю с Android-устройством возможность превращать короткие текстовые промпты в живые видео. В день запуска приложение заняло 1-е место в Play Store. За первые 24 часа пользователи Android сгенерировали более миллиона видеороликов.

За этим запуском стоит история: первая версия продакшн-приложения Sora для Android была создана всего за 28 дней благодаря тому же агенту, который доступен любой команде или разработчику – Codex.

С 8 октября по 5 ноября 2025 года небольшая команда инженеров, работая бок о бок с Codex и израсходовав примерно 5 миллиардов токенов (вау), провела Sora для Android от прототипа до глобального запуска. Несмотря на скорость разработки и масштаб, приложение демонстрирует показатель стабильности (crash-free) 99,9% и архитектуру, которой мы гордимся. Если вам интересно, использовали ли мы какую-то секретную модель – нет, мы использовали раннюю версию модели GPT-5.1-Codex, ту самую, которую любой разработчик или компания могут использовать уже сегодня через CLI, расширение для IDE или веб-приложение.

Читать далее

Тестирование Frontend

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

В данной статье рассматриваются основные виды тестирования, включая юнит-тестирование, интеграционное тестирование и энд-ту-энд (E2E) тестирование, а также выявлены их преимущества, недостатки и ключевые особенности. Также уделяется внимание современным инструментам для разных видов тестирования, например, Jest, Cypress и Testing Library, которые предоставляют разработчикам мощные возможности для написания и выполнения тестов. Исследованы следующие подходы к тестированию: Test-Driven Development, Page Object и Continuous Integration. Выделены ключевые метрики, по которым можно определить эффективность тестирования.

Читать далее

Дневник альтруиста. CMake декорирование

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

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

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

* Превью сгенерировано с помощью Adobe Firefly

Читать далее

Как работают современные браузеры. Часть 2

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

Веб-разработчики нередко воспринимают браузер как «черный ящик», который каким-то чудом превращает HTML, CSS и JS в интерактивные веб-приложения. На самом деле современный браузер — будь то Chrome (на базе Chromium), Firefox (Gecko) или Safari (WebKit) — представляет собой чрезвычайно сложное программное решение. Он управляет сетевыми запросами, разбирает (парсит) и выполняет код, рендерит графику с ускорением на графическом процессоре (GPU) и изолирует контент в отдельных процессах для обеспечения безопасности.

В этой серии статей мы подробно рассмотрим, как устроены современные браузеры, сделав акцент на архитектуре и внутреннем устройстве Chromium, но также отметим ключевые отличия в других браузерах. Мы рассмотрим весь цикл: от сетевого стека и конвейера парсинга до рендеринга с помощью Blink, выполнения JS с помощью движка V8, загрузки модулей, многопроцессной архитектуры, песочниц безопасности и инструментов разработчика. Главная цель — дать понятное и доступное объяснение того, что происходит в браузере "под капотом".

Читать далее

Бросаем Event Loop, переходим на Горутины: Go для JS-девелоперов (Часть 1)

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

Если JS/TS это динамичный, асинхронный «ассемблер» для веба, построенный вокруг одного потока и цикла событий, то Go это строгий, параллельный «ассемблер» для облака, построенный на простоте, явности и истинном параллелизме.

Многие классические учебные материалы по Go, которые вы можете найти, уже устарели. Официальный документ "Effective Go", написанный в 2009 году, не охватывает ни модули, ни дженерики. Два аспекта, которые являются фундаментальными для современного Go. Аналогично, многие популярные книги, такие как "The Go Programming Language", были написаны до появления дженериков. Этот документ призван стать современной отправной точкой, ориентированной на версию Go 1.25+ и использующей ваши существующие знания JS/TS для ускорения обучения.

Читать далее

Вебхук слева

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

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

~300 строк кода.

Читать далее

Карта для капитана. Как я рабочее место руководителя для 1С:ERP создавал

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

Художественная реконструкция реального эпизода 1773 года: охота за султанскими сокровищами в Средиземном море.

Главный герой — Георгий Ризо, греческий капитан, адъютант графа Алексея Орлова и командир корсарской эскадры. Перед ним — карта района плавания. По ней он объясняет экипажу свой замысел и вдохновляет экипаж на рискованное предприятие.

Бизнес — это тоже своего рода поход за сокровищами.

И в такой мощной программе управления, как 1С:ERP, «карта похода» — единый наглядный инструмент планирования — нужна руководителю ровно так же, как капитану — карта района плавания.

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

Ниже — о том, как я создавал прототип такой карты. Создавал буквально «на коленке». И как из «карты для руководителя» неожиданно вырос ИИ-помощник по планированию в 1С:ERP.

Читать далее

Почему xor eax, eax используется так часто?

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

В одном из моих докладов по ассемблеру я показал список из 20 самых часто исполняемых команд на среднем десктопе x86 с Linux. Разумеется, в этом списке были привычные  movaddleasubjmpcall и так далее; неожиданным стало включение в него xor — «eXclusive OR». В эпоху, когда я занимался хакингом на 6502, наличие XOR было почти абсолютно точным указанием на то, что найдена часть кода, связанная с шифрованием, или какая-то подпрограмма обработки спрайтов. Поэтому удивительно, что машина с Linux, просто занимающаяся своими делами, выполняет такое количество этих команд.

Но потом мы вспоминаем о том, что компиляторы любят генерировать xor при присвоении регистру нулевого значения.

Читать далее

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

Я решил попробовать ECS и вот, что из этого вышло

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

Проверяя одну из своих механик, я спавнил последовательно NPC одного за другим и, внезапно, обнаружил, что где-то на 60 агентах у меня картинка уже заметно подлагивает.
В этот момент, в очередной раз смотря в код, я понял, что нужен тотальный рефакторинг. И вместо того, чтобы отрефакторить мою ООП-шную архитектуру, я решил переписать модуль NPC на какое-то подобие ECS. Естественно, я решил не использовать библиотеки Unity, а написать какой-то свой гибрид.

В этой статье я попытаюсь описать сложности, с которыми я столкнулся и свои впечатления от итога.

Это еще одна статья из цикла про разработку игр без прикладного опыта. Если вам интересна эта и подобные темы - подписывайтесь на мой ТГ-канал Homemade Gamedev, где посты выходят чаще, и я пишу про текущие задачи в проекте.

Читать далее

Ежедневный отчёт по Telegram-каналу без шаманства с crontab

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

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

Очевидный путь - автоматизировать все самому: поднять VPS, поставить туда Python, написать скрипт, настроить crontab, следить за работой и молиться, что все будет работать без ошибок. Ради одного короткого задания раз в день это выглядит избыточно, приходится платить за целую виртуалку и тратить время на настройку.

В этой статье я покажу, как сделать проще: собрать небольшой Python-скрипт, который раз в день отправляет вам в Telegram краткий отчет по каналу: количество постов, просмотры, репосты, реакции, самые популярные реакции и топ-посты за указанный вами период без необходимости постоянной аренды VPS.

Читать далее

Я вернулся в 1999-й и поймал «Чернобыль»

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

Я вернулся в 1999-й и поймал вирус CIH, он же Чернобыль. В новой серии машины времени проверяю: что бы случилось с моим компьютером, если бы я случайно запустил заражённый .exe.

В статье вы узнаете:

• Почему 26 апреля 1999-го мой компьютер превратился в «кирпич»;
• Как CIH перезаписывал BIOS и стирал загрузочные сектора;
• И зачем создавали ранние вирусы в эпоху без денег;

Настоящая интернет-ностальгия 1999-го ждёт.

Читать и отправиться в 2000-й

Ловушки PowerShell: поведение, которое ломает привычные ожидания разработчиков

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

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

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

Читать далее

Дистрибутивные схемы

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

Борис Цирлин

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

Читать далее

Эдсгер Дейкстра «О вреде оператора go to»

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

Публикуем новый полный перевод хрестоматийной статьи Эдсгера Дейкстры. Этот текст, опубликованный в 1968 году в журнале Communications of the ACM в формате письма в редакцию, заложил основы структурного программирования, впервые строго аргументировав отказ от оператора go to в пользу использования циклов и условных конструкций.

Читать далее

Не просто трещина: ученые раскрыли волновую природу разрушения льда

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

Коллектив ученых из МФТИ и Института проблем механики им. А.Ю. Ишлинского РАН разработал новую составную упругопластическую модель, которая с высокой точностью описывает сложное поведение льда при низкоскоростных ударах. Эта модель впервые позволяет детально проследить, как ударное воздействие порождает сложную картину внутренних напряжений и деформационных волн, приводящую к образованию и росту трещин. Исследование крайне важно для развития безопасных технологий освоения Арктики. Результаты работы, выполненной при поддержке гранта Российского научного фонда (грант 23-21-00384), опубликованы в «Сибирском журнале вычислительной математики».

Читать далее