Смещение компетенции
Анатолий Левенчук говорит, что для того, чтобы заняться чем-то новым, надо перестать заниматься чем-то старым. Это вполне очевидная мысль, но чтобы применить ее в моей жизни, надо потратить какое-то количество сил. Потому что все, что у меня уже „есть“, так жалко выкидывать, ведь столько сил и времени было потрачено на то, чтобы какую-то компетенцию приобрести.
Непрерывная поставка ПО
Термин «Непрерывная поставка ПО» (Continuous Delivery, CD) прочно вошел в обиход в конце 2010 году, после выпуска одноименной книги.
В книге описываются достаточно простые идеи о том, как сделать процесс поставки ПО таким, чтобы его можно было выкатывать после каждого комита. И, хотя прошло уже больше четырех лет, до сих пор такой подход к поставке ПО не стал стандартом. По вполне понятным причинам множество компаний продолжает использовать кустарное либо мануфактурное производство, вместо перехода к конвейеру. Кто-то ведь должен оставаться на задворках прогресса, кого-то ведь должны поглощать победившие конкуренты.
О поездке на HappyDev'2014 в Омск
6–7 декабря 2014 на базе отдыха им. Стрельникова под Омском состоялась очередная конференция HappyDev. Я давно не попадал на такую интересную и яркую конференцию.
Во-первых, место проведения. На базе под омском с общей столовой на второй день всех знаешь в лицо. После бани с открытым бассейном многих знаешь по именам. И такой формат снимает некоторую зажатость, которая традиционно бывает у русских айтишников. Опять же, именно это позволило докладам и бар-кэмпам проходить в дружеской и непринужденной атмосфере. По возвращении в Москву, я рассказал коллегам, что никогда подобной атмосферы нигде не наблюдал, на что мне резонно порекомендовали Улькэмп. Судя по всему, надо ехать.
Могущественная скорлупа
Могущественная скорлупа — это, конечно же, шуточный перевод PowerShell. Обратиться к этой теме старого любителя Linux заставило не праздное любопытство, а насущная производственная необходимость. Конечно же, в мире Linux принято весело хохотать и поливать грязью все, что относится к Windows. Но, надо сказать, что многое изменилось в мире Windows, за последнее время.
Во-первых, появился аналог ssh. По протоколу WinRM с помощью PowerShell можно ходить по другим машинкам не хуже, чем по ssh.
Лекции и обучение
Буквально вчера читал свою часть мастер-класса, которая посвящена базам данных, понятно, на примере PostgreSQL.
И там я рассказал слушателям свое наблюдение. Я читал курс по PostgreSQL в рамках своей профессиональной деятельности разным командам, с некоторыми из них после этого мне приходилось совместно работать. Так вот почти всегда я натыкался в работе с ними на то, что слушатели делали ровно то, о чем я неделю назад говорил на курсе, что так делать не надо. И, поскольку это был не единичный случай, то я пришел к достаточно очевидному выводу, что прослушивание чужого опыта, не приводит к появлению новых знаний. О чем я теперь всех своих слушателей предупреждаю в обязательном порядке.
Версионирование и Word
В последнее время по работе мне приходится редактировать документы Microsoft Word. К несчастью этот формат является стандартом de facto в бизнесе. Помимо того, что в Word плохо почти все, начиная от разбегающейся нумерации заголовков, которая лечится совсем уж совсем нетрадиционным способом, и заканчивая вечно куда-то сбегающими рисунками, в Word все безобразно с версионированием.
Конечно, есть режим рецензирования, который позволяет хоть как-то править документ вдвоем, но только по очереди. Частично эта проблема решается в google docs, который позволяет достаточно удобно совместно работать с документами, но тормозит (это сугубо личное впечатление). После того, как поработал с любым кодом и системой контроля версий, все, что есть для совместной работы надо документами, включая до безобразия убогий SharePoint, кажется каменным веком.
Tsung — цунами ручного приготовления
С моей точки зрения, любое нагрузочное тестирование — это измерение сферического коня в вакуму в идеальных попугаях. Но иногда нужны хоть какие-то данные о том, какую нагрузку выдержит ваша система. И тогда на помощь приходят специальные инструменты для создания нагрузки.
Хороший обзор таких инструментов (httperf, siege, ab, pronk) есть у Льва Валкина. Но у нас была задача чуть посложнее, хотелось проверить, как поведет себя система под «реальной» нагрузкой. И если вам нужны сложные сценарии нагрузки, то тут не обойтись без tsung. Хочется сразу предупредить, что документация, хоть и содержит ответы на многие вопросы, но не блещет особой понятностью и полнотой. Тем не менее, аналогов этому инструменту я не знаю.
Сейчас мы будем нагрузочно тестировать мой блог (давайте на секунду вообразим, что он стал мегапопулярным). Оставайтесь с нами, но бойтесь, впереди много xml!
Соло на ноже
Очень часто для небольших проектов нет необходимости усложнять инфраструктуру с использованием chef-server. Существует мнение, что chef server, вообще, не нужен, и многие аргументы в пользу этой идеи кажутся мне вполне убедительными.
Для людей, которым нравится DSL chef и не нужен chef server, есть chef-solo. Чтобы готовить с его помощью, нужен специальный нож — knife-solo. Это инструмент, который значительно упрощает использование chef-solo.
Для начала поставить knife-solo
gem install knife-solo
Если у вас есть уже готовый репозитарий для chef, как, например, наше тесто, то следующий шаг можно пропустить. В противном случае сделайте начальный репозитарий.
Блог про жизнь
Когда-то давно я достаточно активно вел блог в ЖЖ. Потом я завязал по разным причинам вести блог «про жизнь», а вот теперь, пару лет спустя, решил вернуться к его ведению. Он находиться будет на этом же домене, только по другому адресу: http://evtuhovich.ru/life/. Конечно же, у него будет и свой собственный RSS. Я также буду транслировать его в свой старый ЖЖ.
Этот блог по прежнему будет исключительно техническим. Но иногда хочется написать еще о чем-то, что не относится к моей работе, и писать это сюда я посчитал неправильным.
Атрибуты в шефе и DeepMerge
Многие знают, что в шефе есть большое количество типов атрибутов, необходимые, чтобы гибко управлять инфраструктурой. Для того, чтобы эти атрибуты работали вместе, есть разные правила их объединения. О них мы сегодня и поговорим.
Прощай, Октопресс, здравствуй, Middleman
Долгие годы этот блог велся на Octopress — платформе для ведения технических блогов. Он был первым и восхищал меня долгое время, я даже хотел написать о нем отдельный пост, но руки так и не дошли. Но были у октопресса и откровенные недостатки, как то:
- медлительность — он реально подтупливает на генерации страниц;
- асинхронность — от внесения правки, до появления ее в браузере проходило значительное время, а это сильно раздражало;
- сложность — поменять что-то внутри не представляется возможным;
- отсутствие поддержки — с 2011 года официальный сайт не обновлялся;
- он, вообще, сломался с ruby 2.0.
Волею судеб я поддерживаю сейчас 3 блога: на сайте нашей компании, на сайте подкаста Девопс Дефлопе и этот, а до этого я поддерживал еще сайт подкаста rubynoname. И везде, кроме этого блога, я использовал Middleman. Я видел, как он развивается, как просто к нему что-то дописать, как постоянно появляются классные сторонние библиотеки. А недавно я захотел вести сразу 2 блога на одном сайте, просто по очень разной тематике. А Middleman позволяет делать и это с недавних пор.
Итоги года: подкасты, мастер-классы и митап
RubyNoName подкаст нашел постоянных новых ведущих — это Кирилл Шатров и Андрей Дерябин. Они уже выпустили первый выпуск, а также обновили страницу о подкасте, на которой вы можете узнать о них немного больше.
Пока мой коллега Никита Борзых отдыхал в Париже, я записал интервью с Локомотивом DevOps Движения России Александром Титовым для нашего нового подкаста Девопс Дефлопе.
Мы организовали очередную встречу DevOps митапа в Яндексе, она будет бесплатная, пройдет 25 января в офисе Яндекса на улице Льва Толстого. Если вам интересно узнать Chef, Docker и другие инструменты, а также увидеть, как живут инженеры в Яндексе — приходите на митап.