Обновить
156
146.9
Александр Рябиков @rsashka

Системный архитектор

Отправить сообщение

Micro Property — минималистичный сериализатор двоичных данных для embedded систем. Часть 2

Время на прочтение3 мин
Просмотры3.1K
Некоторое время назад я опубликовал свою статью о разработке велосипедного велосипеда, в которой описал причины, побудившие меня этим заняться.

Если вкратце, то мне была нужна миниатюрная библиотека для микроконтроллеров с сериализатором двоичных данных и последующей передачей этих сообщений по низко скоростным линиям связи, тогда как обычные форматы xml, json, bson, yaml, protobuf, Thrift, ASN.1 и др. мне по разным причинам не подходили.

Как и ожидалось, решение оказалось более чем велосипедом, и тем не менее, сама публикация статьи на Хабре мне очень сильно помогла. Дело в том, что при первоначальном анализе возможных библиотек, я почему то упустил из вида сериализаторы MessagePack, CBOR и UBJSON.

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

После этого я прикрутил к библиотеке CBOR свой интерфейс (чтобы не перелопачивать исходники), и … решил от этого формата отказаться в пользу MessagePack :-)



Читать дальше →

Интернациональное программирование на естественных языках

Время на прочтение7 мин
Просмотры5.6K
В последнее время часто попадаются на глаза статьи о новых языках программирования, а так же различные рейтинги и прогнозы, связанные с популярностью компьютерных языков.

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

Цель написания данной статьи — формулировка ожиданий и возможной реализации абстрактного языка программирования, который может стать универсальным инструментом для общения между компьютером и человеком.
Читать дальше →

Micro Property — минималистичный сериализатор двоичных данных для embedded систем

Время на прочтение9 мин
Просмотры2.7K
Micro Property — библиотека для сериализации данных с минимальными накладными расходами. Она разработана для использования в микроконтроллерах и различных встраиваемых устройствах с ограничениями по размеру памяти, которым приходится работать по низкоскоростным линиям связи.

Конечно, я знаю про такие форматы как xml, json, bson, yaml, protobuf, Thrift, ASN.1. Даже нашел экзотический Tree, который сам является убийцей JSON, XML, YAML и иже с ними.

Так почему же они все не подошли? Зачем я был вынужден написать еще один сериализатор?

Уже после публикации статьи в комментариях дали несколько ссылок на пропущенные мной форматы CBOR, UBJSON и MessagePack. А они с большой долей вероятности решают мою задачу без написания велосипеда.
Жаль, что я не смог найти эти спецификации ранее, поэтому добавлю этот абзац для читателей и для собственного напоминания, что не следует торопиться писать код ;-).
Обзоры форматов на Хабре: CBOR, UBJSON

image
Читать дальше →

Что делать, если на гос.портале с вас собирают персональные данные и хотят согласие на рассылку рекламных сообщений?

Время на прочтение2 мин
Просмотры22K
Навеяло обсуждениями к посту Как «активный гражданин» приучает людей к фишингу.
Потом, когда пришло не только жене, но и мне — полез смотреть откуда… и неожиданно узнал что рекламу теперь может слать и mos.ru
Совсем потеряли совесть…
Давно уже реализуемая практика. Стоит зарегистрироваться на портале. или оформить обращение… Не важно на mos.ru, или прокуратуру с полицией, вам тут же начнутся звонки и сомнительные смс.)
Не хочется об этих всех службах думать плохо. Но повторные обращения и снова звонки и смс. Так что борьба с мошенничеством стоит под контролем. Мошенники сами себя не ловят.)
Точно. Сходил пару раз в МФЦ и просто шквал звонков с разной рекламой. Причем сплошняком роботы текст зачитывают.

Для тех, кого интересует судебная практика по вопросу сбора персональных данных пользователей на различных порталах государственных организаций, а так же при предоставлении всевозможных государственных услуг, прошу под кат:
Читать дальше →

«Программирование лучше секса»

Время на прочтение7 мин
Просмотры19K


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

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

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

Кому интересно размышления о логическом обоснование поиска прекрасного в разработке программного обеспечения и в других технических дисциплинах, прошу под кат.
Читать дальше →

Лайфхак для быстрого попадания в Zero-click поисковой выдачи

Время на прочтение4 мин
Просмотры4.2K
На просторах Хабра встретилась статья: Zero-click выдача и On SERP SEO: как попасть на нулевую позицию в Яндексе и Google, в которой говорится о попадания не просто в ТОП, а прямо на самую нулевую позицию поисковой выдачи. А так же приводится внушительный список рекомендаций SEO активностей, чтобы достичь желаемого результата.

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

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

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

YouTube — Ошибка. Повторите попытку позже. Идентификатор воспроизведения: <...>

Время на прочтение3 мин
Просмотры272K


Чуть больше месяца назад стал замечать, что почти каждая попытка посмотреть видео с YouTube на десктопном компьютере начинается с сообщения об ошибке.

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

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

Под катом — причина возникновения ошибки (для тех, кому лень читать, это AdBlock), и что с этим можно сделать. Конечно, кроме отключения самого блокировщика рекламы.
Читать дальше →

Коммерциализация доработок свободного ПО под Copyleft лицензиями

Время на прочтение7 мин
Просмотры7.1K
Я планировал начать эту статью с информации о том, что всегда существуют значительные сложности при попытках коммерциализировать доработки свободного программного обеспечения, а в качестве показательного примера привести ситуацию с проектом Redis.

Но потом понял, что ситуация с Redis (Redis вновь меняет лицензию) в качестве примера не очень подходит. И не только из-за адской смеси различных используемых в проекте лицензий, но и дополнительной путаницы, возникающей из-за толкования терминов Open Source и Свободное ПО.

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

Ведь цифры говорят сами за себя. Суммарная выручка облачных провайдеров за последний квартал 2019 года превысила $30 миллиардов долларов. Среди них лидер — Amazon (32.4% рынка), Microsoft Azure почти в два раза меньше (17.6%), далее идут Google Cloud (6%) и Alibaba Cloud (5.4%).

Тем не менее, для компаний меньшего размера, подобный бизнес как правило не достижим. Поэтому для них вопрос коммерциализации доработок свободного программного обеспечения под Copyleft лицензиями (такими, как GPL), может оказаться вполне актуальным.
Предлагаю вашему вниманию практический способ коммерциализация доработок свободного программного обеспечения под Copyleft лицензиями, в том числе применительно к законодательству РФ.
Читать дальше →

Что хочет знать Магнит о своих покупателях?

Время на прочтение8 мин
Просмотры45K
С завидной периодичностью в новостях встречаются заголовки, связанные с различными утечками персональных данных:


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

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


Читать дальше →

Стратегия защиты NGINX и просьба к Игорю Сысоеву

Время на прочтение6 мин
Просмотры16K
С прошлой недели все сообщество бурлит насчет уголовного дела против NGINX. И, наверное, нет людей, которые бы равнодушно смотрели, как обычного сисадмина, который сумел превратить свое увлечение в выдающийся финансовый успех, пытаются прессовать акулы Российского капитализма в стиле лихих 90-х.

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

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

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

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

Мне кажется это будет полезней, чем просто сменить свою аватарку на «Я/МЫ NGINX» :-)



Читать дальше →

Частное мнение о Яндекс.Турбо

Время на прочтение5 мин
Просмотры35K
Данная статья является своего рода взглядом со стороны не искушенного пользователя на Турбо-страницы от Яндекс, до которого наконец-то дошли некоторые особенности работы этой технологии, а так же не совсем очевидные последствия от её использования.

Что такое Турбо-страницы Яндекс официально?

Турбо-страницы — лёгкие версии страниц вашего сайта
Исследования показывают, что люди не готовы ждать загрузки более 2 секунд.
Мы предлагаем вам подключить Турбо-страницы, которые очень быстро открываются из сервисов Яндекса и эффективно монетизируются.
В принципе описано все четко, для чего это нужно. И хотя понимаешь, что технология привязывается к Яндексу, ну да ладно. Тем более, если это повышает удобство пользователей и тем самым увеличивает пользовательский трафик, то почему бы и нет?

Но как всегда, есть нюанс.


Читать дальше →

SEO для Яндекс.Поиск все?

Время на прочтение2 мин
Просмотры48K
На написание этой заметки меня сподвигла Хабро-статья: SEO в 2019 году не работает?

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

Не долго музыка играла… или как ОС Эльбрус так и не стала свободной

Время на прочтение7 мин
Просмотры114K
Несколько дней назад некоторые СМИ сообщили о возможности свободного скачивания операционной системы Эльбрус. Ссылки на дистрибутив предоставлялся только для x86 архитектур, но даже в таком виде, это могло бы стать очень важной вехой в развитии данной операционной системы.

Один из заголовков СМИ: ОС «Эльбрус» стала свободной. Ссылки на скачивание
Разработчик линейки отечественных процессоров «Эльбрус» обновил на своем сайте раздел, касающийся специализированного ПО. В свободном доступе для скачивания оказалась ОС «Эльбрус» для стандартных процессоров архитектуры x86. В скором времени разработчики планируют открыть ее исходные коды.
Другой заголовок этой же новости: Операционную систему «Эльбрус» уже можно скачать!

Да, это действительно могло бы стать очень важной вехой в развитии ОС Эльбрус. Могло стать, но к сожалению, пока не стало (надеюсь, что ключевым словом будет слово пока)

image
Читать дальше →

SmartCard I2C Protocol. Обмен APDU командами через I2C интерфейс

Время на прочтение13 мин
Просмотры6.9K

Введение


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

К сожалению, тогда подобное решение не подошло по некоторым причинам, хотя если бы удалось использовать уже готовую российскую аппаратную криптографию, то это должно было значительно ускорить разработку и последующую сертификацию конечного изделия. А причины невозможности использования USB токенов или смарткарты были весьма банальны: устройство должно было быть довольно компактным (небольшой модуль для M2M или IoT устройств), эксплуатироваться преимущественно в необслуживаемом режиме и работать в широком температурном диапазоне.

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


Читать дальше →

Рецензия на перевод «Если софт создаётся на общественные деньги, код должен быть открыт»

Время на прочтение3 мин
Просмотры6.2K
Прочитал статью-перевод «Если софт создаётся на общественные деньги, код должен быть открыт» которая вызвала некое двоякое чувство. С одной стороны идея кажется правильной, но в статье описано несколько принципиальных проблем, которые вольно или невольно оказывают читателям медвежью услугу.

Я сам сторонник открытого и свободного ПО. Но после отклонения нескольких комментариев, и поэтому не имея возможности вести обсуждения в рамках исходной статьи, думаю, что будет правильным написать комментарий в виде отдельного материала.
Читать дальше →

Информация

В рейтинге
38-й
Откуда
Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Инженер встраиваемых систем, Архитектор программного обеспечения
Ведущий
C++
ООП
Linux
Программирование микроконтроллеров
Встраиваемая система
C
Qt
Разработка программного обеспечения