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

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

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

Картинка: TomoNews Sci & Tech, Gang65
- Дедушка, а ветрогенераторы с тремя лопастями бывают?
- Бывают, внучок, бывают...
- А, с двумя лопастями бывают?
- Бывают, внучок, бывают...
- Дедушка, а вообще без лопастей бывают?
- Нет, внучок, не бывают!
- А вот и нет, дедушка, бывают! :-D
Много различных генераторов — замечательных и не очень, и среди них особняком стоит одно устройство, потенциал которого, возможно, ещё не до конца осознан: ветрогенератор на эффекте Магнуса.

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

В сентябре 1985 года Джон Бентли опубликовал книгу Programming Pearls — сборник афоризмов об истинах в программной отрасли.
Прошло сорок лет. Наверняка спустя множество революций в нашей отрасли они потеряли актуальность? Эти советы относятся к той же категории, что и «всегда держи при себе пучок сена для лошадей» или «карманный калькулятор не всегда будет под рукой».
Ох, какая наивность! Ничто не ново под луной. Почти все приведённые афоризмы болезненно актуальны.

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

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

На фоне общего хайпа вокруг ИИ холодным душем стали июльские результаты исследования METR о том, как LLM замедляют работу опытных разработчиков в опенсорсных проектах. Напомним, что использование LLM увеличило время выполнения задач на 19%, хотя сами разработчики ощущали противоположный эффект.
Учёные затруднились объяснить причины когнитивного искажения.
Факт в том, что многим разработчикам очень нравятся их инструменты для автодополнения и генерации кода, особенно Claude Code. Он настолько удобен, что от него буквально возникает зависимость. По опросам, чем больше люди используют такие инструменты — тем больше им нравится. Код «магически» генерируется сам собой, зачастую даже корректный.
Но это не обязательно улучшает или ускоряет разработку.
Более того, есть признаки, что в 2025 году наконец-то наступило некоторое охлаждение ожиданий в отношении к LLM.

Привет, Хабр!
Мне всегда было интересно наблюдать, как развивается CSS. Держу себя в форме, чтобы не пропустить что-то важное. А недавно подумал: «Почему бы не поделиться ими с подписчиками?». И я тут.
Составил список новинок, которые мне кажутся важными и интересными. Есть несколько новых возможностей, которые очень сильно изменят CSS. Думаю, лучше готовиться к ним заранее.
Также скажу, что на сегодняшний день они реализованы минимальным количеством браузеров. Не получится использовать их прямо сейчас. Хотя некоторые можно, если вы поддерживаете только браузер Google Chrome. В любом случае про браузерную поддержку я тоже расскажу.
Давайте посмотрим, что я вам подготовил.

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

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

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

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

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

Наконец-то состоялся официальный релиз OpenIDE – независимой российской среды разработки, которую совместно создают «Группа Астра», Axiom JDK и Haulmont.
Проект стартовал как open source-инициатива в конце прошлого года и всего за полгода прошёл путь от идеи до стабильной версии. В числе ключевых фич — поддержка Java 24 уже "из коробки", собственный маркетплейс плагинов и "многоязычность".
В статье — ключевые достижения, проблемы, а также планы по развитию OpenIDE и её экосистемы.

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

Привет, Хабр!
Когда-то я писал веб-приложения. Решал задачи бизнеса, деплой в прод, REST, тесты, метрики, кубики. Всё было нормально. Но в какой-то момент мне стало… скучно.
Да, задачи были интересными. Команда — отличной. Но где-то внутри появилась пустота. Хотелось делать что-то настоящее. Осязаемое. Что-то, где за твоим кодом — больше, чем UI и API. Хотелось влиять на реальный мир.
Так я попал в мир электропривода.
Всем привет, меня зовут Стас, я техлид в Mish Product Lab.
Тема возникла не просто так: внутри команды у нас было немало споров и дискуссий о том, какой инструмент для проксирования и терминации SSL лучше использовать в различных ситуациях. Изначально все наши гипотезы были основаны больше на личных предпочтениях, чем на реальных данных. Мы долго спорили, надеясь, что истина будет где-то рядом с нашими любимыми решениями. Но в итоге пришли к выводу, что единственный способ получить действительно объективный ответ — это протестировать и сравнить различные варианты на практике.
Именно так родилась идея провести сравнительный анализ производительности HAProxy, Envoy, Nginx, Caddy и Traefik с поддержкой SSL/TLS. Мы хотели понять, какой из инструментов «из коробки» предоставляет наилучшую производительность и минимальные накладные расходы, особенно при обработке SSL-трафика, который, как известно, требует дополнительных ресурсов из-за шифрования и дешифрования.


Написание собственного стека TCP/IP поначалу может показаться пугающей задачей. И в самом деле, за свой тридцатилетний срок жизни TCP впитал в себя множество спецификаций. Однако базовая спецификация остаётся относительно компактной1 — из важных частей в ней можно выделить парсинг заголовков TCP, машину состояний, отслеживание перегрузок и вычисление таймаута повторной передачи.
Самые распространённые протоколы слоя 2 и слоя 3, Ethernet и IP, скромны по сравнению с сложностью TCP. В этой серии статей мы реализуем минимальный стек TCP/IP пользовательского пространства для Linux.
Посты и код служат исключительно в образовательных целях, они позволят вам глубже изучить сетевое и системное программирование.
