Pull to refresh
0
0
Сергей Павленко @bebeka

User

Send message

БЭМ-методология: с чего всё начиналось и зачем это всё нужно

Reading time13 min
Views235K
На Хабре уже много писали о методологии БЭМ, выросшей в Яндексе. И мы решили, что пора системно рассказать о том, откуда она появилась и что сделало БЭМ таким, каким мы его знаем. Думаем, это будет интересно не только тем, кто уже использует БЭМ, но и тем, кто считает, что эта методология не подходит для их проектов. Возможно, они увидят, что мы решали проблемы, похожие на их собственные, и найдут что-то полезное для себя.

image

Конечно, все началось с собственных потребностей Яндекса. Вместе с тем, как он рос, росло и количество сотрудников, которые занимаются фронтендом. Постепенно команда увеличилась настолько, что стало очевидно — без единых стандартов работать будет сложно. К тому же, мы находимся в офисах Яндекса в разных городах. Возникла идея создать общую методологию, которая поможет организовать процессы в большой команде, работающей над разными проектами. А главное то, что мы хотели не только упорядочить и ускорить разработку, но и снизить порог входа в проект для нового разработчика.
Читать дальше →
Total votes 73: ↑58 and ↓15+43
Comments100

Вас приветствует компания Elasticweb

Reading time4 min
Views4.5K
image

Доброго времени суток, уважаемые читатели Мегамозга. Меня зовут Илья Пестов. Веб-разработкой я занимаюсь с 2007 года. За все время мне довелось поработать над множеством интересных задач. Но сейчас я хочу рассказать про наше с коллегами творение — Elasticweb.

Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments43

Elasticweb — первый адаптивный виртуальный хостинг

Reading time3 min
Views9.1K


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

Хочу наглядно проиллюстрировать принципиальное отличие Elasticweb от других хостингов на примере реального случая. Есть блог с посещаемостью 2000 уников в сутки, на обслуживание которого подходит тарифный план за 150 рублей. Но бывают пики, вызванные хабраэффектом или Редитом до 10 000 на несколько дней. В подобных ситуациях сайт начинает притормаживать и хостинг присылает письмо с предупреждением о блокировке и просьбой перейти на другой тарифный план. Зачастую многие начинают платить больше, пики спадают и деньги выбрасываются на ветер (не каждый же раз туда- обратно переходить). В Elasticweb нет нерегламентированных лимитов и счет выставляется ежедневно на основе задействованных мощностей. Здесь не платят лишнего.

Читать дальше →
Total votes 11: ↑8 and ↓3+5
Comments22

Полезные сниппеты для Nginx конфигов

Reading time5 min
Views121K


Доброго времени суток, уважаемые хабравчане! В Elasticweb мы негласно ратуем за Nginx и, наверное, мы одни из немногих хостингов, которые не поддерживают Apache и .htaccess соответственно. В связи с этим, большое количество обращений в тех. поддержку связано с оказанием помощи в написании конфигурационного файла для Nginx. Поэтому мы решили собрать коллекцию полезных сниппетов и коллекцию готовых Nging конфигов для наиболее популярных CMS/CMF/Фреймворков на PHP.

Читать дальше →
Total votes 94: ↑91 and ↓3+88
Comments44

Дайджест интересных новостей и материалов из мира PHP № 50 (6 октября – 26 октября 2014)

Reading time4 min
Views26K


Предлагаем вашему вниманию очередную подборку со ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 57: ↑50 and ↓7+43
Comments27

Дайджест интересных новостей и материалов из мира PHP № 49 (21 сентября – 5 октября 2014)

Reading time4 min
Views27K


Сегодня исполнилось ровно два года с момента публикации первого PHP-дайджеста на Хабре. Огромное спасибо всем, кто так или иначе помогал создавать дайджесты, спасибо разработчикам за замечательные инструменты, авторам за их полезные статьи. Спасибо всему PHP-сообществу, а главное, спасибо вам за то, что читаете и поддерживаете PHP-дайджест!

Под катом, как всегда, очередная подборка со ссылками на новости и материалы.
Приятного чтения!
Читать дальше →
Total votes 79: ↑79 and ↓0+79
Comments12

Как IT-специалисту сохранить свои финансы?

Reading time5 min
Views204K
Не секрет, что ИТ-специалисты в наше время неплохо зарабатывают. Под «неплохо» подразумевается отсутствие необходимости жить в режиме «от зарплаты до зарплаты» и наличие возможности откладывать какие-то деньги.

Однако российские реалии таковы, что даже хорошая зарплата сегодня, вовсе не означает сытого будущего хотя бы завтра, не говоря уж о более отдаленной перспективе. Не являясь специалистом в экономике или области финансов, я решил (прежде всего для себя), порассуждать на тему, а как же, собственно, нам, айтишникам, не потерять, и, в идеале, приумножить свои сбережения?
Читать дальше →
Total votes 89: ↑72 and ↓17+55
Comments567

Почему я ушел из Google

Reading time5 min
Views61K
Ну хорошо, я сдаюсь: все хотят знать почему я ушел. А так как ответить каждому отдельно невозможно, вот вам изложение в длинной форме. Прочтите немного (я дойду в кульминации в 3-м абзаце) или прочтите всё. Но начну с предупреждения: здесь нет ни драмы, ни сверхинтересных деталей, ни избиения бывших коллег, и вообще нет ничего, о чем вы не могли бы догадаться сами из того, что ходит в прессе вокруг Google и ее отношения к разработчикам программ и конфиденциальности пользовательских данных. Это просто мой личный рассказ.

Покинуть Google было непростым решением. За время моей работы там я стал довольно страстным поклонником компании. Я выступал на четырех Google Developer Day, на двух Google Test Automation Conferences и был плодовитым участником блога Google Test. Рекрутеры часто просили меня помочь уговорить очень перспективных кандидатов на работу в компании. Меня никто не должен был просить дважды для поддержки Google, и никто более меня не удивился тому, что я не смог это продолжать. На самом деле последние три месяца работы в Google были вихрем отчаяния в тщетной попытке вернуть прошлую страсть.
Читать дальше →
Total votes 396: ↑370 and ↓26+344
Comments442

Вышел Firefox 10

Reading time2 min
Views4.4K
Вышла финальная версия Firefox 10.

Что нового:

• Кнопка «Вперёд» на панели навигации теперь не отображается до тех пор, пока Вы не перейдёте на страницу назад (для этого кнопка должна вплотную прилегать к строке адреса);
• Большинство дополнений теперь по умолчанию совместимы с Firefox;
• Добавлена поддержка антиалиасинга для WebGL;
• Добавлена поддержка CSS3 3D-Transforms;
• Добавлена поддержка элемента , предназначенного для изоляции двунаправленного текста, а также соответствующие ему свойства CSS;
• Добавлены полноэкранные API, которые позволяют создавать веб-приложения, работающие в полноэкранном режиме;
• Добавлены IndexedDB API, позволяющие лучше соответствовать спецификации;
• Добавлен инструмент инспектирования содержимого веб-страницы с подсветкой контента, включающий в себя новый инспектор CSS-стилей;
• В простой редактор JavaScript, встроенный в Firefox, добавлен редактор кода Orion, позволяющий разработчикам редактировать больше чем просто обычный текст. Редактор кода Orion имеет подсветку синтаксиса и множество других функций, облегчающих написание кода JavaScript;
• Исправлена проблема, при которой у некоторых пользователей Mac OS X после установки последнего релиза Java от Apple, могло произойти падение Firefox при закрытии вкладки с Java апплетом;
• Исправлена проблема, при которой у некоторых пользователей происходило падение браузера при перемещении закладок.
Читать дальше →
Total votes 93: ↑66 and ↓27+39
Comments141

25 Laravel Tips and Tricks

Reading time11 min
Views83K
Было время, достаточно недавно, когда PHP и его сообщество ненавидели. Главная шутка была про то, насколько ужасен PHP.

Да, к сожалению, сообщество и экосистема просто были ниже сообществ других современных языков по уровню. Казалось, что предназначение PHP было прожить большинство времени в форме беспорядочных тем для WordPress.

Но позже, на удивление, вещи начали меняться — и достаточно быстро. Как будто пока ведьма помешивала горшочек, из ниоткуда начали появляться новаторские проекты. Наверно, самый заметный проект был Composer: наиболее полный менеджер зависимостей для PHP (как Bundler для Ruby или NPM для Node.js). В прошлом PHP разработчики были вынуждены совладать с PEAR (что было страшным сном, на самом деле), сейчас, благодаря Composer, они могут просто обновить JSON файл, и немедленно подтянуть все нужные зависимости. Здесь — профайлер, там — фреймворк для тестирования. Это занимает секунды.
Читать дальше →
Total votes 47: ↑40 and ↓7+33
Comments190

Дайджест интересных новостей и материалов из мира PHP № 40 (14 апреля — 27 апреля 2014)

Reading time4 min
Views20K


Предлагаем вашему вниманию очередную подборку со ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 52: ↑49 and ↓3+46
Comments27

Дайджест интересных новостей и материалов из мира PHP № 39 (24 марта — 14 апреля 2014)

Reading time6 min
Views22K


Предлагаем вашему вниманию очередную подборку со ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 65: ↑62 and ↓3+59
Comments26

Простая сборка виртуальных машин с помощью PuPHPet

Reading time8 min
Views37K

Создание и управление средами разработки расстраивает вас, замедляет работу или отвлекать вас от разработки? У вас возникают трудности из-за того, что ваше локальное окружение и окружение при деплое отличаются? Если это так, у меня есть для вас решение — PuPHPet!

Введение


Я не могу с уверенностью сказать за вас, но одна из моих любимых мозолей* в разработке — это окружение, будь то создание и поддержание его для различных проектов с различными потребностями, обеспечение взаимодействия команды разработчиков, (особенно, распределенной), или настройка сред для разработки, тестирования и боевого окружения. Все это может быть трудоемкой задачей, особенно когда выполняется вручную.

В зависимости от требований руководства или клиентов разнообразие вариантов выбора может вогнать в депрессию. Все они могут тянуть в разные стороны (и тянут!), зачастую одновременно.
Читать дальше →
Total votes 40: ↑35 and ↓5+30
Comments18

PhpBrew. Менеджер версий PHP. (+ установка и использование в Ubuntu 13.10)

Reading time6 min
Views51K

Лирическое №1


PHP неуклонно взрослеет и обзаводится различными полезными дополнениями и некоторые из них уже ну совсем как у старших (хотя слово «младших» во многих случаях подойдет лучше).

В этом ключе стоит, например, вспомнить такие замечательные вещи как менеджер зависимостей composer, встроенный веб-сервер, появление namespace'ов и замыканий.

Сложилось так, что в качестве рабочей OS у меня установлена последняя версия Ubuntu (13.10). Долгое время я довольствовался последней стабильной версией PHP из репозиториев (видимо везло), но тут по работе пришел проект на 5.3 (а то и 5.2, но под 5.3 завелся), который никак не хотел стартовать на последней 5.5.3, что из официальных репозиториев и я было опечалился (уже имеется опыт установки неактуального PHP на Ubuntu, хоть и успешный, но весьма грустный), но потом вспомнил ruby и rvm.io и решил провести небольшое исследование. В итоге коллега подсказал озвученную в заголовке вещь.

Конец лирического. К фактам.

Если вкратце – единственное назначение phpbrew – возможность использовать разные версии PHP на одной машине. Быстро, просто, практически без танцев с народными музыкальными инструментами. (не продакшен, не параллельная работа, но мгновенное переключение между версиями при разработке).

Читать дальше →
Total votes 22: ↑19 and ↓3+16
Comments14

Не БД

Reading time6 min
Views9.3K
Автор рассказывает о перипетиях пивоваров, производителей СУБД, себя и кратко о том как правильно проектировать приложения. Мне показалась полезной поучительная часть статьи.
Читать дальше →
Total votes 122: ↑113 and ↓9+104
Comments175

Фильтр Блума на PHP

Reading time3 min
Views18K

Что это?


Википедия гласит:
Это вероятностная структура данных, придуманная Бёртоном Блумом в 1970 году, позволяющая компактно хранить множество элементов и проверять принадлежность заданного элемента к множеству. При этом существует возможность получить ложно-положительное срабатывание (элемента в множестве нет, но структура данных сообщает, что он есть), но не ложно-отрицательное.



А попроще


Это способ проверки существования элемента в огромной выборке.
как это работает?
Total votes 43: ↑38 and ↓5+33
Comments23

Лучшее из мира PHP за 2013 + конкурс от компании JetBrains! Дайджест интересных материалов №32

Reading time8 min
Views31K


Следуя традиции, мы решили подвести итоги уходящего года и выделить самые значимые события в мире PHP, которых, к счастью, было немало. И, конечно же, подборка с ссылками на свежие материалы за последние три недели.

Под катом вас также ждет конкурс с призами от компании JetBrains!
Читать дальше →
Total votes 69: ↑56 and ↓13+43
Comments94

Несколько интересностей и полезностей для веб-разработчика #10

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

image
Летом 2013 года издательство The Guardian обновило свой сайт, согласно всем современным трендам/нормам/правилам. Но самым главным событием является то, что разработчики выложили весь фронтенд сайта в открытый доступ на GitHub. Свыше 1500 старов, 10 000 коммитов и 100 веток. Там целый джентельменский набор. Для многих это будет кладезь знаний.

imageCenny.js — plug 'n play бэкенд для веб-приложений. Быстрый, защищенный, расширяемый.
var server = new Cenny();
server.set({data: [1,2,3]});
server.get(function(data){ 
   console.log(data); 
});


imageМаленький скрипт от Filament Group (один из первых спонсоров jQuery). Overthrow.js это полифил для отзывчивого дизайна, который стабилизирует работу стандартного скроллинга контента HTML элементов (overflow: auto/scroll) на тач устройствах. Для тех, кто не совсем понял о чем речь, сравните на вашем гаджете работу обычного скроллинга и действие Overthrow.

Читать дальше →
Total votes 75: ↑72 and ↓3+69
Comments23

Проектируем макет корпоративного сайта

Reading time8 min
Views90K


Привет, Хабраюзер! В интернете полно статей на тему, каким должен быть идеальный дизайн сайта, много примеров уже отрисованных макетов, но почти никогда ты не увидишь, как именно этот макет рисовался, какие правки переносил и насколько изначально был далек от финального варианта. Сегодня я приглашаю тебя разобрать процесс отрисовки главной страницы корпоративного сайта фирмы, с нуля. Мы рассмотрим 13 промежуточных вариантов, предшествовавших финальной версии главной страницы и подробно разберем все вводимые в макеты изменения.
Поехали!
Total votes 59: ↑47 and ↓12+35
Comments61

Дайджест интересных новостей и материалов из мира PHP № 31 (25 ноября — 8 декабря 2013)

Reading time5 min
Views19K


Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Total votes 51: ↑46 and ↓5+41
Comments13
1

Information

Rating
Does not participate
Location
Кировоград, Кировоградская обл., Украина
Date of birth
Registered
Activity