Как стать автором
Обновить
48
0

Пользователь

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

RFID-метка на простой логике

Время на прочтение25 мин
Количество просмотров204K
Объявлено новое соревнование 7400, и нужно сделать что-то новое. Нельзя ударить в грязь лицом после победы в прошлом году ;)

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

Я устроил мозговой штурм с моими товарищами: Педерсеном (Pedersen), Асбьёрном (Asbjørn) и Флеммингом (Flemming), которые тут же придумали множество смешных идей. И вот Флемминг упомянул RFID (он разработчик системы управления доступом, которая основана на RFID). А вот это уже мысль. Конечно, первые мысли были об RFID-считывателе, но мы уже собрали их довольно много, и это было скучно. Однако, появилась идея сделать RFID-метку. Я не знаю, кто упомянул это первым, и, как обычно в мозговом штурме, идеи рождаются коллективным разумом. Итак, решено сделать RFID-метку, собранную исключительно на 7400-ой логике.
Много текста и картинок
Всего голосов 158: ↑156 и ↓2+154
Комментарии31

Эмулятор RFID

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

Эмулятор карт EM Marine



Наверняка каждому из нас, кто хоть раз бывал в обычных офисах, было интересно, как же функционируют эти бесконтактные пропуска. В данной статье мы разберёмся с принципом работы бесконтактных карт и сделаем эмулятор буквально из трёх радиодеталей.
Читать дальше →
Всего голосов 124: ↑120 и ↓4+164
Комментарии91

Как я нейроны паял

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

Здравствуйте. Наверное, многие из вас слышали об искуcственном интеллекте и очевидно что это — важная тема, которая изменяет сегодня нашу жизнь. Над созданием ИИ работает множество учёных. На данный момент существуют два фундаментальных подхода: нейробиология и нейросети. Лично я считаю нейробиологию более перспективной, но менее развитой т.к. о том, как именно работают нейроны мы знаем сегодня всё ещё очень мало. Нейросети являются наиболее развитым подходом, который, однако фактически достиг пределов развития т.к. для улучшения результатов требуются всё большие и большие вычислительные ресурсы. Кроме того, его отношение к настоящим нейронным сетям и нейронам весьма опосредованное и представляет собой всего лишь приблизительную математическую модель.

Подойдём к вопросу иначе: если нейрон - это электрохимическая структура, то можем ли мы попытаться воспроизвести его химическую активность с помощью электронных компонентов? Другими словами, можем ли мы составить электрическую цепь аналогичную нейрону?

Читать далее
Всего голосов 18: ↑13 и ↓5+10
Комментарии17

Self-hosted EXPLAIN: наглядно и безопасно

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

С момента первой же хабрапубликации о возможностях нашего сервиса визуализации планов запросов PostgreSQL explain.tensor.ru (а было это уже больше 2 лет назад) пользователи задавали резонный вопрос: "Все у вас круто, но у нас в запросах и планах есть коммерческая инфа, которую отправлять куда-то наружу низзя... Можно как-то ваш сервис развернуть на своей площадке?"

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

Читать далее
Всего голосов 32: ↑32 и ↓0+32
Комментарии9

Как подступиться к оптимизации процессов и расходов в организации — Process Mining и его возможности

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

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

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии4

Проектируем DataGrid на React так, чтобы сэкономить Boilerplate

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

⚛ Проектируем DataGrid на React так, чтобы сэкономить Boilerplate

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

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии7

Принципы юнит-тестирования. Часть первая

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

Привет! Меня зовут Владимир, я разработчик команды продукта «Сервис персонализации» в SM Lab. В этом посте я хотел бы рассказать (а в комментариях — обсудить) один очень важный и полезный инструмент разработчика — юнит-тесты.

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

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

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

При подготовке материала очень помогла книга Владимира Хорикова (@vkhorikov ) «Принципы юнит-тестирования». Рекомендую ее всем, кто хочет еще глубже погрузиться в эту тему.

Итак, поехали.

Читать далее
Всего голосов 26: ↑25 и ↓1+29
Комментарии17

Как убедиться, что код библиотеки не был изменен?

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

Любые Open Source проекты потенциально подвержены риску вредоносной модификации сторонними контрибьюторами и уязвимость может появиться на любом уровне распространения кода — от исходных текстов до двоичных артефактов, которые связываются с прикладными программами. Кроме того, нередко в библиотеках и подсистемах Linux обнаруживаются ошибки, которые могут привести к нарушению функционирования системы, аварийному завершению приложения или обходу механизмов безопасности и важно иметь возможность быстро обнаружить все затронутые этой ошибки компоненты и выполнить выпуск заплатки для 0-day уязвимости.

Для решения всех этих задач Linux Foundation в 2010 году предложил формат для описания юридических аспектов использования программного обеспечения (в частности, лицензии), происхождения артефакта (исходного кода или двоичного файла), способов контроля целостности объекта, а также зависимостей от других объектов. В 2021 году формат был принят как стандарт ISO/IEC 5962:2021 (спецификация SPVX V2.2.1) и является основой для определения SBOM (Software Bill of Materials), которые описывают зависимости компонентов, способы их верификации и описание цепочки поставок для валидации источника.

В статье мы обсудим общие принципы описания SPDX и инструменты (включая недавно открытый Microsoft SBOM Tool, ранее назывался Salus), для создания SPDX/SBOM (в том числе, для автоматической генерации на основании файлов спецификации зависимостей проекта).

Читать далее
Всего голосов 10: ↑9 и ↓1+10
Комментарии1

Как проходит интервью системных аналитиков в Тинькофф

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

Привет! Меня зовут Евгений Зингер, я тимлид группы разработки бэка кредитов для юрлиц в Тинькофф. Кроме основной работы, я лидирую стрим-интервью системных аналитиков и часто собеседую кандидатов. В статье расскажу, как проходят три этапа собеседования: от HR-скрининга до финального интервью. А также объясню, как попасть в Тинькофф за один день. Материал будет полезен всем, кто интересуется системным анализом и хочет работать в крупной компании или именно у нас. 

Читать далее
Всего голосов 33: ↑14 и ↓19+1
Комментарии36

Уроки компьютерного зрения на Python + OpenCV с самых азов. Часть 7

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров35K

На прошлом уроке мы изучили некоторые способы поиска областей интереса на изображении. Напомню, что мы делали:

пытались найти по цвету (чаще всего так делать не надо);

пытались найти круглый знак посредством функции HoughCircles (иногда работает);

а еще мы изучили морфологические операции (открытие закрытие).

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

Для начала вспомним, как находить контуры.

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

Импортозамещение Camunda самописным BPM-механизмом

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

Привет, Хабр! Меня зовут Владимир Швец, я ведущий разработчик центра Smart Process в МТС Digital. Расскажу о том, как мы собрали BPM-движок, который позволяет кастомизировать бизнес-процессы без перезагрузки стенда и перезапуска приложения.

Два программиста написали движок за две недели, поэтому такой BPM-механизм – быстрое и легкое решение, назвали его Scenario Engine. Мы применили движок для гибкого создания ряда процессов в рамках проекта интеграции с внешней системой. Ниже я разберу то, как работает движок, что у него под капотом, как мы его придумали и какие выводы сделали.

Добро пожаловать под кат!

Читать далее
Всего голосов 17: ↑14 и ↓3+12
Комментарии32

В Data Science не нужна математика (Почти)

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

Привет, чемпион!

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

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

Решил накидать чек-лист из простых математических приёмов, без понимания которых — тебе точно будет сложно в DS. Если ты только начинаешь карьеру в DS, то тебе будет особенно полезно. Мощь вышмата не принижаю, но для старта всё сильно проще, чем кажется. Важно прочитать до конца!
Читать дальше →
Всего голосов 109: ↑102 и ↓7+129
Комментарии87

Способы хранения графа в памяти компьютера

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

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

Читать далее
Всего голосов 39: ↑36 и ↓3+42
Комментарии19

Теория чисел. Новый метод анализа распределения чисел, в том числе и простых

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

В статье рассказывается о новом подходе к анализу распределения простых чисел.
О подходе с использованием формулы распределения чисел для всего натурального ряда.

Читать далее
Всего голосов 32: ↑28 и ↓4+37
Комментарии15

Как создавать иконки сайтов в 2022 году — всё о favicon

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

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

Статья глубоко погружается в тему, поэтому в начале я даю два фрагмента кода для тех, кто уже достаточно настрадался и понимает, что делать. Тем не менее, я всем рекомендую читать статью целиком!

Статья целиком
Всего голосов 39: ↑39 и ↓0+39
Комментарии33

TypeScript: разрабатываем WebAssembly-компилятор

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



Привет, друзья!


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


Обратите внимание: мой вариант компилятора можно найти в этом репозитории, а поиграть с его кодом можно в этой песочнице.


Если вам это интересно, прошу под кат.

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

Путеводитель по ID для JPA сущностей. Часть 1: ID, генерируемые на сервере

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

Разработка инструментария – очень познавательное занятие, потому что заставляется задуматься над теми вещами, которые в процессе разработки иногда не замечаешь. Казалось бы, создание @Id атрибута в JPA – рутинное занятие и каждый разработчик может сделать айдишник, даже не включая мозг. Однако, когда начинаешь углубляться в эту тему и пытаться разработать инструмент, который не только помогает писать код для определения ID, но и подсказывает потенциальные проблемы, то всплывает много интересного. И наши соображения, которыми мы руководствовались при разработке JPA Buddy, вылились в этот цикл статей. 

Читать далее
Всего голосов 16: ↑16 и ↓0+16
Комментарии5

Дилемма моделирования в рамках Data Vault/Anchor Modeling: объект или событие

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

Всем привет :) 

Меня зовут Голов Николай, я строю платформу данных на основе Snowflake и Anchor Modeling в ManyChat.

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

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Комментарии6

Блокчейн на JavaScript

Время на прочтение7 мин
Количество просмотров25K
В последнее время криптовалюты и блокчейн-технологии стали невероятно популярными. Сегодня я расскажу о моём подходе к созданию блокчейн-платформы на JavaScript с использованием всего 60 строк кода. Я — начинающий блокчейн-разработчик, поэтому если я в чём-то ошибаюсь — поправьте меня в комментариях.


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

Открытый инструмент для аналитики бизнес-процессов и Process Mining’а

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

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

На этот раз представляем вашему вниманию Process Flow Optimization Tool от Национального центра когнитивных разработок Университета ИТМО.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность