Как стать автором
Обновить
42
0
Юрий @YuriPikin

Пользователь

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

Добавляем нужное в Firefox за час

Время на прочтение4 мин
Количество просмотров964
Многие наверняка сталкивались с тем, что любимый браузер не умеет делать что-то очень простое, но насущно необходимое. Я хочу рассказать, как на коленке за час можно обучить FF4 хорошему. Написание расширений — процесс очень простой и даже временами приятный, но, к сожалению, документация не всегда легко находится, how-to разбросаны по разным углам сайта MDN, внятных рекомендаций мне найти тоже не удалось… Все это порождает (по крайней мере, в моей голове — породило) миф о том, что это трудоемкий процесс, доступный только гуру. Вот этот миф и призвана развеять данная статья. Мы напишем расширение, которое будет править типографику в полях ввода, обращаясь за помощью к сервису «Типограф».


Поехали!
Всего голосов 80: ↑72 и ↓8+64
Комментарии26

Верстка e-mail рассылок — «подводные камни». Часть первая. Картинки

Время на прочтение5 мин
Количество просмотров109K
Верстка e-mail рассылок. Часть первая. Картинки.Добрый день, уважаемые хабравчане!
Не так давно мы вплотную столкнулись с задачей верстки e-mail рассылок. Это не самое приятное занятие, но многие компании активно используют корпоративные рассылки, и верстка становится всё более актуальной задачей.

Казалось бы, что сложного — сверстать простую страничку? Но есть «подводные камни», которые могут поставить в тупик даже опытного верстальщика. Именно таким «камням» и посвящен пост (оговоримся сразу — все эксперименты, описанные в посте, проводились под Windows с тем ПО, которое есть у многих под рукой).

Первый камень — Изображения


Практически каждая рассылка содержит картинки. Логотип, шапка, фотографии, иконки соц.сетей…
Есть 2 способа использования картинок:
Читать дальше →
Всего голосов 57: ↑44 и ↓13+31
Комментарии16

Партиционирование таблиц в mySQL

Время на прочтение4 мин
Количество просмотров182K
Начиная с версии 5.1 mySQL поддерживает горизонтальное партицирование таблиц. Что это такое? Партиционирование (partitioning) — это разбиение больших таблиц на логические части по выбранным критериям.. На нижнем уровне для myISAM таблиц, это физически разные файлы, по 3 на каждую партицию (описание таблицы, файл индексов, файл данных). Для innoDB таблиц в конфигурации по умолчанию – разные пространства таблиц в файлах innoDB (не забываем, что innoDB позволяет настраивать индивидуальные хранилища на уровне баз данных или даже конкретных таблиц).

Как это выглядит?

Читать дальше →
Всего голосов 96: ↑96 и ↓0+96
Комментарии84

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

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

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

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

Читать дальше →
Всего голосов 87: ↑84 и ↓3+81
Комментарии67

Очень много полезных штук для AS3 #2

Время на прочтение9 мин
Количество просмотров46K
В продолжении статьи о полезных штуках для AS3, сегодня мы поговорим о 2D физических движках, библиотеках для работы со звуком, системах для работы с частицами, наборах для загрузки данных, ООП фреймворках, фреймворках для разработки сайтов, а так же о куче других полезных библиотек/фреймворках/классах, чьё назначение не вписалось не в одну из категорий.
Читать дальше →
Всего голосов 39: ↑36 и ↓3+33
Комментарии17

Верстка почтовых рассылок

Время на прочтение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.
Читать дальше →
Всего голосов 150: ↑146 и ↓4+142
Комментарии81

Как увеличить точность внутренних часов и начать лучше понимать время

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


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

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

Психологи Джейн Бурка и Ленора Юэн предлагают в своей книге Procrastination: Why You Do It, What to Do About It NOW ряд конкретных упражнений по совершенствованию управления собственным временем.
Читать дальше →
Всего голосов 102: ↑87 и ↓15+72
Комментарии32

Хабраиндекс для статей по программированию под Android

Время на прочтение2 мин
Количество просмотров94K
Читать дальше →
Всего голосов 220: ↑204 и ↓16+188
Комментарии43

Написание web-API к своей системе

Время на прочтение3 мин
Количество просмотров24K
Добрый день, %username%!
За последний год столкнулся с несколькими задачами по написанию SOAP/REST API к различным сервисам и вывел для себя боле-менее удобную модель. Я не претендую на фундаментальное исследование, просто хочу поделиться опытом наступания на грабли.

Для начала общие требования к default API:
  • возможность расширения
  • удобный стандартизированный формат запросов
  • удобный стандартизированный формат ответов
  • достаточный уровень безопасности
  • возврат ошибок выполнения запроса

Читать дальше →
Всего голосов 108: ↑83 и ↓25+58
Комментарии180

Highload на дешевом хостинге: хэш-таблица в MySQL

Время на прочтение3 мин
Количество просмотров21K
Высоконагруженный проект (web-сайт) — не обязательно популярная социальная сеть, видеохостинг или MMORPG. Простейший способ резко повысить требования сайта к железу — перенести хранение сессий в БД. В этой статье мы рассмотрим способ хранить данные в БД, и при этом не жертвовать производительностью. Пожертвовав небольшим объемом ОЗУ можно прилично сэкономить процессорное время. Мы говорим о стиуации, когда недоступны memcached и другие специальные средства кэширования.
Читать дальше →
Всего голосов 68: ↑56 и ↓12+44
Комментарии70

Google выпускает mod_pagespeed для Apache

Время на прочтение1 мин
Количество просмотров11K
В прошлом году Google в рамках своих инициатив по ускорению веб проектов представила свой инструмент для разработчиков Page Speed. Теперь же для упрощения труда разработчиков и вебмастеров Google предлагает нам новый инструмент.

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

Сравнительная демонстрация с включенным модулем и без него



Ссылка для скачивания

UPD

Модуль представляет из себя набор фильтров, каждый из них и примеры использования представлены и описаны в Документации. Применять и использовать модули следует исходя из потребностей своего проекта, у каждого фильтра есть свои особенности, которые следует учесть при использовании, обращая внимание на раздел «Risks» в их документации.
Всего голосов 107: ↑81 и ↓26+55
Комментарии52

Письмо дошло?

Время на прочтение2 мин
Количество просмотров34K
Открытое письмо Дмитрию Медведеву. Фото: РИА Новости.

На прошлой неделе мы рассказывали о беспрецедентных недочетах в Законодательстве, которые могут вызвать в 2011 году экономический крах в российской IT-сфере. В связи с чем мы опубликовали открытое письмо Президенту с просьбой пересмотреть Закон.

Многие отнеслись к нашему начинанию скептически, но с момента открытия сайта нам поступало огромное количество предложений о помощи и участии в инициативе в том числе от крупных IT-компаний и трех политический партий. Сейчас собрано уже более 2300 подписей. Новость облетела десятки новостных онлайн-изданий.

И вот, наконец, первые результаты…
Читать дальше →
Всего голосов 135: ↑125 и ↓10+115
Комментарии103

Открытое письмо Президенту РФ от малых IT-компаний

Время на прочтение3 мин
Количество просмотров28K
Здравствуйте, уважаемые Хабравчане.

Позвольте сначала представиться, меня зовут Владимир Завертайлов, я директор студии интернет-решений «Сибирикс» и мы очень рады, что наконец-то стали частичкой Хабрасообщества. Но перейдем к делу.

Как уже писалось в топике «Льготы для IT», 13 октября сего года Советом Федерации был принят очень важный для всей отрасли законопроект, который затем уже 16 октября был подписан Президентом.

И, казалось бы, все мы должны радоваться столь хорошим веяниям политики «модернизации» Дмитрия Анатольевича, если бы в законе не было нескольких довольно серьезных упущений, которые для многих компаний сводят на нет все положительные моменты этого документа, и о которых мы расскажем чуть ниже.

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

За подробностями прошу под хабракат…
Читать дальше →
Всего голосов 150: ↑142 и ↓8+134
Комментарии88

Самый короткий в мире маркетинговый план

Время на прочтение1 мин
Количество просмотров17K
В догонку к посту про макет бизнес модели, не менее полезный «самый короткий в мире маркетинговый план» (так его назвал автор, Келли Одел).

Можно для любой новой идеи, продукта или услуги заполнить эту табличку и сразу увидеть общую картину с перспективами.

Посмотреть план
Всего голосов 126: ↑115 и ↓11+104
Комментарии40

Вложенные массивы и Magic Methods

Время на прочтение3 мин
Количество просмотров17K
Наверное всем известно про волшебные(магические) методы в PHP, а конкретно __get и __set методы. Однако есть неприятная особенность, если нужно изменить значение вложенного массива. Для решение этой проблемы есть простое и элегантное решение.
Читать дальше →
Всего голосов 57: ↑40 и ↓17+23
Комментарии64

Хранение даты в mysql с учетом часового пояса

Время на прочтение2 мин
Количество просмотров36K
image
Статья о том, как избежать путаницы с датами, хранимыми в mysql.
Эти путаницы возникают по двум причинам:
1. Разные территории нашей планеты имеют разный сдвиг времени.
2. Некоторые страны переходят на летнее время и обратно(карта со странами, переходящими на летнее время).

Многие решают эти проблемы по-разному. Кто-то делает сдвиг даты в SQL запросах, кто-то в php. Кто-то хранит даты в TIMESTAMP, кто-то в DATETIME. Я переискал много источников, но нигде не нашел верного решения данной проблемы на русском. В родной документации по mysql нашел информацию о том, как добиться корректной автоматической конвертации TIMESTAMP в локальное время, но тут тоже свои подводные камни.

Если в php настройка временной зоны делается просто, в mysql возникают сложности, особенно, если доступ к mysql серверу вам ограничен и там еще не установлены некоторые таблицы.
Читать дальше →
Всего голосов 13: ↑9 и ↓4+5
Комментарии8

Использование коэффициента Танимото для поиска людей с одинаковыми предпочтениями

Время на прочтение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}}

Чем выше оценка, тем больше нравится фильм.
Надо вычислить: насколько схожи интересы критиков для того, например, чтобы можно было на основе оценок одного рекомендовать фильмы другому?

Читать дальше →
Всего голосов 109: ↑100 и ↓9+91
Комментарии22

madVR: как выжать максимум качества из видео

Время на прочтение1 мин
Количество просмотров134K
imageВ первый раз я познакомился с madVR, когда обнаружил новый чекбокс в настройках MPC Home Cinema. Как оказалось, качество видео получаемое на выходе madVR видео рендерер просто не сравнимо ни с чем, что я использовал раньше (EVR, Overlay, VMR 7, 9 и Haali). madVR создавался с целью выводить видео максимально возможного качества. В чем особенности madVR и каким образом у него получается видео такого высокого качества?
Читать дальше →
Всего голосов 42: ↑36 и ↓6+30
Комментарии61

Форматирование телефонных номеров на PHP

Время на прочтение13 мин
Количество просмотров58K
Возникла задача автоматического форматирования телефонных номеров в виде страна (город) номер, и первым делом я обратился к существующим решениям.
К сожалению, оказалось, что все найденные решения основываются на обычном подгоне строки под пользовательский формат, имея ограниченную область применения и ошибки при выходе за ее пределы.
Читать дальше →
Всего голосов 103: ↑81 и ↓22+59
Комментарии98

Десять советов начинающим программистам

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

Предисловие


Хорошо, когда работаешь с человеком, который отлично знает толк в своём деле. А что, если случается работать с коллегой, опыт которого не столь большой. Особенно это касается профессионально-личностных качеств. Невольно приходится подсказывать, местами помагать ему, а где-то даже откровенно учить. Все мы когда-то начинали. Все эти действия требуют немалых усилий, которые можно было бы применить по прямому назначению — в разработке проекта, но без подготовки новых специалистов будет тяжелее.

Так вот, чтобы минимизировать эти затраты, давайте «создадим» хорошего, а возможно и идеального начинающего программиста, с высоким потенциалом и светлыми горизонтами.

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

1. Будьте самостоятельными


Если у вас есть какой-то вопрос, и вы не знаете как с ним поступить, то вначале постарайтесь исследовать его самостоятельно. Не ждите постоянной помощи от коллег — у них и без вас работы хватает. Используйте всю мощь поисковых систем, специализированных ресурсов (например, stackoverflow), профессиональных блогов, форумов разработчиков, и конечно же хабра. Большинство типичных «граблей» можно обойти различными эффективными вариантами, а для решения базовых задач есть дюжины готовых решений. Просто пойдите и возьмите.

читать далее...
Всего голосов 151: ↑112 и ↓39+73
Комментарии84

Информация

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