• Пособие по Ansible

    • Перевод

    управление конфигурацией оркестра


    Это практическое пособие познакомит вас c Ansible. Вам понадобится виртуальная или реальная машина, которая будет выступать в роли узла для Ansible. Окружение для Vagrant идет в комплекте с этим пособием.


    Ansible — это программное решение для удаленного управления конфигурациями. Оно позволяет настраивать удаленные машины. Главное его отличие от других подобных систем в том, что Ansible использует существующую инфраструктуру SSH, в то время как другие (chef, puppet, и пр.) требуют установки специального PKI-окружения.


    Пособие покрывает такие темы:


    1. Установка Ansible и Vagrant
    2. Файл инвенторизации
    3. Модули shell, copy, сбор фактов, переменные
    4. Запуск на группу хостов
    5. Плейбуки
    6. Пример: поднимаем кластер, устанавливаем и настраиваем Apache и балансировщик нагрузок HAproxy
    7. Обработка ошибок, откат
    8. Шаблоны конфигурации
    9. Роли

    Ansible использует так называемый push mode: конфигурация «проталкивается» (push) с главной машины. Другие CM-системы обычно поступают наоборот – узлы «тянут» (pull) конфигурацию с главной машины.


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

    Читать дальше →
  • Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте

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

      Разработка Need For Speed III Modern Patch

      Вообще я достаточно редко играю в компьютерные игры. Бывало, не играл по несколько лет подряд. Но иногда во мне просыпается маленький реверс-инженер, который мотивирует меня забраться в машинный код какой-нибудь любимой игрушки из прошлого. В последний год я занимался доработкой Need For Speed III: Hot Pursuit (1998 года). Это моя любимая игра в жанре, но теперь я, к своему сожалению, знаю о том, насколько отвратительно она написана. Большое количество маленьких багов в самых неожиданных местах — прямое следствие низкого качества кода.
      Читать дальше →
    • «Воскрешаем» HDD

      Хочу поделиться опытом восстановления жесткого диска Seagate Barracuda 7200.11 ST3500320AS после сбоя. Короткая предыстория: один мой друг решил сделать полное форматирование своему жесткому диску, после чего тот больше не определялся в BIOS. Выкидывать 500-гигабайтный винчестер было жалко, и он отдал жесткий диск мне на растерзание. Забегая наперед, скажу, что прокачанные навыки «гугление» и «очумелые ручки» позволили добиться отличных результатов.
      Читать дальше →
    • *Room-редакторы — Вы, текст и ваши идеи. Ничего лишнего



        Исторически так складывается, что для многих 70% работы за компьютером состоит в написании различного рода текстовой информации. Будь то исходник програмы, статья на хабрахабр, архиважный документ или обычная дружественная переписка.

        И для каждого из типов работы с текстом существует свой инструмент. Для документов — сложный текстовый процессор, с кучей инструментов форматирования и прочей не-всегда-нужной ерунды, для исходников — програмистский редактор с автоотступами, подсветкой синтаксиса и выделения скобок, для переписки — обычно банальное окно месенджера:)

        Для написания разного рода статей и художественных текстов, как ни странно, тоже существуют специальные редакторы, но о их существовании мало кто знает. Многие для этих целей используют текстовый процессор (MS Word, OO Writer), люди попрактичнее — разнообразные Notepad`ы, а некоторые (о, ужас) — веб-интерфейс сервисов, куда будут статьи публиковать.

        Читать дальше →
      • Зарядка для глаз

          Хотел я написать взывающий к разуму ИТ-шника пост о вреде долгосидения перед компьютером и важности зарядки для глаз, но не буду. Просто вот так:

          Не будешь делать зарядку — потеряешь зрение через несколько лет!


          Ниже написано то, что надо делать. Зарядка отнимает 5-7 минут ежедневной жизни, но зато существенно понижает вероятность нужды в очках.
          Читать дальше →
        • Несколько интересностей и полезностей для веб-разработчика #22

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

            Awesome Awesomeness


            В прошедшие несколько недель мне регулярно попадались Awesome-* проекты, о которых я упоминал в последних подборках. Началось все с Awesome-PHP, потом появились «живые списки» полезностей для сисадминов и питонистов. Все заметили положительную тенденцию и как по желанию это переросло в целый тренд. Сейчас есть коллекции инструментов для языков Ruby, Go, NodeJS, JavaScript, Java, Scala, Bash и др. Уже даже существуют подобные наборы для целых направлениям в ИТ, к примеру Big Data. Awesome Awesomeness — это живой список живых списков всего самого необходимого для разработчика из той или иной сферы.

            Breach — полноценный браузер на JavaScript




            Читать дальше →
            • +51
            • 37k
            • 9
          • Оглядка на популярные тенденции веб-дизайна 2013 года

            • Перевод
            Этот год принес новые важные концепции пользовательских интерфейсов, open source проекты, новые хаки и трюки для веб-дизайнеров и разработчиков. Те, кого интересует, что делает хороший дизайн таковым, наверное, заметили устойчивые улучшения. Заглянув в прошлое, хотя бы на одно десятилетие, в 2003 год, вы поймете, что интернет и WWW прошли долгий путь.
            В этой статье я хочу поразмышлять о 2013 годе со стороны наиболее популярных тенденций веб-дизайна. Некоторые повторяются из года в год, но в этом году я заметил пик дизайнерского интереса к ним и даже усовершенствования этих техник.
            Читать дальше →
          • Функциональное программирование на Javascript

            • Перевод
            • Tutorial


            Краткое содержание:

            Возьмем немного функций высшего порядка, добавим частичное применение функций, приправим fold с map-ом и получим Javascript DSL для работы с DOM.

            Человеческим языком:
            Простое и понятное введение в функциональное программирование на чистом и понятном Javascript.

            В отличие от «Через тернии к Haskell» все разжевано (возможно даже слишком) и разложено по полочкам.

            Прочтение статьи развоплотит миф о неприменимости ФП в реальной жизни. Вы сможете смотреть на решение одной и той же задачи с разных точек зрения. Прямо как на картинке.

            Читать дальше →
          • Памятка пользователям ssh

              abstract: В статье описаны продвинутые функций OpenSSH, которые позволяют сильно упростить жизнь системным администраторам и программистам, которые не боятся шелла. В отличие от большинства руководств, которые кроме ключей и -L/D/R опций ничего не описывают, я попытался собрать все интересные фичи и удобства, которые с собой несёт ssh.

              Предупреждение: пост очень объёмный, но для удобства использования я решил не резать его на части.

              Оглавление:
              • управление ключами
              • копирование файлов через ssh
              • Проброс потоков ввода/вывода
              • Монтирование удалённой FS через ssh
              • Удалённое исполнение кода
              • Алиасы и опции для подключений в .ssh/config
              • Опции по-умолчанию
              • Проброс X-сервера
              • ssh в качестве socks-proxy
              • Проброс портов — прямой и обратный
              • Реверс-сокс-прокси
              • туннелирование L2/L3 трафика
              • Проброс агента авторизации
              • Туннелирование ssh через ssh сквозь недоверенный сервер (с большой вероятностью вы этого не знаете)
              Читать дальше →
            • pv — маленькая, но очень полезная утилита

                Один мой друг сказал по поводу pv следующее «Я админю семь лет, мне нужна была эта тулза десятки раз, а я даже не знал что она существует». В размышлениях над тем как заполучить инвайт на Харбе, я набрал в поиске pv. И ничего не нашел.
                Читать дальше →
              • Emacs для web-разработчика

                  По традиции:
                  Это мой первый пост, — не судите строго.

                  Emacs. Про него много сказано. Про него очень много сказано и написано. Про него будет сказано и написано ещё больше.
                  Любой может настроить «эту ОС» под себя! Я тоже так думал.
                  Всё оказалось немного гораздо сложнее.
                  Смело бросился в бой.
                  Первое чувство — страх. После пришло удивление — «как великие крутышки и убер программера тут живут!?».
                  Множество часов Google'ния не дали должного результата, но дали возможность понять — за что же его так любят!
                  И так! Вот чего я добился:
                  Читать дальше →
                • 5 Советов верстальщику

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

                    И так, моя пятерка советов верстальщику:



                    1. Никогда не слушай ничьих советов по верстке, только если ты не сам спросил.

                    2. Будь внимательным к мелочам, ведь они в конечном счете составляют впечатление о твоей работе.

                    3. Будь дисциплинированым. Пиши код без ошибок, по самым строгим стандартам. Это не дешевые понты, а основной способ избежать ошибок и не “потеряться” в коде.

                    4. Интересуйся тем, что ты делаешь. Изучай разносторонне даже те вопросы, на которые, как тебе кажется, у тебя уже есть ответ.

                    5. Инспектируй время от времени свои старые работы. Если при рассмотрении одной из них окажется что ты совсем ничего не хотел бы в ней изменить — пора подумать о смене профессии ;)

                    Upd: Все советы на сегодняшний день

                    * Александр RMcreative Макаров
                    * Виталий Харисов
                    * Никита Селецкис
                    * Александр Исаков
                    * Алекс Iline
                    * Юрий Дроздов
                    * The Webmakers Lounge
                    * Марат Таналин
                    * Вадим Макеев
                    * Юрий Артюх
                    * Павел Корнилов
                    * kizu.ru
                  • Веб-типографика сегодня. Часть III

                      Часть IЧасть IIЧасть IIIЧасть IVЧасть V — Часть VI

                      Часть III



                      Оказалось, что аж ещё со времён Windows 98 в стандартный комплект включается шрифт под названием Lucida Sans Unicode, который особо нигде не используется. Попробуем заменить им эппловский Lucida Grande.
                      Читать дальше →
                    • Веб-типографика сегодня. Часть II

                        Часть IЧасть IIЧасть IIIЧасть IVЧасть V — Часть VI

                        Часть II



                        Во-первых, увеличились размеры экранов, улучшилась чёткость отображения и качество передачи цветов. В наше время всё реже используются старые ЭЛТ-дисплеи с небольшим разрешением, выпуклым экраном, мерцанием или ограниченной цветопередачей (помните CGA/EGA/VGA?). Фактически, количеством таких мониторов по сравнению с современными плоскими ЖК-дисплеями уже сегодня можно смело пренебречь. Изменились и негласные стандарты de facto и для разрешения: если в самом начале сайты создавались под размер экрана в 640х480 пикселей, потом для 800х600, то сегодня используется стандарт 1024х768. С появлением широкоэкранных (wide) мониторов начал было маячить новый стандарт 1280х960, но большую популярность в последнее время приобрели компактные устройства вроде Asus eeePC или Apple iPhone, так что не исключён факт возвращения в качестве стандарта разрешения меньшего, чем 1024х768. Впрочем, в данном случае это не столь важно, поскольку в любом случае на сегодняшний день разрешение экрана напрямую зависит от его физического размера, а величина одной отображаемой точки достаточно мала по сравнению с пикселями десятилетней давности, что позволяет на любых современных устройствах отображать шрифты одинаково качественно. Это, кстати, приводит и ко второму фактору.

                        Читать дальше →
                      • Веб-типографика сегодня. Часть I

                          Часть IЧасть IIЧасть IIIЧасть IVЧасть V — Часть VI

                          Часть I



                          Как-то ко мне обратился знакомый дизайнер с просьбой разобраться в странной по его мнению ситуации. Клиент просил «сделать так же, как у Apple», но с использованием собственных способов расположения блоков, изображений, цветовой гаммы и текста. В общем, дизайн в итоге получался совершенно непохожий на apple.com, но этого, собственно, и добивался клиент. И вроде бы у дизайнера получилось, но… Клиенту по-прежнему не нравилось, он всё равно требовал переделать макет. По его ощущения «что-то было ну совсем не так». А что именно — тот объяснить был не в силах. Вот и возник вопрос у моего коллеги по поводу того, как угодить капризам клиента и понять его чаяния. Оказалось всё не так просто, но вполне объяснимо. Я и раньше сталкивался с данной проблемой. Поэтому решил попробовать изложить свои мысли по этому поводу.

                          Итак, какова ситуация в области современной веб-типографики и какими способами следует решать возникающие проблемы?
                          Читать дальше →
                        • Веб-типографика сегодня. Часть IV

                            Часть IЧасть IIЧасть IIIЧасть IVЧасть V — Часть VI

                            Часть IV



                            Итак, настала пора выяснить, какие шрифты и с какой долей вероятности могут оказаться установленными в тех или иных операционных системах либо в результате каких-то особых ситуаций (например, при установке пакетов Microsoft Office, Adobe Creative Suite или CorelDRAW! Suite), либо в «девственно чистых» ОС (что, несомненно, наиболее приемлемый вариант). А также узнать, какие из этих шрифтов пригодны для использования и в каких конкретно случаях.

                            Читать дальше →