Многие наверняка сталкивались с тем, что любимый браузер не умеет делать что-то очень простое, но насущно необходимое. Я хочу рассказать, как на коленке за час можно обучить FF4 хорошему. Написание расширений — процесс очень простой и даже временами приятный, но, к сожалению, документация не всегда легко находится, how-to разбросаны по разным углам сайта MDN, внятных рекомендаций мне найти тоже не удалось… Все это порождает (по крайней мере, в моей голове — породило) миф о том, что это трудоемкий процесс, доступный только гуру. Вот этот миф и призвана развеять данная статья. Мы напишем расширение, которое будет править типографику в полях ввода, обращаясь за помощью к сервису «Типограф».
Юрий @YuriPikin
Пользователь
Верстка e-mail рассылок — «подводные камни». Часть первая. Картинки
5 мин
109KДобрый день, уважаемые хабравчане!
Не так давно мы вплотную столкнулись с задачей верстки e-mail рассылок. Это не самое приятное занятие, но многие компании активно используют корпоративные рассылки, и верстка становится всё более актуальной задачей.
Казалось бы, что сложного — сверстать простую страничку? Но есть «подводные камни», которые могут поставить в тупик даже опытного верстальщика. Именно таким «камням» и посвящен пост (оговоримся сразу — все эксперименты, описанные в посте, проводились под Windows с тем ПО, которое есть у многих под рукой).
Практически каждая рассылка содержит картинки. Логотип, шапка, фотографии, иконки соц.сетей…
Есть 2 способа использования картинок:
Не так давно мы вплотную столкнулись с задачей верстки e-mail рассылок. Это не самое приятное занятие, но многие компании активно используют корпоративные рассылки, и верстка становится всё более актуальной задачей.
Казалось бы, что сложного — сверстать простую страничку? Но есть «подводные камни», которые могут поставить в тупик даже опытного верстальщика. Именно таким «камням» и посвящен пост (оговоримся сразу — все эксперименты, описанные в посте, проводились под Windows с тем ПО, которое есть у многих под рукой).
Первый камень — Изображения
Практически каждая рассылка содержит картинки. Логотип, шапка, фотографии, иконки соц.сетей…
Есть 2 способа использования картинок:
+31
Партиционирование таблиц в mySQL
4 мин
182KНачиная с версии 5.1 mySQL поддерживает горизонтальное партицирование таблиц. Что это такое? Партиционирование (partitioning) — это разбиение больших таблиц на логические части по выбранным критериям.. На нижнем уровне для myISAM таблиц, это физически разные файлы, по 3 на каждую партицию (описание таблицы, файл индексов, файл данных). Для innoDB таблиц в конфигурации по умолчанию – разные пространства таблиц в файлах innoDB (не забываем, что innoDB позволяет настраивать индивидуальные хранилища на уровне баз данных или даже конкретных таблиц).
Как это выглядит?
Как это выглядит?
+96
Загрузка файлов с помощью HTML5 и сколько раз мы сказали нехорошие слова
3 мин
7.3KСтояла задача: найти или создать загрузчик файлов на сервер, использующий возможности HTML5 для мультизагрузки. Загрузчик должен:
Именно по причине отсутствия опыта работы с флешем, для создания загрузчика был выбран только JavaScript.
- отправлять методом POST любые параметры вместе с файлом;
- отправлять куки;
- предоставлять возможность выбора сразу нескольких файлов (или нескольких тысяч – тут как пользователь захочет);
- отправлять файлы группами;
- файлы собираются в группы до определенного количества мегабайт, или до определенного количества файлов в группе; (это связано с тем, что на сервере есть ограничение на размер POST запроса и на количество файлов в одном пакете)
Именно по причине отсутствия опыта работы с флешем, для создания загрузчика был выбран только JavaScript.
Итак, что из этого получилось
+81
Очень много полезных штук для AS3 #2
9 мин
46KВ продолжении статьи о полезных штуках для AS3, сегодня мы поговорим о 2D физических движках, библиотеках для работы со звуком, системах для работы с частицами, наборах для загрузки данных, ООП фреймворках, фреймворках для разработки сайтов, а так же о куче других полезных библиотек/фреймворках/классах, чьё назначение не вписалось не в одну из категорий.
+33
Верстка почтовых рассылок
6 мин
71KТуториал
Привет, Хабр!
В этой статье я бы хотел поделиться своими познаниями в кроссбраузерной и кроссмейлерной верстке почтовых рассылок. Под словом кроссмейлерность подразумевается — корректное отображение верстки во всех почтовых клиентах. Я считаю, что статья вполне актуальна, в виду того, что на хабре эта тема несколько раз освещалась, но некоторые нюансы были неточными, а другие просто устарели. По долгу службы я долгое время занимался версткой html расылок по всему миру, и приведенные ниже правила будут касаться следующих почтовых клиентов и веб-интерфейсов: MS Outlook 2003-2010, mail.ru, rabmler почта, Яндекс почта, Gmail, Yahoo! Mail (Classic), Thunderbird 2.0-3.0, Hotmail, Windows Live Mail, Apple Mail 3-4, AOL Mail, Lotus Notes 8-8.5.
В этой статье я бы хотел поделиться своими познаниями в кроссбраузерной и кроссмейлерной верстке почтовых рассылок. Под словом кроссмейлерность подразумевается — корректное отображение верстки во всех почтовых клиентах. Я считаю, что статья вполне актуальна, в виду того, что на хабре эта тема несколько раз освещалась, но некоторые нюансы были неточными, а другие просто устарели. По долгу службы я долгое время занимался версткой html расылок по всему миру, и приведенные ниже правила будут касаться следующих почтовых клиентов и веб-интерфейсов: MS Outlook 2003-2010, mail.ru, rabmler почта, Яндекс почта, Gmail, Yahoo! Mail (Classic), Thunderbird 2.0-3.0, Hotmail, Windows Live Mail, Apple Mail 3-4, AOL Mail, Lotus Notes 8-8.5.
+142
Как увеличить точность внутренних часов и начать лучше понимать время
4 мин
5.1KПеревод
Если вы регулярно пере- или недооцениваете количество времени, которое потребуется на выполнение задания, возможно пришло время перезагрузить внутренние часы. Ниже вы узнаете, как это сделать и достичь большего при меньших нервах.
Точные внутренние часы являются краеугольным камнем тайм-менеджмента. Если оценка единиц времени и того, что за эти единицы можно успеть, вам дается с трудом, то вы всегда будете расстраиваться по поводу дел, которые не удается вовремя закончить.
Психологи Джейн Бурка и Ленора Юэн предлагают в своей книге Procrastination: Why You Do It, What to Do About It NOW ряд конкретных упражнений по совершенствованию управления собственным временем.
+72
+188
Написание web-API к своей системе
3 мин
24KДобрый день, %username%!
За последний год столкнулся с несколькими задачами по написанию SOAP/REST API к различным сервисам и вывел для себя боле-менее удобную модель. Я не претендую на фундаментальное исследование, просто хочу поделиться опытом наступания на грабли.
Для начала общие требования к default API:
За последний год столкнулся с несколькими задачами по написанию SOAP/REST API к различным сервисам и вывел для себя боле-менее удобную модель. Я не претендую на фундаментальное исследование, просто хочу поделиться опытом наступания на грабли.
Для начала общие требования к default API:
- возможность расширения
- удобный стандартизированный формат запросов
- удобный стандартизированный формат ответов
- достаточный уровень безопасности
- возврат ошибок выполнения запроса
+58
Highload на дешевом хостинге: хэш-таблица в MySQL
3 мин
21KВысоконагруженный проект (web-сайт) — не обязательно популярная социальная сеть, видеохостинг или MMORPG. Простейший способ резко повысить требования сайта к железу — перенести хранение сессий в БД. В этой статье мы рассмотрим способ хранить данные в БД, и при этом не жертвовать производительностью. Пожертвовав небольшим объемом ОЗУ можно прилично сэкономить процессорное время. Мы говорим о стиуации, когда недоступны memcached и другие специальные средства кэширования.
+44
Google выпускает mod_pagespeed для Apache
1 мин
11KВ прошлом году Google в рамках своих инициатив по ускорению веб проектов представила свой инструмент для разработчиков Page Speed. Теперь же для упрощения труда разработчиков и вебмастеров Google предлагает нам новый инструмент.
Сегодня Google представила новый модуль для Apache под названием mod_pagespeed. По словам разработчиков время загрузки страницы удалось уменьшить на 50 процентов, а на отдельных проектах эта цифра значительно выше.
Сравнительная демонстрация с включенным модулем и без него
Ссылка для скачивания
UPD
Модуль представляет из себя набор фильтров, каждый из них и примеры использования представлены и описаны в Документации. Применять и использовать модули следует исходя из потребностей своего проекта, у каждого фильтра есть свои особенности, которые следует учесть при использовании, обращая внимание на раздел «Risks» в их документации.
Сегодня Google представила новый модуль для Apache под названием mod_pagespeed. По словам разработчиков время загрузки страницы удалось уменьшить на 50 процентов, а на отдельных проектах эта цифра значительно выше.
Сравнительная демонстрация с включенным модулем и без него
Ссылка для скачивания
UPD
Модуль представляет из себя набор фильтров, каждый из них и примеры использования представлены и описаны в Документации. Применять и использовать модули следует исходя из потребностей своего проекта, у каждого фильтра есть свои особенности, которые следует учесть при использовании, обращая внимание на раздел «Risks» в их документации.
+55
Письмо дошло?
2 мин
34KНа прошлой неделе мы рассказывали о беспрецедентных недочетах в Законодательстве, которые могут вызвать в 2011 году экономический крах в российской IT-сфере. В связи с чем мы опубликовали открытое письмо Президенту с просьбой пересмотреть Закон.
Многие отнеслись к нашему начинанию скептически, но с момента открытия сайта нам поступало огромное количество предложений о помощи и участии в инициативе в том числе от крупных IT-компаний и трех политический партий. Сейчас собрано уже более 2300 подписей. Новость облетела десятки новостных онлайн-изданий.
И вот, наконец, первые результаты…
+115
Открытое письмо Президенту РФ от малых IT-компаний
3 мин
28KЗдравствуйте, уважаемые Хабравчане.
Позвольте сначала представиться, меня зовут Владимир Завертайлов, я директор студии интернет-решений «Сибирикс» и мы очень рады, что наконец-то стали частичкой Хабрасообщества. Но перейдем к делу.
Как уже писалось в топике «Льготы для IT», 13 октября сего года Советом Федерации был принят очень важный для всей отрасли законопроект, который затем уже 16 октября был подписан Президентом.
И, казалось бы, все мы должны радоваться столь хорошим веяниям политики «модернизации» Дмитрия Анатольевича, если бы в законе не было нескольких довольно серьезных упущений, которые для многих компаний сводят на нет все положительные моменты этого документа, и о которых мы расскажем чуть ниже.
Совершенно очевидно, что в нынешнем виде закон несостоятелен и носит скорее декларативный характер. Поняв это, мы тут же решили действовать и написали «Открытое письмо Президенту РФ от малых IT- и интернет-компаний», в котором описали суть проблемных моментов и предложили всем лицам, радеющим за развитие IT в нашей стране, подписать его.
За подробностями прошу под хабракат…
Позвольте сначала представиться, меня зовут Владимир Завертайлов, я директор студии интернет-решений «Сибирикс» и мы очень рады, что наконец-то стали частичкой Хабрасообщества. Но перейдем к делу.
Как уже писалось в топике «Льготы для IT», 13 октября сего года Советом Федерации был принят очень важный для всей отрасли законопроект, который затем уже 16 октября был подписан Президентом.
И, казалось бы, все мы должны радоваться столь хорошим веяниям политики «модернизации» Дмитрия Анатольевича, если бы в законе не было нескольких довольно серьезных упущений, которые для многих компаний сводят на нет все положительные моменты этого документа, и о которых мы расскажем чуть ниже.
Совершенно очевидно, что в нынешнем виде закон несостоятелен и носит скорее декларативный характер. Поняв это, мы тут же решили действовать и написали «Открытое письмо Президенту РФ от малых IT- и интернет-компаний», в котором описали суть проблемных моментов и предложили всем лицам, радеющим за развитие IT в нашей стране, подписать его.
За подробностями прошу под хабракат…
+134
Самый короткий в мире маркетинговый план
1 мин
17KВ догонку к посту про макет бизнес модели, не менее полезный «самый короткий в мире маркетинговый план» (так его назвал автор, Келли Одел).
Можно для любой новой идеи, продукта или услуги заполнить эту табличку и сразу увидеть общую картину с перспективами.
Можно для любой новой идеи, продукта или услуги заполнить эту табличку и сразу увидеть общую картину с перспективами.
+104
Вложенные массивы и Magic Methods
3 мин
17KНаверное всем известно про волшебные(магические) методы в PHP, а конкретно __get и __set методы. Однако есть неприятная особенность, если нужно изменить значение вложенного массива. Для решение этой проблемы есть простое и элегантное решение.
+23
Хранение даты в mysql с учетом часового пояса
2 мин
36KСтатья о том, как избежать путаницы с датами, хранимыми в mysql.
Эти путаницы возникают по двум причинам:
1. Разные территории нашей планеты имеют разный сдвиг времени.
2. Некоторые страны переходят на летнее время и обратно(карта со странами, переходящими на летнее время).
Многие решают эти проблемы по-разному. Кто-то делает сдвиг даты в SQL запросах, кто-то в php. Кто-то хранит даты в TIMESTAMP, кто-то в DATETIME. Я переискал много источников, но нигде не нашел верного решения данной проблемы на русском. В родной документации по mysql нашел информацию о том, как добиться корректной автоматической конвертации TIMESTAMP в локальное время, но тут тоже свои подводные камни.
Если в php настройка временной зоны делается просто, в mysql возникают сложности, особенно, если доступ к mysql серверу вам ограничен и там еще не установлены некоторые таблицы.
+5
Использование коэффициента Танимото для поиска людей с одинаковыми предпочтениями
3 мин
12KРешая упражнения к книге «Программируем коллективный разум», я решил поделиться реализацией одного из алгоритмов упомянутого в этой книге (Глава 2 — Упражнение 1).
Исходные условия следующие: пусть мы имеем словарь с оценками критиков:
Чем выше оценка, тем больше нравится фильм.
Надо вычислить: насколько схожи интересы критиков для того, например, чтобы можно было на основе оценок одного рекомендовать фильмы другому?
Исходные условия следующие: пусть мы имеем словарь с оценками критиков:
critics={'Lisa Rose': {'Superman Returns': 3.5, 'You, Me and Dupree': 2.5, 'The Night Listener': 3.0},
'Gene Seymour': {'Superman Returns': 5.0, 'The Night Listener': 3.5, 'You, Me and Dupree': 3.5}}
Чем выше оценка, тем больше нравится фильм.
Надо вычислить: насколько схожи интересы критиков для того, например, чтобы можно было на основе оценок одного рекомендовать фильмы другому?
+91
madVR: как выжать максимум качества из видео
1 мин
134KВ первый раз я познакомился с madVR, когда обнаружил новый чекбокс в настройках MPC Home Cinema. Как оказалось, качество видео получаемое на выходе madVR видео рендерер просто не сравнимо ни с чем, что я использовал раньше (EVR, Overlay, VMR 7, 9 и Haali). madVR создавался с целью выводить видео максимально возможного качества. В чем особенности madVR и каким образом у него получается видео такого высокого качества?
+30
Форматирование телефонных номеров на PHP
13 мин
58KВозникла задача автоматического форматирования телефонных номеров в виде страна (город) номер, и первым делом я обратился к существующим решениям.
К сожалению, оказалось, что все найденные решения основываются на обычном подгоне строки под пользовательский формат, имея ограниченную область применения и ошибки при выходе за ее пределы.
К сожалению, оказалось, что все найденные решения основываются на обычном подгоне строки под пользовательский формат, имея ограниченную область применения и ошибки при выходе за ее пределы.
+59
Десять советов начинающим программистам
5 мин
109KПредисловие
Хорошо, когда работаешь с человеком, который отлично знает толк в своём деле. А что, если случается работать с коллегой, опыт которого не столь большой. Особенно это касается профессионально-личностных качеств. Невольно приходится подсказывать, местами помагать ему, а где-то даже откровенно учить. Все мы когда-то начинали. Все эти действия требуют немалых усилий, которые можно было бы применить по прямому назначению — в разработке проекта, но без подготовки новых специалистов будет тяжелее.
Так вот, чтобы минимизировать эти затраты, давайте «создадим» хорошего, а возможно и идеального начинающего программиста, с высоким потенциалом и светлыми горизонтами.
Предлагаемые здесь десять советов не претендуют на оригинальность и, в основном, базируются на моем небольшом пятилетнем опыте разработок. Итак, начнем.
1. Будьте самостоятельными
Если у вас есть какой-то вопрос, и вы не знаете как с ним поступить, то вначале постарайтесь исследовать его самостоятельно. Не ждите постоянной помощи от коллег — у них и без вас работы хватает. Используйте всю мощь поисковых систем, специализированных ресурсов (например, stackoverflow), профессиональных блогов, форумов разработчиков, и конечно же хабра. Большинство типичных «граблей» можно обойти различными эффективными вариантами, а для решения базовых задач есть дюжины готовых решений. Просто пойдите и возьмите.
+73
Информация
- В рейтинге
- Не участвует
- Откуда
- Москва, Москва и Московская обл., Россия
- Дата рождения
- Зарегистрирован
- Активность