habrahabr
Этот увлекательный мир радиопередатчиков на транзисторах

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

  • суббота, 10 мая 2025 г. в 00:00:16
habrahabr
Проблема высоких каблуков в играх

ВведениеВ этой статье мы поговорим о том, как разные типы обуви могут влиять на разработку игр, и покажем примеры того, как разработчики игр решают эти проблемы на практике.Но прежде чем приступить, давайте посмотрим, что можно делать на каблуках:Источники: 1, 2, 3, 4, 5Вот небольшая таблица на случай, если я запутаюсь в терминологии:Рост персонажаПроблемаИз-за разных размеров тел персонажей разработчикам игр приходится выполнять кучу дополнительной работы. Вот отличный пример из Dragons Dogma …

  • суббота, 10 мая 2025 г. в 00:00:15
habrahabr
ООП — это скам

На хабре и в остальном интернете хватает статей с критикой ООП. Кто-то ругает эту концепцию за излишнюю многословность, кто-то рассуждает о плохих аспектах ООП, кто-то сравнивает реализации ООП в разных языках.После прочтения большинства этих статей и нескольких лет кодинга на C# я заявляю: «ООП - это один большой обман. Никто не понимает, что это такое. Люди просто говорят какие-то умные термины, их собеседники с умным видом кивают, хотя на деле трактуют эти же термины совершенно по-разному».И…

  • суббота, 10 мая 2025 г. в 00:00:14
golang
Про конфигурацию go приложений и при чём тут vault

Когда-то я начинал свой путь как node.js разработчик и столкнулся с необходимостью конфигурировать приложение (кто бы мог подумать). Из простых решений, которые сразу приходят на ум, можно выделить:файлы (json, .env, toml, yaml, xml, ini и прочие)переменные окруженияаргументы процессаВ моём понимании это не совсем "конфигурация", а скорее способ передачи в неё данных. Так вот чтобы это всё заставить представлять из себя полноценную конфигурацию, с которой удобно работать, понадобилось п…

  • суббота, 10 мая 2025 г. в 00:00:12
golang
Часть 3. Векторизация на Go: CGo, транзакции, компиляторы, поддержка, байтовые инструкции

В первой части статьи мы рассмотрели, как можно вручную ускорить Go-код с помощью векторизации и SIMD-инструкций, реализованных через Go-ассемблер. Написали простую, но показательно быструю реализацию sliceContains и увидели, что даже базовая векторизация может дать ускорение в 10–14 раз по сравнению со стандартной реализацией.Во второй части статьи погрузились в практическое применение SIMD в Go-ассемблере, реализовали функцию SliceContainsV1 и изучили, как с помощью VADD, VDUP и других инстру…

  • суббота, 10 мая 2025 г. в 00:00:11
golang
Как я воевал с китайским умным туалетом для котов

В очередной раз, листая озон, я наткнулся на девайс, который привлек мое внимание. Самоочищающийся лоток для котов Petkit Pura Max, вещь весьма интересная, особенно, если у тебя три кота. Пушистые бандиты у меня крупные, потребляют много калорий и соответственно часто ходят в лоток.слева-направо Максвелл, Ульмо и ЭйнштейнОдна уборка за ними — это целый квест, а если хочешь уехать из дома на день‑другой, это обязательно нужно кого‑то просить убирать за ними. Умную кормушку и фонтан для воды я ку…

  • суббота, 10 мая 2025 г. в 00:00:10
javascript
Solid.js как альтернатива (P)React+MobX на практике

Как известно, у Solid довольно скудная экосистема, поэтому для сложных проектов я беру React+MobX. Однако недавно подвернулся небольшой mobile-only проект, в котором разве что маскированные инпуты и кастомные селекты, которых для Solid предостаточно. При этом требования к размеру выходных файлов и перфомансу были высокие.Очевидным решением посчитал взять Solid, заодно и сравнить его по всем параметрам (размер, перфоманс, возможности реактивности, удобство настройки) в реальном проекте. Никаких …

  • суббота, 10 мая 2025 г. в 00:00:09
javascript
Архитектура от тестов: Проектируем код, который легко поддерживать

Привет! Мы, фронтендеры, постоянно в поиске идеальной архитектуры. Слои, фича-слайсы, атомарный дизайн, фрактальность... Все эти подходы имеют право на жизнь. Но сегодня я хочу поделиться не столько новой структурой папок, сколько способом мышления, который сделает любой ваш код лучше, а любую архитектуру – яснее.Идея проста и элегантна: код, который легко и удобно тестировать, — это хорошо спроектированный код. Точка. Представьте, что вы строите дом и в первую очередь думаете о том, как его бу…

  • суббота, 10 мая 2025 г. в 00:00:08
javascript
Как ускорить написание повторяющегося кода в 10 раз

Привет, Хабр! Меня зовут Никита и я пишу сайты на React.Эта статья — про создание шаблонов для ускорения написания кода, знакомство с двумя расширениями для VSCode, которые помогают создавать новые папки/файлы на потоке — то есть много и часто. Возможно, эти плагины пригодятся и вам.В статье разберём:ПроблемуКакие есть решенияПлагины для VSCodeНемного теории и практикиЗаключениеПроблема: Рутина замедляет прогрессЧасто приходится заниматься создании множества однотипных компонентов, включающих в…

  • суббота, 10 мая 2025 г. в 00:00:07