Обновить

Все потоки

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

Собираем Linux, который весит меньше, чем мем с котиком, ну или почти…

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

Мне всегда было интересно, насколько минимальным может быть Linux.

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

В отличие от предыдущей статьи, в этой я рассматриваю Linux с более свежим ядром с минимальной конфигурацией на основе tinyconfig, оформленный в виде одного файла и загружаемый при помощи UEFI.

Зачем вообще нужно создавать такие сборки Linux?

Установил готовый дистрибутив или загрузился в Live — работай и изучай. Но такой подход не даёт настоящей уверенности в знаниях. Представьте: водитель и шофёр. Водитель просто ездит. Шофёр знает устройство автомобиля и может его починить.

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

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

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

В комментариях к моей предыдущей статье я видел замечания, что можно использовать buildroot или книгу Linux From Scratch. Скажу только, что я преследую другие цели: собрать минимальный Linux без использования специализированных программ и сделать это как можно проще.

Всем, кого заинтересовало, добро пожаловать под кат.

Читать далее

Новости

Колхозим новую помпу для воды

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

Приветствую, Хабр!

Накрылась у меня тут очередная механическая помпа для накачивания воды из бутылей по 19 литров. А поскольку это далеко не первый подобный случай за последние 16 лет, я решил, что хватит это терпеть пора бы перейти на полу-автоматизацию данного процесса. Кулер мне, в принципе, не нужен, поэтому заказал на маркетплейсе «беспроводную помпу для воды». Получил, зарядил и … ничего. Магазин вернул деньги и объявил, что товар можно не возвращать, что говорит о его качестве, скорее всего. Отзывы я, конечно, почитал только после покупки. Сильно после. Кстати, рейтинг 4,9 и большое количество отзывов.

Читать далее

Как я делал open-source проект, перевёл его на коммерческие лицензии — и это было моим самым лучшим решением

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

Меня зовут Алексей, я скорее инженер, чем разработчик. Занимался производствами, конструировал приборы и в какой-то момент решил попробовать сделать универсальный конструктор для учёта всего, что мне было нужно на производстве — материалов, заказов, процессов, планирования сроков и т.п.

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

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

В общем, начитавшись всей этой чуши, поставили MIT, залили на GitHub, написали статью на Хабр — и... получили поток комментариев: «Ваш код — УГ» и «Всё надо переделать на Laravel».

В итоге, потратив охулиард нервных клеток и набрав 900 звездочек на GitHub, я бросил это опенсорсное занятие и поставил самые обыкновенные платные лицензии.

Что не пишут в буклетах про open source

Региональные дата-центры в России сейчас: на что это вообще похоже, и правда ли, что за МКАДом жизни нет

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

Вот так выглядит ЦОД в Новосибирске

В целом для коммерческих ЦОДов — правда, но есть и нюансы.

Начнём с суровой реальности. У нас вся экономика, все деньги и штаб-квартиры сосредоточены в Москве и Петербурге. Дальше, особенно если смотреть за Урал, с точки зрения коммерческих ЦОДов — пустыня. Да, там есть богатый Екатеринбург, да, там есть Новосибирск, да, там есть Владивосток с его международной торговлей, но потребности в коммерческих ЦОДах нет.

Это классическая проблема курицы и яйца. Коммерческий ЦОД строить там невыгодно, потому что нет клиентов, а клиентов нет, потому что нет нормальных ЦОДов.

В регионах живут в основном каптивные ЦОДы. Это когда условная налоговая или какой-нибудь гигант вроде «Норникеля» строит объект чисто под себя. Им вообще всё равно, где строить: они делают по потребности, а не по условиям. Если госзаказчику по плану нужно построить ЦОД во Владимире или Ярославле — они построят там. Им не нужно бегать по рынку и искать заказчика, у них стопроцентная загрузка своими же расчётами или данными. Производственники могут построить хоть в тундре, и вопрос окупаемости за счёт внешних арендаторов там не стоит.

А вот если ты хочешь построить коммерческий объект для сдачи стоек в аренду, то тут вступают в силу другие законы. В регионах просто нет такого объёма экономики, чтобы окупить полномасштабный ЦОД. Считается, что в регионе есть смысл начинать стройку, только если у тебя есть предзаказ («якорь») минимум на 60% мощностей. Если этого нет, то ты построишь коробку, которая будет генерировать убытки.

Но начинается всё с дешёвого электричества, конечно. Оно важнее, чем аплинки.

Читать далее

Корпоративные секреты по 1500 рублей: что мы нашли на списанных жестких дисках с барахолки

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

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

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

Хотите узнать, как легко купить чужие секреты и почему компании продолжают их выбрасывать в 2025 году? Рассказываем подробно.

Читать далее

Тишина на Байконуре: как сообщество Хабра предсказало крах пилотируемой программы за полгода до аварии

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

Пока у нас бомбит от блокировок WhatsApp, в конце ноября взорвалась единственная площадка для пилотируемых пусков на Байконуре. Разбор причин аварии, и как Хабр выдал пророчество о грядущей катастрофе.

Читать далее

Секреты Apache Kafka API: обработка сообщений без потерь и дублей

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

Меня зовут Андрей Серебрянский, и я люблю Apache Kafka. И гарантии доставки exactly once. И рассказывать обо всём этом на конференциях. Пять лет я строил платформы потоковой обработки данных в финтехе, а теперь вместе с командой работаю над YDB Topics: частью YDB (СУБД Яндекса), которая заменяет Apache Kafka в роли брокера сообщений. СУБД Яндекса уже некоторое время поддерживает Apache Kafka API. Недавно мы расширили этот API, добавив поддержку Kafka-транзакций.

Но наличия транзакций в брокере сообщений недостаточно для получения гарантий exactly once. Чтобы неудачно зависший или перезагрузившийся сервер не привёл к дублированию или потере сообщений, нужно хорошо понимать, как именно работают транзакции в брокерах сообщений вообще и в Apache Kafka в частности.

Эта статья будет полезна начинающим разработчикам и тем, кто хочет освежить знания или разобраться в тонкостях exactly once обработки данных с помощью YDB Topics или других брокеров сообщений.

Читать далее

Фокусы, хаки, магия и прочее ненормальное программирование на C

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

Доброго времени суток, господа и дамы! Иногда у некоторых людей возникает желание заняться откровенным непотребством в программировании — то, что не несет практической пользы напрямую, но помогает развлечься. И я — не исключение. В этой статье я хочу рассказать вам о лайфхаках, трюках (магических и не очень), алгоритмах на языке C!

Идея написать эту статью зародилась из моего поста, после него я написал статью «Математика, биты, магия и немного ненормального программирования на C», которая раскрывала много интересных моментов. Увидев, что многим понравилась, я задумался: почему бы не изучить еще какие-нибудь трюки, заодно практикуясь в программировании на C? В этой статье мы погрузимся глубже и раскроем больше тем, такие как генераторы псевдослучайных чисел, трюки с побитовыми сдвигами и прочие быстрые алгоритмы на C!

Всех, кто заинтересовался — прошу под кат.

Читать далее

Редчайшие и уникальные находки в играх, которые вы пропустили

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

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

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

Читать далее

Разбор инцидента с разрушением кабины обслуживания стартового комплекса 31/6 на Байконуре

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

27 ноября после запуска ракеты-носителя «Союз-2.1а» с экипажем и кораблём «Союз МС-28» со стартовой площадки 31/6 космодрома Байконур произошла авария. Запуск прошёл успешно, и экипаж в составе космонавтов Роскосмоса Сергея Кудь-Сверчкова и Сергея Микаева, а также астронавта НАСА Кристофера Уильямса благополучно прибыл на МКС. Однако беспилотник, пролетавший над стартовым комплексом, зафиксировал, что на стартовое сооружение упала кабина обслуживания 8У216.

Читать далее

ESPVMON — проект открытого универсального ваттметра/логгера

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

Иногда мне требуется этакий логгер напряжения и мощности. Например, построить график разряда аккумулятора, следить за этим аккумулятором в режиме реального времени или собрать исторические данные потребления какого-либо прибора. И вот беда: готовые ваттметры уже давно изобретены, но они в лучшем случае считают пиковые значения и прошедшую из них энергию. Готовые дешёвые ваттметры с логгированием данных также существуют, но они собирают данные на флешку (а бегать с флешами и строить потом графики в Excel мне не очень удобно) либо передают эти данные в своё закрытое и не очень удобное приложение. Мне же хочется беспроводного решения с красивыми графиками в браузере, и будет хорошо, если я смогу выбирать свой шунт.

Разработка и сборка далее в статье

Теорема Пифагора: великий обман школьной программы. Как абстракция убила смысл

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

Все мы знаем эту формулу. a^2 + b^2 = c^2.

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

Но задавали ли вы себе когда-нибудь вопрос: почему именно квадраты?
Почему не кубы? Почему не просто сумма модулей |a| + |b|?

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

Сегодня мы разберем этот «черный ящик» и увидим, что теорема Пифагора — это вовсе не про треугольники. И доказывать её нужно совсем не так, как нас учили.

Школьная программа не дает ответа. Более того, история преподавания теоремы Пифагора — это история того, как живую, наглядную геометрию превращали в сухую, мертвую алгебру. Нас уводили всё дальше от понимания сути в сторону абстракции.

Сегодня мы разберем этот путь деградации и покажем доказательство, которое вернет вас к реальности. Спойлер: теорема Пифагора — это не про треугольники. Она про зеркала.

Приготовьтесь к полному разрыву всех шаблонов!

Читать далее

Vera — ваш личный десктопный агент

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

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

Читать далее

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

Днем я пишу код, вечером иду в гараж и продаю на Авито на 130 тысяч в месяц

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

В 32 года от офисного кресла у меня затекала шея. Правое плечо болело от работы с мышкой — рука постоянно на весу. Поясница ныла от напряжения и наклона над столом. Спина между лопатками — от вытянутых вперед рук.

Йога и фитнес немного спасали. За день работы боли возвращались.

Осенью 2020 года я ушел на удаленку. Понял, пора менять рабочее место.

Читать далее

Первая в мире библиотека Web Components в духе shadcn. Серьёзно, я проверял

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

Первая в мире библиотека Web Components в духе shadcn/ui

Насколько я проверил — это первая подобная библиотека для Web Components. Если ошибаюсь — поправьте в комментах! 🤓

Let's get it

Moss: Linux-совместимое ядро на Rust. Что это за проект?

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

В конце ноября 2025 года проект Moss представил прототип Unix-подобного ядра, написанного на Rust. Это попытка создать ядро, которое умеет запускать Linux-приложения, но работает уже по новым правилам — с упором на асинхронность и современные подходы к системному коду. За восемь месяцев команда добилась того, что ядро работает на реальном оборудовании, поддерживает базовые системные вызовы и запускает командную оболочку Bash. В этой статье разберем, что такое Moss, как оно устроено, где пока недотягивает и какие у него перспективы.

Читать далее

Загадка магнитной подвески

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

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

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

Эта опора выглядит не слишком… элегантно, что ли? Логично захотеть якорь, который полностью висит в воздухе, без какой-либо опоры. Оказывается, это невозможно. Давайте разбираться, почему.

Читать далее

Детгиз на помощь взрослым дядям

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

У меня в кабинете на работе есть небольшая витринка, в которой стоит некоторое количество... гхм... штуковин, большинство из которых я когда-то смастерил сам. Объединяет их одно - когда-то мне было интересно помахать напильником, а теперь все они служат так называемыми conversation starters, то есть, объектами, которые помогают завязать непринуждённый разговор. Давайте сегодня поговорим про пару электромоторчиков, что стоят на первом плане фотографии.

Люди через мой кабинет проходят образованные, но учебник физики, как и я, в последний раз открывали в школе. Обычно они подкованы в математике и в программировании. Я им задаю несколько довольно простых вопросов, которые сводятся к «почему оно крутится?». И знаете, пока что никто на все не ответил без подсказок. У меня подрастают дети, поэтому подсказки я решил материализовать, совместно с ними изготовив ещё пару моторчиков, которые выглядят привычнее. Даже если вам совершенно очевидно, как оно работает, очень рекомендую изготовление подобного совместно с детьми.

Да здравствует DIY! (осторожно, трафик!)

Ответ фронтендера на «Не занимайтесь преждевременной оптимизацией»

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

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

Читать далее

Как завершение поддержки Windows 10 сказалось на популярности Linux и причем тут Zorin OS

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

В октябре 2025 года многим пользователям Windows 10 пришлось решать, что делать: переходить на требовательную Windows 11, оформлять платные продления безопасности или искать замену привычной ОС. В этот момент заметно вырос интерес к Zorin OS — версия 18 за пять недель набрала около миллиона загрузок, и примерно 780 тысяч загрузок пришлись на Windows-пользователей. Насколько можно понять, люди действительно начали смотреть в сторону Linux, пусть и не совсем обычного дистрибутива. Давайте разбираться, что там и как.

Читать далее
1
23 ...