Обновить

Моя лента

Тип публикации
Порог рейтинга
Уровень сложности
Предупреждение
Войдите или зарегистрируйтесь, чтобы настроить фильтры

Как универсальный разъем стал кошмаром: почему одинаковые кабели USB-C отличаются по скорости в 80 раз

В 2016 году инженер Google Бенсон Леунг подключил к своему Chromebook Pixel кабель USB-C, купленный на Amazon, и ноутбук больше не включился нормально. В кабеле перепутали провода питания и земли, хотя снаружи он ничем не отличался от исправного.

С тех пор опасных кабелей стало меньше, но путаница никуда не делась. Одинаковые на вид кабели USB-C отличаются по скорости в 80 раз, по мощности в 4 раза, а маркировку на них ставят далеко не всегда. Разбираемся, как универсальный разъем стал инженерным кошмаром.

Как универсальный разъем стал кошмаром: почему одинаковые кабели USB-C отличаются по скорости в 80 раз
Новость

Вышло обновление открытого эмулятора терминала Ghostty 1.4 для Linux и macOS

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

В конце октября 2026 года состоялся выпуск обновления открытого эмулятора терминала Ghostty 1.4 для Linux и macOS. В решении используется GPU-ускорение для вывода контента. В тестах Ghostty оказывается быстрее iTerm, Kitty и стандартного терминала macOS. Исходный код проекта написан на Zig и Swift. В новой версии Ghostty ускорена обработка данных, до 90% сокращён объем памяти, используемой для хранения истории прокрутки (scrollback), а также внесены значительные улучшения в процесс отрисовки в Linux.

Читать далее

Новости

Статья

Чёрный октябрь уязвимостей: что задело мой сервер, как я закрыл дыры и почему ушёл на статику без инлайн-скриптов

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

У меня круглосуточно работают агенты мониторинга: они собирают бюллетени безопасности и сверяют их с тем, что стоит на серверах. В октябре они подняли сводку: 15 уязвимостей за месяц, все «critical» и «high» — PHP, Nginx, Node.js, Next.js, Java, GitLab. Я проверил каждую строку руками: что это на самом деле, задевает ли меня и чем это лечится.

Итог: две строки меня действительно задели — Node.js был не обновлён четыре дня, а заплатки Nginx не стояли, хотя автообновление включено. Две строки оказались не тем, чем кажутся. А PHP-уязвимости меня не задели по самой простой причине: PHP на сервере нет.

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

Читать руководство
Пост

40. «История одного города» М.Е. Салтыков-Щедрин

Как ни кощунственно прозвучит, это – самая бизнес-полезная книга из классической русской литературы. Ну, на мой взгляд.

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

Как будто Салтыков-Щедрин вдохновился «Эмоциональным интеллектом» Гоулмана и решил написать бизнес-роман о стилях лидерства. Как Голдратт облёк свою теорию ограничений в «Цель». Но Салтыков-Щедрин, как настоящий классик, да ещё и русский, сильно переплюнул Гоулмана – описал не шесть стилей, как в «Эмоциональном интеллекте», а целых 22.

Книга прекрасна. И в художественном плане, и как пособие для руководителя. Чисто технократический аспект: в классической художественной литературе нам если и дают некий ряд героев для сравнения, то обычно не сильно длинный. Помимо протагониста и антагониста бывает ещё один или пара персонажей, которых можно сопоставить по одной системе координат, измерить одной линейкой. Салтыков-Щедрин дал 22. Ближе всех из русской классики к нему стоят, наверное, Гоголь с «Мёртвыми душами», Толстой с «Войной и миром», да, пожалуй, Шолохов с «Тихим Доном». Повторюсь: речь о ряде героев, которые сравниваются в одних обстоятельствах, по одной системе ценностей.

В книге Салтыкова-Щедрина как нельзя лучше проявляется качество художественной литературы, о котором я уже упоминал – можно посмотреть на истории людей, не проживая их. Увидеть паттерны личностей и поведения, реакции и последствия, неизбежности выбора, трудности выбранного пути, ну и чем оно заканчивается. Когда же речь о таком вполне прикладном аспекте, как управление – книга становится совершенно бесценной. Увы, русские классики мало увлекались историями про руководителей или программистов 😊.

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

Это 40-я книга из Книжного стека

Теги:
0
Комментарии0
Статья

Байты приходят, события нет: проверяем кадры SSE и gzip

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

Сервер отправляет по SSE три сообщения с паузой 250 мс, а клиент видит события только через 750 мс. Собрал стенд на стандартной библиотеке Python и поставил три отметки времени: байты тела ответа, текст после декодера gzip, готовое событие. Незавершённый кадр и сжатие без промежуточного сброса дают одинаковый симптом, но задержка появляется в разных точках.

Читать далее
Новость

Релиз открытой ОС Moxnox 1.0 с ядром в стиле Windows NT

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

В конце октября 2026 года разработчик Марк Хармстоун (Mark Harmstone, автор проекта WinBtrfs) выпустил первый мажорный релиз проекта Moxnox — открытой операционной системы с ядром в стиле Windows NT.

Читать далее
Новость

Вышли стабильная сборка Scribus 1.6.7 и экспериментальная версия Scribus 1.7.4

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

В конце октября 2026 года состоялся выпуск версии открытого проекта профессиональной компьютерной издательской системы Scribus 1.6.7. Это Open Source кроссплатформенный аналог типографических решений типа Adobe InDesign, Adobe Illustrator и QuarkXPress. Выпуск Scribus 1.6 произошёл 31 декабря 2023 года.

Читать далее
Статья

Архитектура 1С для новичков: Строим первую внешнюю обработку и клиент-серверный мост. Часть вторая

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

В первой части мы разобрались, почему сервер 1С «слеп» к файлам на вашем диске C: , и подготовили поле ввода для пути к файлу. Пользователь нажал на заветные три точки ... и выбрал документ. Путь к файлу мы научились делать за 3 шага. Что дальше? Теперь нам нужна большая, красивая кнопка, которая заставит этот файл оторваться от вашего компьютера, улететь на сервер, превратиться там в данные базы и вернуть нам красивое окошко с сообщением. Давайте по шагам разберем, как спроектировать это и запустить клиент-серверный мост.

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

В редакторе формы нашей внешней обработки переходим на вкладку Команды (она находится в правом верхнем окне, прямо рядом с «Реквизитами»). Нажимаем зелёный плюс «Добавить» и называем нашу команду просто и понятно: Загрузить. Берем эту команду мышкой и перетаскиваем в левое верхнее окно Элементы, прямо под наше поле с путем к файлу.

На форме появится кнопка. Выделите её, откройте свойства (Alt + Enter) и в поле Заголовок укажите текст, который увидит пользователь: Загрузить.

Шаг 5. Выбор типа обработчика события. Теперь необходимо связать созданную команду с программным кодом. В свойствах команды найдите строку Действие и нажмите на пиктограмму с лупой. Платформа откроет диалоговое окно выбора. Из предложенного списка необходимо выбрать пункт: «Создать на клиенте и процедуру на сервере без контекста».

Давайте разберем, почему платформа предлагает разделение и почему выбор директивы «без контекста» (&НаСервереБезКонтекста) является наиболее правильным.

Читать далее
Статья

GPT-6 Astra восстанавливает Electron-приложение: результаты и расходы через OpenAI, OpenRouter и TeamoRouter

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

Одна задача, три API: разобрать дистрибутив Pomotroid, восстановить настольный таймер и добавить импорт и экспорт состояния. Сравниваю готовые приложения, автоматические проверки, время выполнения и фактические списания через OpenAI, OpenRouter и TeamoRouter.

Читать далее
Статья

Кэширование: 5 неочевидных истин для системного аналитика

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

Привет, Хабр. Меня зовут Любовь Вайгель. Я системный аналитик в СберЗдоровье — MedTech-компании №1 в России.

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

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

Читать далее
Статья

Я дообучил маленькую нейросеть на MacBook, и она стала хуже. Честные цифры

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

В прошлой статье я пообещал дообучить самую маленькую модель своего лаунчера Lumi прямо на MacBook и показать, что выйдет, «даже если станет хуже». Как в воду глядел. После 328 примеров и LoRA через MLX модель решила, что 2 + 2 × 2 = 4, а «скуф» — это лодка, и набрала на запечатанном экзамене 4 из 23 вместо 6. Со второй попытки я вернул её к исходным 6. Рассказываю, что пошло не так, почему маленькой модели мало нескольких сотен примеров и почему обученную модель пока нельзя перенести в Ollama.

Читать далее
Статья

Данные для языка, которого почти нет в интернете: текстовые слои, турецкие подмены и псевдоразметка двумя моделями

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

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

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

Читать далее
Статья

Как генератор трёх слов на баннере вырос в веб-сервис: Ghostscript, CMYK и производственные грабли

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

На фрилансе регулярно просят сверстать простой баннер «АРЕНДА + телефон». Брать за три слова 2 000 рублей неловко, а запускать CorelDRAW, выставлять миллиметры и переводить шрифты в кривые всё равно приходится. Рассказываю, как внутренний скрипт для генерации валидного CMYK PDF вырос в производственный сервис с динамическим разрешением Ghostscript, инспектором структуры PDF, пакетной сборкой из CSV и партнёрским режимом для типографий.

Читать далее
Статья

Как я улучшил управление окнами в macOS

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

Написал приложение, которое добавляет в macOS две функции:

1. Открытие приложений сочетанием клавиш, например ⌥-1 для Chrome, ⌥-2 для Slack;

2. Открытие проектов сочетанием клавиш, например ⌥-3 откроет Option1.xcodeproj в Xcode. Работает с любым приложением.

В статье покажу принцип работы и возможности macOS о которых вы могли не знать.

Текст и код подготовлены без использования технологий искусственного интеллекта.

Читать далее

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

Статья

Бесплатное ПО, пять лет разработки и немного наглости. Как я пытаюсь попасть в реестр российского ПО

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

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

Спойлер: идея оказалась хорошей. А вот количество работы я немного недооценил. Примерно на пять лет.

Но начать хочу совсем с другого.

Читать далее
Статья

Каждый таксист теперь может попробовать поуправлять крупной корпорацией

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

Каждый таксист знает, как управлять страной а заодно и «Роснефтью»: кого снять в правлении и что делать с ценой на нефть, он объяснит за одну поездку от аэропорта до центра. Проверить эти знания на деле ему было негде. Теперь и государство, и крупную корпорацию можно собрать из ИИ‑агентов, и мы это сделали! Нет, не перешли работать в такси, а собрали Корпорацию Всевластия. А я таки сел за руль:-)

Читать далее
Статья

Как я устал от VPN‑клиентов на 300 МБ ОЗУ и написал свой TUN‑клиент на чистом Rust (Unbihex)

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

Всем привет! Последние пару лет экосистема обхода блокировок развивалась по принципу «больше фич — жирнее обертка». Большинство популярных десктопных и мобильных клиентов сегодня — это либо тяжелые комбайны на Electron/Flutter, либо графические обертки над ядром Xray или sing‑box через gomobile и C‑FFI, которые тянут за собой рантайм Go, сборщик мусора и жрут от 200 до 400 МБ оперативки просто в фоне.

Когда у тебя слабый ноутбук, офисная машина или телефон, на котором открыта пара тяжелых приложений, лишние 300 МБ под один только VPN начинают ощутимо бить по системе. А если речь идет об iOS, где системный лимит на сетевые расширения (PacketTunnelProvider) составляет жесткие 50 МБ, такие клиенты регулярно падают по OOM (Out Of Memory) при попытке загрузить крупные гео‑базы.

В один прекрасный день мне это надоело. Я решил взять всё в свои руки и написал с нуля собственный кроссплатформенный TUN‑клиент и сетевое ядро на чистом Rust без единой сторонней прослойки. Встречайте — Unbihex (названный в честь гипотетического 126-го элемента унбигексия). Сейчас он потребляет 18 МБ ОЗУ в режиме TUN (и 12 МБ в прокси), поддерживает полный стек современных протоколов и уже готов к продакшену.

Под катом — как это устроено под капотом, какие грабли пришлось собрать при работе с TUN под Windows и как удалось подружить ядро с популярными панелями.

Читать далее
Статья

ymcp, или как подружить агентов с YouTrack, если ты не админ

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

Всё началось с того, что я в очередной раз копировал описание задачи из YouTrack в Claude Code. Потом комментарии к ней. Потом ещё один комментарий, который кто‑то оставил, пока я копировал первые. Потом ждал, пока агент напишет код, открывал PR, возвращался в задачу, вставлял ссылку, менял статус на Fixed — и шёл за следующей.

В какой‑то момент я понял, что из всей этой цепочки самая бесполезная её часть — это я. Агент умеет писать код, YouTrack умеет хранить задачи, а я работаю буфером обмена с ногами.

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

Читать далее
Статья

Настройщица пианино и Мечник по имени Райдэн: как я нашла в Telegram игру, которая звучит чисто

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

У меня в сумке всегда лежат три вещи: стальной камертон на «ля», ключ для вирбелей и войлочные клинья. Двадцать с лишним лет я езжу по городу и привожу в порядок чужие пианино. Утром старенький «Красный Октябрь» в хрущёвке на окраине, днём концертный рояль в музыкальной школе, вечером цифровое безобразие, которое хозяева почему-то тоже просят «подкрутить». Между вызовами бывают паузы по сорок минут, и обычно я проводила их в маршрутке или на скамейке у подъезда, глядя в одну точку. Этой весной всё изменилось, и виноват в этом мой племянник Тимофей, который однажды переслал мне ссылку с припиской «тётя Ксюша, тебе понравится, там всё красиво и само дерётся». Сразу скажу, к разработчикам я отношения не имею, я обычный игрок, а ссылку оставлю в самом конце.

Читать далее
Статья

Пишем свою мобильную ОС с нуля на Rust. Часть 4: GUI, SQLite и DOOM

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

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

Дальше началась системная работа, о которой я писал в предыдущей части. Теперь ОС наращивает userspace-слой. На экран вернулась картинка — уже с окнами, кнопками и приложениями для телефона, Raspberry Pi и QEMU. На телефоне заработал и тачскрин.

Эта часть будет обзорной: посмотрим, как теперь устроены связи между программами, файловая система и поддержка C и C++, запустим SQLite и DOOM. А в конце напишем своё GUI-приложение — калькулятор. В третьей части он выводил результат в UART. В этой сделаем калькулятор с окном и кнопками.

Читать далее
Статья

Давай отлаживать по TCP

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

Когда в моей Среде разработки К дошла очередь до отладчика, выбор был такой: по HTTP - проще, но с глюками, знакомыми по мобильной разработке; по TCP - быстрее, но протокол закрытый: им штатная среда говорит с тонким клиентом. Я выбрал TCP: снял обмен с провода и повторил его. RSA-1024 с PKCS#1 v1.5, 192 байта на тройном DES, NTLM, контрольная сумма по полям GUID и идентификатор, который нельзя делать случайным. Рассказываю, где спотыкался и что получилось: точки с условием, шаги, стек, локальные, вычисление и остановка по ошибке - на живом клиенте.

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