Как стать автором
Обновить
15
Карма
0.2
Рейтинг
Boris Kotov @advan20092

User

Используем Apple Pay и карту Тройка в качестве пропуска на работу

Информационная безопасность *Беспроводные технологии *
Используем Apple Pay, Android Pay, Mastercard Paypass, Visa PayWave и карту Тройка в качестве пропуска на работу

TL;DR В статье описывается процесс создания системы контроля доступа (СКУД), в которой в качестве идентификатора могут использоваться карты Тройка, любые бесконтактные банковские карты EMV, а также телефоны с Apple Pay и Android Pay. Управление системой происходит через Telegram-бота.

Основные задачи системы


  • Избавиться от лишних карт — в качестве идентификатора используется то, что уже есть у пользователя: транспортная карта, телефон или банковская карта. Какой идентификатор использовать — каждый выбирает сам. Система работает со всеми типами идентификаторов одновременно.
  • Избавиться от бюро пропусков и сложных программ управления — нам надоело выдавать и забирать карты у пользователей, держать отдельные компьютеры для управления пропусками, изучать переусложненные программы.
  • Управление через Telegram — заведение и удаления пользователей происходит удаленно и не требует компьютера.
Всего голосов 118: ↑118 и ↓0 +118
Просмотры 99K
Комментарии 164

Как сделать веб-приложение для вашего собственного Bluetooth Low Energy девайса?

Разработка веб-сайтов *JavaScript *Разработка для интернета вещей *
Туториал
Из песочницы
Несколько недель назад я, развлечения ради, собрал простенькую роботизированную руку (а-ля манипулятор) и решил прикрутить к ней управление со смартфона через Bluetooth. Опыта в разработке нативных мобильных приложений у меня пока нет, с Apache Cordova я уже знаком, а вот задействовать Web Bluetooth API было бы интересно, приправив фишками Progressive Web Apps.

Картинка Для Привлечения Внимания
Картинка Для Привлечения Внимания, ведущая под кат


На первый взгляд может показаться, что статей по ключевым словам достаточно: есть спецификация Web Bluetooth, подробная статья в блоге Google Developers с примерами, есть подробный разбор Bluetooth Low Energy, примеры реверс-инжиниринга протоколов различных BLE устройств и даже моргания «умными» лампочками и получения данных от фитнес-браслетов прямо из браузера — что может пойти не так?
Читать дальше →
Всего голосов 25: ↑25 и ↓0 +25
Просмотры 39K
Комментарии 8

На распутье — Ардуино, Cи или Ассемблер?

Программирование микроконтроллеров *Электроника для начинающих

Сначала короткая предыстория появления этого поста. Относительно давно, помигав светодиодом, захотелось сделать что-то полезное. Так появился Беспроводной программируемый по Wi-Fi комнатный термостат с монитором качества воздуха и другими полезными функциями. Как назло, в это время перестал работать мой промышленный термостат. Меня выручил еще сырой макет, наспех спрятанный в картонную коробочку. За время отопительного сезона напрягал лишь один недостаток прототипа – это необходимость таскать по квартире удлинитель 220В и кабель, который всегда путался под шваброй ногами. Поэтому решил сделать нечто похожее, но автономное, притом, с питанием от батареек, как в серийном образце.


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


Приступая к задаче, для меня было очевидно одно – вряд ли программы промышленных автономных устройств составлены на платформе Arduino IDE. Где все спрятано в громоздкие тяжеловесные библиотеки, а простые коды (скетчи) занимают в редакторе несколько десятков строк, делая работу в этой среде комфортной и не требующей особых усилий. Уточню сразу – дальше речь о выборе языка программирования между Ардуино, Си или Ассемблером. "Язык Ардуино"- это сленг для краткости. Нет такого языка программирования. Если увидите тут и дальше "язык Ардуино", то — это "Arduino IDE — интегрированная среда разработки для Windows, MacOS и Linux, разработанная на Си и C ++"(Википедия).

Читать дальше →
Всего голосов 18: ↑11 и ↓7 +4
Просмотры 10K
Комментарии 35

Сохраняем настройки и лог файл во внутренней памяти микроконтроллера

Блог компании Embox Программирование *Системное программирование *Программирование микроконтроллеров *
image Задача сохранения настроек встречается в подавляющем большинстве современных устройств. Реже, но тоже очень часто, требуется хранение лог-файлов. Если речь идет о большом устройстве построенном на Линукс и содержащей как минимум SD карту, то с этими задачами не возникает проблем. Но если все устройство представляет из себя микроконтроллер, то возникает вопрос, где и в каком виде хранить подобные данные. В этом случае, обычно для настроек предлагают использовать сырые данные размещенные во внешнем eeprom. Но такой подход гораздо менее удобен чем вариант с файловой системой пусть даже с сильно ограниченными свойствами. Кроме того он плохо подходит для задач логирования. В данной статье мы расскажем как можно организовать удобное хранение файлов настроек и лог-файлов во внутренней флеш памяти микроконтроллера.
Читать дальше →
Всего голосов 15: ↑13 и ↓2 +11
Просмотры 5.2K
Комментарии 12

Реле Давления v2.0 — revival

Программирование микроконтроллеров *Умный дом DIY или Сделай сам
Туториал

Привет, дорогой хабровчанин! Хотел выразить тебе огромное спасибо, за то, что смог побудить меня написать эту статью… 😊

Заваривайте чаёк, кофеёк или что-то покрепче и погнали читать вместе!

Чытаць далей
Всего голосов 21: ↑21 и ↓0 +21
Просмотры 9K
Комментарии 21

Интеграция устройства в экосистему Samsung SmartThings на примере «Умного чайника» Часть 2: переход с ESP8266 на ESP32

Блог компании Samsung Программирование микроконтроллеров *Разработка для интернета вещей *Умный дом DIY или Сделай сам
Туториал

В первой части статьи на примере “Умного чайника” я описал процесс разработки приложения, интегрированного в экосистему SmartThings. В этой части я усложняю пример: добавляю датчик температуры и делаю плавную индикацию RGB-светодиода. Я опишу, чем отличаются ESP8266 и ESP32, и почему в этом примере нам больше подходит именно ESP32. Также будет описана передача сообщений между потоками/тасками на примере очередей в FreeRTOS. Таким образом, данная статья предназначена для всех, кто хочет перейти от самых простых умных устройств с минимумом функционала, к устройствам чуть более сложным как с программной, так и с железной точки зрения.

Читать далее
Всего голосов 12: ↑11 и ↓1 +10
Просмотры 8.6K
Комментарии 18

Подключение энкодера к Ардуино и полнофункциональный код обработки для него

Программирование микроконтроллеров *Разработка под Arduino *Научно-популярное DIY или Сделай сам Электроника для начинающих

Энкодер - это устройство преобразования механического перемещения или угловых изменений положения в цифровой сигнал. В статье рассматривается самый популярный в DIY сообществе инкрементальный энкодер EC11 с кнопкой. При его вращении на выходах A и B формируются TTL сигналы в виде импульсов сдвинутые между собой по фазе на 90 градусов. Таким образом с его помощью, можно определить направление и скорость вращения, а так же рассчитать угол поворота. В отличие от потенциометров, KY-040 он надежный и долговечный.

Читать далее
Всего голосов 39: ↑29 и ↓10 +19
Просмотры 30K
Комментарии 102

Опыт работы с советским газоразрядным дисплеем ГИП-10000 (ИМГ-1-02)

Программирование микроконтроллеров *Старое железо DIY или Сделай сам
✏️ Технотекст 2021

Советская электронная промышленность выпускала множество разнообразных газоразрядных индикаторных приборов: точечные, линейные, шкальные, знаковые, но отдельным пунктом стоит отметить матричные индикаторы (панели). Очень разные по конструкции, по разрешению, по принципу управления – постоянного тока с внешней адресацией, с самосканированием, переменного тока; знакосинтезирующие, графические; монохромные, двух-, трех-, четырехцветные. Номенклатура насчитывала несколько десятков типов изделий. 

В статье пойдёт речь про ГИП-10000. Это газоразрядная матрица постоянного тока с внешней адресацией разрешением 100х100 точек. Применялась она в таких изделиях как Электроника МС6205 и ИМГ-1. Я расскажу про то, как запустил на ней Bad Apple!! и Doom.

Читать далее
Всего голосов 240: ↑240 и ↓0 +240
Просмотры 22K
Комментарии 64

Простой цифровой радиоприемник на базе контроллера STM32G4 своими руками

Assembler *Алгоритмы *C *Программирование микроконтроллеров *Схемотехника *
Туториал
Из песочницы

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

Читать далее
Всего голосов 85: ↑85 и ↓0 +85
Просмотры 23K
Комментарии 50

Делаем устройство для мониторинга концентрации CO₂

Блог компании RUVDS.com Программирование микроконтроллеров *Схемотехника *Производство и разработка электроники *DIY или Сделай сам

Нередко мы сильно увлекаемся написанием кода настолько, что забываем подышать свежим воздухом, особенно когда нельзя держать окно постоянно открытым (ну, бывают причины). В результате этого в помещении повышается концентрация СО₂ и впоследствии начинаются неприятные побочные эффекты в виде сонливости, заторможенности и головной боли. Для решения этой проблемы существуют датчики СО₂, которые при достижении определённой концентрации скажут, что пора открыть окно. Готовые варианты конечно хорошо, но это слишком просто — сделаем своё хост-устройство для измерения и разомнём извилины.
Читать дальше →
Всего голосов 77: ↑76 и ↓1 +75
Просмотры 21K
Комментарии 71

Экспериментируем с ПЛИС семейства ECP5 фирмы Lattice

Системное программирование *FPGA *Программирование микроконтроллеров *Компьютерное железо

Когда я видел на Хабре упоминание о ПЛИС Lattice, у меня всегда возникал простой вопрос: «А зачем ещё одна ПЛИС?». Вроде всю жизнь хватало пары базовых. Но полгода назад случилось то, что сняло этот вопрос для меня. Пришёл Заказчик и сказал: «Мы делаем проект на ECP5». Против требований Заказчика не попрёшь!

А пока я осваивал работу с этим железом и пытался понять, как обосновать необходимость попробовать то же самое для остальных, мой знакомый, ныне живущий в Штатах, обрадовал новостью, что у его любимого поставщика подходит к концу запас десятых Циклонов и шестых Спартанов. В целом, через три года будет построен новый завод Intel, но что именно там будут производить, он не в курсе. И три года продержаться в любом случае, будет нужно. Короче, сейчас надо иметь возможность быстро мигрировать с одной ПЛИС на другую.

Итого, вчера делать ознакомительную статью про Lattice было рано, завтра – может быть поздно.

Сегодня я расскажу, где купить более-менее дешёвые платы для опытов, как быстро освоить Open Source среду разработки и какие готовые проекты осмотреть в первую очередь.

Читать далее
Всего голосов 38: ↑37 и ↓1 +36
Просмотры 5.7K
Комментарии 29

[Личный опыт] Эстония: почему сюда нанимают много разработчиков из-за рубежа и что делает страну идеальной для россиян

Блог компании getmatch IT-эмиграция Карьера в IT-индустрии Урбанизм

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




Первое фото в Таллине после приезда, 18 ноября
Читать дальше →
Всего голосов 59: ↑53 и ↓6 +47
Просмотры 43K
Комментарии 207

10 игр для программистов, которые позволят улучшить свои навыки

Блог компании VDSina.ru Программирование *Учебный процесс в IT Логические игры
Перевод

Планируете изучать Java, C++ или Python, но не знаете, с чего начать? А как насчёт игр для программистов?

Да, именно так.

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

Давайте же узнаем о том, как геймификация помогает нам лучше учиться и какие игры помогут стать программистом!
Читать дальше →
Всего голосов 51: ↑47 и ↓4 +43
Просмотры 72K
Комментарии 42

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

Python *Программирование *Алгоритмы *Визуализация данных *Учебный процесс в IT

Представьте человека, который изучает алгоритмы. Чтобы понять как они работают, приходится разбираться в их коде и представлять, как компьютер будет его выполнять. Это странно — почему мы должны учиться думать как компьютер, вместо того, чтобы заставить его помогать нам? Какая-то сильная технозависимость.

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

Читать далее
Всего голосов 107: ↑107 и ↓0 +107
Просмотры 26K
Комментарии 55

Выводим первый транш с Upwork

Фриланс Законодательство в IT Финансы в IT Удалённая работа
Туториал

UW
Как человеку с образованием программиста и без юридического разобраться в тонкостях работы банков и валютного контроля и, конечно, как вывести свои деньги с Upwork на примере банка Тинькофф бизнес.

Читать дальше →
Всего голосов 12: ↑11 и ↓1 +10
Просмотры 17K
Комментарии 25

Всё, что нужно для начала работы с Vue.js

Блог компании RUVDS.com Разработка веб-сайтов *JavaScript *VueJS *
Перевод
Скорее всего, вы, читая эти строки, уже слышали о JavaScript-фреймворке, который называется Vue. Если вы собирались его опробовать, но не очень хорошо представляли себе то, с чего вам стоит начать, значит — этот материал написан специально для вас. Его автор говорит, что хочет рассказать о том, почему ему очень нравится Vue. Кроме того, он собирается представить всем желающим 4 способа написания первого приложения на Vue.



В конце этого материала, вы найдете ссылки на целый курс по Vue.js.
Читать дальше →
Всего голосов 43: ↑39 и ↓4 +35
Просмотры 82K
Комментарии 31

Введение в реверсинг с нуля, с использованием IDA PRO

Информационная безопасность *Assembler *Реверс-инжиниринг *
Привет, Хабравчане!

Для тех, кто не знает, в своё время я взял на себя ответственность перевести испанский курс Introduccion Al Reversing Con Ida Pro Desde Cero под авторством Ricardo Narvaja на русский язык. Прошло 2,5 года и теперь я могу смело сказать, что курс переведен на русский язык. На данный момент это 67 частей. Но это ещё не всё. В конце 67 части, мы можем увидеть, что нас ждёт продолжение. Сейчас же я бы хотел рассказать, про то как я переводил курс, с чем столкнулся при переводе, что узнал и как всё это было.
Читать дальше →
Всего голосов 36: ↑35 и ↓1 +34
Просмотры 22K
Комментарии 41

Удалённая работа: мифы на ночь

Управление персоналом *Карьера в IT-индустрии Удалённая работа
На Хабре тема удалёнки поднимается постоянно. Был откровенный пост, который отозвался до самых глубин сердца. Сегодня случился рекламный пост, где понятие удалёнщика как-то путается с понятием фрилансера. А сейчас будет эмоциональный пост — от простой девчонки, которая вот уже 4 года работает удалённо менеджером в сфере IT. Побуду разрушителем мифов, капитаном очевидностью и чуваком с долларами, но о последнем в другой раз.


Как вариант — изолировать занудных трудоголиков
Читать дальше →
Всего голосов 108: ↑102 и ↓6 +96
Просмотры 78K
Комментарии 312

Мифы и реальность ООП

Программирование *ООП *

(Источник)

Хочу внести свои «5 копеек» в неутихающий спор противников и сторонников ООП. Из недавних публикаций на эту тему можно отметить ярко негативный заголовок «Чем быстрее вы забудете ООП, тем лучше для вас и ваших программ», более миролюбивый «Хватит спорить про функциональное программирование и ООП» и умеренно позитивный «Объектно ориентированное програмирование в графических языках».
Читать дальше →
Всего голосов 39: ↑30 и ↓9 +21
Просмотры 19K
Комментарии 205

Почему на собеседованиях так часто спрашивают про связные списки

Алгоритмы *C *Карьера в IT-индустрии История IT
Перевод
Примечание переводчика: оригинальная статья опубликована в серии твитов

Вероятно, вы уже читали кучу объяснений, почему обработка связных списков — плохой вопрос для собеседования. Я же в первую очередь хочу объяснить, откуда он вообще взялся. Всем пристегнуться, погружаемся в теорию игр ИСТОРИЮ!

Хотя индустрия программного обеспечения процветала в 80-е годы, но действительно взлетела в 90-е. В это десятилетие число работников отрасли в США утроилось и превысило миллион человек. Со взрывным ростом пришла необходимость нанимать массу сотрудников и оценивать их.

Что нужно оценить? Ну, в первую очередь, знание языков. Согласно TIOBE, в 1986−2006 годы самым популярным языком в мире был C, далее следовал C++. К 2006 году Java вышла на первое место, но C остался рядом.

C работал близко к железу без лишних абстракций. Пустой словарь Python расходует аж 288 байт, то есть 5% всего объёма памяти первого поколения Apple II. Абстракции слишком дороги, слишком много накладных расходов. Если вам нужна сложная структура данных, вы должны построить её самостоятельно с помощью массивов, структур и указателей.
Читать дальше →
Всего голосов 76: ↑68 и ↓8 +60
Просмотры 54K
Комментарии 358

Информация

В рейтинге
1,891-й
Зарегистрирован
Активность