В продолжение статьи Евгения Ческидова «Яндекс. Директ. Анализируем конкурентное окружение» я хочу показать, как при помощи не очень сложных расчетов и API Яндекса вытащить из Директа буквально всю информацию о рекламных кампаниях конкурентов. Сразу скажу, что идея на практике еще не проверялась, сам факт наличия всей информации и, соответственно, возможности этого расчета был показан Ческидовым только вчера, а алгоритм родился буквально сейчас. Но математически вроде бы всё сходится. Осторожно, под катом много формул.
FeelGood @FeelGood
Пользователь
База изображений в любых форматах и разрешениях
3 мин
4.5Kзаказчик: Пусть аватарки пользователей у нас будут в 50×50 и 100×100, в JPEG
разработчик: Готово
заказчик: Надо переделать, чтобы аватарки были в PNG
разработчик: Сделал
заказчик: Пусть аватарки будут в GIF, 25×25 и 40×40
разработчик: Ага, проверяй
заказчик: Уже? Как ты это так быстро делаешь???
разработчик: …
разработчик: Готово
заказчик: Надо переделать, чтобы аватарки были в PNG
разработчик: Сделал
заказчик: Пусть аватарки будут в GIF, 25×25 и 40×40
разработчик: Ага, проверяй
заказчик: Уже? Как ты это так быстро делаешь???
разработчик: …
+123
Генерирование изображений-заглушек
3 мин
56KСегодня мне кинули ссылку на прикольный сервис для быстрого генерирования изображений-заглушек. Может пригодиться для html-верстки. На мой взгляд, это удобно тем, кто и так использует заглушки — экономит время при вёрстке, т.к. сами заглушки уже готовы. Можно цвета/размеры подбирать, меняя только числа/буквы в коде, не отвлекаясь на сам файл картинки — и сразу видеть эффект. И сами размеры видеть написанными, если нужно, чтоб к коду не возвращаться для проверки. Или вместо размеров можно текст добавить, чтоб всегда знать, для чего эта заглушка (типа «Бан(н)ер» или там «Лого», или «Фотография»).
На сервисе не нужна регистрация — и вообще на сайт можно не заходить, чтобы его использовать. Пишете сразу у себя в коде, например:
Update. Благодаря усилиям k0rv1n, найден вариант этого сервиса, только лучше :)
Во-первых, там поддерживается кириллица. Во-вторых, там даны ссылки на исходники для разных языков.
Автор dummyimage.com — тот же Russell Heimlich, что и у placehold.it. У placehold.it есть ещё один автор, но будем считать, что он делал дизайн (дизайн там правда круче, но видимо как раз из-за понтового шрифта Unicode и не выходил).
Примеры (см. под хабракатом) я поменял с placehold.it на dummyimage.com, раз уж он функциональнее…
На сервисе не нужна регистрация — и вообще на сайт можно не заходить, чтобы его использовать. Пишете сразу у себя в коде, например:
<img src="http://placehold.it/350x50" />и получаете:
Update. Благодаря усилиям k0rv1n, найден вариант этого сервиса, только лучше :)
Во-первых, там поддерживается кириллица. Во-вторых, там даны ссылки на исходники для разных языков.
Автор dummyimage.com — тот же Russell Heimlich, что и у placehold.it. У placehold.it есть ещё один автор, но будем считать, что он делал дизайн (дизайн там правда круче, но видимо как раз из-за понтового шрифта Unicode и не выходил).
Примеры (см. под хабракатом) я поменял с placehold.it на dummyimage.com, раз уж он функциональнее…
+265
38 статей о создании закругленных углов на сайтах
4 мин
12KМоя статья на Временно.нет
Часто сталкиваешься с необходимостью создания блоков с круглыми краями. Задавшись вопросом как вообще можно решить поставленную задачу, сделал подборку интересных статей и уроков на данную тему.
Здесь представлен обзор 38 статей, разбитых на 4 категории по способам реализации.
Часто сталкиваешься с необходимостью создания блоков с круглыми краями. Задавшись вопросом как вообще можно решить поставленную задачу, сделал подборку интересных статей и уроков на данную тему.
Здесь представлен обзор 38 статей, разбитых на 4 категории по способам реализации.
+4
Extend Grid — делаем жизнь верстальщика немного проще
3 мин
4.2KСамо понятие модульной сетки, за последние несколько лет стало чрезвычайно модным. В первую очередь у дизайнеров. И во-вторую очередь у верстальщиков.
В принципе это и неплохо. Верстальщик исходя из специфики своей профессии должен любить порядок и модульные сетки при их грамотном применении, довольно значительно упрощают жизнь и вносят приятную гармонию при верстке макета.
Немного про модульные сетки
Модульная система вёрстки — система вёрстки, при которой основой композиции полос и разворотов становится модульная сетка с определенным шагом (модулем), одинаковым или разным по горизонтали и вертикали. По мотивам Википедии.
В принципе это и неплохо. Верстальщик исходя из специфики своей профессии должен любить порядок и модульные сетки при их грамотном применении, довольно значительно упрощают жизнь и вносят приятную гармонию при верстке макета.
Немного про модульные сетки
Модульная система вёрстки — система вёрстки, при которой основой композиции полос и разворотов становится модульная сетка с определенным шагом (модулем), одинаковым или разным по горизонтали и вертикали. По мотивам Википедии.
+29
Управление рисками
4 мин
124KВ Deadline, Том Демарко пишет о том, что для управления проектом, достаточно управлять его рисками. Действительно, всю работу ПМа можно свести к одному — борьба с рисками, которые могут помешать проекту завершиться в срок, в бюджет и с необходимым уровнем качества. Если, по какой-то причине, рисков в проекте нет, то нет и предмета работы ПМа.
Но проектов без рисков, наверное, не существует в природе и с ними так или иначе приходится работать. О том, как это делать, можно прочесть в PMBOK, на википедии и на тематических ресурсах. В этой статье больше практики, чем теории. Ее цель — показать на примерах недорогой и эффективный подход к управлению рисками проекта.
Но проектов без рисков, наверное, не существует в природе и с ними так или иначе приходится работать. О том, как это делать, можно прочесть в PMBOK, на википедии и на тематических ресурсах. В этой статье больше практики, чем теории. Ее цель — показать на примерах недорогой и эффективный подход к управлению рисками проекта.
+51
Как повысить эффективность рабочего дня с помощью интеллект-карт
2 мин
16KВ этой заметке я поделюсь своим опытом использования интеллект-карт (mind maps) для повышения эффективности на работе. Для рисования карт я использую программу Mindjet MindManager, которую довольно легко освоить – поэтому не буду останавливаться подробно на этом, скажу лишь, что основные операции производятся клавишами Insert, Enter и стрелками.
Примечание: в комментариях много возмущений по поводу цены программы, поэтому упомяну бесплатные аналоги: XMind и FreeMind.
Начинать рабочий день полезно с планирования: выписывания задач, которые должны быть выполнены. Если этот список был составлен с вечера – достаточно его просмотреть и при необходимости дополнить.
Если задача с трудом укладывается в голове и вызывает растерянность – это повод разбить её на более понятные подзадачи и начать с первой.
Примечание: в комментариях много возмущений по поводу цены программы, поэтому упомяну бесплатные аналоги: XMind и FreeMind.
1. С чего начать день?
Начинать рабочий день полезно с планирования: выписывания задач, которые должны быть выполнены. Если этот список был составлен с вечера – достаточно его просмотреть и при необходимости дополнить.
2. «Разделяй и властвуй»
Если задача с трудом укладывается в голове и вызывает растерянность – это повод разбить её на более понятные подзадачи и начать с первой.
+51
Конфигурационный менеджмент (часть 2, обзор инструментов)
9 мин
6.6KПрошло много времени, прежде чем я созрел на написание второй части статьи, посвященной управлению конфигурациями. Тому, что это наконец таки свершилось способствует тот факт, что не так давно мне посчастливилось выступать на конференции PHPCONF 2009 8 октября (Web Architect Workshop Day) с мастер-классом «Метод организации репозитория исходного кода». Для выступления были заблаговременно подготовлены презентация, а также текст доклада. Несмотря на отличную организацию мероприятия, для публичного доступа так и не были выложены материалы докладов, входящих в программу конференции. В качестве компенсации я решил таки опубликовать материал, использованный в моем выступлении. Кроме данной статьи, (которая является логическим продолжением предыдущей), посвященной конфигурационному менеджменту, для публичного обозрения доступны слайды презентации.
В данной статье пойдет речь об инструментах, использующихся при управлении конфигурациями. Поэтому в первую очередь хотелось бы заострить внимание на том, как инструменты, использующиеся в разработке могут влиять на процесс создания ПО.
В данной статье пойдет речь об инструментах, использующихся при управлении конфигурациями. Поэтому в первую очередь хотелось бы заострить внимание на том, как инструменты, использующиеся в разработке могут влиять на процесс создания ПО.
+16
Интерактивный редактор для jQuery — прорыв?
1 мин
4.9KСтранно, что такое шикарное событие не взбудоражило умы Хабровчан. Эта новость достойна твоего внимания, %username%!
Внимание — видео!
Понравилось? Тогда беги и качай бесплатно прямо сейчас: www.ixedit.com
Внимание — видео!
Понравилось? Тогда беги и качай бесплатно прямо сейчас: www.ixedit.com
+194
Различия между IE6, IE7 и IE8. Часть первая
4 мин
5.9KПеревод
(От перев. Данная статья не претендует на полноту и непротиворечивость, потому мы не будем строить на ее основании никаких теорий. Это всего лишь практическое пособие для разработчиков, немного исправленное и дополненное мной под реалии Рунета.)
Одним из самых странных статистических фактов, связанных с использованием браузеров, является широкая распространенность Internet Explorer версии 6, 7 и 8. На сегодняшний день все версии Internet Explorer вместе занимают примерно 65% рынка используемых в настоящее время браузеров. Среди веб-разработчиков эта цифра ниже, здесь доля пользователей IE составляет лишь 40% рынка.
(От перев. Надеюсь, эти 40% составляют лишь несчастные верстальщики, проверяющие свои сайты на предмет кроссбраузерности. Статистика по Рунету доступна, например, здесь. Заметьте, в сентябре у всех браузеров IE-семьи график без видимых причин подскочил — это вернулись за свои компьютеры офисные пользователи, самые преданные почитатели наших героев.)
Интересно, что популярность браузеров семейства IE примерно одинакова, нельзя выделить один доменирующий браузер, как это было ранее. (От перев. Конечно, нельзя. Вот смотрю и ну никак не могу выделить доминирующий браузер. =) ) Таким образом, сейчас веб-разработчики обязаны проверять работоспособность своего проекта в различных браузерах, разрабатывая как сайты для своих заказчиков, так и персональные странички.
Конечно, благодаря различным Javascript-библиотекам, кроссбраузерное тестирование сейчас стало настолько хорошим, насколько данная ситуация вообще позволяет это сделать. (От перев. А еще есть возможность сделать скриншоты в разных браузерах, IE Collection и тому подобные ухищрения) Но есть в этом что-то неправильное, особенно если взглянуть на результат работы трех использующихся версий IE.
Эта статья является попыткой дать исчерпывающую, легкую в восприятии информацию для веб-разработчиков, пытающихся понять различия в обработке CSS между IE6, IE7 и IE8. Здесь собраны краткие описания для свойств, поддерживаемых одним или двумя браузерами, но не всеми тремя сразу. Здесь не рассматриваются свойства, не выполняемые ни одним из IE, а также специфичные только им. Таким образом, акцент стоит именно на различиях между браузерами, а не на недостатке поддержки ими тех или иных CSS-свойств.
Одним из самых странных статистических фактов, связанных с использованием браузеров, является широкая распространенность Internet Explorer версии 6, 7 и 8. На сегодняшний день все версии Internet Explorer вместе занимают примерно 65% рынка используемых в настоящее время браузеров. Среди веб-разработчиков эта цифра ниже, здесь доля пользователей IE составляет лишь 40% рынка.
(От перев. Надеюсь, эти 40% составляют лишь несчастные верстальщики, проверяющие свои сайты на предмет кроссбраузерности. Статистика по Рунету доступна, например, здесь. Заметьте, в сентябре у всех браузеров IE-семьи график без видимых причин подскочил — это вернулись за свои компьютеры офисные пользователи, самые преданные почитатели наших героев.)
Интересно, что популярность браузеров семейства IE примерно одинакова, нельзя выделить один доменирующий браузер, как это было ранее. (От перев. Конечно, нельзя. Вот смотрю и ну никак не могу выделить доминирующий браузер. =) ) Таким образом, сейчас веб-разработчики обязаны проверять работоспособность своего проекта в различных браузерах, разрабатывая как сайты для своих заказчиков, так и персональные странички.
Конечно, благодаря различным Javascript-библиотекам, кроссбраузерное тестирование сейчас стало настолько хорошим, насколько данная ситуация вообще позволяет это сделать. (От перев. А еще есть возможность сделать скриншоты в разных браузерах, IE Collection и тому подобные ухищрения) Но есть в этом что-то неправильное, особенно если взглянуть на результат работы трех использующихся версий IE.
Эта статья является попыткой дать исчерпывающую, легкую в восприятии информацию для веб-разработчиков, пытающихся понять различия в обработке CSS между IE6, IE7 и IE8. Здесь собраны краткие описания для свойств, поддерживаемых одним или двумя браузерами, но не всеми тремя сразу. Здесь не рассматриваются свойства, не выполняемые ни одним из IE, а также специфичные только им. Таким образом, акцент стоит именно на различиях между браузерами, а не на недостатке поддержки ими тех или иных CSS-свойств.
+66
jQueryPad — мечта разработчика jQuery
1 мин
1.5KДоступен для бесплатной загрузки инструмент jQueryPad, который может значительно облегчить жизнь разработчикам использующим jQuery. Этот инструмент предлагает работу с целевым html, запросами jQuery и результатом запросов в одном окне:
Здесь, нижняя часть с текстом — это встроенный компонент Internet Explorer с результатом работы jQuery и возможностью посмотреть исходный код. jQueryPad так же находит другие установленные браузеры для организации просмотра результата в них. Пример найденных браузеров на скриншоте в блоге автора.
jQueryPad написан на WPF и требует для работы .NET Framework 3.5 Service Pack 1
Почитать анонс jQueryPad можно в блоге автора.
Прямая ссылка на архив с программой.
Здесь, нижняя часть с текстом — это встроенный компонент Internet Explorer с результатом работы jQuery и возможностью посмотреть исходный код. jQueryPad так же находит другие установленные браузеры для организации просмотра результата в них. Пример найденных браузеров на скриншоте в блоге автора.
jQueryPad написан на WPF и требует для работы .NET Framework 3.5 Service Pack 1
Почитать анонс jQueryPad можно в блоге автора.
Прямая ссылка на архив с программой.
+54
Контент-менеджмент по-секретарски
3 мин
3KСегодня, наверно, уже не бывает заказов на сайт без требования «возможность самостоятельно вносить изменения». Неважно, на чем вы делаете сайт — Битрикс, MODx, Drupal, что-то еще, или самописная CMS. FCKEditor, TinyMCE, панелька «чтоб как в ворде» — и заказчик спокоен, ему не придется за отдельную плату дергать «программистов».
И «программисты» вроде тоже довольны — дизайнер сайт нарисовал, верстальщик его за пару дней с грехом-пополам сверстал, на движок все это счастье натянуто, а тут уже и акт приема-передачи, и сумма с парой-тройкой нулей на счету. Все довольны.
И «программисты» вроде тоже довольны — дизайнер сайт нарисовал, верстальщик его за пару дней с грехом-пополам сверстал, на движок все это счастье натянуто, а тут уже и акт приема-передачи, и сумма с парой-тройкой нулей на счету. Все довольны.
+93
CKEditor, TinyMCE файловый браузер (PHP)
3 мин
9.7KВ продолжение, файловый браузер для CKEditor и TinyMCE, и просто для сайта.
Сборка имеет два скина: dark & light
Скриншоты кликабельны
Сборка имеет два скина: dark & light
Скриншоты кликабельны
+57
Способ вертикального выравнивания блока с помощью настоящего vertical-align
4 мин
70KСегодня, верстая один макет, я, кажется, изобрел очередной небезынтересный способ вертикального выравнивания блока относительно родительского. Он не основан на превращении блоков в ячейки таблицы и не использует css-свойство position.
— Должна быть известна начальная высота родительского блока;
— Дочерний блок может иметь произвольный размер как по высоте, так и по ширине.
— Работает в IE6+, O9+, FF2+, webkit;
— Тру vertical-align выравнивание со всеми допустимыми значениями;
— Одинаковое поведение во всех браузерах (незначительные отклонение при некоторых условиях в ие6 будут оговорены ниже);
— При вырастании дочернего блока выше «папочки», родительский блок расширяется;
— Ни грамма JavaScript.
Требования
— Должна быть известна начальная высота родительского блока;
— Дочерний блок может иметь произвольный размер как по высоте, так и по ширине.
Возможности
— Работает в IE6+, O9+, FF2+, webkit;
— Тру vertical-align выравнивание со всеми допустимыми значениями;
— Одинаковое поведение во всех браузерах (незначительные отклонение при некоторых условиях в ие6 будут оговорены ниже);
— При вырастании дочернего блока выше «папочки», родительский блок расширяется;
— Ни грамма JavaScript.
+68
Список полезных инструментов для CSS разработчика
8 мин
71KПеревод
Это не попытка создать список всех существующих инструментов для CSS разработки. Только некоторые, наиболее полезные были отобраны и размещены в соответствующих категориях.
Чтобы инструмент был по-настоящему полезен, у него должна быть хорошая документация и дружелюбный интерфейс. К сожалению, некоторые инструменты в списке не полностью попадают под данные критерии. Если кто-то знает лучшие альтернативы с более дружелюбным интерфейсом и большей функциональностью, пишите в комментариях.
Чтобы инструмент был по-настоящему полезен, у него должна быть хорошая документация и дружелюбный интерфейс. К сожалению, некоторые инструменты в списке не полностью попадают под данные критерии. Если кто-то знает лучшие альтернативы с более дружелюбным интерфейсом и большей функциональностью, пишите в комментариях.
+161
Кроссбраузерный min- и max-width на чистом HTML+CSS
1 мин
15KДавно хотел поделиться одной интересной наработкой — а именно эмуляцией свойств min и max-width без использования expression и подобных вещей. Обвязка может показаться громоздкой, но главный ее плюс — она работает. Плюс подобные вещи можно с легкостью внедрять с помощью шаблонизатора одной строчкой кода.
Суть трюка проста:
‹table›‹tr›‹td width=1100› — максимальная ширина
‹div width=900 /› — распорка, минимальная ширина
Причем именно так, ширина не у таблицы, а у ячейки. Таким образом шире, чем 1100 таблица не будет (в данном случае), но при этом если она уже — скроллер не появляется. При этом если ширина рабочей области менее 900 — скроллер уже отобразится.
Суть трюка проста:
‹table›‹tr›‹td width=1100› — максимальная ширина
‹div width=900 /› — распорка, минимальная ширина
Причем именно так, ширина не у таблицы, а у ячейки. Таким образом шире, чем 1100 таблица не будет (в данном случае), но при этом если она уже — скроллер не появляется. При этом если ширина рабочей области менее 900 — скроллер уже отобразится.
+70
peeep.us — ссылки на закрытые страницы
1 мин
5.1KПривет, Хабр!
Хочу сообщить тебе, что как-то ночью я, большой ненавистник сервисов сокращения ссылок, и сам запустил свою сокращалку. Но не простую, а с изюминкой.
Суть сервиса в том, что вместе с самой ссылкой peeep.us хранит содержимое страницы с точки зрения пользователя, который создавал ссылку. Это дает возможность опубликовать или дать другу ссылку на страничку, обычно недоступную для просмотра извне. Например, можно показать другу классный пост на Лепре или личное сообщение вконтакте. А еще его можно использовать просто как хранитель состояния сайта. По пииипнутой ссылке будет всегда доступно содержимое страницы на момент времени, когда она была создана (вместе с удаленными коммантариями, например). Это как кеш Google или archive.org, только по требованию.
Вот как это выглядит: прекрасный пост Артема Шитова. Видна лепра?
Чтобы просто сохранить состояние страницы нужно ввести адрес на peeep.us и кликнуть submit. А если нужно сделать ссылку на закрытую страницу, придется воспользоваться букмарклетом, который есть там же. Букмарклет скачает текст страницы XMLHttpRequest'ом, а затем отправит куда надо. Все, вроде бы, несложно.
Кстати, сам сервис работает на Google AppEngine, то есть потенциально закроется или заддосится только вместе с гуглом целиком ;). А если кому интересно, откуда такое тупое название, так это от слова peep — подглядывать [в замочную скважину].
Хочу сообщить тебе, что как-то ночью я, большой ненавистник сервисов сокращения ссылок, и сам запустил свою сокращалку. Но не простую, а с изюминкой.
Суть сервиса в том, что вместе с самой ссылкой peeep.us хранит содержимое страницы с точки зрения пользователя, который создавал ссылку. Это дает возможность опубликовать или дать другу ссылку на страничку, обычно недоступную для просмотра извне. Например, можно показать другу классный пост на Лепре или личное сообщение вконтакте. А еще его можно использовать просто как хранитель состояния сайта. По пииипнутой ссылке будет всегда доступно содержимое страницы на момент времени, когда она была создана (вместе с удаленными коммантариями, например). Это как кеш Google или archive.org, только по требованию.
Вот как это выглядит: прекрасный пост Артема Шитова. Видна лепра?
Чтобы просто сохранить состояние страницы нужно ввести адрес на peeep.us и кликнуть submit. А если нужно сделать ссылку на закрытую страницу, придется воспользоваться букмарклетом, который есть там же. Букмарклет скачает текст страницы XMLHttpRequest'ом, а затем отправит куда надо. Все, вроде бы, несложно.
Кстати, сам сервис работает на Google AppEngine, то есть потенциально закроется или заддосится только вместе с гуглом целиком ;). А если кому интересно, откуда такое тупое название, так это от слова peep — подглядывать [в замочную скважину].
+152
+49
Разберемся раз и навсегда: AJAX, «кириллические символы», кодировки, prototype.js, jQuery, JsHttpRequest
5 мин
167KAJAX, — это технология. Одной из часто используемых техник этой технологии является
посылка запросов при помощи объекта класса XMLHttpRequest.
Как же посылать и принимать AJAX запросы в нужной нам кодировке, нужно ли использовать однобайтовые кодировки или не обойтись без UTF-8. На все эти вопросы раз и навсегда ответит эта статья.
посылка запросов при помощи объекта класса XMLHttpRequest.
Как же посылать и принимать AJAX запросы в нужной нам кодировке, нужно ли использовать однобайтовые кодировки или не обойтись без UTF-8. На все эти вопросы раз и навсегда ответит эта статья.
+50
Cufón – используйте шрифты, какие душа пожелает
4 мин
90KЕсли стоит задача использовать в проекте нестандартный шрифт, то есть возможность пойти несколькими путями:
- Ъ-метод – не использовать нестандартные шрифты, достаточно в CSS сказать body {font-family: sans-serif;} и не морочить себе голову.
- Быдло-метод – нарезать из ЖПЕГов, картинок с заголовками, ужать посильнее, что б появилась размытость и вставлять вместо текста картинки. Достаточно популярный на наших просторах метод.
- W3C-метод – используем
@font-family
и наслаждаемся красивыми шрифтами без всяких заморочек. Пока этот метод не рассматривают, как рабочий, по причине слабой поддержи со стороны браузера. - sIFR – клевая вещь, наиболее употребляемая на сегодняшний день, но как недостаток – требует наличия Flash-плагина. Хотя это трудно назвать недостатком, но если есть инструмент, позволяющий обойтись без плагинов, то это не может не радовать.
- Cufón – самое то. Относительно новый метод, который показывает превосходные результаты. Он и есть герой этой статьи.
+103
Информация
- В рейтинге
- Не участвует
- Откуда
- Россия
- Дата рождения
- Зарегистрирован
- Активность