Обновить

Разработка

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

Итоги встречи ISO C++ на Гавайях: начинаем полировку стандарта С++26

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

Привет! На связи Антон Полухин из Техплатформы Городских сервисов Яндекса. Сегодня я расскажу о ноябрьской встрече Международного комитета по стандартизации языка программирования C++, в которой принимал активное участие. Это была первая из встреч, связанных с «полировкой» C++26. Другими словами, новые фичи C++ пока не появятся — комитет должен только проработать замечания всех стран-участников, включая наши замечания от России.

Однако от плана немного отступили и втащили некоторые новинки как ответы на пожелания участников комитета: std::integer_sequence оброс новой функциональностью, а std::format научился в constexpr.

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

Читать далее

HTML и CSS антипаттерны

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

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

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

Только по какой-то причине сложно найти антипаттерны по языкам HTML и CSS. Может, потому что они не языки программирования?

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

Давайте посмотрим, что я вам подготовил.

Читать далее

О дивный новый C#

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

В следующем месяце выходит очередная версия нашего любимого языка программирования. Чем не повод присесть на кухне с рюмкой чая и обсудить, что не так с современными версиями C#?

Читать далее

Ветрогенераторы без лопастей?

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

Картинка: TomoNews Sci & Tech, Gang65

- Дедушка, а ветрогенераторы с тремя лопастями бывают?
- Бывают, внучок, бывают...
- А, с двумя лопастями бывают?
- Бывают, внучок, бывают...
- Дедушка, а вообще без лопастей бывают?
- Нет, внучок, не бывают!
- А вот и нет, дедушка, бывают! :-D

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

Читать далее

Как умерли небольшие контентные сайты

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

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

Все начиналось с моего основного сайта AndroidLime, который я открыл в 2014 году. К 2022 году сайт развился до отличных показателей — около 20 000 уникальных посетителей ежедневно, хорошее ранжирование в поисковиках, пассивный доход и просто приятная работа. Но многое изменилось — трафик критично упал (все подробности я собрал здесь) и никак не хочет возвращаться, даже несмотря на глобальную работу и исправление ошибок (да, они были).

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

Читать далее

Актуальны ли спустя 40 лет советы из «Жемчужин программирования»?

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

В сентябре 1985 года Джон Бентли опубликовал книгу Programming Pearls — сборник афоризмов об истинах в программной отрасли.

Прошло сорок лет. Наверняка спустя множество революций в нашей отрасли они потеряли актуальность? Эти советы относятся к той же категории, что и «всегда держи при себе пучок сена для лошадей» или «карманный калькулятор не всегда будет под рукой».

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

Читать далее

Assembler для Windows в Visual Studio. Часть вторая — MASM x64 и юникод

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

Вторая часть рассказа об ассемблере под Windows. Здесь я расскажу про 64-разрядные приложения в Windows, чем отличается MASM 64 от MASM 32, про макросы из MASM 64 SDK, как работать с Юникодом на примере простого консольного REPL'а, а ещё как обойтись без Visual Studio и пользоваться masm просто из командной строки.

Первая часть — Assembler для Windows в Visual Studio.

Читать далее

Защита детей как причина для глобальной деанонимизации

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

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

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

Читать далее

Насколько LLM усложняет работу программиста

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

На фоне общего хайпа вокруг ИИ холодным душем стали июльские результаты исследования METR о том, как LLM замедляют работу опытных разработчиков в опенсорсных проектах. Напомним, что использование LLM увеличило время выполнения задач на 19%, хотя сами разработчики ощущали противоположный эффект.

Учёные затруднились объяснить причины когнитивного искажения.

Факт в том, что многим разработчикам очень нравятся их инструменты для автодополнения и генерации кода, особенно Claude Code. Он настолько удобен, что от него буквально возникает зависимость. По опросам, чем больше люди используют такие инструменты — тем больше им нравится. Код «магически» генерируется сам собой, зачастую даже корректный.

Но это не обязательно улучшает или ускоряет разработку.

Более того, есть признаки, что в 2025 году наконец-то наступило некоторое охлаждение ожиданий в отношении к LLM.

Читать далее

Что новенького есть в CSS в 2025 году?

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

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

Мне всегда было интересно наблюдать, как развивается CSS. Держу себя в форме, чтобы не пропустить что-то важное. А недавно подумал: «Почему бы не поделиться ими с подписчиками?». И я тут.

Составил список новинок, которые мне кажутся важными и интересными. Есть несколько новых возможностей, которые очень сильно изменят CSS. Думаю, лучше готовиться к ним заранее.

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

Давайте посмотрим, что я вам подготовил.

Читать далее

От джуна до тимлида и обратно: почему я выбрал код

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

За 20+ лет в разработке я прошёл путь от студента с книгой по C++ до техлида, но понял: управление людьми приносит меньше удовольствия, чем написание кода. Карьерный рост — это не всегда движение вверх по иерархии, иногда стоит выбрать то, что действительно нравится, а в IT можно хорошо зарабатывать просто программируя.

Читать далее

От BlueBorne до LE Secure: как Bluetooth выжил после самых громких дыр

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

Bluetooth десятилетиями связывал наши устройства «по воздуху» — от беспроводных наушников до умных замков. Но за это время протокол пережил ряд катастрофических уязвимостей: от BlueBorne, позволяющей атаковать устройства без единого клика, и цепочки дыр в BLE Secure (KNOB, BLESA и другие) ломало защиту на корню. 

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

Читать далее

Дизайн в электронике — кому он нужен? Тем более если это Ардуино, пусть и русская…

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

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

Читать далее

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

Атака клонов или темная сторона Open Source

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

В далёкой-далёкой стране под названием «Open Source»...

Когда-то мы просто хотели сделать VPN, который можно будет легко развернуть на своем сервере, без сбора логов, централизации и слежки. В 2020 году, на хакатоне Demhack, организованном цифровыми правозащитниками из Роскомсвободы, родилась идея создать VPN-сервис, который станет независимым и неуязвимым к блокировкам. Так появился Amnezia VPN – бесплатное open-source решение, позволяющее каждому настроить VPN на собственном сервере с использованием различных протоколов, например, OpenVPN, WireGuard, Shadowsocks, IKEv2 или OpenVPN over Cloak, как надежда на свободный и неуязвимый интернет. Чуть позже мы сделали еще клиент AmneziaWG, о нем расскажем ниже. И как любой хороший повстанческий корабль, он был построен не корпорацией, а маленькой командой инженеров и активистов – с использованием открытого кода, под свободной лицензией.

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

Читать далее

Еще пара слов об устройстве NVRAM в UEFI-совместимых прошивках (про Dell DVAR)

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

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

Эта статья - практическая реализация этого желания, а поговорим мы в ней о формате Dell DVAR, и немного о декларативном языке для написания парсеров Kaitai Struct, на котором я недавно переписал парсеры всех известных UEFITool NE форматов NVRAM. 

DVAR я дрожащая, или право имею?

OpenIDE: первая российская среда разработки с поддержкой Java 24

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

Наконец-то состоялся официальный релиз OpenIDE – независимой российской среды разработки, которую совместно создают «Группа Астра», Axiom JDK и Haulmont.

Проект стартовал как open source-инициатива в конце прошлого года и всего за полгода прошёл путь от идеи до стабильной версии. В числе ключевых фич — поддержка Java 24 уже "из коробки", собственный маркетплейс плагинов и "многоязычность".

В статье — ключевые достижения, проблемы, а также планы по развитию OpenIDE и её экосистемы.

Читать далее

Язык мироздания — теория групп и теория категорий

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

Около полутора лет назад я опубликовал на Хабре статью под названием "Слово Божие — функциональное программирование как основа Вселенной", в которой я рассказывал про лямбда-исчисление и про то, как программу любой сложности можно свести к алгоритму на базе всего трёх SKI-комбинаторов или же одного единственного йота-комбинатора. В ней мы разобрались с алфавитом божественного языка, на котором написана книга мироздания. Теперь же пришло время разобраться с его грамматикой.

Читать далее

Когда ты больше не просто пишешь код. Ты управляешь энергией

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

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

Когда-то я писал веб-приложения. Решал задачи бизнеса, деплой в прод, REST, тесты, метрики, кубики. Всё было нормально. Но в какой-то момент мне стало… скучно.

Да, задачи были интересными. Команда — отличной. Но где-то внутри появилась пустота. Хотелось делать что-то настоящее. Осязаемое. Что-то, где за твоим кодом — больше, чем UI и API. Хотелось влиять на реальный мир.

Так я попал в мир электропривода.

Читать далее

Проксирование из коробки: сравнительный анализ HAProxy, Envoy, Nginx, Caddy и Traefik

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

Всем привет, меня зовут Стас, я техлид в Mish Product Lab.

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

Именно так родилась идея провести сравнительный анализ производительности HAProxy, Envoy, Nginx, Caddy и Traefik с поддержкой SSL/TLS. Мы хотели понять, какой из инструментов «из коробки» предоставляет наилучшую производительность и минимальные накладные расходы, особенно при обработке SSL-трафика, который, как известно, требует дополнительных ресурсов из-за шифрования и дешифрования.

Читать далее

Геймеры и сообщества, повлиявшие на геймдев

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

Когда речь заходит о выдающихся геймерах, все вспоминают известных киберспортсменов или блогеров, ведущих трансляции. Но часто мы забываем о целых сообществах, участники которых играют ради удовольствия, внося огромный вклад в культуру геймеров. Эта статья — своеобразная дань уважения гикам и энтузиастам, которые просто играли, но при этом оказали большое влияние на свои сообщества, стали легендами и вдохновили многих других. Под катом истории о спидранере, который запустил Doom внутри Doom внутри Mario Super World; о 14 геймерах, которые играли в Halo 2 три недели подряд, чтобы не допустить отключения серверов Xbox Live на консолях первого поколения; о разгадке структуры фермента, связанного с вирусом СПИДа, благодаря игре и многое другое.
Читать дальше →