Решил, дабы не прослыть окончательно бездельником, что-нибудь написать.

Решил, дабы не прослыть окончательно бездельником, что-нибудь написать.

Первое, что пришло в голову — это рассказать, как большую (если не бОльшую) часть того, что я делаю сделать на доступных и open-source компонентах.

Нынче есть такая штука, называется TICK stack, по именам компонентов, напоподобие LAMP, только для IoT и анализа временнЫх данных:

Telegraf

InfluxDB

Cronograf

Kapacitor

Начать стоит с InfluxDB — это заточенная на хранение временнЫх последовательностей база данных, со своим, похожим на SQL (часто полностью совместимым), языком, domain-specific compression и возможностью агрегации данных (AVG, MEAN, STDEV) и их теггирования (host=aaa,user=bbb).

Telegraf — это то, что стоит (в стеке) до InfluxDB. Он собирает данные от всех и вся, и может отдавать их в несколько мест. Очень простой протокол и легко писать плагины. На Go. Идея замечательная. Я, правда, узнал о нем относительно недавно, когда бОльшую часть написал и сам в похожем стиле, но сейчас внимательно наблюдаю. Пары критических для меня вещей пока нет. Так что либо гора придет к Магомету, либо придется подучить Go.

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

Kapacitor — это rule-based analysis и anomaly detection. Понятно, что серьезный ML & AI нужно писать самому, но вообще инструмент мощный.

Все они прекрасно интегрируются между собой. Равно как и с Graphite & Grafana.

Вроде, напел в формате Клуба. Что только не сделаешь, когда “завтра встреча с клиетном, а еще ничего не готово” ТМ. Viva Procrastination! 🙂

Yap — довольно удобная библиотека для template expressions на C++14.

Yap — довольно удобная библиотека для template expressions на C++14.

Для С++98 это было настолько недостижимо, что мне приходилось строить AST c полиморфными вершинами, держать их все на куче, прикручивать свой small object pool…

https://www.youtube.com/watch?v=VhIwDxkIsME

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

Юноша бледный со взором горящим рассказывает, как писать вкусняшки с помощью кланговых библиотек. Для любителей поковыряться в AST.

https://www.youtube.com/watch?v=E6i8jmiy8MY

П.С. Молодежь, акселерация, все дела — у чувака еще голос ломается, а он уже успел поработать в гугле, блумберге и фейсбуке.

На ACCU было несколько докладов о concurrency.

На ACCU было несколько докладов о concurrency.

Тройка наиболее интересных:

https://youtu.be/Z8tbjyZFAVQ — low-level, познавательно, подробно о работе с I/O без тормозов.

https://youtu.be/UhrIKqDADX — о сабже в свеженьких плюсах и в TS

https://youtu.be/d76cJ_RBGbY — местами сносит башку. Как можно будет использовать новые примитивы, чтобы строить вкусные абстракции. Хочу грибы как у него. Или хотя бы такую же должность на работе.

RISC-V (risv.org) это Free and Open RISC Instruction Set Architecture.

RISC-V (risv.org) это Free and Open RISC Instruction Set Architecture.

Но что толку в наборе инструкций без железа для них? Не на симуляторе же гонять код (https://github.com/riscv/riscv-isa-sim/)!

А вот не очень жадные господа из SiFive сделали относительно открытую железку для тех инструкций. Можно взять verilog (https://github.com/sifive), а можно купить готовый и ардуино совместимый чип (https://www.sifive.com/products/freedom-e310/).