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

Все потоки

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

NFC приходит в web

JavaScriptGoogle ChromeTypeScript
Перевод

Это должно было быть примерно в 2012 году, когда Google выпустил первые телефоны с поддержкой NFC (Google Nexus S) вместе с обновлением для Android, которое позволило разработчикам использовать API NFC. Я хорошо помню, что заплатил несколько евро за несколько тегов NFC, чтобы попробовать (сегодня эти теги стоят очень дёшево). Хотя я был очень убежден, и команда CX Labs анонсировала множество прототипов, таких как покупки с помощью NFC, Apple потребовалось много лет, чтобы внедрить NFC и, наконец, открыть API для своих разработчиков. О NFC почти забыли... Но сейчас 2021 год, и большинство телефонов имеют встроенное оборудование NFC. Основной вариант использования - платежи, эмуляция карты NFC - один из трех режимов работы NFC, и большинство из нас ежедневно используют Apple или Google Pay.

Это означает, что функция NFC широко доступна для разработчиков, но, честно говоря, она не очень часто используется, кроме как через платежные приложения, поддерживаемые Google/Apple. Но только в мае 2021 года вышел Chrome для Android 91, который теперь поддерживает веб-NFC - любой веб-разработчик может экспериментировать и использовать NFC на простых HTML-страницах. Хотя Safari от Apple и другие браузеры снова опаздывают в игру, это может снова ознаменовать момент для нового прорыва в технологии NFC. Web NFC снижает барьер для разработчиков и, что более важно, функциональность NFC теперь может быть частью Интернета: никаких установок.

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Просмотры1.5K
Комментарии 0

Новости

Показать еще

Linux kernel 5.14 — что изменится в новом ядре

Блог компании VAS ExpertsНастройка Linux

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

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

Ретроконсоль своими руками Часть 3. Финальные штрихи

Блог компании Western DigitalDIY или Сделай самИгры и игровые приставки

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

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

Дайджест киберинцидентов Acronis #6

Блог компании AcronisСпам и антиспамИнформационная безопасностьАнтивирусная защитаРезервное копирование

Привет, Хабр! Мы продолжаем наш дайджест, и сегодня в “меню” — новые вирусы имени Олимпиады-2020, рост заражений с использованием инфицированных файлов Microsoft Office, ловушки для любителей пиратского контента и ПО. Кроме этого мы назовем новые имена хорошо известных группировок, которые некоторые эксперты уже хотели списать со счетов, а также расскажем о расширенных функциях LockBit, которые помогают этому вредоносному ПО шифровать компьютеры по всему домену.

Читать дайджест
Всего голосов 3: ↑3 и ↓0+3
Просмотры167
Комментарии 0

Адаптируем старую библиотеку UI компонентов для работы с TypeScript кодом

JavaScriptПрограммированиеTypeScript
Tutorial

Многие NPM библиотеки написаны на JavaScript. Что же с этим делать во время миграции на TypeScript? Нам потребовалось написать объявления типов для нашей библиотеки UI компонентов. Мы хотели получить инструмент, который мог бы служить дополнительной документацией. Мы также хотели собрать в одном месте всё, что можно использовать при вызове того или иного метода нашего JS пакета. Расскажу, какие шаги мы выполнили и что получили в результате.

Читать далее
Рейтинг0
Просмотры361
Комментарии 0

Обзор Codelobster — Удобная кроссплатформенная IDE

Разработка веб-сайтов

Полноценная мультплатформенная (включая Мак, Линукс и т.д.) IDE с нормальным автокомплитом для Друпала, JavaScript и TypeScript

Читать обзор
Всего голосов 6: ↑1 и ↓5-4
Просмотры2.4K
Комментарии 3

NASA переходит в облака: MCP, DAPHNE и облачные инструменты для команды Perseverance

Блог компании SelectelIT-инфраструктураОблачные вычисленияНаучно-популярноеАстрономия

Мы уже писали о том, что NASA и другие космические агентства генерируют огромный объем информации. Данных будет еще больше после запуска в работу сети радиотелескопов и антенн Square Kilometre Array (SKA). Все эти данные нужно где-то хранить и обрабатывать.

Кроме того, NASA приходится еще иметь дело с данными со спутников, которых тоже становится все больше, как и внеземных аппаратов. Их назначение может быть самым разным — от наблюдения за Солнечной системой до изучения метеорологических условий определенного региона Земли. Объединяет их то, что они отправляют информацию на Землю, где для приема и обработки данных установлены специальные станции со специфическим и дорогим оборудованием. Недавно агентство решило сделать ход конем — начать обрабатывать и хранить все это в облаке. Подробности о проектах, которые имеют отношение к этой задаче, — под катом.
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Просмотры379
Комментарии 0

Переделываем DSO138, или сделать что-то похожее на инструмент из игрушки

ОтладкаПрограммирование микроконтроллеровСхемотехникаDIY или Сделай сам
Из песочницы

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

Собран этот «игрушечный» осциллограф на микроконтроллере STM32F103, и при достаточно грамотном схемотехническом решении цифровой части, наличии довольно приличного цветного дисплея 320Х240 точек, и не самом поганом аналоговом тракте, все, увы, гробится очень слабыми АЦП на борту 32F103. Заявленная полоса в 200 кГц может быть признана таковой только с очень большой натяжкой. Да, наличие или отсутствие сигнала с такой частотой он покажет, но вот реально посмотреть что-то сверх этого не получиться.

При этом есть у 103-й серии чуть более старший брат – STM32F303, по ножкам совместим практически полностью, но по интересующим нас параметрам существенно лучше, на борту 4 АЦП с частотой преобразования 5 МГц (6 МГц с 10-ти битным разрешением). При таком раскладе, если использовать все 4 АЦП параллельно с 10-ти битным разрешением, можно получить временное разрешение до честных 24 MSPS (миллионов отсчетов в секунду). Стоит микроконтроллер тоже недорого, на том же Али можно легко найти за опять же весьма умеренные деньги. Понятно, что идея поменять микроконтроллер возникла практически сразу после того, как я этот самый DSO138 и попробовал.

О том, что получилось в результате, и написана эта статья.

Читать далее...
Всего голосов 13: ↑13 и ↓0+13
Просмотры1.7K
Комментарии 1

Тестирование контракта потребителя сервиса — часть 1

Блог компании OTUSKotlin
Перевод

Это первый блог из серии о тестированиях контракта потребителя сервиса. В этой серии представлена концепция и продемонстрировано написание тестов контрактов для приложения spring boot.

В мире микросервисов мы часто говорим об их преимуществах. Однако есть определенные условия, которые должны быть соблюдены, прежде чем выбрать этот архитектурный паттерн. Блог Мартина Фаулера очень хорошо освещает эти требования. Одним из условий, о которых он упоминает, является ContinuousDelivery. ContinuousDelivery — это технология разработки программного обеспечения, при которой вы создаете его таким образом, что оно может быть запущено в любое время. В контексте микросервисов непрерывная доставка (continuous delivery) означает, что любой сервис может быть внедрен в производство в любое время вне зависимости от остальных микросервисов. Но что гарантирует, что развертывание нового микросервиса не повлияет на общую функциональность приложения? Конечно, тестирование. Однако мы не хотим запускать все приложение, которое может состоять из сотен микросервисов, только для того, чтобы протестировать крошечное изменение кода в одном из сервисов. Так что же нам делать?

Прежде чем решать проблему, давайте сделаем шаг назад. Зачем нам нужны другие микросервисы для тестирования крошечного изменения кода в одном из сервисов? Ответ заключается в том, что сервисы взаимодействуют друг с другом для достижения общей цели. И нам нужно убедиться, что изменение кода не нарушит существующую функциональность. На самом деле достаточно убедиться, что изменение кода не повлияет на API сервиса. Если API сервиса не поврежден, то можно с уверенностью предположить, что потребительские микросервисы этого конкретного сервиса будут работать правильно. Так мы можем избежать запуска всего приложения для тестирования изменений в сервисе. Но каким способом будет проверяться целостность API сервиса? Ответ — с помощью тестирования контракта. Давайте рассмотрим простой пример, чтобы лучше это понять.

Читать далее
Рейтинг0
Просмотры254
Комментарии 0

Повесть о двух департаментах, или как в ВТБ Лизинге Agile прививали

Блог компании ВТБ ЛизингCRM-системыAgile

Если вы работали в больших компаниях, то знаете, что это за ощущение: у вас вроде бы есть всё для реализации себя как профессионала, все условия для воплощения в жизнь любых идей и задач — однако что-то неосязаемое не даёт планам исполниться, а в голову лезут мысли, что инициатива наказуема и что хата твоя с краю. Когда я полтора года назад пришёл в ВТБ Лизинг, решил, что в моём департаменте всё будет по-другому.

Меня зовут Константин Морозов (morozovvtbl), и я руководитель управления развития информационных систем — то есть отвечаю за всю разработку в ВТБ Лизинге, а также лидирую Agile-трансформацию в компании. Под катом я расскажу о том, как мы внедрили гибкую разработку в крупную компанию консервативного толка.

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

Property-based тестирование с QuickCheck

Блог компании TypeableТестирование IT-системПрограммированиеHaskellФункциональное программирование
Tutorial

Автор статьи: klntsky



Что такое Property-Based Testing?


Property-based testing (PBT) — подход к тестированию ПО, подразумевающий автоматическую проверку свойств функций (предикатов), специфицируемых программистом-тестировщиком. Для проверки, т.е. поиска контрпримеров, используются автоматически сгенерированные входные данные. PBT позвляет разработчикам значительно увеличить тестовое покрытие и эффективно расходовать своё время, не придумывая входные данные для тестов самостоятельно. В общем случае данные, генерируемые во время property-based тестирования, ничем не ограничены, поэтому проверка может быть произведена на тех значениях, про которые разработчик мог забыть или для которых не счёл нужным написать юнит-тесты (действительно, не перебирать же все значения входных параметров вручную).


PBT-подход был популяризован библиотекой QuickCheck, написанной на Haskell, и в этой статье будет показано, как пользоваться этим инструментом эффективно.

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

Golang-дайджест № 7 (1 – 31 июля  2021)

Go

Интересное в этом выпуске

Выпущены версии Go 1.17, 1.16.6 и 1.15.14, GitHub представил инструмент проверки безопасности GO, Перехватываем и изменяем сетевые пакеты на примере игры, Рекомендательная система

Приятного чтения!

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Просмотры901
Комментарии 0

От мюонного соленоида к Data Science

Блог компании SkillFactoryУчебный процесс в ITУправление персоналомКарьера в IT-индустрииЧитальный зал
Перевод

Автор статьи, переводом которой мы делимся к старту флагманского курса о Data Science, Эдмонд Ли в годы студенчества изучал физику и даже попал на стажировку в CERN, многие люди спрашивали его о переходе от академической физики к Data Science. Как физик, автор считает, что должен ответить на вопросы «почему?» и «как?» и надеется, что его история ответит на вопросы о причине, о том, как он преследовал цель, и вдохновит заниматься тем, что захватывает мысли. Интересно, что в самом начале изучения программирования автор мог неделю разбираться с циклом for.

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

5 ошибок DevOps, которых следует избегать

Блог компании OTUSDevOps
Перевод

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

DevOps основан на решении этих проблем путем объединения разработки (Development), эксплуатации (Operation) и автоматизации деятельности. Несмотря на то, что DevOps часто подтверждает заявленные преимущества, для себя можно выделить несколько уроков, которыми делятся те, кто пришел к DevOps.

Давайте рассмотрим 5 ошибок, которых следует избегать при работе с DevOps.

Читать далее
Всего голосов 3: ↑2 и ↓1+1
Просмотры2.2K
Комментарии 0

Улучшаем UX форм только с помощью HTML

HTMLAccessibility

Если вы правильно пишите HTML, то вы можете сразу сделать формы в ваших проектах доступными и удобными. Я подобрал несколько кейсов, чтобы показать вам, как можно улучшить UX форм только с помощью HTML.

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

Нейродайджест: главное из области машинного обучения за июль 2021

PythonМашинное обучениеИскусственный интеллектTensorFlow

Новый язык программирования от Open AI, рост популярности диффузионных моделей, чат-бот с памятью не как у золотой рыбки — об этом и многом другом в июльском выпуске.

Перейти к обзору
Рейтинг0
Просмотры758
Комментарии 0

Байесовские сети и реальные опционы

Машинное обучениеФинансы в IT

Менеджерам компаний часто приходится брать на себя принятие решений по проектам, которые уже начаты (продолжаются). Так происходит, потому что существенно меняется состояние экономики, на рынке заключаются крупные сделки, которые меняют позиции ключевых конкурентов, или появляются радикально новые технологии, и продолжение проекта становится бессмысленным. Право отложить исполнение проекта, или изменить стратегию его реализации в литературе по финансовому менеджменту называют управленческим опционом (Managerial Option). Также в экономической литературе закрепился термин реальный опцион (Real Option), он четко отделяет это понятие от обычного финансового опциона.

Поскольку принятие решений в таких случаях неизбежно связано с вероятностными оценками и множеством неопределенностей, диаграммы влияния, как и все Байесовские сети доверия (БСД) чрезвычайно полезны для моделирования ситуаций и прогнозирования ожидаемых результатов. Рассмотрим два простых примера с реальными опционами. Как обычно, решаем задачи с использованием Netica, а попутно опробуем функцию программного заполнения таблиц полезности.

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

Профессионально обрабатываем исключения в Python

Блог компании OTUSPython
Перевод

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

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Просмотры2K
Комментарии 0

Telegram-клиент на Golang

PHPGo
Из песочницы
Tutorial

Работая разработчиком в одной веб-студии, пришел клиент с довольно интересной работкой, ему нужен был агрегатор постов из чужих телеграм каналов, так как стек в компании был PHP то решили писать на нем, а конкретно на библиотеке MadelineProto о которой уже есть статья от крутого парня (более подробно об этой либе можете почитать в его статье), вот и началось мучительно создание этого сервиса...

Madeline в общей массе свой очень хорошо, полностью асинхронный и имет под капотом кучу методов для работы как с ботами так и с клиентом, но есть у него одна маленькая проблема (а может и не одна ¯\_(ツ)_/¯) , встроенный EventHandler получает не все новые сообщения из постов (и да я понимаю что есть getHistory, но если бы мы брали сообщения через этот метод, все вышло бы очень медленно работающим и высоконагруженным) Долгие часы и даже дни поиска решения этой проблемы не привели к желаемому результату, все так же процент постов которые пропускались именно Madeline был слишком большим.

Ок, было принято волевое решение забить на данную библиотеку и попробовать найти что-то другое на известном нам стеке, взгляд упал на go-tdlib. Развернули либу и поехали пыхтеть в разработку, и о чудо все посты собираются и все стало чудесно, за исключением одного но... Данная библиотека от пользователя Arman92 сильно отстает от офф методов tdlib и имеет внутри несколько логических ошибок, в общем начали у нас сыпаться паники и другие неприятные вещи. Так как пути назад уже не было, перебрали мы всю либу и обновили методы а так же исправили ошибки и теперь все просто чудесно.

Читать далее
Всего голосов 1: ↑0 и ↓1-1
Просмотры902
Комментарии 2

Книга «Гид по Computer Science, расширенное издание»

Блог компании Издательский дом «Питер»Профессиональная литература
image Привет, Хаброжители! Вышло расширенное издание книги «Гид по Computer Science для каждого программиста». Колосс на глиняных ногах – так можно назвать программиста без подготовки в области Computer Science. Уверенное владение основами позволяет «не изобретать велосипеды» и закладывать в архитектуру программ эффективные решения. Всё это избавляет от ошибок и чрезмерных затрат на тестирование и рефакторинг. Не беда, если вы чувствуете себя не у дел, когда другие программисты обсуждают аппроксимативный предел. Даже специалисты с опытом допускают ошибки из-за того, что подзабыли Computer Science. Расширенное издание бестселлера содержит все главные, а также продвинутые вопросы компьютерных наук: — типы и структуры данных; — алгоритмы; — графы; — теория сложности; — приемы эффективного решения задач; — безопасность; — железо и софт; — операционные системы; — сети; — базы данных и многое другое
Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Просмотры1.1K
Комментарии 1