Как стать автором
Обновить
2
0
conturov @conturov

PHP разработчик

Отправить сообщение

FastVPS: Как мы меняли платформы виртуализации

Время на прочтение8 мин
Количество просмотров28K
Павел Одинцов, технический директор компании FastVPS Eesti OU

Мы занимаемся услугами по аренде виртуальных (VPS) и выделенных серверов уже почти 7 лет и поддерживаем сейчас более 170 тысяч сайтов наших клиентов. За это время мы успели пару раз сменить платформу виртуализации, попробовав и Xen, и OpenVZ, и Parallels Cloud Server, и в итоге остановились на PCS. Зачем мы меняли платформы, по каким параметрам их сравнивали, что нас в них радовало, а чем, прямо скажем, мы были недовольны – под катом.
image
Читать дальше →
Всего голосов 56: ↑48 и ↓8+40
Комментарии90

Удобный интерфейс Хабра? #2

Время на прочтение2 мин
Количество просмотров33K
На досуге решил поразмышлять об улучшении интерфейса Хабрахабра. Он хорош, но ведь нет предела совершенству? В первую очередь необходимо определить группы пользователей и попытаться понять их потребности, а также наметить слабые места, которые можно улучшить. Об этом я уже писал в топике Удобный интерфейс Хабра?, в этот раз копну немного глубже.

image
Читать дальше →
Всего голосов 152: ↑145 и ↓7+138
Комментарии103

Управление загрузкой изображений

Время на прочтение4 мин
Количество просмотров132K


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

Использование контейнера для каждого изображения


Простой способ, который можно применить к любому изображению на сайте. Заключается в том, что каждая картинка оборачивается в DIV, который предотвращает построчную загрузку:

<div class="img_wrapper">
    <img src="comicbookguy.jpg" alt=""/>
</div>

С помощью контейнера можно контролировать соотношение сторон картинки, а также использовать индикатор загрузки, что очень удобно, если изображения тяжелые.
Читать дальше →
Всего голосов 61: ↑49 и ↓12+37
Комментарии31

Абсолютное горизонтальное и вертикальное центрирование

Время на прочтение5 мин
Количество просмотров314K
Сколько уже было сломано копий о задачу выравнивания элементов на странице. Предлагаю вашему вниманию перевод отличной статьи с решением этой проблемы от Стефана Шоу (Stephen Shaw) для Smashing Magazine — Absolute Horizontal And Vertical Centering In CSS.

Все мы знали о margin: 0 auto; для горизонтального центрирования, но margin: auto; не работало для вертикального. Это можно легко исправить, просто задав высоту и применив следующие стили:

.Absolute-Center {
  margin: auto;
  position: absolute;
  top: 0; left: 0; bottom: 0; right: 0;
}

Я не первый, кто предложил это решение, однако такой подход редко применяется при вертикальном выравнивании. В комментариях к статье How to Center Anything With CSS Simon ссылается на пример jsFiddle, где приводится отличное решение для вертикального центрирования. Вот еще несколько источников на эту тему.

Рассмотрим способ поближе.
Читать дальше →
Всего голосов 112: ↑106 и ↓6+100
Комментарии10

Большая атака ботов на Wordpress-сайты

Время на прочтение1 мин
Количество просмотров37K
Ориентировочно со 2 августа наблюдается массовая атака на сайты построенные на движках Wordpress (по некоторым данным также атакуются сайты на Joomla, DLE). Злоумышленники с помощью большого ботнета пытаются подобрать пароли к админкам с помощью брутфорса. Некоторые серверы не выдерживают нагрузки. Хостеры принимают различные меры по фильтрации ботов. Обширное обсуждение идет на форуме Searchengines.

Wordpress предлагает свои варианты решения: codex.wordpress.org/Brute_Force_Attacks

В логах на сервере это выглядит как-то так:
93.73.186.55 funshow.ru POST /wp-login.php HTTP/1.0
178.223.136.215 funshow.ru POST /wp-login.php HTTP/1.0
178.68.139.101 funshow.ru POST /wp-login.php HTTP/1.0
99.162.150.102 funshow.ru POST /wp-login.php HTTP/1.0


Как вариант следует убедиться, что админский пароль к сайту устойчив для подбора.
Всего голосов 40: ↑34 и ↓6+28
Комментарии48

DLNA-сервер для дома и семьи

Время на прочтение7 мин
Количество просмотров860K
Как-то так сложилось, что тег DLNA сервер чаще встречается в постах-вопросах, чем в ответах. И если в вопросах установки на домашний Windows-ПК какой-то пользовательский опыт накоплен, то определиться с выбором ПО для домашнего сервера/NAS-а/медиацентра — оказалось непросто. Распределившись по песочницам народ обособленно решает проблемы каждой программы в отдельности. А понять что из них чего стоит и нужно ли оно вообще — лично мне не удалось.

И вот, я вооружившись ссылкой с Википедии Как выбрать DLNA-сервер под Windows, Mac OS X или Linux — опробовал почти всё, что есть под Linux.

Читать дальше →
Всего голосов 70: ↑66 и ↓4+62
Комментарии65

Effeckt.css от команды HTML5 Boilerplate: избранные эффекты и переходы на CSS

Время на прочтение1 мин
Количество просмотров18K
Effeckt.css — это постоянно пополняемая подборка эффектов для оформления веб-приложений. Один из главных плюсов этой библиотеки эффектов — достаточно жёсткие критерии включения. Это не куча-мала, в которую сваливают всё подряд, каждый эффект должен соответствовать ряду критериев: эффекты должны быть практичными, их назначение — не демонстрировать возможности технологий, а облегчать и украшать жизнь пользователя, они должны работать быстро и плавно, они должны быть полностью совместимыми с мобильными технологиям.


Читать дальше →
Всего голосов 37: ↑31 и ↓6+25
Комментарии6

Привязка телефона к аккаунту и авторизация сканированием QR кода

Время на прочтение2 мин
Количество просмотров11K
Привет, хабр!
Сегодня меня посетила идея об альтернативной авторизации на сайтах при помощи привязанных к аккаунту мобильных девайсов.
Зачем это нужно?
Ну например, если пользователю лень вбивать пароли или для использования в двухфакторной авторизации, или для восстановления пароля и тд.
Собственно о способах применения данного механизма на продакшене я не задумывался. Основная цель — это реализация, а дальше посмотрим.
Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии12

Основы профессиональной верстки электронных писем

Время на прочтение7 мин
Количество просмотров105K
Верстка электронных писем
Ни для кого не секрет, что e-mail маркетинг только начинает набирать обороты во всем мире. А для России – это ещё и вовсе молодая ниша на рынке. И профессиональная верстка электронных писем здесь один из составляющих факторов успеха. Под профессиональной версткой понимается не только визуально красиво и надежно сверстанный макет, но и то, как выглядит usability открытки с маркетинговой точки зрения, как оптимизирована графика вместе с типографией для спам-фильтров и многое другое. Верстка электронных писем довольно обширная тема, в одной статье все не уместить, поэтому в данном посте постараюсь описать только базовые элементы и приемы, надежно проверенные за годы практики и работающие в top самых используемых почтовых клиентах мира: iPhone 4S/5; Outlook 07/10/13; iPad; Apple Mail; Android 2.3/4.0; Yahoo; Gmail. Если рассматривать только российский рынок, то нельзя не упомянуть о Mail.ru и Яндекс.Почта.

Что нужно знать в начале?


Сразу хочу выделить несколько из основных и важных моментов:

  1. В нашем арсенале имеется очень урезанный набор css-свойств, которые поддерживаются всеми почтовиками. При этом, стили нужно прописывать inline, а в head выносить только вендорные свойства и те блоки объявлений, которые не несут нагрузки на основную стилизацию письма. Ну и использовать link in head — крайне нежелательно.
  2. Не используйте background-image в основных визуальных элементах дизайна и не помещайте в изображения важную текстовую информацию. Вообще нужно всегда учитывать такой вариант, что письмо будет просматриваться получателем без единого изображения.


Каркас


Пожалуй каждый, кто хоть раз верстал письмо под рассылку, знает, что каркас лучше строить с помощью таблиц. На самом деле простая блочная модель div поддерживается на данный момент во всех перечисленных выше почтовиках, за исключением MS Outlook начиная с 2007 версии. Это связано с тем, что в качестве движка последние версии Outlook используют Microsoft Word, который в свою очередь много не знает о блочных css-свойствах. Игнорировать при верстке данный почтовый клиент я не рекомендую, поэтому в качестве фундамента все же используйте table. Да и добившись хорошего результата для Outlook, можно быть уверенным, что в большинстве почтовиках, письмо будет смотреться тоже хорошо, а скорее и лучше.

В качестве примера рассмотрим наиболее важные элементы из следующего, не сложного шаблона:
Шаблон письма для рассылки
Читать дальше →
Всего голосов 94: ↑81 и ↓13+68
Комментарии66

А вы всё ещё используете Google Reader?

Время на прочтение2 мин
Количество просмотров33K
Когда в марте этого года стало известно о закрытии Google Reader, я думаю многие кинулись изучать аналогичные сторонние сервисы. И я был не исключением. Потыкавшись в разные сервисы я так и не нашел то, что понравилось бы лично мне и благополучно продолжил пользоваться Google Reader. Но время X неминуемо приближается и уже осталось меньше двух месяцев до закрытия сервиса, поэтому я опять решил поискать альтернативу. На этот раз я решил попробовать различные opensource решения и поднять rss-читалку на своем сервере для себя и моих друзей. Поизучав этот вопрос я наткнулся на «Tiny Tiny RSS», который, кстати, оценили и на хабре.

Он настолько мне понравился, что я совсем перестал заходить в Google Reader. И мне пришла в голову мысль, а почему бы не открыть регистрацию для всех желающих?
Читать дальше →
Всего голосов 65: ↑54 и ↓11+43
Комментарии165

PHP HTML DOM парсер с jQuery подобными селекторами

Время на прочтение3 мин
Количество просмотров146K
Добрый день, уважаемые хабровчане. В данном посте речь пойдет о совместном проекте S. C. Chen и John Schlick под названием PHP Simple HTML DOM Parser (ссылки на sourceforge).

Идея проекта — создать инструмент позволяющий работать с html кодом используя jQuery подобные селекторы. Оригинальная идея принадлежит Jose Solorzano's и реализована для php четвертой версии. Данный же проект является более усовершенствованной версией базирующейся на php5+.

В обзоре будут представлены краткие выдержки из официального мануала, а также пример реализации парсера для twitter. Справедливости ради, следует указать, что похожий пост уже присутствует на habrahabr, но на мой взгляд, содержит слишком малое количество информации. Кого заинтересовала данная тема, добро пожаловать под кат.
Читать дальше →
Всего голосов 74: ↑57 и ↓17+40
Комментарии80

intro.js — пошаговое руководство для веб-страницы

Время на прочтение1 мин
Количество просмотров51K


Эта маленькая библиотека позволяет очень просто создать пошаговое введение для сайта или приложения. Достаточно добавить атрибуты data-intro и data-step с описанием и номером шага соответственно к нужным элементам страницы. Вот так:

<a href='http://google.com/' data-intro='Hello step one!' data-step='1'></a>
Читать дальше →
Всего голосов 139: ↑134 и ↓5+129
Комментарии24

Часть 2: если у меня есть 30.000 рублей, куда их можно вложить?

Время на прочтение8 мин
Количество просмотров55K

Вот так хабрасообщество смотрит на инвестиции в отечественные проекты

Я уже несколько раз писал про разработанные нами в рамках российского права механизмы краудинвестирования, позволяющие быстро вложить небольшую сумму (например, 1000 рублей) в проект. В прошлом топике про механику реализации микроинвестиций разгорелся довольно объёмный спор про то, что в России это не сработает из-за менталитета «все хотят всех кинуть».

Давайте разберёмся детальнее, о чём же именно речь. Но для начала — короткий ликбез. До прошлого года с 30.000 рублей на рынке инвестирования вы были никому не нужны вообще. В смысле, что на эту сумму есть возможность приобретать акции отдельных компаний. Другое дело, что ни брокерская компания, ни тем паче компания, в которую вы инвестируете, всерьёз вас не воспримет. Никакой фактической пользы от этого взаимодействия никому не было. Причина достаточно прозаична: расходы на заключение сделки в юридическом и бухгалтерском плане были несопоставимы с возможной выгодой. С изменением ситуации, естественно, возникла куча вопросов, на которые я отвечаю ниже.
Читать дальше →
Всего голосов 40: ↑28 и ↓12+16
Комментарии75

Письма в html-формате с вложенными изображениями

Время на прочтение3 мин
Количество просмотров33K
Резонный вопрос: зачем аттачить изображения, ведь это утяжеляет письма и увеличивает трафик? А чтобы не было такого:

image

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

Если приаттачить картинки к письму, то оно обретёт целостный вид, и дырок уже не будет, если не допущено ошибок на этапе вёрстки.
Читать дальше →
Всего голосов 22: ↑18 и ↓4+14
Комментарии6

Стандарт разработки приложений на CodeIgniter

Время на прочтение8 мин
Количество просмотров19K
А мы используем внутренние стандарты. Они действительно полезны:
стандартам совершенно не обязательно следовать;
— они позволяют быстрее и комфортнее осваиваться;
— они помогают меньше теряться при творческом процессе.

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

Читать дальше →
Всего голосов 21: ↑11 и ↓10+1
Комментарии25

Украинский земельный кадастр использует OSM в качестве карты по умолчанию

Время на прочтение3 мин
Количество просмотров34K
В Украине открыли доступ к Государственному земельному кадастру. Даже интерактивную карту запилили: www.map.land.gov.ua/kadastrova-karta

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

В частности, украинские оптимизаторы не чужды использованию открытых крауд-сорсных источников карт. По умолчанию карта открывается со слоем карт из OpenStreetMaps.

UPD: А что даже более интересно, в режиме «Ортофотопланы» используются пока неопознаные спутниковые снимки, которые весьма равномерно покрывают почти всю Украину, и во многих отдаленных от обл. центров районах имеют детализацию, значительно превосходящую карты google/bing/yandex.

UPD2: Поступила непроверенная, но очень похожая на правду информация, что ортофотопланы — это собственные карты центра ДЗК (Державного Земельного Кадастру): www.kmu.gov.ua/control/publish/article?art_id=244580259

UPD3: Получена информация от теперь уже хабровчанина drobzik, спасибо ему за нее:
Я не отношусь непосредственно к разработчикам данного сайта, однако принимаю участие в реализации этого проекта, и могу дать «неофициальные» ответы.
1) откуда эти спутниковые карты
Эти не спутник, это честная аэрофотосъемка и честные ортофотокарты. Некоторые съемки делала, например, компания АРЦ, по заказу Госкомзема (Государственный комитет по земельным ресурсам) Украины, в рамках проекта Мирбанка по созданию системы земельного кадастра Украины(тут новость об этом — www.avia.org.ua/en/node/237). Т.к. в целом съемка выполнялась на протяжении нескольких лет, часть сведений на них может слегка устареть, однако все равно на сейчас — это самая полная и точная фотосъемка территории Украины.
2) как их можно использовать (позволяет ли их лицензия использовать их для расширения OpenStreetMaps, например).
Владельцем данных карт являлся на момент съемки Госкомзем Украины. За последние пару лет он несколько раз переименовывался и переразделялся, поэтому выяснить, кто конкретно сейчас владелец, довольно сложно. Под эгидой Госкомзема создано несколько разных организаций, частично для ведения ведения коммерческой деятельности, частично — для разделения функциональных обязанностей. Для простоты можно считать что владелец ортофотокарт — государство (Украина, в данном случае), в связи с чем, вы вряд ли получите где-либо и от кого-либо официальное разрешение на их использование (просто не поймут, что вы хотите от них получить). Однако, с другой стороны, и преследовать вас никто не будет за использование этих карт для своих нужд (или для некомерческих целей), т.к. государству — пофиг, а чиновникам это интересно только в случае материальной выгоды.


И, конечно же, на этом государственном источнике кадастровой информации отображается вся правда из OSM — народных карт, например факты незаконного захвата территории в Харьковском Лесопарке, обозначенные там как «Самозахват» (UPD4 уже выпилили самозахваты с OSM, так что только на скриншоте осталось):

Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии71

Тюнинг nginx

Время на прочтение8 мин
Количество просмотров97K
Статья написана по материалам моего доклада на CodeCamp 2009.

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

У любого проекта всегда есть что оптимизировать: можно почитать советы по оптимизации на webo.in, установить eaccelerator, memcache, проиндексировать поисковые поля в базе данных. Я предполагаю, что все это уже проделано, а сайт по прежнему тормозит.

Пришло время оптимизировать nginx...

Читать дальше →
Всего голосов 102: ↑100 и ↓2+98
Комментарии69

Страхование от DDoS-атак за 5$

Время на прочтение1 мин
Количество просмотров29K

5$ — это цена за месяц.
Ограничения: 10Gbits/2mpps (в эти лимиты укладываются 95-99% DDoS-атак)
Получается где-то в 100-200 раз дешевле рыночной цены.
Читать дальше →
Всего голосов 148: ↑97 и ↓51+46
Комментарии203

Подборка инструментов для фронт-энд разработки

Время на прочтение2 мин
Количество просмотров134K
Как разработчику, мне очень нравятся инструменты, которые помогают сэкономить время или упростить процесс разработки фронт-энда. В этой статье я собрал мои любимые веб-инструменты для упрощения разработки веб-интерфейсов.

Картинки кликабельны.

Form builder


Формы являются очень важной частью любого веб-сайта, но их верстка может занять продолжительное время. Этот очень удобный инструмент, поможет вам создать красивую веб-форму очень быстро.
image
Читать дальше →
Всего голосов 202: ↑184 и ↓18+166
Комментарии40

Расширение помощника CAPTCHA для Codeigniter

Время на прочтение5 мин
Количество просмотров9.4K

Недавно, от наличия свободного времени и желания сделать что то полезное, решил написать расширение для убогого хелпера капчи в Codeigniter.
Читать дальше →
Всего голосов 10: ↑6 и ↓4+2
Комментарии11

Информация

В рейтинге
Не участвует
Откуда
Донецк, Донецкая обл., Украина
Дата рождения
Зарегистрирован
Активность