Как стать автором
Обновить
0
0
Егор Назаров @mrvorazan

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

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

Крутой шаринг страниц в соцсети с помощью Open Graph

Время на прочтение2 мин
Количество просмотров93K
Решил собрать в одной статье короткий рецепт приготовления страницы, которая круто шарится во все основные соцсети. Тем, кто вообще не в теме, придётся сначала прочитать про Open Graph protocol.
Читать дальше →
Всего голосов 18: ↑13 и ↓5+8
Комментарии5

Веб-аналитика с помощью Google Tag Manager

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


Относительно недавно, мы проводили редизайн и оптимизацию нашего сайта и наткнулись на ряд проблем связанных со скриптами и кодами отслеживания от Google. А именно:

  • проблема избытка кода Google в коде страниц (отслеживание событий, Google A/B tests, Google Analytics)
  • неудобство управления и слежения за скриптами.
  • постоянная необходимость редактирования шаблонов страниц, для внесения изменений и дополнительных параметров в скрипты.
  • зависимость от релизов на поддоменах (индивидуальный случай). Например, над личным кабинетом работает не один человек, а команда разработки с использованием контроля версии (VSC) и для внесения малейших изменений приходилось ждать очередного релиза.

В данной статье мы рассмотрим решение данных проблем на примере Google Analytics, посредством Диспетчера тегов от Google (Google Tag Manager) и рассмотрим новую модель организации работы со скриптами, для анализа работы сайта с практическими примерами и кучей картинок.
осторожно, много картинок
Всего голосов 1: ↑0 и ↓1-1
Комментарии1

Несколько интересностей и полезностей для веб-разработчика #40

Время на прочтение5 мин
Количество просмотров72K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

NativeScript




Открытый фреймворк для создания мобильных приложений под iOS, Android и Windows Phone основанный на NodeJS. И весь цимус в том, что это не очередная кроссплатформенная оболочка над WebView (аля PhoneGap), NativeScript со слов разработчиков обеспечивает на JavaScript такие же возможности, какие обеспечивают нативные Objective-C, Java или .NET.

Также хочу упомянуть о NW.js, который до появления IO.js назывался Node-Webkit. Проект по такому же принципу позволяет писать десктопные приложения под Windows, Mac и Linux с помощью веб-технологий. Более того микроконтроллеры, умные дома, интернет вещей, Oculus Rift, Nest выпускают API на JS. Вспоминая все эти новости, хочется сказать, что JavaScript все чаще и чаще представляется как унифицированное средство для кроссплатформенной разработки.
Читать дальше →
Всего голосов 39: ↑37 и ↓2+35
Комментарии9

Несколько интересностей и полезностей для веб-разработчика #30

Время на прочтение6 мин
Количество просмотров51K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Cloudtunes



Cloudtunes один из тех проектов, глядя на которые я не понимаю мотивации разработчиков выкладывать такие наработки в открытый доступ. Не сочтите меня за сугубо меркантильную личность, но данный проект — это грубо говоря клон iTunes в облаке и это просто великолепный сервис. Cloudtunes обеспечивает единый интерфейс для вашей медиатеки, синхронизируя данные между Dropbox, Youtube, Lastfm и тд. Серверная часть написана на Python (Tornado, Celery, Mongo DB, MongoEngine, Redis), а клиентская на CoffeeScript (Backbone.js, SocketIO, Handlebars, Compass, SoundManager).

Читать дальше →
Всего голосов 75: ↑71 и ↓4+67
Комментарии13

Смелый стайлгайд по AngularJS для командной разработки [1/2]

Время на прочтение5 мин
Количество просмотров39K
После прочтения Google's AngularJS Guidelines у меня создалось впечатление о его незавершённости, а ещё в нём часто намекали на профит от использования библиотеки Closure. Ещё они заявили, «Мы не думаем, что эти рекомендации одинаково хорошо применимы для всех проектов, использующих AngularJS. Мы будем рады видеть инициативу от сообщества за более общий стайлгайд, применимый как для небольших так и крупных проектов».

Отталкиваясь от личного опыта работы с Angular, нескольких выступлений, а также имеющемуся опыту командной разработки, представляю Вашему вниманию этот смелый стайлгайд по синтаксису, написанию кода и структуре приложений на AngularJS.
Читать дальше →
Всего голосов 40: ↑37 и ↓3+34
Комментарии22

Советы front-end разработчику

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


Привет, читатель хабра.

Наверное, ты сразу спросишь меня: «Да кто ты такой, чтобы давать мне советы?». Итак, немного обо мне.

Первое мое общение с HTML и CSS было 10 лет назад, еще в школе, когда у меня только появился интернет, и я понял что тоже хочу делать странички, которые сможет увидеть весь мир. С тех пор у меня есть как минимум 5 полных лет опыта разработки сайтов по-взрослому. Сейчас я могу без лишней скромности сказать, что сверстал я уже пару сотен сайтов, большинство из которых, как ни странно, совершенно не совпадают с моими текущими требованиями к верстке.

Я не хочу рассказывать как надо делать, эта статья результат моего опыта и попытка написать рекомендации тем, кто только начинает, хотя и для матерых верстальщиков (слово режущие слух) здесь могут найтись интересные идеи.
Если ты заинтересовался прошу под кат…
Читать дальше →
Всего голосов 129: ↑109 и ↓20+89
Комментарии139

Реализация быстрого импорта из Excel на PHP

Время на прочтение3 мин
Количество просмотров68K
Мы продолжаем рассказывать о технологиях, используемых на нашем сервисе email-маркетинга Pechkin-mail.ru. Одной из ключевых задач любого сервиса, связанного с данными клиентов, является загрузка этих данных на сервис. Для Печкина очень важно быстро и без проблем для пользователя загружать адресные базы, содержащие email-адреса, имена, фамилии и другие дополнительные данные.

Что использовать в качестве инструмента?


В качестве базового стандарта, используемого при импорте адресных баз, мы взяли Microsoft Excel. Объясняется это просто:
  • это стандартный инструмент, которым на базовом уровне владеют 100% пользователей компьютеров. Более того, в бизнесе — это де-факто корпоративный стандарт и используется даже, если на рабочих компьютерах Mac или Linux.
  • Практически все CRM-, CMS-, облачные или десктопные системы имеют экспорт в Excel или CSV, который простым пересохранением приводится к формату XLS или XLSX.
  • Известно также, что “90% ошибок ПО сидит в полуметре от монитора”. Не в обиду будет сказано рядовым пользователям, но мы должны учитывать самый базовый уровень подготовки и тех. поддержке для объяснения достаточно сказать “Загрузите Excel-файл”, а не объяснять процедуру подготовки файла в нужном формате.


Проблему пользователей при импорте адресных баз сняли. Но тут возникает уже проблема непосредственно разработки.
Прочитать о быстрой реализации импорта из Excel на PHP и LibXL
Всего голосов 32: ↑25 и ↓7+18
Комментарии23

Несколько интересностей и полезностей для веб-разработчика #23

Время на прочтение4 мин
Количество просмотров42K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Basket.js



Basket немного похож на RequireJS, только с его помощью все подключаемые скрипты и стили кешируются в localStorage. Тесты Google и Bing демонстрируют улучшение производительности при использовании локального хранилища по сравнению с обычным браузерным кешем. Проект изначально появился как эксперимент, который полностью оправдал результаты этих тестов.
basket
    .require({ url: 'missing.js' })
    .then(function () {
        // Success
    }, function (error) {
        // There was an error fetching the script
        console.log(error);
    });


Читать дальше →
Всего голосов 80: ↑76 и ↓4+72
Комментарии16

Сравнение сервисов для автодополнения адресов в форме

Время на прочтение3 мин
Количество просмотров93K
Автодополнение адреса


На Хабре не раз поднимался вопрос автодополнения адресов в форме (раз, два, три).

Но вот и перед мной появилась задача реализовать такое автодополнение для небольшого интернет магазина. Критерии были такие:
  • Автодополнение адресов только Москвы
  • Автодополнение адреса одной строкой
  • Решение должно быть бесплатно (лимит запросов не менее 1000 в сутки)
  • Возможность подключить без дополнительных JS библиотек. (Я использую AngularJS Bootstrap-UI, в котором есть директива Typeahead, реализующая автодополнение формы)
  • Стопроцентный uptime не обязателен


Но какой источник данных выбрать? Я выбрал целых четыре, и решил их сравнить: в одном углу ринга заморские Google Geocode и Google Autococomplete, а в другом отечественные КЛАДР в облаке и DaData подсказки.

DISCLAIMER: Автор никак не причастен к разработчикам ни одного из представленных сервисов.
Интересно? Тогда прошу под кат
Всего голосов 56: ↑53 и ↓3+50
Комментарии56

Полезные материалы для мобильного разработчика #49 (14-20 апреля)

Время на прочтение3 мин
Количество просмотров11K
На этой неделе была очень интересная статья о «мобильном» ценообразовании от Олега Якубенкова из Zeptolab, вышла превью-версия WP 8.1 и опубликован анонс изменений в магазинах приложений Windows и Windows Phone, выпущен App Annie Market Index за первый квартал. Ну и много других интересных новостей в еженедельном дайджесте.

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

Python-digest #23. Новости, интересные проекты, статьи и интервью [13 апреля 2014 — 20 апреля 2014]

Время на прочтение3 мин
Количество просмотров11K
Подоспела очередная подборка новостей, статей и интересных проектов из мира python и близлежащих технологий. Главной новость, пожалуй, можно назвать просто шикарную подборку видео с конференции PyCon 2014, которая сама по себе способна увлечь на много часов. Но и другие материалы вполне достойные. А вы хотите python 2.8?

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

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

Возвращаем электронику к жизни — смываем пыль и вытесняем воду

Время на прочтение2 мин
Количество просмотров45K
Привет всем хабрапользователям!

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

image
Читать дальше →
Всего голосов 44: ↑22 и ↓220
Комментарии55

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю № 86 (1 — 7 декабря 2013)

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

Читать дальше →
Всего голосов 46: ↑39 и ↓7+32
Комментарии9

8 HTML элементов, которые вы не используете (а следовало бы)

Время на прочтение4 мин
Количество просмотров96K
image
Веб сегодня все больше и больше семантический. Но что означает «семантический»? Почему это важно?

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

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

Ок, итак семантическая разметка — это хорошо, но как ее использовать. Лучше всего начать с замены обычных тегов на более выразительные. Давайте посмотрим восемь элементов, которые позволят вам войти в эту игру.
Читать дальше →
Всего голосов 214: ↑175 и ↓39+136
Комментарии101

Несколько интересностей и полезностей для веб-разработчика (выпуск 9)

Время на прочтение3 мин
Количество просмотров38K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Docpad



«Нашумевший» проект в Twitter и GitHub. По заявлению разработчиков «Docpad снимает ограничения и убирает разрыв между профессионалами и новичками. Теперь дизайнеры и разработчики могут создавать веб-сайты быстрее, чем когда-либо прежде». Docpad — это статический генератор сайтов написанный на Node.js. Он позволяет с легкостью создавать шаблоны и блоки. Работает c PHP, Ruby, CoffeeScript и др. В нем есть file wathing, live reload и самое главное «amazing plugin system». Большим плюсом является обучающее видео (хоть и на английском).
Видео: Rapid Web Development with DocPad


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

WOW CSS

Время на прочтение2 мин
Количество просмотров38K
Доброго времени суток, уважаемые хабравчане. Не так уж давно, для того чтобы сделать что-то «округленное» с нефиксированной высотой приходилось создавать таблицу и крайним ячейкам в бэкграунд задавать нарезанные углы. Вообще любое «непрямоугольное» могло быть только графическим изображением. Сейчас же современные стандарты CSS позволяют создавать весьма интересные вещи. Но все нетипичные фигуры в большинстве своем дозволено сделать благодаря псевдо-селекторам :before и :after. Даже существуют некоторые «паттерны» для этого. А в недалеком будущем появится возможность задавать любые формы для элементов. С приходом CSS Masking я бы сказал наступит веб-дизайнерская сингулярность — веб-дизайн сможет быть любым. Единственное ограничение — это предел фантазии дизайнера. Но не будем о будущем. Все же я предлагаю вдохновиться прекрасным настоящим. В этом посте я собрал несколько крутых CSS реализаций. В некоторых из них спрятаны полезные техники, а в других любовь к CSS творчеству авторов этих подделок.

Не для таких же как и я каскадных зануд хочу добавить, что CSS изобретения могут быть и коммерчески выгодными. Только присутствие в CSSAWARDS, СSSWINNER, CSSREEL или CSSDESIGNAWARDS будет неплохой рекламой.

Таймер на чистом CSS




Читать дальше →
Всего голосов 82: ↑73 и ↓9+64
Комментарии14

WidLib – декларативный js-фреймворк для построения виджетов

Время на прочтение7 мин
Количество просмотров16K
Сегодня я хотел бы анонсировать js-фреймворк, позволяющий создавать диалоговые микро-приложения в несколько строк js-кода, разделяемого между клиентом и сервером.

К сожалению, у автора проекта не хватило мужества довести его до ума. Простите.



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

В отличие от большинства фреймворков, WidLib не претендует на универсальность: он предназначен для быстрого создания многостраничных диалоговых приложений.
Читать дальше →
Всего голосов 52: ↑50 и ↓2+48
Комментарии9

Превращаем статический сайт в мобильное приложение с помощью jQuery Mobile и PhoneGap

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

После приобретения телефона на базе Android, возникла задача сделать из сайта brainexer мобильное приложение. Выбор пал на jQuery Mobile и PhoneGap. До этого никаких познаний в обрасти мобильной разработки не было, поэтому пришлось осознать некий пласт новой информации, выжимкой из которого я бы и хотел поделиться. В итоге статья представляет из себя небольшой quick start — как из пачки html файлов получить приложение опубликованное в Google Play.
Читать дальше →
Всего голосов 54: ↑46 и ↓8+38
Комментарии41

Простой способ добавить геолокацию в свой проект для Android

Время на прочтение3 мин
Количество просмотров60K
Долго я прочёсывал интернет в поисках простого решения, как мне в проект добавить 1 только класс и больше не беспокоиться о проблемах геолокации.
Критерии были такие:
1) решить всё в 1 классе, как можно меньше используя внешний код.
2) у пользователя должна быть всегда под рукой 1 static переменная в которой указанно его местоположение и больше ни о чём он знать не должен.

Большинство постов не отвечало на поставленный вопрос: конечно сначала нужно обратиться к сервису, потом нужно установить listner, потом вы можете посмотреть на трёхстраничный краткий пример как это делать.
В итоге я написал свой класс, с которым и хочу вас познакомить: он прост в использовании и с ним сможет справиться любой: просто добавьте его в проект и будет вам счастье.
Читать дальше →
Всего голосов 6: ↑4 и ↓2+2
Комментарии16

Слово в защиту пиксельных значений media queries

Время на прочтение8 мин
Количество просмотров36K
Я покажу тебе, глубока ли кроличья нора.Читая публикации о верстке для вэба, вы не раз натыкались на рекомендацию не использовать пикселы в media queries. Например, вот цитата из совсем недавней статьи на Хабре:

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

Что, если я скажу вам, что использование пикселов в media queries не только не причиняет никакого вреда верстке, но и имеет преимущества над использованием em'ов?

Читать дальше →
Всего голосов 118: ↑114 и ↓4+110
Комментарии64
1

Информация

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