Обновить

Разработка

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

Пишем стек TCP/IP с нуля: Ethernet, ARP, IPv4 и ICMPv4

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

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

Самые распространённые протоколы слоя 2 и слоя 3, Ethernet и IP, скромны по сравнению с сложностью TCP. В этой серии статей мы реализуем минимальный стек TCP/IP пользовательского пространства для Linux.

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

Читать далее

История S.u.S.E. Начало

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

В 1992 году четверо студентов из немецкого городка Фюрт — Роланд Дирофф, Томас Фер, Хьюберт Мантель и Бурхард Стайнбильд — мечтали о независимости. Им хотелось идти своим путём, работать на себя и получать от этого удовольствие. В колледже ребята много работали с UNIX, а в Хельсинском университете как раз выпустили новое опенсорсное ядро Linux. В то же время Питер Макдональд создал дистрибутив Softlanding Linux System (SLS), а Патрик Волькердинг выпускал исправления для него, бесплатно распространяя их через FTP. Но везде была одна общая проблема — большинство систем UNIX и Linux поддерживали только английский язык. Тогда четверо друзей решили упростить себе и людям жизнь, занявшись локализацией SLS для немецкой аудитории.
Читать дальше →

Кто проживает на дне океана? Рассказываем о подводных линиях связи

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

Привет! Я Лев, специалист продуктовой поддержки в Selectel. Задумывались ли вы, как сообщение в мессенджере или видеозвонок достигают адресата за доли секунды, преодолевая тысячи километров? Наверняка. А о том, что 70% Земли покрыто водой? Думаю, тоже. Но если совместить эти факты, то выходит, что большая часть «магии» происходит именно на глубине, а подводные линии связи — это невидимые герои, соединяющие континенты. В статье немного окунемся в историю, расскажем об их основных типах и функциональных элементах, а также рассмотрим сферы применения!
Читать дальше →

Почему JWT — не панацея: разбор проблем сессий и безопасности

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

JWT для сессий: удобство или головная боль?

JSON Web Token (JWT) приобрёл популярность как удобный способ аутентификации и передачи данных между клиентом и сервером. Его ценят за простоту, stateless-подход и гибкость. Однако большинство гайдов рассказывают только о плюсах, забывая о недостатках.

В этой статье мы разберём основные проблемы использования JWT для хранения пользовательских сессий и обсудим более надёжные альтернативы.

Читать далее

Разработка трёхмерного движка для Dendy/NES. Часть 1

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

В этой статье мы поговорим о разработке простого трёхмерного движка для консоли Dendy (NES/Famicom), который позволит выводить полигональные трёхмерные модели и проводить над ними базовые манипуляции (вращение, перемещение, трансформация, заливка полигонов и т. д.). В первом части мы обсудим реализацию вывода двумерных примитивов и организацию памяти в условиях ограничений NES.

Читать далее

Оживляем раритетное этажное табло от лифта

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели3.4K
Приветствую всех!
Давным-давно, когда лифты были ещё релейными, на некоторые из них ставились довольно характерного вида табло на вакуумно-люминесцентных индикаторах. Обычно таковыми являлись административные лифты, однако подобные указатели можно было встретить и в некоторых жилых домах.



И вот однажды мне стало интересно: а как вообще устроены такие табло и чем там управляется этот индикатор? Самое время это узнать. Заодно запустим такой девайс и посмотрим на начинку более поздних экземпляров.
Читать дальше →

Liberux NEXX: Linux-смартфон с 32 ГБ ОЗУ и аппаратными переключателями

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

Источник.

Ну что, линуксоиды могут быть довольны. На рынке появился (точнее, скоро появится) очередной телефон на базе Linux. Причем не просто так, а с изюминкой. Liberux NEXX – это не просто смартфон, а настоящий техно-манифест. 32 ГБ оперативки, Linux под капотом и куча фишек для параноиков. Давайте разбираться, что это за телефон и кому он вообще нужен.
Читать дальше →

Google убивает открытый веб

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

Несколько месяцев назад я писал о прокси-войне, которую Google ведёт против открытого веба при помощи XSLT. Совершенно неудивительно, что Google продолжает продвигать отказ от него, по-прежнему не давая никаких весомых причин, за исключением «мы наживались на FLOSS-библиотеке, в которой наконец нашли достаточное количество багов безопасности, чтобы это служило оправданием». Компания не объяснила, почему решила не устранять проблемы в самой библиотеке или использовать более современную библиотеку, написанную на безопасном языке, воспользовавшись возможностью проапгрейдить поддержку XSLT до более свежей, мощной и простой версии стандарта.

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

Читать далее

Обзор Divoom Times Gate для любителей кастомизации

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

Привет, Хабр! На связи Владимир Туров, разработчик в Selectel. В рекомендациях одного маркетплейса мне попалось чудо китайской киберпанковой мысли — часы и по совместительству пиксельный дисплей Divoom Times Gate. Мне понравился визуальный стиль и потенциальная возможность выводить любую информацию. У часов есть свое приложение с регистрацией, что навевает грустные мысли… Вдруг часы управляются исключительно через серверы производителя? 

Я купил девайс и немного разобрался в его интерфейсах. В этой статье проведу минимальный обзор устройства и расскажу про возможности API и локального управления на примере шуточной интеграции с Baldur’s Gate 3.

Читать далее

Коллекция полезных CSS фишек, которые вы редко используете

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

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

В мире фронтенда активно всё меняется. Появляются одни инструменты, но только их выучишь — они устаревают, и нужно уже учить новые. Новые методы и API в JavaScript. Даже в HTML появляется что-то новое. И, конечно, CSS не отстаёт.

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

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

Читать далее

Если вы эксперт 45+ и вдруг решили сменить работу

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

Для возрастных кандидатов на рынке IT действительно существует негласная планка. После 45 лет количество откликов и звонков заметно снижается, а ближе к 50 поиск работы рискует превратиться в тяжелый труд, где помогают либо связи, либо уникальная, редкая экспертиза. Это касается не только embedded разработчиков, но и любых IT специалистов.

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

Читать далее

Превращаем сайт в мобильное приложение за пару шагов. Часть 2

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

Привет, Хабр! Меня все так же зовут Матвей. В прошлой статье я собрал простое Android‑приложение из сайта с помощью конструктора. Мы убедились, что для лендинга или каталога зачастую достаточно одной WebView‑обертки. Во второй части возьмем тот же небольшой веб‑сервис, создадим под него URL и соберем полноценное приложение с пушами и доступом к системным функциям.

Разбираться в Swift, Kotlin или Flutter по‑прежнему не придется: вместо этого используем конструктор. На примере посмотрим, как сайт превращается в приложение, какие настройки важны, чтобы оно адекватно работало и выглядело хорошо на Android и iOS. И как довести этот результат до состояния, когда не стыдно использовать. Детали внутри.

Читать далее

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

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

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

Читать далее

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

Чтобы тебя не вычислили рекламщики, нужно быть параноиком

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

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

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

Читать далее

MIT доказал провал 95% проектов, OpenAI признали галлюцинации, или почему ИИ никогда не заменит людей

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

Нобелевский лауреат Джеффри Хинтон, которого часто называют «крёстным отцом ИИ» за его гигантский вклад в технологию искусственных нейронных сетей, питающую современный ИИ, в последнее время обрушился с гневной тирадой на Big Tech. От обвинений в корпоративной жадности до подчёркивания опасностей ИИ, он, подобно Пандоре, отчаянно пытается запихнуть судьбы обратно в ящик. Но в недавнем интервью для Bloomberg он выкрутил громкость на одиннадцать, поставив под сомнение саму экономическую жизнеспособность ИИ.

На вопрос Bloomberg, окупятся ли когда-нибудь головокружительные инвестиции в ИИ, Хинтон ответил: «Я считаю, что не смогут», и уточнил: «Я считаю, что для того, чтобы заработать деньги, вам придётся заменить человеческий труд»...

Читать далее

Сколько воды в бочке?

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

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

Читать далее

Как работают ИИ-агенты и кому они на самом деле нужны

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

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

Составили полноценный обзор: чем ИИ-агенты отличаются от привычных чат-ботов, каким проектам они приносят реальную выгоду и как оценить, готова ли ваша компания к первому пилоту. А еще подготовили простой гайд, чтобы каждый смог попробовать, что такое ИИ-агент на самом деле. 

Читать далее

Сила оттенков серого: компьютерное зрение с нуля

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

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

Мне захотелось понять, насколько далеко я смогу зайти, оставив в computer vision только самый минимум: одни лишь 8-битные изображения в градациях серого; никаких сложных структур данных, старый добрый C, немного байтовых массивов и единственный файл заголовка. В конце концов, изображение — это ведь просто прямоугольник из чисел, не так ли?

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

Читать далее

Что такое API? Простыми словами для Начинающих

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

API.

Это слово звучит в каждой IT-статье, в каждой вакансии, в каждом разговоре разрабов. Но когда гуглишь, что это, вываливается тонна заумных определений про «программные интерфейсы приложений», от которых мозг плавится.

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

Читать далее

Почему операционный усилитель — плохой компаратор

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

Одна из важных задач микроконтроллерных проектов — это обработка аналоговых сигналов и сравнение их значений с некоторым опорным напряжением. Для согласования уровней напряжения можно использовать операционные усилители (ОУ), а для сравнения — компараторы.

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

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

Погрузиться в мир аналоговой схемотехники