Pull to refresh
0
Karma
0
Rating
Денис @f1int

User

Как я данные с BLE-градусника от Xiaomi забирал

Python *Smart House DIY
Предыстория: в качестве одного из хобби у меня случился «Умный дом». Хочется красивых устройств, но при этом ещё хочется свободы и приватности. Поэтому занимаюсь скрещиванием ужика Xiaomi с ёжиком Home Assistant.

Для поддержания комфортных условий нам нужно знать, а что вообще у нас дома происходит. Короче говоря, нужны сенсоры. Их у Xiaomi есть много разных, но больше всего мне понравился квадратный градусник на электронных чернилах. Вот только он совсем не умный, в том смысле, что не предоставляет вообще никаких интерфейсов, кроме графического – ни тебе WiFi, ни BLE, ни ZigBee. Зато батарейки CR2032 хватает на несколько лет. Есть ещё версия с блютусом, но она чуть менее изящная – эдакий толстый блинчик.

И вот в начале весны был анонсирован новый датчик температуры/влажности, на электронных чернилах, с BLE, да ещё и с часами. Часы мне не особенно-то и нужны, а вот всё остальное немедленно подавило все рациональные доводы и градусник был заказан на одном из популярных интернет-магазинов, по предзаказу. Ехало оно ехало, и наконец приехало.



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

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

Первой мыслью было ознакомиться с устройством протокола BLE, но оценив размер документации, было принято решение переходить к методу народного тыка.
Читать дальше →
Total votes 68: ↑67 and ↓1 +66
Views 37K
Comments 42

Как стать датасайнтистом, если тебе за 40 и ты не программист

QIWI corporate blog Data Mining *Machine learning *Studying in IT IT career
Бытует мнение, что стать датасайентистом можно только имея соответствующее высшее образование, а лучше ученую степень.

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

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



Сейчас я ведущий аналитик в группе больших данных в QIWI, но еще три года назад я был довольно далек от датасайнс и об искусственном интеллекте слышал только из новостей. Но потом все изменилось, во многом благодаря Coursera и Kaggle.

Итак, обо всем по порядку.
Читать дальше →
Total votes 124: ↑118 and ↓6 +112
Views 144K
Comments 98

Как устроены каналы в Go

Go *
Translation

Перевод познавательной статьи "Golang: channels implementation" о том, как устроены каналы в Go.


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


Устройство канала


Давайте начнём с разбора структуры канала:


Читать дальше →
Total votes 38: ↑34 and ↓4 +30
Views 59K
Comments 11

Запускаем новый онлайн-курс «Разработка веб-сервисов на Go»

VK corporate blog Website development *Go *Studying in IT


Привет! У нас для вас подарок к новогодним праздникам. Сегодня мы запускаем первую часть нашего нового курса по Go на платформе Coursera, посвященного разработке веб-сервисов. В этой части мы рассмотрим основы синтаксиса, асинхронную модель в Go, вопросы производительности и основу работы с HTTP в стандартной библиотеке.

Видя неослабевающий интерес к записям лекций из Техносферы, мы решили записать полноценный онлайн-курс, чтобы дать вам возможность не только ознакомиться с самим языком в теории, но и попробовать свои силы в решении практических задач. Ну и получить сертификат за это, показывающий, что вы с делом провели новогодние праздники. :)
Читать дальше →
Total votes 51: ↑48 and ↓3 +45
Views 18K
Comments 35

Самодельная домашняя вентиляция

DIY Health
Каждый, кто уже обзавёлся измерителем уровня углекислого газа (CO2), знает, насколько важно непрерывно подавать в жилые помещения свежий воздух. Самое простое решение этой проблемы — всегда держать открытой форточку, но у меня, как и во многих других городских домах, это не комфортно из-за уличного шума, к тому же при открытой форточке может быть очень холодно.

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

Именно поэтому, я сделал систему домашней вентиляции сам.

Читать дальше →
Total votes 85: ↑81 and ↓4 +77
Views 74K
Comments 304

Вышел перевод книги Нила Стивенсона «Семиевие»

Professional literature *Science fiction
imageВ свободной продаже (как в бумаге, так и электронные версии), появилась новая научно-фантастическая книга популярного американского писателя Нила Стивенсона «Семиевие». Переводом и издательством книги занимались ребята из FanZon. Книга, как и сам автор, обласкана множественными восторженными отзывами критиков и прочими литературными премиями, которые даются современным фантастам.

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

Понимаю, тема токсичная, но давайте обсудим, что с ней, книгой, не так. Все что написано дальше — субъективизм чистой воды. Я предупреждал.
Читать дальше →
Total votes 33: ↑26 and ↓7 +19
Views 22K
Comments 65

Сервис Goodreads опубликовал рейтинг самых читаемых книг в жанрах научной фантастики и фэнтези

Madrobots corporate blog Science fiction
image

Goodreads — социальная сеть любителей чтения. Создана в 2006 году Отисом Чендлером. Решает проблему выбора интересных и полезных книг на основе рекомендаций и отзывов других людей, так называемой «социальной каталогизации».

29 июля в блоге Goodreads был опубликован рейтинг лучших научно-фантастических и фэнтези книг на основе оценок и отзывов читателей (на сервисе размещено более 50 миллионов отзывов).
Читать дальше →
Total votes 33: ↑28 and ↓5 +23
Views 54K
Comments 167

Intel NUC — история и современность. От Atom до Optane

Intel corporate blog Computer hardware Data storaging
Компания Intel последовательно и активно развивает экосистему портативных компьютеров NUC. Регулярно появляются новые модели, получающие самые современные аппаратные разработки, включая процессоры последнего поколения, иногда выходит даже что-то эксклюзивное. Короче, жизнь кипит. Неудивительно поэтому, что только появившуюся на рынке память Intel Optane 3D XPoint сразу же предустановили именно в Intel NUC. О получившейся из этого новой линейке NUC, а также о NUC в целом, его истории и сегодняшнем дне — в этом посте.

Читать дальше →
Total votes 21: ↑19 and ↓2 +17
Views 22K
Comments 71

Компактный монитор домашнего воздуха (CO2, температура, влажность, давление) с Wi-Fi и мобильным интерфейсом

IOT DIY

image


Про измерение CO2 и его важность на Geektimes было уже немало публикаций (ссылки в конце статьи). Здесь же хочу описать проект компактного монитора уровня CO2, а также температуры, влажности и давления с Wi-Fi, обновлением прошивки по воздуху и интерфейсом в мобильном приложении. Сердца системы модуль на базе esp8266, сенсор CO2 MH-Z19 и фреймворк esp8266-arduino. И так, включим устройство в USB-розетку:

Читать дальше →
Total votes 78: ↑78 and ↓0 +78
Views 77K
Comments 144

Подборка русских и зарубежных фантастических книг за год

VK corporate blog Professional literature *Popular science Science fiction


Почти два года назад мы делали подборку любопытных фантастических книг, вышедших в 2014 году. И в начале этого года мы решили поддержать это начинание — предлагаем вам одни из самых интересных, по мнению читателей, фантастических произведений, вышедших в 2016-м (как на русском, так и на английском).
Читать дальше →
Total votes 28: ↑24 and ↓4 +20
Views 81K
Comments 122

Совсем неоригинальный SSD в Macbook Air

Data storaging Laptops IT-companies
Recovery mode
Так случилось, что через две недели после того как у моего, Macbook Air 13" закончился Apple Care, умер SSD. Идти к официальному представителю, а также в левые лаборатории не хотелось. В первом случае совсем не адекватная цена проверки, во втором я так и не смог добиться от лаборатории цены ремонта, если окажется, что действительно поломался только SSD. Проблема усугублялась тем, что я не был на 100% уверен, что это SSD, а не материнская плата например, поэтому не был заказан суррогат от известных и не очень брэндов, например, OWC. Другая сложность заключалась в том, что Apple специально делает свои устройства как можно сложнее в ремонте, даже чтобы просто открутить крышку пришлось просить у знакомого набор отверток, поэтому неудивительно, что нельзя было просто взять первый попавшийся SSD и проверить.
Бюджетный выход из данной ситуации, вы можете найти под катом
Total votes 49: ↑43 and ↓6 +37
Views 88K
Comments 71

How to ReactJS

Website development *JavaScript *ReactJS *
Tutorial
Translation
Для новичка, экосистема вокруг React (как и фронтэнда в целом) может показаться запутанной. Этому есть несколько причин.

  • Изначально, React был нацелен на экспертов и ранних последователей
  • Facebook открывает исходный код только тех продуктов, которые использует сам, т. е. не нацеленные на проекты-меньше-чем-Facebook
  • Огромное количество гайдов по React совершенно разной сложности


Здесь и далее, я предполагаю, что вы уже знакомы с HTML, CSS и JavaScript.

Читать дальше →
Total votes 46: ↑35 and ↓11 +24
Views 85K
Comments 24

Фантастика сейчас

Professional literature *Science fiction
Sandbox
Список свежей фантастики возрастом меньше 5 лет. А то все рекомендации и списки наполнены классикой без единого проблеска.

Произведения, претендующие на статус классических


1. Роберт Ибатуллин «Роза и Червь»

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

Аннотация от Алексея Анпилогова. Книга выйдет к новому году. К сожалению, автор удалил опубликованные части из странички на Самлибе.
Читать дальше →
Total votes 33: ↑28 and ↓5 +23
Views 47K
Comments 42

Вперед за новыми впечатлениями: 10 научно-фантастических романов

RoboHunter corporate blog Science fiction
Recovery mode
image

Мы надеемся, что эти книги очаруют вас. Они имеют одну общую особенность — эти романы стоят того, чтобы их прочесть. Любители фантастики, запасайтесь кофе и печеньками — и вперед за новыми впечатлениями в неизведанные галактики!
Читать дальше →
Total votes 35: ↑24 and ↓11 +13
Views 32K
Comments 50

Краткий обзор видео по Go c FOSDEM 2015

Go *
Одна из самых популярных конференций по open-source проектам, FOSDEM, прошла 31 января — 1 февраля, и, помимо многих dev-румов, был dev-room, целиком посвященный Go. Видео с этой конференции уже выложены в паблик, доклады по 30-40 минут каждый, и, надо сказать, доклады очень достойные — привычного и надоевшего интро для новичков в стиле «Что мне нравится в Go?» или «Как тестировать в Go» тут не было.

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



Всего было 8 докладов по 30-40 минут, и полтора часа так называемых Lightning talks — коротких докладов, идущих один за другим.

Сразу привожу ссылки на плейлисты:

Youtube: www.youtube.com/playlist?list=PLtLJO5JKE5YDK74RZm67xfwaDgeCj7oqb
FOSDEM http: video.fosdem.org/2015/devroom-go

Итак, в порядке выступлений.
Читать дальше →
Total votes 21: ↑21 and ↓0 +21
Views 8.4K
Comments 1

Горизонтальное масштабирование websocket-ов на Ruby

Website development *Ruby *
Не так давно вышла статья, в которой автор описывал свой framework для написания приложений с использованием Ruby, Sinatra и websoсket. Но в том решении не был затронут вопрос горизонтального масштабирования. Так при подключении к одному из узлов, пользователи могут получать уведомления/данные только о событиях/изменениях, вызванных пользователями этого же узла, а при изменениях, внесенных через другой, они не узнают. Для решения данной задачи необходимо организовать общую шину данных. Рассматривать данную задачу буду в контексте обмена сообщениями клиент-клиент.
Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Views 8.3K
Comments 11

Разработка web API

Website development *API *
Translation

Интро


Это краткий перевод основных тезисов из брошюры «Web API Design. Crafting Interfaces that Developers Love» Брайана Маллоя из компании Apigee Labs. Apigee занимается разработкой различных API-сервисов и консталтингом. Кстати, среди клиентов этой компании засветились такие гиганты, как Best Buy, Cisco, Dell и Ebay.

В тексте попадаются комментарии переводчика, они выделены курсивом.

Собираем API-интерфейсы, которые понравятся другим разработчикам


Понятные URL для вызовов API

Первый принцип хорошего REST-дизайна — делать вещи понятно и просто. Начинать стоит с основных URL адресов для ваших вызовов API.

Ваши адреса вызовов должны быть понятными даже без документации. Для этого возьмите себе за правило описывать любую сущность с помощью коротких и ясных базовых URL адресов, содержащих максимум 2 параметра. Вот отличный пример:
/dogs для работы со списком собак
/dogs/12345 для работы с отдельной собакой
Дальше
Total votes 235: ↑224 and ↓11 +213
Views 279K
Comments 128

TOP 7 – за 7 дней. Маркетинг iPad приложений на Apple Store

Development for iOS *
Начну не с самих методов раскрутки, а с подготовки, что является не менее важным, чем сама раскрутка и продвижение приложения. Сразу оговорюсь, что привожу в пример только платные приложения и российский Apple Store.

image
Читать дальше →
Total votes 71: ↑53 and ↓18 +35
Views 9.3K
Comments 63

Обзор бесплатных инструментов для аудита web-ресурсов и не только

Information Security *

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

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

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

В злых целях знания использовать не буду!
Total votes 189: ↑174 and ↓15 +159
Views 38K
Comments 43

Как я поступил на бакалавриат в Канаде

Studying in IT
Sandbox


0. Вступление


Здравствуйте, дорогие читатели Хабра!
В этом топике я расскажу Вам о том, как осуществилась моя главная цель и, по совместительству, мечта: поступить после российской средней школы в университет Канады. Данная тема будет полезна как ученикам 10-11 классов, так и их родителям, которые хотят отправить своего ребенка на учёбу заграницу. Я постараюсь полностью описать все затраты, подводные и надводные камни, тонкости процесса поступления, получения канадской визы, перелета и проживания на собственном примере.
Топик для удобства делю на части. Приятного чтения!
Читать дальше →
Total votes 130: ↑115 and ↓15 +100
Views 182K
Comments 186
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity