Как стать автором
Обновить
276
2
Николай @nckma

Программист

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

Самодельный лидар: OpenTOFLidar

Время на прочтение27 мин
Количество просмотров73K

В этой статье я хочу рассказать про свой проект импульсного (TOF) Open Source лидара — о том как я его делал, и каких результатов удалось добиться.
top-picture

Читать дальше →
Всего голосов 136: ↑136 и ↓0+136
Комментарии66

Почему онлайн-бизнесу стоит полюбить платежи через системы *Pay — исследование Яндекс.Кассы

Время на прочтение5 мин
Количество просмотров4.5K
Мобильные платежные системы дали толчок в развитии совершенно нового клиентского опыта. Когда покупка совершается в интернете, человеку не нужно искать карту и тратить время на ввод ее данных. Достаточно одним касанием разблокировать Pay на своем смартфоне, и заказ уже оформлен. Как можно догадаться, это выгодно и самим онлайн-магазинам, которые принимают платежи этим способом. Оплата любым *Pay (здесь я имею в виду все возможные мобильные платежные сервисы, например, Google Pay, Mir Pay, Samsung Pay и др.) — кладезь спонтанных покупок. А значит, путь к увеличению прибыли.

В 2020 году оплату через мобильные платежные сервисы на сайтах и в приложениях принимают 19% компаний, использующих Яндекс.Кассу. И сегодня я хочу рассказать, почему интернет-бизнесу стоит обратить внимание на эту технологию и как можно начать принимать оплату в одно касание. Тут и повод хороший есть — вот уже как 3 года мы подключаем Apple Pay пользователям нашего сервиса.


Читать дальше →
Всего голосов 10: ↑7 и ↓3+7
Комментарии12

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

Время на прочтение7 мин
Количество просмотров6.9K
Я планировал начать эту статью с информации о том, что всегда существуют значительные сложности при попытках коммерциализировать доработки свободного программного обеспечения, а в качестве показательного примера привести ситуацию с проектом 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 лицензиями, в том числе применительно к законодательству РФ.
Читать дальше →
Всего голосов 11: ↑8 и ↓3+8
Комментарии58

Внедрили микроразметку, а расширенных сниппетов нет: 10 возможных причин

Время на прочтение7 мин
Количество просмотров5.8K
Внедрили микроразметку, а расширенных сниппетов нет: 10 возможных причин

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

Читать дальше
Всего голосов 7: ↑5 и ↓2+7
Комментарии9

Bloody hell, или Как ругаться на английском, чтобы тебя приняли за культурного человека

Время на прочтение6 мин
Количество просмотров114K
Ругательства — это неотъемлемая часть любого языка. И даже если вы не собираетесь их использовать в жизни, их нужно изучать и знать.

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


Всего голосов 65: ↑59 и ↓6+81
Комментарии143

Новый конкурс игр для ZX Spectrum — Твоя игра 6

Время на прочтение4 мин
Количество просмотров7.1K

Завсегдатаи Хабра могут вспомнить несколько конкурсов игр для ZX Spectrum (8-битный компьютер, основанный на CPU Z80), которые здесь освещались:



На днях объявлен новый конкурс игр для ZX Spectrum — "Твоя игра 6". Главное отличие “Твоей игры” от “Retro Games Battle” — то, что разрешены работы под отечественное спектрумовское “железо” (которое до сих пор производится энтузиастами).


Что это значит?


Читать дальше →
Всего голосов 16: ↑15 и ↓1+25
Комментарии20

Работаем с двумерной графикой в JavaScript

Время на прочтение5 мин
Количество просмотров13K
Доброго времени суток, друзья!

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

Хотите узнать, как эти алгоритмы реализуются в JS?



Примеры можно посмотреть здесь.

Исходный код находится здесь.
Читать дальше →
Всего голосов 19: ↑17 и ↓2+18
Комментарии8

Аппаратный ключ шифрования за 3$ — возможно ли это?

Время на прочтение10 мин
Количество просмотров70K

Итоговый результат — ключ размером с флешку

Повсеместное шифрование и, как следствие, обилие ключей заставляет задуматься об их надежном хранении. Хранение ключей на внешних устройствах, откуда они не могут быть скопированы, уже давно считается хорошей практикой. Я расскажу о том, как за 3$ и 2 часа сделать такой девайс.
Читать дальше →
Всего голосов 151: ↑151 и ↓0+151
Комментарии151

Что делает Free API Московской биржи в Google Таблицах

Время на прочтение3 мин
Количество просмотров104K

Количество частных инвесторов на Московской бирже удвоилось за последний год и составило 3,86 млн: за 2019 счета на Мосбирже открыли 1,9 млн человек. Санкт-Петербургская биржа, специализирующаяся на торгах акциями иностранных компаний, в прошлом году зафиксировала трехкратный прирост счетов – с 910 000 до 3,06 млн шт.



Это означает, что на рынок пришло почти 2 млн новичков, которые никогда не занимались трейдингом и не использовали специализированный софт для торгов и учета позиций.

Google Таблицы и ИСС Мосбиржи
Всего голосов 14: ↑14 и ↓0+14
Комментарии78

Простой zero-copy рендеринг аппаратно ускоренного видео в QML

Время на прочтение9 мин
Количество просмотров6.7K

Введение


Целью данной статьи является продемонстрировать способ как можно подружить сторонние видео буфера и QML. Основная идея — использовать стандартный QML компонент VideoOutput. Он позволяет подсовывать сторонние источники, неплохо документирован и имеет бекэнд поддерживающий GL_OES_EGL_image_external.


Мысль, что это вдруг может быть полезно, возникла после того, как я попытался запустить примеры работы с камерой в Qt, и на embedded платформе они работали со скоростью 3-5 кадра в секунду. Стало ясно, что из коробки ни о каком zero-copy речи не идет, хотя платформа все это отлично поддерживает. Справедливости ради, на десктопе VideoOutput и Camera работают, как и положено, быстро и без лишних копирований. Но в моей задаче, увы, нельзя было обойтись существующими классами для захвата видео, и хотелось завести видео из стороннего источника, каким может быть произвольный GStreamer пайплайн для декодирования видео, к примеру, из файла или RTSP стрим, или сторонний API который интегрировать в базовые классы Qt несколько сомнительно. Можно еще, конечно, в очередной раз переизобрести велосипед и написать свой компонент с рисованием через OpenGL, но это сразу показалось заведомо тупиковым и сложным путем.


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

Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии6

Приготовься к введению в России социального рейтинга

Время на прочтение9 мин
Количество просмотров90K
image

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

Вам может показаться, что получение низкой ставки по кредиту за социально полезные действия- перспектива далекого будущего. Но уже сегодня ставка ипотеки для молодой семьи находится в районе 10%, тогда как остальные предложения близки к 20%. Т.е. это уже давно реальность, просто вы не придавали этому значения.

Я считаю, что ряд непопулярных решений будет принят в течении последнего президентского срока Владимира Путина: этому человеку больше не надо «сохранять лицо». Поэтому до 2024 года мы увидим новый виток «закручивания гаек», в том числе введение социального рейтинга в России.
Читать дальше →
Всего голосов 138: ↑97 и ↓41+83
Комментарии687

Памятка по борьбе с алкоголем или Как пережить фуршеты

Время на прочтение20 мин
Количество просмотров178K
Тут вот праздники скоро. Спросил недавно друг «как мне это все пережить?». Я сначала объяснял, а потом решил написать статью на Хабр. Рассказанное — услышит один человек, а написанное — прочитают сотни!

Меня, если честно, достаточно сильно раздражают всевозможные застолья. Потому что гораздо приятнее посидеть с паяльником или читая книгу, а не "… хорохорясь, ерепенясь и валяясь, как колода..." провести выходные. Но традиции-с, будь они неладны, формировались столетиями и не умея пить — бывает достаточно сложно вписаться в коллектив, найти нужный подход и т.д. Особенно грешат этим делом всевозможные руководящие кадры из старого поколения. Что же делать тем, для кого алкоголь и необходимость его употреблять — это просто лишняя головная боль? Самый простой ответ — НЕ ПИТЬ, но на практике полностью это очень сложно реализовать. Эффективнее в наших реалиях принять тезис «алкоголь — просто инструмент» и учиться с ним правильно работать и использовать для решения своих задач с минимизацией ущерба для здоровья.

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

Читать дальше →
Всего голосов 155: ↑119 и ↓36+118
Комментарии478

Как работает рендеринг 3D-игр: растеризация и трассировка лучей

Время на прочтение18 мин
Количество просмотров31K
image

Часть 1: обработка вершин

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

Главная тема этой статьи — важный этап рендеринга, на котором трёхмерный мир точек, отрезков и треугольников становится двухмерной сеткой разноцветных блоков. Очень часто этот процесс кажется незаметным, потому что преобразование из 3D в 2D оказывается невидимым, в отличие от процесса, описанного в предыдущей статье, где мы сразу же могли увидеть влияние вершинных шейдеров и тесселяции. Если вы пока не готовы к этому, то можете начать с нашей статьи 3D Game Rendering 101.

Подготовка к двум измерениям


Подавляющее большинство читателей читают этот веб-сайт на совершенно плоском мониторе или экране смартфона; но даже если у вас есть современная техника — изогнутый монитор, то отображаемая им картинка тоже состоит из плоской сетки разноцветных пикселей. Тем не менее, когда вы играете в новую Call of Mario: Deathduty Battleyard, изображения кажутся трёхмерными. Объекты движутся по сцене, становятся больше или меньше, приближаясь и отдаляясь от камеры.
Читать дальше →
Всего голосов 24: ↑24 и ↓0+24
Комментарии5

Siemens строит электролизный завод для производства стали, работающий за счет ветряков

Время на прочтение2 мин
Количество просмотров5.7K

Процесс «озеленения» металлургии — тренд 2019 года. До последнего времени традиционно выплавка металла считалась процессом который невозможно сделать экологичным, но попытки заменить часть процессов при выплавке на более дружественные окружающей среде начались. Причем заменяется не только газ, но и источник его получения. Подробнее под «катом».
Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии30

Хорошее публичное выступление: 11 простых советов

Время на прочтение5 мин
Количество просмотров46K

Дисклеймер


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

1. Структура доклада


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

Ключевая проблема для слушателя – отсутствие вводной части. Выводы он может сделать и сам, а вот стартовать с опозданием сложно и неприятно. Он ещё не понял, что вы будете про пищеварение, а уже нужно вникать в строение эпителия тонкого кишечника. Результат – ваш доклад попадает в слушателя не на все 100%, а имеет шансы и вовсе пролететь мимо.
Читать дальше →
Всего голосов 67: ↑64 и ↓3+61
Комментарии36

Преимущества облачного распознавания лиц

Время на прочтение7 мин
Количество просмотров12K
image
Близкое будущее

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

Многие владельцы смартфонов каждый день используют face recognition, но в мобильных устройствах скорость распознавания не критична, а число пользователей редко больше одного-двух человек. Для офисных и уличных систем (при массовом распознавании) применяются другие технологии.

Недавно на Хабре обсуждали новость: московские сетевые кофейни «Правда кофе» и OneBucksCoffee начали тестировать в своих заведениях сервис распознавания лиц.

Кофейни используют наше техническое решение. И сегодня мы расскажем о нём подробнее. Конечно, о самой технологии мы уже говорили, но появилось кое-что новое — решение стало по-настоящему облачным. А это всё меняет.
Читать дальше →
Всего голосов 18: ↑13 и ↓5+8
Комментарии34

Khronos Group создала унифицированный репозиторий с примерами использования Vulkan

Время на прочтение2 мин
Количество просмотров5K

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



Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии3

Ускорение поиска сцен в видео с помощью табличного представления

Время на прочтение5 мин
Количество просмотров4.4K

Что такое табличное представление видео?


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

image
Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии11

Вывод модели динамической системы дискретного фильтра Калмана для произвольной линейной системы

Время на прочтение8 мин
Количество просмотров6.1K
Фильтр Калмана (ФК) является оптимальным линейным алгоритмом фильтрации параметров динамической линейной системы при наличии неполных и зашумленных наблюдений. Этот фильтр находит широкое применение в технических системах управления до оценок динамики изменения макроэкономических ситуаций или общественного мнения.

Данная статья ставит себе целью познакомить читателя со стандартным подходом к переходу от непрерывной модели динамической системы, описываемой системой произвольных линейных дифференциальных уравнений к дискретной модели.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии9

Как проводить код-ревью

Время на прочтение18 мин
Количество просмотров53K
Из документации Google's Engineering Practices

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


См. также Руководство автора CL, в котором даются подробные советы разработчикам, чьи коммиты проходят ревью.
Читать дальше →
Всего голосов 27: ↑26 и ↓1+25
Комментарии17

Информация

В рейтинге
1 325-й
Дата рождения
Зарегистрирован
Активность