• Преждевременная оптимизация — зло!

      image

      Предлагаю вашему вниманию первую часть перевода книги «Mature optimization» Карлоса Буэно о принципах оптимизации высоконагруженных проектов.

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

      Книгу стоит прочесть, если вы:

      1. Хотите повысить производительность своего проекта, но не знаете с чего начать.
      2. Хотите повысить производительность своего проекта, но боитесь все сломать.
      3. Не знаете о подводных камнях оптимизации производительности.
      4. Давно хотели настроить мониторинг проекта, но не уверены что именно стоит мониторить.
      5. У вас есть система мониторинга, но она не сообщает о проблемах заранее.

      Читать дальше →
    • Всё, что вы хотели узнать о рефакторинге, но боялись спросить

        Господа, рад представить вам свой новый проект — Refactoring.guru.

        Сайт представляет собой каталог запахов грязного кода и, собственно, самих приёмов рефакторинга. В двух словах — это как книга Мартина Фаулера, но лучше. А именно:

        • Весь контент доступен на русском языке. Я старался делать описания как можно более живыми, чтобы избавиться от чувства унылости и скуки, которое возникает при чтении любой переводной книги о рефакторинге.
        • Все примеры подаются на Java и PHP. Другие языки обязательно будут добавляться со временем, но я пока затрудняюсь решить, каким будет следующий, можете предлагать в комментах.
        • Всё везде перелинковано. Рефакторинги сгруппированы по предназначениям и связям.


        Супер-мега-фишка, которой я очень горжусь — интерактивные примеры с объяснениями (внизу страницы). Такими примерами пока что покрыты первые две главы, но я работаю над тем, чтобы добавить их и в остальные главы.

        Как видите, есть еще громадное поле для работы, как говорится, «если вам не стыдно за первую версию продукта — вы отрелизились слишком поздно». Тем не менее, я надеюсь, что кому-то сайт будет интересен уже сейчас.

        Буду рад всем отзывам и пожеланиям! (а также лайкам и твитам)

        Читать дальше →
      • GitHowTo — тур обучения гиту на русском

          image

          Спешу поделиться радостной новостью о запуске проекта GitHowTo — интерактивного тура-обучалки основам Git.

          За основу были взяты идеи gitimmersion.com, но переведены на русский язык и немного изменены под реалии не-ruby разработки, поэтому спешите любить и жаловать — githowto.com!

          Буду чрезвычайно рад любым замечаниям и пожеланиям к проекту.
        • 2016 год: будущее интернета

            Как говорили классики киберпанка, будущее уже здесь, только оно еще недостаточно распространилось. Примерно так же считает Майкл Пинто (Michael Pinto), основатель и директор компании Very Memorable Design, издатель сайта Anime.com и член совета директоров Нью-йоркской софтверной ассоциации. Именно он является автором статьи, в которой речь идет о будущем интернета и ближайших перспективах человечества.

            Изменения в нашем мире происходят уже сейчас, по мере того, как телефонная связь и телевидение интегрируются в Сеть. Эта интеграция начинает постепенно затрагивать и другие устройства: от домашнего будильника до книжки, которую вы читаете перед сном. Интернет в будущем станет неотъемлемой частью всех этих объектов. Фактически, Всемирная сеть перестанет быть местом, куда мы «входим»; Cеть станет местом, где мы находимся постоянно — важным элементом, без которого мир просто развалится. На смену понятию «выйти в онлайн» приходит понятие «быть в онлайне».

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

            Читать дальше →
          • Кто виноват в том, что сайт не выполняет своих функций?

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

            Всегда объясняйте клиенту, зачем вы спрашиваете о бюджете



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

            Джон, в свою очередь, с подозрением относится к вашему вопросу. Зачем вам знать о его бюджете? Единственная убедительная причина, которая приходит ему в голову – вы не хотите случайно назвать цену меньше той, которую он готов заплатить. Кроме того, он и сам не знает, какой у него бюджет. Откуда ему знать, сколько стоит сайт?


            Клиент не должен думать, что вы выманиваете у него деньги.

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

            Читать дальше →
          • ModX и Drupal: разные истории

              До знакомства с CMS ModX планировалась статья сравнения этих двух систем, особенно после появления темы «Сравнение Drupal, MODx (и других систем) в рабочем проекте» на drupal.ru где предлагалось соревнования что выяснить какая система лучше.
              После небольшого знакомства с МодХ все вопросы отпадают сами собой и ни о каком сравнении не может быть и речи.

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

              Зато МодХ отлично делает сайты визитки, имеет свой менеджер загрузки файлов, имеет встроенный редактор TinyMCE, многоязычный интерфейс администратора, понятный мастер установки и много чего другого. И в тоже время делать сайты визитки на Друпале немного неправильно, сам факт выделения 64Мб оперативной памяти для сайта визитки на 20 страниц и хостинг для этого «проекта» может вызвать истерический смех у многих веб-разработчиков.

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

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