Дедушка джаваскрипта и его странный братец

April 21, 2017

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

В принципе он тьюринг полный и при должном усердии на нем можно написать все, что угодно. Но есть язык еще хуже - это виндовые bat-скрипты. Еще до того как появилось слово DevOps, команда выкатки в CQG писали тысячи строчек батничков. Это было круто. На чистые-чистые виндовс сервера, накатывали по-моему один бинарь, для удаленного запуска скриптов, и дальше все раскатывалось на bat-скриптах. Получалось на удивление прозрачно и надежно. Я не знаю, что сейчас нативное в терминале винды, но баш будет всегда.

Роботы - разгильдяи

April 20, 2017

Роботы подвели меня в понедельник со страшной силой, пока я переключал таймзоны в Ульяновске, то одна встреча в тудуисте почему-то переехала в GMT+4 и я ее пропустил. Совершенно безответственное отношение. И мне кажется это дело не только в тудуисте, а еще в андроиде, который почему-то сам не перевел время.

Удивительно, но к андроиду привык очень-очень быстро и к размеру лопаты, думал дольше все это будет. А при цене в 11к для семейного человека я просто не знаю альтернативы. Телефон с такой стоимостью можно носить без чехла, проливать на него умеренно воду и ронять кусочки пищи. Он маленько метализированный, поэтому наверняка им можно открывать пивас и использовать для обороны. И не потому-что он такой крепкий, а потому-что пофиг. Если бы телефон, который умеет звонить и вызывать такси стоил бы 3-6 тысяч, он бы воистину приобрел бы космические свойства из-за полного безразличия к его сохранности.

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

Единственная беда с дешевыми вещами, что они часто, не упрощенная версия дорогой версии, а просто не умеют делать свою основную функция. Дешевые ножницы - не режут, дешевый телефон - не звонит, а дешевый фонарик - не светит. И я рад, что в телефонах ситуация поменялась и сегодня можно избавится от iOS-ига, купив вполне приличную вещь. К айфонам я планирую вернуться, когда его стоимость составит меньше моих недельных трат. То есть вполне вероятно, что никогда.

Inbox & Trello

April 19, 2017

Я нашел способ как упорядочивать все, те идеи, которые приходят мне в голову по профессии, начиная от поправить строчку в ридми-файле, заканчивая написания мега-скрипта, который заменит меня. Любую идею, независимо от размера, я демократично записываю в колонку inbox в личной трелло-доске. Когда колонка перестает влазить на монитор, то переношу ее на доску Inbox и начинаю новую. Сейчас наполняется inbox 10. А изредка просто беру и удаляю все колонки, не читая. Жизнь слишком коротка, чтобы просмотривать инбокс, а тем более его выполнять. Но мозг доволен, что его идею услышали, такой он бесхитростный.

Вообще я для себя переоткрыл Трелло в этом году с лучшей стороны, сейчас всю деятельность за компом веду в нем, даже отказался от бумажек. Мне там очень нравится, что карточку можно открыть на весь экран и вспомнить, какой задачей я занимаюсь прямо сейчас. И чеклисты! Под любую задачу, которая чуть сложнее совсем тривиальной, я создаю чеклист и записываю "сделать задачу". По мере выполнения записываю все идеи, что еще надо сделать и получается 2 пункта сделал, 4 добавил. Иногда бывает, что в конечном итоге по задаче закрыто и 40, и 60 пунктов, это довольно приятно.

И ччто мне еще очень нравится в Трелло, время обучения нового человека составляет 30 секунд. Джоэл Спольски - молодец.

Матрица

April 18, 2017

Note: сейчас у меня переходный этап, когда девопсом я уже наигрался, а девелопментом пока снова не занялся и блог будет напоминать немножечко ЖЖ, буду просто писать свои мысли, челендж продолжается, но без примеров кода. Сегодня про матрицу.

Вообще я социальные сети не использую особо, фейсбук держу как просто адресную книгу. Но когда после конференции стал добавлять людей, удивился насколько он уже оказывается меня хорошо знает, людей угадывает по двум-трем буквам, социальный граф работает. Через 10 лет и даже быстрее, фейсбук будет знать всё про всех. Сейчас чуть-чуть держится старшее поколение, оставляя мало цифровых следов. Я тоже люблю шалить и не заполнять профили самостоятельно. Пусть машинное обучение попыхтит на долю секунды больше, вычисляя пропущенную информацию. Но скоро, для того чтобы вести аккаунт, человек уже не потребуется. А нужна будет только теплая ванночка, десять гигабит в голову и тук-тук, Нео.

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

Стачка Все.

April 17, 2017

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

Очень понравился рассказ Олега Бартунова про JSON в постгресе. Если кратко, то нужно выкинуть json и всегда пользоваться jsonb, а в Постгресс 11 будет поддержка нового стандарта SQL для работы с JSON. То есть в 99% случаев хипстерам можно пользоваться постгресом и не нужны никакие NoSQL. Это приятно.

Ruby + JSON

April 15, 2017

Ой, а я и не заметил, что в руби 2.2+ нормально работает JSON:

$ docker run ruby:2.1.10 ruby -e 'a={"a":"b"};p a'
-e:1: syntax error, unexpected ':'

А уже в 2.2:

$ docker run ruby:2.2.0 ruby -e 'a={"a":"b"};p a'
{:a=>"b"}

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

Атака на клиентов R01

April 13, 2017

Друг недавно переслал письмо, которое выглядит точь в точь как от R01 с просьбой валидировать домен:

Красиво оформили чертяки, лайк! Я даже поверил в первую секунду. Но расширение .php выдало славного разведчика Исаева, а также адрес noreply@r01.tech.

Ноутбук, рюкзак, Ульяновск

April 12, 2017

Отправляюсь сегодня в славный город Ульяновск, на денек в наш офис и потом на стаченьку. И в честь этого рассказываю, что cron в Ubuntu 16.04 у меня почему-то заглючил при смене таймзоны. Не ожидал такого от утилиты, старше себя, но что есть, то есть. Из уважения к пенсионеру, обновили наш bootstrap рецепт, чтобы после установки таймзоны крон перегружался.

У стартапов есть такой этап от гаража до лофта, когда у них нет полноценных ставок для администраторов/девопсов. Особенно беда тем, кто вдруг распался на много продуктов, как мы. Тогда может оказаться, что в одном проекте работы на 0.2 человека, во втором на 0.05, а на следующией день появляется еще 3 продукта по 0.15 и один на 0.03. Серьезному человеку хостить 10 рейлс приложений будет скучновато, несерьезному - сложновато. И вообще серьезность начинается от трех человек, только тогда это команда и кворум.

На начальном этапе и среднем дико спасают PaaS'ы (привет Хероку), но может оказаться там тесновато, а для команды еще рановато. В принципе у меня есть решение, как можно с огоньком пережить это время. Я планирую в ближайший месяц-два-три его доосмыслить и опубликовать набор подходов, которые позволяет относительно маленькими усилиями на докерах в облаках управлять, скажем, сотней приложений, каждое из которых может обрабатывать сотни rps при необходимости. Оставайтесь на линии! :cocktail:

Интернет в метро

April 11, 2017

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

Теперь за полчаса, которые еду на работу, могу просмотреть почту, запланировать день, посмотреть карту и не заниматься этим днем. Мозг натренирован "сначала сказать нет", так как спамеры всех мастей не дремлют, но иногда фильтр отсекает реально дельные вещи.