All streams
Search
Write a publication
Pull to refresh
0
Василь Бєляєв @VXPread⁠-⁠only

C#, C++, Lua

Send message

Как же прекрасна структура UTF-8

Level of difficultyEasy
Reading time6 min
Views16K

Когда я впервые узнал о кодировке UTF-8, то был поражён её продуманностью и структурой. Тем, как изящно её авторам удалось выразить миллионы символов разных языков и письменностей, параллельно сохранив обратную совместимость с ASCII.

В UTF-8 используется 32 бита, а в старой доброй ASCII — 7 бит. Но UTF-8 выстроена так, чтобы:

- Любой файл в кодировке ASCII являлся валидным файлом UTF-8.

- Любой файл в кодировке UTF-8, имеющий только символы ASCII, также являлся валидным файлом ASCII.

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

Читать далее

HTTP/3 и QUIC: почему интернет обновляется, и что это даёт приложениям

Level of difficultyEasy
Reading time8 min
Views18K

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

Так же внезапно (и не так уж безболезненно) интернет получил новую «дорожно-транспортную» логику: QUIC и HTTP/3. В этой статье разберём, что конкретно дают HTTP/3/QUIC веб- и мобильным приложениям, где эффект заметен сразу, а где — только после тщательного теста. Детали под катом.

Читать далее

Создаём личную систему VoIP

Level of difficultyEasy
Reading time22 min
Views18K

Я всегда был активным сторонником самохостинга, но ни разу не пробовал ничего, связанного с VoIP. Недавно я приобрёл несколько IP-телефонов и создал личную домашнюю телефонную сеть на основе Asterisk. Это руководство поможет вам настроить собственную телефонную систему при помощи опенсорсных инструментов.

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

Читать далее

Почему не работает VoWiFi в роуминге

Level of difficultyMedium
Reading time7 min
Views17K

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

Есть у меня телефон Redmi Note 13 Pro 5G, который покупался по двум причинам — в нём есть eSIM, он поддерживается российскими операторами в плане работы VoWiFi (он же WiFi calling). И таким образом, я проживая вне РФ смог купить удалено симку российского оператора, которая мне периодически нужна и звонить и принимать вызовы без роуминга, находясь где угодно.

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

Тут нужно заметить, что я живу не в РФ и по месту моего жительства VoWiFi работал, но непосредственно перед отъездом в Турцию я обновил прошивку телефона (со штатной на штатную обычным OTA). В конце статьи напишу, почему это может быть важно.

Ну что делать? А делать, имея роутер на OpenWRT можно следующее. Широко известно, что VoWiFi работает путем установки IPSec соединения с узлом ePDG (Evolved Packet Data Gateway). Для этого происходит сначала обмен по UDP порту 500, а потом по порту 4500.

Вот и установим на роутер tcpdump и посмотрим, что за UDP трафик исходит от моего телефона командой:

Читать далее

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

Level of difficultyMedium
Reading time7 min
Views12K

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

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

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

Читать далее

«Spacewar!»: как первые хакеры создали первую популярную компьютерную игру. Часть 1

Level of difficultyEasy
Reading time9 min
Views5.2K

В начале 1962 года группа энтузиастов-программистов из MIT, называвшая себя хакерами, создала первую работоспособную версию компьютерной игры «Spacewar!». Дуэльный симулятор боя космических кораблей для двух игроков был написан для новейшего в то время компьютера DEC PDP-1, оснащённого круглым дисплеем. «Spacewar!» не была самой первой компьютерной игрой, в том числе для самих же её создателей, но часто называется самой важной и влиятельной из ранних экспериментов в области игровых программ. Она завоевала огромную популярность сначала среди сотрудников и студентов MIT, а затем и во множестве других организаций, использовавших DEC PDP-1 и более поздние ЭВМ с мониторами. «Spacewar!», прадедушка популярного в 90-е «StarCon», — самая популярная компьютерная игра 1960-х годов, и именно опыт сессий в неё сподобил многих программистов с начала 70-х заняться созданием своих игр.

Читать далее

Устройства, которые мы потеряли: что внутри у легендарного Nokia 6600?

Level of difficultyMedium
Reading time11 min
Views18K

Под прошлой статьей о Siemens C65, многие читатели ставили под сомнение легендарность немецких телефонов и говорили о том, что настоящими легендами были устройства от Nokia. И это правда — именно поэтому я решил написать подробную ретроспективную статью, в которой расскажу не только об аппаратных платформах легендарных Symbian-смартфонов, но и об их программных особенностях.

Если вам интересно узнать что внутри у легендарной «бочки», причём здесь КПК Psion и какие необычные решения использовали инженеры Nokia — добро пожаловать под кат!

Читать далее

Устройства, которые мы потеряли: Как Siemens C65 стал культовым гиковским гаджетом

Level of difficultyMedium
Reading time12 min
Views25K

Телефоны Siemens в наших краях получили статус культовых. Если сейчас отмотать время на 2005 год и подойти к случайному школьнику или студенту, то с высоким шансом в его руках окажется какой-нибудь M65 или C65. И отнюдь неспроста: «Сименсы» славились инновациями, неплохими мультимедийными возможностями и невысокой ценой. Однако особо смышленым, но не шибко богатым ребятам всё равно хотелось большего — и толпой они накинулись изучать прошивку в дизассемблере...

В практической части мы с вами узнаем: что у C65 было внутри, изготовим кабель, пропатчим и добавим желанную поддержку MP3-мелодий.

Читать далее

Konnwei KW650 — продвинутый прибор для экспресс-диагностики автомобильных аккумуляторов и бортовой сети

Reading time7 min
Views8.3K

Привет, Хабр! Наступила осень, и зима уже не за горами. Контролируете ли вы состояние аккумулятора своего автомобиля, а также работу стартера и системы восполнения заряда?

Если нет, то за вас это может сделать зимний мороз, и тогда двигатель не заведётся в самый неподходящий момент.

Цифровые тестеры аккумуляторов уже давно стали доступными и приобрели множество дополнительных функций. Сегодня я расскажу вам об одном из таких устройств.

Читать далее

Генератор импульсов без Arduino

Level of difficultyEasy
Reading time2 min
Views5.9K

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

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

Читать далее

Не трогай мой Mac: а AMOS и не будет, он заберет только пароли, куки и кошелек

Level of difficultyMedium
Reading time19 min
Views5.3K

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

Читать далее

Генерация изображений: краткий обзор на PlayGround AI

Level of difficultyEasy
Reading time6 min
Views1.6K

Доброго времени суток, «Хабр»!
Сегодня мы обсудим Playground AI — это многофункциональная онлайн-платформа, позволяющая создавать и свободно редактировать разнообразные изображения при помощи искусственного интеллекта. Сервис представляет собой уникальный инструмент для тех, кто хочет быстро и достаточно качественно получать различные изображения.

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

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

Читать далее

DSL KeyPad — ввод более 4 700 символов Юникода прямо с клавиатуры

Reading time39 min
Views4.5K

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

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

В статье представлен обзор на DSL KeyPad и его основные фичи, благодаря которым вы сможете печатать с внушительным арсеналом символов, имея всего-то две языковые раскладки: русскую и английскую. Румынский? Немецкий? Или может быть Вьетнамский? Старославянский? Да легко — множество комбинаций и ряд фич позволит вам писать на куче языков. Да хоть Германские руны и Глаголицу печатать. Прилагаются и широкие возможности кастомизации под свои нужды.

А это примеры названий языков и систем, написанные с помощью моей программы:

Қазақ тілі, Хуэйзў йүян, Забони тоҷикӣ, Йағнобӣ зивок, Аԥсуа бызшәа, Авар мацӏ, Українська мова, Словѣньскъ ѩꙁꙑкъ, Црногорски језик, Ли́мба Рꙋмѫнѣскъ, Итәнмәӈин крвэԓхатас, Даһур Усүүэ, Эвэды̄ турэ̄н, Азәрбајҹанҹа, Башҡорт теле, Тэлэңгэт, Чӑваш чӗлхи…

Ænglisċ sprǣċe, Français, Tiếng Việt, Hànyǔ Pīnyīn, Norrœnt mál, Limba Română, Español, Język polski, Čeština, Bokmål, Tamaziɣt, Türkçe, Sää’mǩiõll…

Читать далее

Как телетайп и факс взорвали мир до интернета: прародители наших модемов

Level of difficultyEasy
Reading time8 min
Views5.4K

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

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

Читать далее

25 лет Firebird

Level of difficultyMedium
Reading time35 min
Views6K

Сегодня памятная дата — прошло 25 лет с момента начала проекта Firebird.

Напомним как это начиналось. Многие кто работает с СУБД Firebird до 2000 года скорее всего использовали СУБД InterBase, из исходных кодов которого и появился Firebird. В 2000 году компания Borland приняла решение продолжить развитие InterBase как OpenSource продукт и открыла исходные коды своей СУБД, которой на тот момент пользовалось огромное количество программистов. Планировалось, что будет создана отдельная компания InterBase Software Corporation (ISC), которая будет заниматься развитием СУБД InterBase OpenSource отдельно от Borland, но в итоге от этой идеи отказались. Поэтому появился форк InterBase 6.0, а компания ISC переродилась в IBPhoenix. Символично название проекта — Феникс, восставший из пепла InterBase.

С 31 июля 2000 начинается история СУБД Firebird. И первое с чего начался проект это было исправление багов — версия InterBase 6.0.0.627 по количеству багов могла вполне считаться пре‑релизом. Теперь все исправления легли на плечи программистов Firebird. Поэтому первый релиз вышел только в 2001 году, до этого одной из альфа‑версий Firebird 0.95 достаточно активно пользовались.

Firebird был создан как форк InterBase и как это очень часто бывает тоже стал основой для другого форка. В конце 2001 года в результате объединения усилий группы российских разработчиков, использующих InterBase на Windows, на свет появился проект Yaffil.

После выхода Firebird 1.0 к участникам проекта пришло понимание, что дальше развивать проект на языке С будет не очень удобно и возникло решение переписать проект на С++. Firebird был переписан на C++ и под версией 1.5 вышел в 2004 году.

Читать далее

Мой долгий путь до GPIO в QEMU

Level of difficultyMedium
Reading time13 min
Views3.8K

Тема этой статьи преследует меня, как статуя командора из известной сказки. Почти десять лет назад я сделал возможность чтения и записи GPIO для виртуальной машины QEMU. GPIO был нужен для тестирования алгоритмов контроллера взвешивания в движении (Weigh In Motion, WIM). С тех пор проект получил некоторое количество упоминаний, а я — несколько писем. И вот к десятилетнему юбилею я решил поставить точку в этой работе.

Читать далее

Мыльный пузырь Метаверса: почему Web 3.0 оказался обманом, чтобы набрать классы

Level of difficultyEasy
Reading time11 min
Views5.2K

Сегодня мы поговорим про еще одну священную корову технологических оптимистов — правда, корова эта уже весьма протухла и попахивает, и даже эти самые технооптимисты в массе не могут этого не замечать. Помните, был такой Метаверс? Который еще все путали с Web 3.0 (а это правда такие уж разные явления?). Помните, были такие NFT? А что со всем этим стало теперь? А почему? А кто за это в ответе? Будем разбираться.

Читать далее

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

Level of difficultyEasy
Reading time6 min
Views11K

Когда инженер делает умный дом не «под клиента», а для себя, проект сразу выходит за рамки «включить свет через Алису». Так получилось и в этом случае: дом в Ростове, владелец Сергей — инженер-автоматизатор с опытом работы с Danfoss и ОВЕН, интегратор Алексей — его знакомый, тоже инженер. Вместе они построили систему, в которой два контроллера управляют освещением, вентиляцией, отоплением, охлаждением и даже зарядкой аккумуляторов по расписанию.

Все началось с простого шкафа электрики и слов Сергея: «Зачем мне ваш колхоз? Не хочу тратить деньги».

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

Подробно рассмотрим систему умного дома с двумя контроллерами.

Читать далее

Ремонт лифтов: от хаоса к порядку

Reading time9 min
Views4.5K

Я по роду деятельности связан с лифтовой сферой, поэтому решил рассказать немного про нашу внутреннюю кухню. Заглянуть, так сказать, за кулисы.

Когда-то была на ТВ программа «Галилео». Начнут рассказывать про какое-нибудь производство чемоданов или очистные сооружения, и прямо затягивает. Любопытно же узнать, как что устроено изнутри. Вот, думаю, почему бы не пролить свет на работу лифтового хозяйства? Чтобы все знали, кого костерить, когда ремонт лифта затягивается.

Читать далее

RTX 4090 или L40S: оптимальный GPU среднего уровня в 2025 году

Level of difficultyEasy
Reading time7 min
Views4.2K

Привет! На связи команда mClouds. В 2025 году разработчики AI-проектов сталкиваются с непростым выбором: использовать потребительскую видеокарту RTX 4090 или профессиональное решение L40S. Обе карты построены на архитектуре Ada Lovelace, используют один и тот же графический чип AD102 и имеют похожую вычислительную мощность, но L40S предлагает вдвое больше памяти: 48 ГБ против 24 ГБ у RTX 4090.

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

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

Information

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