2017-10-07

Итоги 2017

Очередные, шестые, итоги. Предыдущие: 12, 13, 14, 15, 16.

Совсем забросил блог, а в голове приходится держать слишком много вещей. Немного подразгреб, посмотрел на календарь, где красовалось 68 Августа и вспомнил, что чуть не пропустил первосентябрьские итоги. Лето немного затянулось, но это хорошо.

2017-08-06

Контакт

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

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

Когда путешествие закончилось никаких материальных доказательств не осталось. На комиссии огромным доводом в пользу мистификации было то, что несмотря на огромное расстояние от источника данных передача прерывается в момент запуска машины. Хотя строительство машины и дало огромный скачок в физике, обработке материалов и технологиях комиссия отказывается верить. Но пришельцы дали Элли зацепку: после определенного знака в числе Пи, цифры становятся упорядоченными и пришельцы считают это посланием творца вселенной, которое может быть прочитано только цивилизацией с определенным уровнем технологий.

2017-05-16

Фонтаны Рая

Книга Артура Кларка. Главный герой построил мост через Гибралтар, но этого ему показалось мало и он захотел воздвигнуть космический лифт. В невесомости на космической станции научились плести сверхпрочное волокно используя материал пойманных астероидов, следующий шаг – из спутника на геосинхронной орбите спустить груз и поднять его. Но возникла небольшая проблема – на острове с достаточно высокой горой, рядом с экватором тысячу лет назад был построен буддистский храм и только древнее пророчество заставит монахов его покинуть.

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

Современные главы чередуются с экскурсом в историю, которая повествовала о битвах за власть между наследниками, войне и возведении этого монастыря. О том как тиран на горе построил озеро и рабы долго носили воду чтобы его наполнить. О фонтанах в царском саду. Все это символизировало... не знаю что, книгу можно было спокойно сократить вдвое, а если это было сделано ради финальной punch-phrase, то напрасный перевод бумаги. Ё-маё, вы строите космический лифт, да наплевать что было тысячу лет назад, это почти никак не влияет на то что происходит сейчас.

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

Еще один совершенно феерический эпизод – пролет через солнечную систему автоматического инопланетного зонда, которому скормили большую энциклопедию, потому что, а почему бы и нет. А потом подумали, что про войны и прочие плохие вещи, наверное, не стоило передавать. Весь эпизод уместился на пару страниц и повлиял на происходящее чуть менее чем никак.

Тау-Ноль

Очень странный роман Пола Андерсона. Хотя и считается классикой Hard-Sci-Fi но мне совершенно не понравился, хотя и не настолько чтобы дропнуть. В начале романа мельком описывается будущее политическое устройство мира. Но зачем? – Ведь роман про исследование космоса и происходящее на земле вообще не окажет никакого влияния не последующие события из-за эффекта сжатия времени.

50 человек, по 25 мужчин и женщин погрузили на пять лет (субъективного времени) в субсветовую консервную банку и запульнули к потенциально пригодной для колонизации Бете-Девы. В гибернацию никого не погружали. Естественно там начался трэш угара и чад кутежа, который дошел до совершенно невозможного уровня после аварии, когда стало понятно что пути назад нету – даже если бы корабль удалось починить, возвращаться было бы некуда, солнце давно погасло. Еще до отлета экипаж начал мутить, затем все перетрахались, потом начали выяснять отношения. Единственный констебль начал устанавливать свою маленькую диктатуру еще до отлета. Хотя, возможно это и спасло миссию.

Проблема книги совсем не в техническом описании, можно сделать скидку на 70-е годы. Вокруг единственной моей претензии, отсутствии гибернации – вертится сюжет, поэтому на это тоже можно закрыть глаза. Но вот что у мне не укладывается в голове, так это попытка автора написать психологическую драму, а в результате один сплошной WTF. Элементарная пьянка будет организована на более высоком уровне, чем многолетняя колонизаторская миссия за 32 световых года от Земли. В экипаж подбирались люди, которые понимали что если миссия окажется успешной, то они не вернутся, а будут основывать колонию. Где психологические тесты, где подбор совместимости, многолетние тренировки. Набрали 50 добровольцев, которых не жалко, и запустили подальше. Финал – единственная стоящая идея в книге.

2017-05-15

FreakAngels

Второй западный комикс, который я прочитал после Y: The Last Man. Сам комикс по вселенной чем-то напоминает помесь Акиры, Людей-Х, Пикника и Фаллаута. 23-х летние юноши и девушки с суперспособностями, которые чуть не погубили мир, собирают то что осталось от Лондона и пытаются восстановить хотя бы тот район, где они живут.

Комикс местами суровый: с кровищей, расчлененкой, сексом и нецензурщиной – погубившие мир дети росли совсем не в тепличных условиях. 12 "детей" очень разные и по характерам и по способностям, хотя не все подробно описаны и появляются постепенно. Некоторые совсем не в адеквате, у других не осталось жалости.

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

2017-04-24

В восторге от Erlang

После курса OCaml продолжаю погружаться в эзотерику. На этот раз выбор пал на Erlang. Сначала расскажу про два курса по три недели на площадке FutureLearn от университета Kent, а затем общее впечатление об языке.

Первый курс – Functional Programming in Erlang мне показался достаточно простым. После OCaml-а мозги были достаточно вывернуты чтобы решать задачи паттер-матчингом и оптимизировать для хвостовой рекурсии. Синтаксис воспринимался интуитивно, главное отличие от OCaml – Erlang не типизированный язык и, как следствие, отсутствую алгебраические типы. Когда, началась третья неделя у меня возник вопрос: а где, собственно, хваленая распределенность. Как оказалось, для этого был отдельный курс.

Для того, чтобы пройти квалификационный тест и получить сертификат, нужно было заплатить порядка $80. При этом, изначальная цена была $60, на которую накинули налоги и доставку сертификатов из англии – все это вы узнаете непосредственно при оплате. После оплаты открывается тест: 10 вопросов, по 3 попытки на каждый вопрос. Итого – 30 баллов которые превращаются в проценты. Сделал 1 ошибку и набрал 98%. Сертификат шел примерно месяц.

Вторым фактом, поразившим меня до глубины души стало отсутствие электронной версии сертификата. Нет, ссылка на красивый сайт с анимацией и градиентами, где отображаются заветные проценты у них есть. Но она не в формате А4. У нас с саппортом состоялась переписка на предмет: я заплатил чертовы 80 баксов, дайте мне PDF-ку или PNG-шку, все что угодно, где мне объяснили что нужно дождаться бумажной версии и отсканить её. Фейспалм. Ладно, отсканю, что поделать.

Второй курс Concurrent Programming in Erlang начался через пару недель после первого. Я решил посмотреть содержимое и, забыв о том что я на третьей неделе, начал проходить курс. Через пару видеофрагментов, было предложено написать балансировщик запросов. У меня упала челюсть. Один кролик плюс один кролик будет два кролика, а теперь посчитайте интеграл. Эээээ, ШТОА?! Написал в комментариях все что я о них думаю, а затем заметил что я на третьей неделе. Либо остался осадочек, либо второй курс был действительно ниже качеством: авторы попытались взять набор лекций Джо Армстронга и и накидали вокруг других лекций с заданиями. При этом задания были сильно сложнее. В рамках курса две недели разбиралось "ванильное" параллельное программирование, а на третьей неделе была бегло рассмотрена платформа OTP. Бесплатный тест из пяти вопросов я сдал с кучей ошибок и поэтому платил очередные $80 за сертификат скрепя сердце. В итоге на 10 вопросов допустил три ошибки и заработал набрал 90%. Теперь жду очередной сертификат. Еще одним фейлом оказалось то, что у них сломалось автоматическое размещение сертификата на LinkedIn – впрочем обещали поправить.

Теперь про сам язык. В отличие от OCaml, где пяток французов играются в своей песочнице, Erlang у меня создал впечатление серьезного, консистентного языка с полноценной платформой. При этом ядро языка осталось очень простым. Курс по Clojure я дропнул примерно на половине, потому что я понял: на этом языке, в который налепили кучу сахара, и где нужно запоминать стопицот конструкций, у меня писать нет никакого желания.

JOE ARMSTRONG: I mean, it's maybe not apparent, but we've got 15 people in Ericsson who have built that stuff for 20 years. So there's something like 250 man years of work in it. It's big. На этом можно ставить точку и уходить смеяться над хипстерами с nodejs которые рассказывают про параллельный код.

JOE ARMSTRONG: But if you think about it, we are doing something that nobody else is doing. You see, we are running concurrent programs and looking for the bottlenecks in it. Other people are running sequential programs and looking for the concurrency in it. So we're already 20 years ahead. Адепты Sсala начали пилить Akka – некое подобие Эрланга c 2009 года, при этом сам Erlang не стоит на месте и у разработчики хотят адаптировать на географически распределенные облака

JOE ARMSTRONG: So the typical use case was 10 relatively powerful machines inside a corporate firewall. The usage patterns, we weren't thinking of millions of machines loosely connected, with a lot of security problems.

и работу Erlang на голом железе.

FRANCESCO CESARINI: I'm loving the whole discussion of microservices. We've been doing it for a long time. But to add to what Joe is saying, you know, I'm seeing a lot happening, running Erlang on the bare metal, running an Erlang-based OS, Erlang on Zen. And what's happening is that-- it's still on an experimental level, and I don't think we'll see any production code for another probably three, four, maybe five years, but integrating a soft switch into the Erlang VM, and then using software defined networking principles.

Дополнительным фактором в пользу Erlang является то, что он хорошо взаимодействует с другими языками, например C. При этом Erlang берет на себя коммуникационную часть, а непосредственно код может выполняться на более быстрых/удобных с вычислительной точки зрения языках.

Итог: я в восторге.

P.S. легендарный Erlang The Movie, где почти 30 лет назад (за 10 лет до java) демонстрировалась подмена кода на работающей системе без разрыва связи. Вашему левому уху понравится, если вы будете слушать в наушниках.

2017-04-06

Проект Феникс

Или Роман о том, как DevOps меняет бизнес к лучшему. Великолепная книга, читается на одном дыхании. Написана с оглядкой на Цель Голдрата. Изначально я даже подумал что это третья книга из цикла книг о TCO Голдрата "Необходимо, но не достаточно", но оказалось что нет.

Книга про типичную компанию в глубоком кризисе, не связанную с IT, в которой есть внутренние отделы: разработки, сопровождения, продаж, маркетинга, производства. Отделы, которые по-задумке должны работать на единую цель не просто не знают что делают другие отделы, более того находятся в состоянии непрерывной вражды друг с другом. Пожары следуют один за другим и люди не знают что тушить в первую очередь.

IT отдел не может нормально сдать ни один проект, сроки давно сгорели, запланированные бюджеты потрачены несколько раз, заказчики рвут и мечут, разработчики пишут говнокод, админы заперлись в серверной и раз в час перезагружают сервера чтобы все хоть как-то работало, а безопасники издают обязательные требования одно безумнее другого. Узнаёте себя? Почитайте эту книгу. Возможно у вас появятся идеи как наконец-то починить этот хаос.

Сюжет книги – остросюжетный детектив. Главному герою необходимо распутать клубок противоречий за 90 дней, прежде чем инвесторы не разделят и не распродадут активы. Как и в Цели успешного начальника небольшого отдела делают выдвиженцем для решения невыполнимой задачи: починить этот хаос. Неподалеку находится мудрый советчик, который не говорит что делать, но помогает главному герою задавать Правильные Вопросы.

Итог: отличная книга, маст рид.

Статистика и котики

Книга, которая рассматривает основные статистические методы. Как упражнение "а можно ли объяснить базовые вещи в статистике на примере котиков" вполне сойдет, но в целом довольно бестолковая.

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

Итог. Как учебник книга никуда не годится, как научно-популярная, лучше взять Голую статистику.

2017-03-11

Город IT 2016

18-20 ноября в Томске проходила IT конфа: веб, машинное обучение – но это ерунда. Труъ разработчики ездят на конфы не за знаниями, а за чадом кутежа и новыми знакомствами. Сами доклады, кстати, были так себе. Хозяйка трехкомнатной квартиры видимо не поверила, что нас будет 11 человек и сильно удивилась когда мы все таки заломились. Не меньшее удивление у неё вызвало отсутствие разгрома.

Помимо введения в машинное обучение от econophysica, самым интересным был интерактивный конкурс по "рефакторингу" большой конструкции из деревянных блоков.

Scratch для детей

Когда я читал эту книгу я вспоминал свой шестой класс, русифицированный бейсик на 386 компе и рыдал. На скратче (есть форк Snap! без флеша но с лямбдами) и на Kodu (только на windows) можно начать программирование лет с шести. Абсолютная легкость создания игра, с моей точки зрения, тут далеко не самая главная фича. Главное тут то, что сразу же закладывается правильная ментальная модель происходящего: главный игровой цикл, отправка сообщений, независимые агенты реагирующие на события. У меня на то, чтобы впитать эту концепцию на примере формочек в VB ушло несколько лет – тут это доступно прямо вот из коробки, на совершенно естественном уровне. Книга великолепна если вы хотите своего ребенка познакомить с программированием, перевод книги очень качественный, хотя русификация самого скретча далека от идеала и в некоторых местах даже пришлось сравнить с оригиналом, чтобы убедиться, что переведено правильно.

Хотя в книге и есть домашние задания, но сильно не хватает списка идей для реализации.

Собака от носа до хвоста. Что она видит, чует и знает

У меня собаки с шести лет, но эта книга, написанная этологом, специалистом по поведению, дала богатую пищу для размышлений. Книга – не сборник советов по дрессировке, а попытка показать читателю мир таким, как его воспринимает четвероногий друг. Мы привыкли "антропоморфировать" собак, но это ловушка нашего разума. Автор рассматривает umwelt – субъективную картину мира через призму нюха, голоса и жестов, зрения. И картина мира сильно отличается от нашей.

Отдельная глава посвящена эволюции, тому как хищник-волк превратился в домашнее животное, с другим поведением, другим рационом (собака может есть примерно то, что ест человек, а вот кошка так не сможет).

Если у вас есть собака и вам интересно узнать как она видит мир, обязательно прочитайте.