Как стать автором
Обновить
2113.92
RUVDS.com
VDS/VPS-хостинг. Скидка 15% по коду HABR15
Сначала показывать

Упрощаем «простой» ELF

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

Давайте-ка напишем простую программу для Linux. Насколько трудной она может быть? Только тут надо учесть, что простота противоположна сложности, но не трудности*, и создать нечто простое на удивление трудно. А что останется, если избавиться от сложности стандартной библиотеки, всех современных средств безопасности, отладочной информации и механизмов обработки ошибок?
Читать дальше →

Полезные ссылки

Опенсорсные альтернативы Discord на своём сервере

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров32K
Всего голосов 34: ↑34 и ↓0+53
Комментарии22

Как поднять свой сервер TeamSpeak

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров9K
Всего голосов 25: ↑23 и ↓2+30
Комментарии15

Почему именно Qwerty и Йцукен? Немного об истории клавиатурных раскладок для русского и английского языков

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

К нашему времени раскладки клавиатур Qwerty для английского языка и Йцукен для русского кажутся привычными и само собой разумеющимся. Однако так было не всегда — и в прошлые десятилетия не один мозг был поначалу сломан вопросом «почему в таком странном порядке, есть же алфавит»? История клавиатурных раскладок — особенно для самых распространённых языков — до сих пор изобилует тёмными местами и уходит во времена развитого стимпанка, когда компьютеры были большими и механическими, а на смену работе писцов с гусиными перьями, наконец, стали приходить печатающие устройства.
Читать дальше →

Эксперимент по ускорению SQLite

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

SQLite быстра, но можно ли сделать её ещё быстрее? Исследователи из Университетов Хельсинки и Кембриджа задались этим вопросом и опубликовали работу Serverless Runtime / Database Co-Design With Asynchronous I/O. В ней они продемонстрировали возможность 100-кратного снижения времени задержки, и ниже я в общих чертах эту их работу прокомментирую.

Речь пойдёт об исследовании возможностей Limbo — переписанной на Rust версии SQLite.
Читать дальше →

Насосы, работающие «сами по себе»

Время на прочтение7 мин
Количество просмотров13K
Картинка Freepik

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

А если при этом ещё и создаётся иллюзия нарушения закона сохранения энергии, то вообще хорошо: -)

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

*Сразу следует сделать оговорку, что ни один из этих насосов, конечно, не нарушает закон сохранения энергии. Поэтому для того, чтобы они могли осуществлять полезную работу, им требуется некоторое внешнее питание. Здесь подразумевается, что это не усилия человека или нечто, требующее расхода топлива или электроэнергии.

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

Как ни странно, такие есть и широко используются «в ряде узких сфер».
Читать дальше →

Как три красных огня чуть не угробили Microsoft, а потом стали мемом

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров22K
image

Каждый год к Рождеству традиционно выпускают «уродливые свитеры», каждый старается как-то выделиться. Но Microsoft в 2024 переплюнули всех, выпустив свитер, который просто отвратителен: его посвятили, наверное, самому крупному провалу Microsoft — «красному кольцу смерти» Xbox 360.
Читать дальше →

Диодный сатуратор. Создаём чётные ламповые гармоники

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров6K
TL;DR: Расскажу, как сделал демонстрационную схему аналогового дисторшна, предназначенного для формирования чётных ламповых гармоник в сигнале звуковой частоты. Объясню доступным языком и без формул принцип её работы.


▍ Вступление


На Хабре в 2022 году была опубликована статья, в которой автор рассказал об интригующе простой схеме формирователя чётных гармоник. Она состояла из однокаскадного транзисторного усилителя мощности, в нагрузку которого был включён диод обыкновенной инфракрасной оптопары. Я повторил схему на макетке, провёл некоторые опыты. Да, при изменении напряжения питания схема вносила ощутимые на слух искажения. Но тогда меня этот результат не впечатлил, и плата была убрана в коробку.
Читать подробности и слушать ТЛЗ

250 откликов за 20 минут: как я автоматизировал процесс ответов на вакансии

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

Будем откровенны: поиск работы — это отстой.

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

Обратим внимание на следующее: повторяющиеся задачи + структурированный процесс = идеальный кандидат для автоматизации.

Поэтому я поступил так, как поступил бы любой разработчик в здравом уме — создал систему автоматизации всей этой фигни. В конечном итоге я смог разослать 250 откликов на вакансии за 20 минут. (Ирония заключается в том, что я получил оффер ещё до того, как закончил создавать эту систему. Подробнее об этом ниже.)

В статье я расскажу, как я это сделал.
Читать дальше →

Электрогитара за 6760 рублей, включая доставку

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


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

Этот артефакт китайского производства носит кодовое имя GT500 и продаётся под множеством торговых марок, главные из которых — Irin и Tinar. Мой экземпляр пришёл вообще без какой-либо маркировки.

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

Будущее дата-центров — ИИ и ядерные реакторы

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4.2K

Малый ядерный реактор NuScale Power

Сейчас ЦОДы потребляют примерно 2% электроэнергии в мире, но в будущем их доля значительно возрастёт: по некоторым прогнозам, превысит 20% к 2030 году, а в отдельных странах вроде Ирландии превысит 30%.

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

Чиним видеокарту ножовкой и напильником

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

Это было студёное зимнее утро. Я встаю с утра пораньше и вижу это. Да, это отвал. Наконец моя видеокарта сдохла!

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

Сердце забилось сильнее, разгоняя радость по моим венам — наконец появился повод удовлетворить свой детский интерес (на старости лет).

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

Создаём альтернативный SDK устройства при помощи Wireshark

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров4.1K
Почти четыре года назад я писал о реверс-инжиниринге Stream Deck с целью получения полного контроля над устройством и устранения зависимости от ПО Stream Deck. Мне по-прежнему нравится это «железо», но ПО стало только хуже — теперь оно даже требует входа в аккаунт пользователя для скачивания расширений.


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

В этом посте мы рассмотрим работу Stream Deck Plus — устройства ценой $179,99, которым вы, дорогой читатель, теперь сможете пользоваться, даже если не хотите устанавливать ПО его производителя.
Читать дальше →

Хакерские утилиты Дидье Стивенса

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров25K


Дидье Стивенс — бельгийский разработчик и авторитетный специалист по информационной безопасности. Наиболее известен своими инструментами по взлому паролей Windows, анализу документов PDF и внедрению туда вредоносных файлов, а также как автор опенсорсных утилит Didier Stevens Suite: это 140 программ для системных операций с файлами, процессами, реестром и прочими штуками. Например, диспетчер задач Windows, реализованный в Excel/VBA (на КДПВ).
Читать дальше →

Сортировка «Милосердный Сталин»

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

Merciful Stalin Sort (сортировка «Милосердный Сталин») — это новый алгоритм сортировки, вдохновлённый пресловутым Stalin Sort (сталинской сортировкой). В ходе развлекательного эксперимента со сталинской сортировкой возникла интригующая идея: что, если вместо удаления выбивающихся элементов, сохранить те, которые идут по порядку, и рекурсивно упорядочить остальные? Логика заключалась в том, чтобы добиться повышения производительности за счёт уменьшения массива, требующего сортировки, особенно в случае частично упорядоченных массивов. Это и привело к разработке сортировки «Милосердный Сталин».
Читать дальше →

Суши и роллы: как традиционное японское блюдо попало в Калифорнию и покорило весь мир?

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров5.8K

Суши (они же суси) — кто из нас, айтишников и не только, их не любит? Это блюдо пришло в Японию вместе с буддизмом, претерпело большие изменения за более чем тысячу лет пребывания в кухне Страны восходящего солнца, превратилось почти что в свою противоположность, а затем перебралось за Тихий океан, где вновь преобразилось и сумело стать одним из наиболее популярных блюд современной глобальной кухни. Как почти первобытный способ консервации речной рыбы из джунглей Лаоса превратился в знакомые нам роллы Калифорния и Филадельфия? Продолжим нашу кулинарную серию, где успели побывать рамэн и салат Оливье, и попробуем разобраться!
Читать дальше →

Как инженеры Apple ошиблись с полярностью конденсатора

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

Хочу затронуть давнюю шумиху на тему того, что в схеме Apple Macintosh LC III один из конденсаторов установлен задом наперёд. LC III — это модель Mac размером с «коробку от пиццы». Выпускалась она с начала 1993 по начало 1994 года преимущественно для сферы образования. Также существовала линейка потребительских модификаций в виде моделей Performa 450, 460, 466 и 467. Масштабного отзыва устройств со стороны Apple так и не последовало, что, на мой взгляд, и вызвало среди сообщества скептическое отношение к проблеме. Поэтому предлагаю взглянуть на эту историю более подробно и подробно рассмотреть саму схему устройства. Действительно ли инженеры Apple допустили ошибку?
Читать дальше →

От электростатики до звука: интересные эксперименты для зимних каникул

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров4.6K
Картинка Freepik

Зима — это «не только красивое слово, но и очень важное дело» (© какой-то очень известный фильм).

Вообще говоря, глядя в окно и наблюдая за проявлениями зимы в виде снега, льда и низкой температуры, сразу вспоминается один интересный эксперимент из области физики, электричества и не только…
Читать дальше →

Почему во Вселенной материи больше, чем антиматерии?

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров6.9K


Существование антиматерии было предсказано уравнением физика Поля Дирака, описывающим движение электронов в 1928 году. Сначала было неясно, является ли это просто математической причудой или описанием реальной частицы. Но в 1932 году Карл Андерсон, изучая космические лучи, падающие на Землю из космоса, открыл антивещественного партнёра электрона — позитрон. В течение следующих нескольких десятилетий физики обнаружили, что у всех частиц материи есть партнёры-двойники из антиматерии.

Считается, что частицы антиматерии и материи представляют собой зеркальные копии друг друга. Антивещество можно рассматривать как вещество с обратным зарядом, чётностью и временем (по крайней мере, теоретически). Антиматерия возникает в таких природных процессах, как столкновения космических лучей и некоторые виды радиоактивного распада, и очень малую часть из таких античастиц удалось успешно соединить в экспериментах в антиатомы. Макроскопического количества антивещества учёные ещё никогда не получали (привет Дэну Брауну).
Читать дальше →

FreeRTOS для самых маленьких на примере ESP-IDF

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

Все мы знаем, что FreeRTOS — это операционная система для проектов, где каждой задаче установлены строгие рамки времени, чтобы любое действие было гарантированно обработано. На этом познания об этой системе у большинства айтишников заканчиваются, по той простой причине, что 99% из нас не собираются никогда в жизни разрабатывать ничего наподобие софта тормозной системы автомобиля или медицинского оборудования. Но я бы хотел сегодня немного рассказать об этой системе, потому как она вполне может пригодиться многим из нас по другим причинам. Ведь FreeRTOS вполне может оказаться отличным следующим шагом для саморазвития после Arduino, потому как поддерживает невероятное количество процессоров и при разрастании проекта немногим сложнее «Hello World» её использование будет проще для написания кода за счёт своей продуманной архитектуры. Её можно использовать на микроконтроллерах, с которыми многие уже привыкли работать в своих проектах выходного дня и которые обходятся в смешные деньги, например AVR, ESP32 и STM32. Сегодня я покажу, насколько просто использовать преимущества FreeRTOS на примере контроллера ESP32 и фреймворка от производителя Espressif — ESP-IDF, для своей линейки микроконтроллеров.
Читать дальше →

Как типы делают сложные задачи простыми

Уровень сложностиСредний
Время на прочтение20 мин
Количество просмотров16K

Последнюю пару лет мой мозг программиста всё больше увлекался типами, принципами функционального программирования и Typescript. По большей мере на это повлияло огромное количество времени, потраченное мной на кодовую базу Heartbeat — фулстек-приложения из трёхсот тысяч строк на Typescript, включающего в себя веб-приложение React, мобильное приложение React Native и сервер Node.js. Мой опыт работы с этой кодовой базой показал мне, что чем больше я полагаюсь на систему типов, тем больше пользы из этого извлекаю.

Написание кода в кодовой базе, полностью сделавшей упор на типы, похоже на жульничество. Часто я могу реализовать 80% новой фичи, ни разу не запустив код. Я начинаю работать над крупным рефакторингом, требующим нарушить допущение, принятое во всём коде, но вскоре выясняю, что благодаря системе типов изменения оказываются тривиальными. Простые фичи практически кодируют себя сами, потому что опечатки мгновенно отлавливаются, а половина моего кода пишется автодополнением. На вопросы от команды техподдержки о тонкостях работы какой-то фичи можно ответить при помощи Ctrl+F в коде, даже если письменной документации почти нет. Целые категории багов, с которыми мне приходилось бороться, попросту исчезли.

Я начал называть стиль кодинга, позволяющий реализовать подобное, Type Driven Development. В статье я приведу разрозненные мысли и ссылки на ресурсы, сильно повлиявшие на то, как я понимаю type driven development.
Читать дальше →

Новогоднее чудо — кастомная электрогитара мечты

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров8.8K


Привет, Хабр! Я люблю делать подарки не только другим, но и себе, причём своими руками. В этом году такой самоделкой стал кастомный синглкат с тремя звукоснимателями. Он может звучать и как Лес Пол, и как Стратокастер или Телекастер.
Посмотрим и послушаем!
1
23 ...

Информация

Сайт
ruvds.com
Дата регистрации
Дата основания
Численность
11–30 человек
Местоположение
Россия
Представитель
ruvds