Проекту Pi-Sonos недавно исполнилось полгода. За это время колонка успела прижиться в доме и очень часто выполняла роль источника фоновой музыки в гостиной по утрам и вечерам. Но не так часто, как бы мне того хотелось. Виной тому был ряд просчетов, которых я изначально допустил при проектировании колонки. С каждым из них в отдельности можно было бы смириться, но в сумме они заставили меня полностью переделать акустику. Что это были за ошибки, и как их пришлось решать, дорогой %username%, ты узнаешь под катом.
Рубрика «node.js» - 31
Pi-Sonos v3.0: работа над ошибками или абсолютно новый проект?
2018-03-26 в 9:08, admin, рубрики: diy или сделай сам, node.js, Raspberry Pi, react.js, звукРазработка изоморфного RealWorld приложения с SSR и Progressive Enhancement. Часть 4 — Компоненты и композиция
2018-03-26 в 9:01, admin, рубрики: express.js, html, isomorphic, javascript, node.js, Progressive enhancement, ractive.js, realworld, seo, server side rendering, ssr, Universal, webpack, Клиентская оптимизация, Разработка веб-сайтовВ предыдущей части туториала мы решили проблемы изоморфного роутинга, навигации, фетчинга и начального состояния данных. В итоге, получилась довольно простая и лаконичная основа для изоморфного приложения, которую я также выделил в отдельный репозиторий — ractive-isomorphic-starterkit. В этой части мы начнем писать приложение RealWorld, но сначала осуществим декомпозицию. Погнали!
Читать полностью »
ioBroker — открытая система автоматизации (обзор)
2018-03-26 в 3:38, admin, рубрики: diy или сделай сам, Homekit, ioBroker, node.js, open source, автоматизация, Интернет вещей, умный домУ многих, кто интересуется домашней автоматизацией ("Умный дом"), на слуху известные открытые системы автоматизации, на которых можно построить управление: OpenHab, MajorDoMo, Home Assistant, Domoticz, HomeBridge. Но если немного расширить диапазон наблюдения, то можно обнаружить множество программных систем, которые могут предложить схожий функционал, а местами даже больший. Сегодня, расскажу об одной из них — ioBroker. Расскажу обзорно, без погружения в подробности реализации, т.к. каждый элемент потребует отдельной статьи (если потребуется — будет статья).
Делаем приём платежей криптовалютой с использованием агрегатора PayKassa
2018-03-21 в 16:10, admin, рубрики: curl, node.js, php, python, ruby, агрегатор платежей, платежные системы, приём криптовалют, прием платежей, Программирование, Разработка под e-commerceПривет! В своей прошлой статье я рассказывал, как подключить приём криптовалют своими руками без использования сторонних сервисов. В этой статье я расскажу, как можно принимать платежи криптовалютой без поднятия full ноды и без связанных с этим сложностей.
Но, как это всегда бывает, за удобство придётся платить. В качестве агрегатора рассматривается PayKassa, так как позволяет со среднерыночными комиссиями принимать платежи анонимно, без необходимости подтверждения своей личности и данных о компании.
Книга «Node.js в действии. 2-е издание»
2018-03-20 в 10:09, admin, рубрики: node.js, Блог компании Издательский дом «Питер», книги, Профессиональная литература Второе издание «Node.js в действии» было полностью переработано, чтобы отражать реалии, с которыми теперь сталкивается каждый Node-разработчик. Вы узнаете о системах построения интерфейса и популярных веб-фреймворках Node, а также научитесь строить веб-приложения на базе Express с нуля. Теперь вы сможете узнать не только о Node и JavaScript, но и получить всю информацию, включая системы построения фронтэнда, выбор веб-фреймворка, работу с базами данных в Node, тестирование и развертывание веб-приложений.
Технология Node все чаще используется в сочетании с инструментами командной строки и настольными приложениями на базе Electron, поэтому в книгу были включены главы, посвященные обеим областям. Внутри поста будет рассмотрен отрывок «Хранение данных в приложениях»
Читать полностью »
Node.js + face-recognition.js: простое и надёжное распознавание лиц с помощью глубокого обучения
2018-03-20 в 7:39, admin, рубрики: javascript, node.js, Блог компании NIX Solutions, машинное обучение, распознавание лицПеревод статьи Node.js + face-recognition.js: Simple and Robust Face Recognition using Deep Learning.
В этой статье мы расскажем, как реализовать надёжную систему распознавания лиц с использованием face-recognition.js. Мы искали подходящую Node.js-библиотеку, которая умела бы аккуратно распознавать лица, но ничего не нашли. Пришлось писать самостоятельно!
В этом npm-пакете используется библиотека dlib, предоставляющая Node.js-биндинги для очень хорошо зарекомендовавших себя инструментов распознавания внутри этой библиотеки. Dlib использует методы глубокого обучения и поставляется с уже обученными моделями, которые продемонстрировали точность распознавания на уровне 99,38% при прогоне бенчмарка LFW.
Читать полностью »
[в закладки] Инструменты JS-разработчика, на которые стоит обратить внимание
2018-03-19 в 11:14, admin, рубрики: javascript, node.js, Блог компании RUVDS.com, разработка, Разработка веб-сайтов, Тестирование веб-сервисовПрограммист Трэвис Фишер, перевод статьи которого мы публикуем сегодня, решил рассказать о самых полезных, с его точки зрения, модулях и вспомогательных инструментах для JS-разработки. Полезными он считает технологии, которыми пользуется постоянно и в ценности которых убедился на собственном опыте. В частности, речь пойдёт о библиотеках и утилитах, предназначенных для серверной и клиентской разработки на JavaScript. Трэвис говорит, что не стремился к тому, чтобы включить в свой материал нечто узкоспециализированное, или сделать что-то вроде очередного awesome-списка, которые сами по себе весьма полезны, но обычно оказываются несколько перегруженными. Здесь речь пойдёт лишь о том, самом лучшем, что он с полной уверенностью может порекомендовать другим.
Как написать генератор случайных чисел и можно ли предсказать Math.random?
2018-03-19 в 7:47, admin, рубрики: alhoritms, crypto, javascript, node.jsВы когда-нибудь задумывались, как работает Math.random()? Что такое случайное число и как оно получается? А представьте вопрос на собеседовании — напишите свой генератор случайных чисел в пару строк кода. И так, что же это такое, случайность и возможно ли ее предсказать?
Меня очень увлекают различные IT головоломки и задачки и генератор случайных чисел — одна из таких задачек. Обычно в своем телеграм канале я разбираю всякие головоломки и разные задачи с собеседований. Задача про генератор случайных чисел набрала большую популярность и мне захотелось увековечить ее в недрах одного из авторитетных источников информации — то бишь здесь, на Хабре.
Данный материал будет полезен всем тем фронтендерам и Node.js разработчикам, кто на острие технологий и хочет попасть в блокчейн проект/стартап, где вопросы про безопасность и криптографию, хотя бы на базовом уровне, спрашивают даже у фронтендеров.
Читать полностью »
Онлайн имплементация localStorage
2018-03-16 в 16:26, admin, рубрики: javascript, key-value, localStorage, mongodb, node.js, nodejs, onlineStorage, storage, хранилища данныхХочу поделиться тем, как приватный режим Safari привел к разработке простого ключ-значение хранилища на Node.js с резервным копированием, доступом к данным с определенных доменов и защитой паролем от записи и очистки хранилища.
Все началось с того, что мне дали задачу, реализовать тестовый заказ в веб-приложении, которая встроена через iframe в одном популярном ресурсе.
Задача была решена и работала следующим образом:
- неавторизованный пользователь кликает на магазин (ссылка «_blank»);
- в новом окне отображаются тестовые товары, а в iframe мы перенаправляем пользователя в профиль тестового пользователя и ждем появления данных покупки в localStorage;
- после совершения покупки, данные о ней сохраняем в localStorage (сумма, количество, магазин, время покупки и количество бонусов)
- в iframe при появлении данных тестовой покупки в localStorage, мы отображаем информацию в блоке «история покупок»;
Все работало в большинстве браузеров, и даже в IE11, но только не в Safari, чья политика безопастности (более известный как porno-mode) не разрешала получить доступ к данным localStorage одного и того же домена внутри iframe и снаружи (в новом окне).
Нужно где-то хранить промежуточные данные, привлечь к этой задачи бэкенд разработчиков для создания какого-либо API для хранения данных разрешения не получил, оставалось только найти какое-нибудь онлайн хранилище, с возможностью создание для каждого пользователя своего токена.
Читать полностью »
Разработка изоморфного RealWorld приложения с SSR и Progressive Enhancement. Часть 3 — Routing & Fetching
2018-03-16 в 8:44, admin, рубрики: express.js, html, isomorphic, javascript, node.js, Progressive enhancement, ractive.js, realworld, seo, server side rendering, ssr, Universal, webpack, Клиентская оптимизация, Разработка веб-сайтовВ предыдущей части туториала мы научили наше изоморфное приложение проксировать запросы к backend api, с помощью сессии передавать начальный стейт между синхронными запросами и осуществлять Server-side rendering с возможностью переиспользования разметки на клиенте (hydrate). В этой части мы решим еще две ключевые проблемы изоморфных веб-приложений: изоморфный роутинг и навигация, и повторный фетчинг и начальное состояние данных. И сделаем это буквально 5-ю строками кода. Погнали!