Pull to refresh
0
Василь Бєляєв@VXPread⁠-⁠only

C#, C++, Lua

Send message

RAW — единственный оригинал фотографии. Всё остальное постобработка

Level of difficultyEasy
Reading time8 min
Reach and readers20K

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

В более профессиональных цифровых камерах и некоторых топовых смартфонах информация сохраняется в формате RAW — в виде значений яркости, снятых с матрицы. Это «цифровой негатив», который мы можем конвертировать в RGB и отредактировать как угодно, сохранив исходник. Вот где начинается искусство современного цифрового фотографа — в обработке RAW.

Читать далее

Как на самом деле выглядит необработанное фото

Level of difficultyEasy
Reading time3 min
Reach and readers31K

Вот фотография новогодней ёлки в том виде, в котором видит матрица камеры.

Она даже не чёрно-белая, а серо-серая.

Причина этого в том, что хотя аналогово-цифровой преобразователь (АЦП) камеры теоретически способен выдавать значения от 0 до 16382, данные не покрывают весь этот диапазон.

Читать далее

Как я написал обход блокировки Telegram на Rust — без VPN, без серверов, через WebSocket

Reading time6 min
Reach and readers153K

TL;DR: Написал open-source десктопное приложение TG Unblock на Rust, которое в один клик обходит блокировку Telegram через локальный WebSocket-прокси. Трафик заворачивается в обычный HTTPS к web.telegram.org — DPI не видит MTProto, провайдер не может шейпить. Без VPN, без серверов, без абонентки. Код на GitHub — by-sonic/tglock.

Предыстория: почему GoodbyeDPI не спасает

С весны 2026 года Telegram в России стал работать, мягко говоря, через боль. Сообщения доходят по 10 секунд, медиа не грузятся, звонки рвутся. Классическая картина: провайдер + DPI = страдания.

Первое, что приходит в голову — GoodbyeDPI. Запустил, пакеты фрагментируются, DPI не узнаёт MTProto... и вроде работает. Но:

Пинг 200+ мс — при норме 40–60

Постоянные переподключения — DPI переобучается и режет соединения

IP-шейпинг — провайдер троттлит весь трафик к подсетям Telegram (149.154.x.x, 91.108.x.x)

Соник, что ты сделал?

Как я сделал шифрование поверх MAX, когда приватность стала роскошью

Level of difficultyMedium
Reading time6 min
Reach and readers45K

Как я без Mac, с помощью Claude AI и GitHub Actions, создал кроссплатформенное приложение для шифрования сообщений поверх любого мессенджера. Android на Kotlin, iOS на Swift без MacBook, десктоп на Python. AES-256, три платформы, два отказа от Apple и один баг с буквой «а».

Читать далее

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

Level of difficultyMedium
Reading time8 min
Reach and readers16K

Знакомая ситуация: просишь Claude Code добавить авторизацию — он переписывает половину проекта. Просишь поправить одну функцию — получаешь удалённые тесты и новую зависимость, о которой не просил. За час строишь рабочий прототип, а потом три часа разгребаешь то, что Claude наворотил при «улучшении».

Я Python-бэкенд разработчик, веду свою компанию CREATMAN и кожу в основном один. У меня нет роскоши держать QA-инженера, который будет ловить регрессии после каждого промпта. Мне нужно, чтобы AI-агент помогал быстрее шипить, а не создавал новые проблемы.

После нескольких недель исследования — чтения доков, обсуждений на Reddit, разбора чужих сетапов — я собрал конфигурацию, которая реально работает. Собрал всё в открытый репозиторий с готовыми файлами: claude-code-antiregression-setup. В этой статье — что именно и почему.

Читать далее

Крастерский маршрутизатор на FreeBSD из старого компа

Level of difficultyEasy
Reading time10 min
Reach and readers8.6K

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

Читать далее

Как Apple едва не уничтожила себя, разрешив клонировать Mac

Level of difficultyEasy
Reading time10 min
Reach and readers9K

В 1997 году акции Apple стоили 4 доллара. Компания теряла сотни миллионов и была в шаге от банкротства.

Одной из причин катастрофы оказалось решение, которое за три года до этого казалось спасением: Apple разрешила другим компаниям выпускать Mac по лицензии. Десятки клонов наводнили рынок — дешевле, быстрее, доступнее оригинала.

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

Читать далее

Плохое яблоко на русской Ардуине

Level of difficultyMedium
Reading time17 min
Reach and readers23K

Некоторое время назад я поделился первыми впечатлениями от знакомства с Ардуино-совместимой платой ELBEAR ACE-UNO на базе отечественного микроконтроллера MIK32 «Амур». Материал нашёл хороший отклик среди читателей, и это подогрело моё желание развить тему. Правда, подогрев слегка перешёл в фазу медленного бурления, и достиг точки закипания только сейчас. Но лучше поздно, чем никогда.

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

Читать далее

Видеонаблюдение на Go с потоковой передачей в Telegram

Level of difficultyMedium
Reading time3 min
Reach and readers11K

Привет всем! Хочу поделиться небольшим личным проектом, который родился из чистой бытовой необходимости. Я давно хотел иметь возможность удаленно поглядывать на свою дачу, особенно когда уезжаю на несколько недель. Готовые решения в духе "умных камер" меня не совсем устраивают: то подписки дорогие, то Privacy Policy сомнительная, то функционал избыточный. В итоге я решил, что проще и надежнее будет написать свою собственную утилиту.

Читать далее

Страница на 49 мегабайт

Level of difficultyEasy
Reading time11 min
Reach and readers23K

Если бы активное отвлечение читателей веб-сайта было олимпийской дисциплиной, то первые места в ней всегда бы занимали новостные источники.

Я зашёл на сайт New York Times, чтобы просмотреть четыре заголовка, но меня встретили 422 сетевых запроса и 49 мегабайт данных. Для полной загрузки страницы понадобилось две минуты. И потом они удивляются, что все мало-мальски владеющие технологиями люди с головой на плечах ставят блокировщики рекламы на компьютеры своих знакомых и родственников.

Эта история повторяется у всех популярных новостных изданий.

Чтобы осознать феномен веб-страницы весом 49 мегабайт, давайте вернёмся в прошлое на несколько десятков лет. Объём этой страницы превышает размер Windows 95 (28 дискет). Операционная система, когда-то управлявшая всем миром, с запасом уместится в современной странице. В 2006 году на пике популярности были iPod и цифровая музыка. Стандартная композиция в MP3 с высоким качеством и битрейтом 192 кбит/с весила примерно 4-5 МБ. Одна страница сегодня эквивалентна 10-12 песням. По сути, чтобы прочитать несколько параграфов текста, я скачал целый альбом. Согласно сведениям International Telecommunication Union, среднемировая скорость Интернета в те времена была примерно равна 1,5 Мбит/с. Пока браузер загружал бы этого бегемота, пользователь вполне бы мог успеть заварить себе чашечку кофе.

За последние двадцать лет оборудование совершило большой шаг вперёд; неужели современный стек фреймворков/рекламных технологий полностью обнулил этот прогресс «благодаря» абстрагированию и плохой архитектуре?

Читать далее

Temporal: долгий процесс решения проблемы времени в JavaScript

Level of difficultyEasy
Reading time15 min
Reach and readers8.4K

Как меняется JavaScript?

JavaScript уникален тем, что работает во всех браузерах. У него нет какого-то одного «владельца», поэтому нельзя внести изолированное изменение и ждать, что оно будет применено везде. Эволюция происходит через TC39 — Технический комитет, отвечающий за ECMAScript.

Предложения должны пройти последовательность этапов развития:

• Этап 0: идея.

• Этап 1: принято пространство задач.

• Этап 2: выбрана архитектура драфта, но работа продолжится.

• Этап 2.7: предложение одобрено в принципе; ожидает тестирования и обратной связи.

• Этап 3: реализация и обратная связь.

• Этап 4: предложение стандартизовано.

В 2018 году, когда я впервые изучал Temporal, он находился на Этапе 1. Комитет TC39 был убеждён, что проблема реальна. Это было радикальное предложение по добавлению в JavaScript новой библиотеки дат и времени. Она должна была:

• Стать заменой Date.

• Добавить новые типы DateTime (вместо единого API).

• Стать неизменяемой.

• Добавить поддержку часовых поясов и календаря.

Но как мы к этому пришли? Почему Date вызывает столько проблем? Чтобы ответить на эти вопросы, нужно вернуться назад.

Читать далее

Как не завалить коммерческий тендер: 9 ошибок новичков, которые могут стоить контракта

Reading time5 min
Reach and readers9.2K

Я закупщик с четырнадцатилетним стажем. Работала и со стороны заказчика, и поставщика. В ИT-сфере c 2019 года, а сейчас  являюсь специалистом по тендерам компании НОРБИТ, крупного ИТ-интегратора и вендора решений для автоматизации. За это время я участвовала в более чем  700 процедурах и с уверенностью могу сказать: участие в тендере — как экзамен: можно знать предмет, но не сдать из-за какой-нибудь мелочи.

Чаще всего закупки в ИТ проходят на этих электронных площадках (без учёта корпоративных, например, Лукойла, Северстали и подобных): https://www.b2b-center.ru/, https://bidzaar.com/, https://utp.sberbank-ast.ru/, https://rb.roseltorg.ru/  https://workspace.ru/

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

Читать далее

Walking-working: как я создал собственный сетап для работы на ходу

Reading time13 min
Reach and readers25K

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

А что если я вам скажу, что можно в такой день гулять и работать одновременно, посещать парки и закрывать тикеты, дышать свежим воздухом, набирая шаги в шагомере, и заниматься сложной инженерной компьютерной деятельностью на полноценном Windows ПК (по желанию Linux).  Да, это может быть не так удобно, как хотелось бы. Да, выглядеть при этом вы будете необычно. Но это уже возможно.

Интересно? Добро пожаловать под кат.

Читать далее

BlackBerry — история короля корпоративного сегмента

Reading time15 min
Reach and readers7.9K

19 января 1999 года на рынке появилось устройство, которое без преувеличения совершило революцию на рынке корпоративных коммуникаций: BlackBerry 850 Pager. Компактный гаджет, умещавшийся на ладони, был оснащен процессором Intel 386, работал от одной батарейки типа АА (заряда хватало на 2-3 недели) и позволял отправлять и получать электронные письма в реальном времени. 

Успех устройства моментально поднял выручку производителя, канадской компании Research in Motion, на 80%. Из небольшой, но гордой фирмы они в одночасье стали законодателями моды бизнес-сегмента рынка электроники. На родине BlackBerry 850 предлагалось купить за $549 при ежемесячной плате $49,99 за безлимитный доступ. Кроме того, устройство можно было взять в аренду: $24,99 в месяц с доплатой $49,99 за связь и $69 за активацию. Всего через полтора года после запуска компания наняла почти 500 новых сотрудников, доведя штат до 740 человек, и инвестировала десятки миллионов долларов в покупку офисных зданий рядом с Университетом Ватерлоо.

Так оптимистично начинается на самом деле грустная история о взлете и падении бренда BlackBerry.

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

В этой статье мы проследим путь компании — и постараемся найти собственный ответ на вопрос «а есть ли в современном мире будущее у идеологии, заложенной создателями BlackBerry?».

Читать далее

Как Pixar спасли мир от «пластиковой» графики — от провального стартапа до RenderMan

Reading time10 min
Reach and readers12K

Сегодня вы можете сгенерировать изображение за какие-то пять-десять секунд, а может, даже быстрее. А несколько десятков лет назад для создания всего одного кадра требовались часы рендеринга — и даже тогда предметы на картинке могли выглядеть как китайская игрушка из ларька. Ведь компьютерная графика того времени, увы, имела довольно серьезный порок — все предметы выглядели скучным безжизненным пластиком. Дерево — пластиковое. Металл — пластиковый. Даже вода — и та пластиковая.

Исправить это недоразумение решила кучка энтузиастов, поверивших в компьютерную графику. Они мечтали о фильме, рожденном целиком и полностью из пикселей, и называли его просто — «Тот самый фильм»

Читать далее

Телефон мистера Версетти

Reading time10 min
Reach and readers20K

Томми Версетти, главный герой культовой игры GTA: Vice City, для многих из нас стал первым образцом брутальности и стиля – наравне с Беном из Full Throttle или незабвенным Дюком Нюкемом. Бирюзовая рубашка в синюю пальму, крупные черты лица, синие джинсы и…конечно же, мобильный телефон.

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

Читать далее

Пора валить 2.0 (или сколько там)

Level of difficultyEasy
Reading time10 min
Reach and readers75K

Я давно уже не писал никаких заметок по-русски. А на эту тему - очень давно. Лет десять наверное точно, а может и больше.

Почему решил написать сейчас? Потому что, как я вдруг заметил, практически никто на эту тему уже примерно столько же ничего особо содержательного не писал. Да, продолжались какие-то споры — но всё об одном и том же, по кругу, но все было понятно что все уже давно при своём мнении и обсуждать-то особо и больше и нечего.

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

Благо, задумываться ещё можно, потому что возможности пока ещё есть.

Итак, "тема сегодняшнего занятия" (ц) - эмиграция. Да, то самое "пора валить" (имени давно почившего знаменитого сообщества в когда-то живом журнале).

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

Читать далее

Тонкая настройка Wi-Fi в OpenWrt — секция wifi-iface — от простой точки до Mesh-сети (2 часть)

Level of difficultyEasy
Reading time8 min
Reach and readers12K

Привет, Хабр! Меня зовут Алексей, и я занимаюсь беспроводными технологиями. Мы продолжаем погружение в глубины конфигурации /etc/config/wireless. В прошлой статье - Тонкая настройка Wi-Fi в OpenWrt — достигаем максимальной стабильности и покрытия мы подробно разобрали секцию wifi-device, которая отвечает за физическое радио — частоты, мощность, каналы. Но, как вы помните, в wireless-конфиге есть ещё один тип секций: wifi-iface. Именно они создают те самые виртуальные интерфейсы, которые позволяют реализовать: точки доступа, клиентские подключения, mesh-сети и даже сервисы мониторинг эфира.

Именно здесь задаётся имя сети (SSID), методы шифрования, правила доступа, изоляция клиентов и многое другое. Казалось бы, что тут сложного? Указал SSID, выбрал шифрование, ввёл пароль — и всё работает. Но и здесь есть свои «подводные грабли», мифы и возможности, о которых многие даже не догадываются.

Читать далее

Самый популярный язык программирования — Excel. И он Тьюринг-полный

Level of difficultyMedium
Reading time7 min
Reach and readers48K

Недавно на созвоне финансовый аналитик показывал мне свою Excel-модель. Двенадцать листов, формулы ссылаются друг на друга через три уровня вложенности, именованные диапазоны вместо переменных, и INDIRECT, который динамически собирает адреса ячеек из строк. Я смотрел на это и думал: чувак, ты же написал компилятор. Ты просто не знаешь об этом.

750 миллионов человек используют Excel. Для сравнения — на Python пишут примерно 15 миллионов, на JavaScript — около 17. Excel обгоняет их всех вместе взятых раз в двадцать. И вот что забавно: подавляющее большинство этих людей искренне считают, что они «просто работают с таблицами». Заполняют ячейки. Делают отчёты.

Нет, они программируют.

Читать далее

Что больнее OT или CRDT в совместном редактировании? И почему до сих пор нет идеала?

Level of difficultyMedium
Reading time26 min
Reach and readers9.7K

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

Меня зовут Антон Леонтьев, я старший разработчик в команде ядра редакторов МойОфис. Мы создаём офисные приложения, которыми ежедневно пользуются более 12 500 организаций, и совместное редактирование — одна из ключевых возможностей наших продуктов.

И знаете, что самое обидное в этой теме? За 35 лет исследований были опубликованы сотни научных работ. Google Docs работает с 2006 года. У Figma, Notion и Linear свои реализации. Казалось бы, задача давно решена, но стоит копнуть глубже, и становится понятно: универсального решения нет.

В Google Drive и Dropbox до сих пор всплывают баги с одновременным перемещением папок. В Notion при параллельном редактировании одного и того же абзаца можно потерять часть изменений. Даже Yjs — самая популярная CRDT-библиотека — не хранит полную историю документа в привычном для нас виде.

В этой статье разберём теорию, узнаем, какие проблемы решают Operational Transformation (OT) и Conflict-free Replicated Data Types (CRDT), на каких математических идеях они основаны, чем отличаются архитектурно и какие компромиссы неизбежно возникают в каждом подходе.

Интересно узнать, почему даже Google не смог сделать идеальное решение? Детали под катом.

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

Information

Rating
Does not participate
Location
Одесса, Одесская обл., Украина
Date of birth
Registered
Activity