Pull to refresh
0
pentium133 @pentium133read⁠-⁠only

User

Send message

Украшаем списки

Reading time5 min
Views24K
В 2002 году Марк Ньюхаус (Mark Newhouse) опубликовал статью «Укрощение списков» ("Taming Lists"), довольно-таки интересную часть которой он посвятил объяснению того, как создавать собственные списки, украшенные псевдо-элементами. Почти десять лет спустя Николас Галлахер (Nicolas Gallagher) изобрел технику, которая использует псевдо-элементы из спрайтов, для создания фоновых изображений.
Сегондя, основываясь на опыте гигантов, мы постараемся развить эту тему. Мы обсудим, как можно украсить элементы без дополнительной разметки, используя только технику CSS-спрайтов. Результат будет работать также в Internet Explorer 6 и 7 версии.
Читать дальше →
Total votes 113: ↑107 and ↓6+101
Comments27

Массовая почтовая рассылка через Exim или как не попасть в спам

Reading time4 min
Views98K
Жизнь была прекрасна и все было в этом мире хорошо, пока почта с моего сайта не стала активно посылаться в спам практически всеми крупными почтовыми серверами. Особенно усердствовал в этом Gmail. Частенько меня принимали за спамера в Yandex, реже в mail.ru и rambler.
image
Исходя из совокупности представленных факторов стало понятно, что надо что-то делать с настройками своего почтового сервера Exim. Посмотреть, как это было сделано, приглашаю под хабракат.
Читать дальше →
Total votes 88: ↑80 and ↓8+72
Comments41

Отладка REST-сервиса на коленке — готовое решение

Reading time1 min
Views5.6K
В процессе писания REST-сервиса уткнулся в странную проблему — не нашел приличного инструмента для отладки jsonp ответа от сервера.
За пол-дня накидал приемлемый вариант — одна html страница, которую можно хоть прямо с диска загрузить и кучка чужих js-либ, чтобы вся эта красота работала.
Выглядит примерно так:



Все бобро выложено на github, если кому-то нужно — пожалуйста!

Disclaimer: может оказаться полезным в случае если вам нужен кросс-платформенный и кросс-браузерный нативный «ajax-клиент имитатор» для кросс-доменных запросов с малым потреблением памяти и наглядным вводом и выводом ответа сервера.
Total votes 68: ↑55 and ↓13+42
Comments57

2000 из 3000 иконок готово — стань соавтором! (стол заказов)

Reading time1 min
Views15K
Не так давно на хабре был топик, который привел на наш сайт 17 тысяч посетителей за два дня (11,828+5,100 on October 21, 2010). С 2009го года эта уже не первая волна, а последние иконки будут нарисованы в первой четверти 2012го года. Best reseller hosting providers.

image

Не хватает еще 1000 иконок для best email hosting. Готовы ли вы предложить метафоры, которых у нас еще не хватает? Тогда follow me…

Читать дальше →
Total votes 228: ↑217 and ↓11+206
Comments356

Initializr — генератор проектов на основе HTML5

Reading time1 min
Views6.1K
Сервис Initializr позволяет всего в несколько кликов получить рыбу для типового проекта. Если более конкретно, то он может
  • наполнить страницу базовым контентом;
  • подключить jQuery в разных формах;
  • подключить библиотеки типа Modernizr;
  • сконфигурировать настройки сервера, создав например .htaccess.
Ребята активно развиваются и уже сделали русскую версию.
Total votes 41: ↑34 and ↓7+27
Comments9

Анимированные баннеры на Javascript — это просто*

Reading time7 min
Views20K
*) На самом деле все равно сложно, но зато проще, чем было раньше.

История началась с постановки задачи: нужно сделать анимированный баннер с примерно тридцатью объектами средствами HTML+javascript за один день. За день, конечно, баннер сделан не был, а был сделан за два усилиями трех человекодней. После выполнения задания осталась библиотека пакетной анимации, которую я назвал Scenario. О её доработанной версии я и хочу рассказать.

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

Запуск сценария из любого места предельно прост:

var newScenario = [...];
$.scenario(newScenario, {
    complete: function(time) {
        alert('Готово!');
    }
});

Осталось только разобраться, что писать вместо трех точек в примере :)
Читать дальше →
Total votes 163: ↑158 and ↓5+153
Comments65

Набор инструментов для построения графиков, блок-схем и диаграмм

Reading time3 min
Views174K


Есть много разных сервисов, облегчающих жизнь веб-разработчику или дизайнеру, в том числе создающих разные графики, диаграммы, блок-схемы и т.д. Ниже представлена небольшая подборка.
(Осторожно, много изображений)
Читать дальше →
Total votes 151: ↑144 and ↓7+137
Comments40

Уязвимость связки PHP+nginx с кривым конфигом

Reading time1 min
Views60K

Summary


Announced: 2010-05-20
Credits: 80sec
Affects: сайты на ngnix+php с возможностью загрузки файлов в директории с fastcgi_pass




Background


Зачастую How-To по настройке связки nginx с php-fpm / php-cgi есть подобные строчки:

location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
    include fastcgi_params;
}

Читать дальше →
Total votes 163: ↑146 and ↓17+129
Comments109

Кроссбраузерная одноцветная полупрозрачность

Reading time3 min
Views12K
В этой статье я рассмотрю метод создания блоков с одноцветным полупрозрачным фоном.
Например, таких:


Сразу оговорюсь, что я не буду использовать opacity и абсолютное позиционирование, чтобы разместить контент поверх полупрозрачного блока.
Читать дальше →
Total votes 192: ↑186 and ↓6+180
Comments80

Fugue Icons 3.0

Reading time1 min
Views4.9K
Fugue Icons 3.0

Всеми любимый набор иконок — Fugue, обновился (16 июля) до версии 3.0. Изменения небольшие, были добавлены 32 гипер-маленькие иконки.

Мега-превью! (3Mb)
Иконки
Иконки + исходники

А вот и сами изменения...
Total votes 105: ↑93 and ↓12+81
Comments27

Загрузка файлов с помощью HTML5 и сколько раз мы сказали нехорошие слова

Reading time3 min
Views7.3K
Стояла задача: найти или создать загрузчик файлов на сервер, использующий возможности HTML5 для мультизагрузки. Загрузчик должен:
  • отправлять методом POST любые параметры вместе с файлом;
  • отправлять куки;
  • предоставлять возможность выбора сразу нескольких файлов (или нескольких тысяч – тут как пользователь захочет);
  • отправлять файлы группами;
  • файлы собираются в группы до определенного количества мегабайт, или до определенного количества файлов в группе; (это связано с тем, что на сервере есть ограничение на размер POST запроса и на количество файлов в одном пакете)

Именно по причине отсутствия опыта работы с флешем, для создания загрузчика был выбран только JavaScript.

Итак, что из этого получилось

Читать дальше →
Total votes 87: ↑84 and ↓3+81
Comments67

Launchlist для вашего сайта

Reading time2 min
Views12K
imageЗдравствуйте, уважаемые Хабравчане.
Хотим опубликовать результат нашего небольшого исследования.

Суть эксперимента

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

Мы промониторили несколько десятков подобных обсуждений за последние несколько месяцев и выявили следующее…
Читать дальше →
Total votes 31: ↑24 and ↓7+17
Comments12

Инструменты для дизайнеров и разработчиков

Reading time2 min
Views4.8K


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

Смотрим
Total votes 155: ↑131 and ↓24+107
Comments41

Создание m4b из mp3 аудиокниг для ipod

Reading time3 min
Views17K
Захотелось давеча прослушать аудиокнижку одну, проблема в том, что прослушать ее захотелось на ipod, а в m4b формате нигде найти не смог, только mp3.

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

Суть в том, что .m4b это файл AAC в контейнере mp4, но с закладками и переименованный. Следовательно, необходимо все mp3 перегнать в aac и сгенерировать файл закладок (chapters), в quicktime формате, после чего запихнуть все это дело в mp4 контейнер.
Читать дальше →
Total votes 31: ↑27 and ↓4+23
Comments17

Подготовка пакета документов для переноса доменов в зоне .RU и .SU

Reading time3 min
Views3.3K
Кто хоть раз сталкивался с необходимостью переместить домен в зоне .RU или передать его другому лицу, знает, что в этой сфере услуг царит полнейший бардак. Мне, например, понадобился месяц кропотливого изучения десятка различных наборов документов, чтобы вывести определённую систему. Сталкиваясь, вернее, спотыкаясь об эту проблему каждый день, мы решили хоть как-то систематизировать накопленный опыт и превратить его в полезный сервис.

Читать дальше →
Total votes 86: ↑79 and ↓7+72
Comments89

Бюджетный VPS-хостинг BurstNET (США) на личном опыте

Reading time5 min
Views23K
image

В топиках про немецкий хостинг от Hetzner и Server4You (кстати, у последней компании есть ещё несколько сайтов – будьте аккуратнее) люди интересовались, а почему именно хостинг в Германии? То, что не в России мы теперь уже знаем точно, и если у проекта в целевой аудитории центральная и западная Россия и/или Европа, то выбор немецкого хостинга часто оказывается оптимальным по соотношению цены/качества/пинга. Однако, если ваш проект нацелен на США или на весь мир? Думаю, что хостинг от Hetzner тут подходит довольно слабо — эта компания, как и почти все немецкие хостинги ориентируется в основном на внутренний рынок, не заботясь ни о доступности серверов вне страны (очень часто в случае с Hetzner пинг в Россию или вообще доступность сервера из России оказывается под вопросом), ни о хорошей международной поддержке хотя бы на английском языке (у Hetzner сейчас эту проблему, решили и саппорт доступен на английском, что далеко не всегда так в случае с другими немецкими хостерами – очень часто и сайт и саппорт на немецком языке). Для сервиса ориентированного на самый прибыльный – американский сегмент желателен и хостинг американский и возможность «роста».

Т.к. наша компания уже практически год является клиентом одного из американских VPS-хостингов (открываем там небольшой бесплатный хостинг картинок — можно попинговать и всячески проверить работу), хочу рассказать про него, сделав некоторые сравнения с хостингом немецким (да простят хабражители, за сравнение VPS от BurstNET с опытом использования Dedicated-сервера от Hetzner – весовые категории разные, но, опыт общения с Hetzner у нас основан именно на аренде выделенного сервера).
Читать дальше →
Total votes 36: ↑29 and ↓7+22
Comments63

Этап подготовки проекта в теории

Reading time12 min
Views53K
В данной статье рассмотрены теоретические основы важнейшего этапа в управлении проектами – именно его подготовки. Это должно быть интересно как новичкам в таком непростом деле, как менеджмент проектов, так и начинающим стартаперам, и возможно, опытным менеджерам.

Что же такое проект?
Читать дальше →
Total votes 68: ↑60 and ↓8+52
Comments31

Избранное Хабра в PDF

Reading time3 min
Views17K
Всех с наступившими!

image

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

UPD:
— Исправлена ошибка «too large on page» (подробнее на github) Спасибо Bifidokk и StreetAngel
— Авторы топиков сделаны ссылкой
— Добавлена возможность сохранять избранное только из указанных блогов

Читать дальше →
Total votes 201: ↑192 and ↓9+183
Comments113

Capistrano и php

Reading time8 min
Views32K
image Всем привет. Сегодня я хотел бы ещё раз поговорить о замечательном deploy-ере Capistrano.

Напомню, что Capistrano — это Open Source-ный инструмент для выполнения скриптов на нескольких серверах, который в основном используется для web приложений. Он позволяет автоматизировать процесс развертывания новой версии на одном или нескольких web серверах и включает поддержку таких задач, как например изменение базы данных.

Capistrano написан на Ruby и является «модулем» (или компонентном, не знаю как лучше) фреймворка Ruby on Rails.

Данный топик по большей части является переводом туториала со страницы проекта на github-е с некоторыми дополнениями, изменениями и сокращениями специфичными для php (или для «не RoR»). Здесь не будут рассматриваться вопросы работы с несколькими серверами и базой данных, это всего лишь небольшое пособие для начинающих.

Итак, допустим на нашем локальном компьютере в паке /path/deploy/from находится приложение написанное на языке php. У этого приложения есть git репозиторий находящийся по адресу example.net/project.git с актуальным кодом. Также у нас есть хостинг по адресу example.com с ssh доступом и папкой /path/deploy/to куда мы собираемся залить наши файлы. Мы не хотим постоянно возиться с ftp клиентом и решили потратить несколько часов для того, чтобы разобраться в деплойере capistrano. Давайте приступим.
Читать дальше →
Total votes 40: ↑39 and ↓1+38
Comments15

Information

Rating
Does not participate
Registered
Activity