Можно начинать подводить итоги, 2

24 декабрь, 2015 - 14:23Андрей Зубинский

Первая часть была спокойно-скептической, теперь позволю себе немного если не пафоса, то без лишней восторженности «позитива» (не люблю этого модного слова, но здесь оно к месту).

Итак, год завершается действительно большим событием – у Space X получилось то, чего не получалось ни у кого до них. Наверняка все об этом знают, не буду вдаваться в детали. Falcon 9 с возвращаемой первой ступенью отработал «на отлично», повторно используемая первая ступень вернулась на своё место (по сравнению с удвоенным расстоянием её полёта – буквально «на пятачок»). Банальные результаты этого у многих на слуху - приватные компании подтвердили способность концентрировать мощнейший интеллектуальный потенциал (что ранее было достижимо только для огромных государственных структур), работать удивительно эффективно и упорно добиваться успеха.

О латентных же результатах, особенно об интересных для IT-индустрии, говорят совсем мало. А они есть, хоть и совсем не очевидны.

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

Начну с тривиального соображения. Успех Falcon 9 – это действительно триумф во многих научных дисциплинах, но в их списке одна занимает особое место. Потому что именно ей этот успех обязан. Дисциплина называется «теория автоматического управления» (control theory). Кто её изучал «не для галочки», неплохо если не понимают, то «осознают» масштабы чуда, сделанного разработчиками возвращаемой первой ступени Falcon. Прочим же просто напомню одну «мелкую» деталь – Первая Промышленная Революция стала следствием безопасности и надёжной работы паровых машин, что, в свою очередь, предопределило их массовость. А причиной безопасности и надёжности стал регулятор Уатта (центробежный регулятор) – механический функциональный вычислитель, преобразующий информацию о скорости вращения вала машины в управляющее воздействие в реальном мире, на подачу топлива так, чтобы скорость была постоянной в некотором диапазоне нагрузок. Этот преобразователь информации в новые свойства материальной системы стал основой теории автоматического управления (безукоризненно гениальный Дж.К.Максвелл, «О регуляторах», 1868 год, почти через сто лет после появления регулятора Уатта).

Так вот. В уходящем году были два очень забавных и индикативных события в области практических применений control theory.

Первое наблюдалось на компонентном уровне, и я когда-то о нём писал – компания Microchip выпустила микроконтроллер с независимым от процессорного ядра аппаратным PID-вычислителем. PID (пропорционально-интегрально-дифференцирующий регулятор) – во всевозможных видах овеществлённая теоретическая конструкция (от механических аналоговых реализаций до цифровых аппаратных и чисто программных), одна из очень простых, но на основе которой работает неисчислимое количество устройств, использующих обратную связь. Появление аппаратно-программного вычислителя, интегрированного с автоматически (извините за тавтологию) становящимся сугубо служебным универсальным процессором, и всё это в комплекте с необходимым набором интегрированных на одном кристалле всех периферийных устройств, необходимых для реализации полного замкнутого контура регулирования во внешнем «аналоговом» мире – по моей скромной оценке это событие. Никто такого до Microchip не сделал, и, уже тем более, никто не сделал это за скромные $0,53 (стартовая цена в партиях микроконтроллеров семейства PIC16F161X). И уж совсем в этом забавно и логично, что разрядность независимого вычислителя (он может работать и работает, когда процессорное ядро выполняет любые свои программы или вообще «спит» для снижения энергопотребления), реализующего PID-алгоритм, выше, чем у основного процессора. Просто потому, что освобождённому от интенсивных непрерывных вычислений «служебному центральному процессору» (и такая новость есть, да) повышенная разрядность и не нужна. Разработчиков же всё это полностью освобождает от решения крайне непростой задачи синхронизации выполняемых процессором программ, что снижает риски нестабильной работы контура регулирования. В общем, была в уходящем году действительно яркая и интересная микросхема, основанная на красивой идее и здравой инженерной логике.

Второе событие как бы продолжает показанную ранее неявную цепочку «регулятор Уатта – работа Дж.К.Максвелла «О регуляторах»». Только временная дистанция и значимость для всего человечества совсем другие. И всё-таки, считаю это событием. Фактически в 2015 году книга Филиппа Джейнерта «Feedback Control for Computer Systems» добралась до, если так можно сказать, «некоторого внимания» со стороны аудитории (издана книга O’REILLY в конце 2014 года). Потому что она – для «enterprise programmers», а не для разработчиков встраиваемых систем. И в ней управляемым объектом являются единственные существующие «овеществлённые абстракции» - программы во время исполнения (естественно, раз речь идёт об «enterprise», то не «вообще программы», а характерные для крупных сервисов – СУБД, серверы etc).

Можно начинать подводить итоги, 2

На редкость умная и интересная книга, расширяющая область применения теории автоматического управления до «инструментального набора» профессиональных программистов (естественно, автор не требует от них знаний этой теории, и даёт необходимые основы). Раз мы живём в «междисциплинарное время», такое «слияние дисциплин» тем более значимо. Рекомендую для изучения системным архитекторам, высококлассным web-программистам (причём фронт- и бэкэндов) и просто желающим «не выпасть из времени» (тем книга особенно ценная).

В этом контексте (теории автоматического управления) Falcon 9 принёс и нечто совсем латентное. Мало кто заметил, что полезной нагрузкой успешного запуска были 11 спутников для формирования космической группировки M2M (Machine 2 Machine communication, взаимодействие между машинами для машин) и IoT связи компании ORBCOMM. И уж почти никто не знает, что эта космическая группировка формируется исключительно для M2M и/или IoT. Вот такой фокус – вроде и hype и смешки об IoT-кофеварках, и вдруг «внезапно» возникает планетарного масштаба система. 

Самое же глубоко скрытое для «чистых IT-специалистов» во всём этом вот что: теория автоматического управления, M2M и/или IoT – настолько взаимосвязанные дисциплины, что существовать друг без друга вообще не могут. Неисчислимое количество реальных задач требуют локальных регуляторов (потому разработчики Microchip и сделали что сделали), которые нужно удалённо настраивать, с которых нужно собирать некоторую обобщённую (или усредненную, или как-то ещё предварительно обработанную) интегративную информацию, при этом параметры управляемых систем не допускают «глобального» решения таких задач (например, латентность каналов передачи информации выше, чем это требуется для локального управления, а риски, связанные с выходом канала из строя вообще делают «глобальное» решение невозможным). В общем, в новом междисциплинарном мире, когда мы говорим «IoT», мы говорим и «теория автоматического управления». Обязательно и всегда. В конце концов, M2M или IoT системы – это планетарного масштаба «регуляторы», точно так же, как регулятор Уатта освобождающие человека от опасной рутины и открывающие новые возможности уже существующих машин, что даёт нечто осязаемое (экономию средств и ресурсов, повышение эффективности, сокращение времени реакции на изменения etc). Иначе они никому и ни для чего не нужны.

В списке «почти невидимых больших событий года» безусловно должен быть быстрый эффект включения государственных регуляторов (раз так много сказано уже об автоматическом регулировании) при лавинообразном росте технологий. Естественно, речь идёт о сверхмалых UAV, беспилотных летательных аппаратах или дронах. Всего за год в этой области было всё – и возникновение массовой доступности, и проявление первых рисков из-за неё, и, наконец, резкая и жёсткая реакция на риски. Обязательная регистрация сверхмалых дронов и лицензирование их для коммерческого использования, принятые в США, наверняка станут «традиционной практикой» везде. Вероятнее всего, даже появление реально работающих систем управления воздушным движением малых дронов, эту практику не отменит (почему – отдельная тема для обсуждения, но это настолько вероятно, что лучше сразу принять факт на веру).

Теперь забудем о реализованных сверхпроектах, стратегиях и прочем «большом», и вернёмся в наш повседневный уютный мирок. В нём, к сожалению, яркого за уходящий год было немного. Настолько немного, что при моём внимательном отношении к новым программам, например, и любопытстве, коллекция тематического в Evernote заканчивается датой 11.12.2014. Но кое-что было.

Начну с совсем мелочей, потому что из них состоит обыденность. Пусть это не совсем новое и не совсем 2015 года, но. Именно в 2015 году мобильные пользователи получили наконец реально работающий и идеально соответствующий «рабочему циклу» очень многих инструмент «отложенного просмотра web-страниц» - Flynx. Причём инструмент бесплатный и развивающийся, поддерживающий и офлайн сохранение «очищенного контета» (синхронизация «накоплений» с различными сервисами – в перспективе). Очень рекомендую эту программу всем, кто предпочитает сначала просматривать всякие «источники-интеграторы» (rss, Reddit, Hacker News etc), пробегая глазами заголовки, и открывать для чтения только заинтересовавшее. Без Flynx этот процесс прерывистый, с переключением между приложениями, с Flynx – непрерывный в одном приложении, за это время Flynx «подтянет» открытые страницы, и потом можно обстоятельно и спокойно уже их просмотреть, не дожидаясь загрузки каждой. Понравившееся можно локально сохранить для оффлайн-чтения, причём Flynx удалит «web 2.0 шум». Хорошее приложение, реально соответствующее стилю работы со смартфоном или планшетом, а таких приложений далеко не так много, как хотелось бы.

2015 стал годом доступных вычислителей for fun. Причём речь идёт не о Raspberry Pi вовсе. Именно в этом году «неожиданные китайцы», компания Espressif, добились всемирного признания у «самодельщиков» благодаря копеечному Wi-Fi модулю ESP8266, который на деле оказался вполне универсальным 32-битовым компьютерчиком с Wi-Fi адаптером и готовым стеком протоколов. Итогом стали неисчислимые сообщества разработчиков разных уровней, от совсем начинающих любителей до балующихся на досуге профессионалов. И масса всяких забавных конструкций. Для тех, кто уже «заболел» ESP8266, явно воодушевлённые такой реакцией, разработчики Espressif готовят новую игрушку – ESP32, с двухядерным процессором, большим объёмом оперативной памяти (около 400 KB, это очень много), быстрым (144 Mbps) Wi-Fi, полным Bluetooth (LE и Classic) и аппаратными акселераторами для подсистем шифрования. Больше того. Espressif серьёзно готовится к выводу ESP32 на фактически любительский рынок. Для ранних пользователей этого модуля-компьютера Espressif установила премию $1000 за каждую найденную новую ошибку в SDK. Так что в новом году будут новые интересные игрушки.

Очень понравилось, что в уходящем году у нас проявилось (не «появилось», а именно проявилось) массовое движение maker’ов (трудно перевести это слово) и было неожиданно много мероприятий для них. То же самое можно сказать и о поддержке стартапов, а также в целом о привлечении общественного внимания к стартапам, в планах которых IT составляет какую-то долю, а не все 100%. Всемирная междицисплинарность, несмотря на все трудности времени, добиралась и до нас.

Если внимательно следить за «разрастающимся в нишах», уходящий год можно назвать «годом LoRa». Эти спецификации глобальной сети с очень низким энергопотреблением узловых устройств очень долго доводились до завершённого документа, после чего если не «выстрелили», то, по крайней мере, получили признание ведущими производителями компонентного и узлового уровней. Буквально за полгода с момента доведения спецификаций (это всего лишь документ) до уровня release, появились доступные ($11) сертифицированные Альянсом LoRa модули радиотракта со стеком протоколов от Microchip, и вовсе на днях в игру включилась ST Micro с планами создания своих реализаций LoRa контроллеров и микроконтроллеров с полным интегрированным (аппаратным и программным) LoRa стеком. Безусловно, с учётом особенностей LoRa (например, низкой скорости передачи), это не претендующее на универсальность решение, но потенциальные области применения его очень велики благодаря большому радиусу работы и ожидающемуся снижению стоимости радиотракта (в IoT системах это исключительно важный показатель, потому что оконечных устройств в них должно быть значительно больше, чем просто Очень Много). Так что заинтересованным в IoT есть смысл уже обратить внимание на эти спецификации и начинать пробовать, благо, затраты на «вхождение в LoRa» уже снизились до пороговых $100, доступных всем.

TBC