Search
Write a publication
Pull to refresh
0
@caspread⁠-⁠only

User

Send message

Зачем на самом деле используют микроразметку. Обзор от Яндекса

Reading time8 min
Views43K
Мы уже писали о том, как устроен мир семантической разметки и почему стандартов синтаксиса так много. Теперь хотим рассказать, зачем все это нужно. Зачем разработано столько стандартов и где они используются. Почему всем это полезно знать?

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



Поисковые системы стремятся к улучшению выдачи: разрабатывают колдунщики, запускают партнерские программы, собирают «базы знаний». Большая часть этих задач решается с помощью разметки. Сайты могут получить красивый сниппет, передать данные для Яндекс.Островов, а «базы знаний», которые есть почти у всех поисковых систем (Google Knowledge Graph, Bing Satori, Яндекс Entity Search), получают свежие данные.

Facebook был заинтересован в развитии индустрии приложений, поэтому дал разработчикам возможность продвигать свои проекты в социальных сетях и связываться с другими приложениями. Так — тоже с помощью разметки — Open Graph публикует записи приложений в социальных сетях, а Applinks позволяет приложениям легко ссылаться друг на друга. Позже публиковать свои записи стало возможно и в Google+.

Читайте дальше и узнайте подробнее, как перечисленные ниже задачи решаются с помощью семантической разметки в разных продуктах и сервисах:
  • Улучшение выдачи в поисковиках: сниппеты в Яндексе, Google, Bing и Yahoo!
  • Пополнение Баз знаний: Яндекс Entity Search, Google Knowledge Graph, Bing Satori.
  • Другие варианты использования: приложения, глубокие ссылки и почта.
Читать дальше →

Лучшие бесплатные Photoshop плагины для веб-дизайнеров

Reading time3 min
Views151K

Divine Elemente


image
Один из самых потрясающих проектов, которые я встречал за последнее время. Плагин Divine Elemente дает возможность дизайнерам создавать WordPress темы без каких либо навыков фронт/бэк-енда. К сожалению у меня не было возможности поработать с ним. Он доступен только для Windows. Для того что бы все работало необходимо создавать макет в соответствии со встроенным blueprint — это некий Bootstrap, Boilerplate или даже набор инструкций по наименовании слоев и групп. Разработчики обещают множество всего хорошего, в том числе: SEO friendly, валидную и семантичную верстку, читаемый код. Впечатляет!

Читать дальше →

Синхронизация рабочего пространства веб-разработчика

Reading time4 min
Views32K


Доброго времени суток, Хабр!

Недавно я озадачился синхронизацией рабочего пространства среди всех используемых мной компьютеров. Я понял, что таскать все файлы и базы данных сайта с одного компьютера на другой, не вариант. Решив автоматизировать этот процесс, я обратил внимание на Dropbox \ Google Drive \ Yandex.Disk \ любой другой облачный диск ( выбрать свой вариант ).
Читать дальше →

Как находить и устранять утечки памяти на примере Яндекс.Почты

Reading time8 min
Views67K
На первый поверхностный взгляд, слова JavaScript и «утечка памяти» рядом стоять не могут. Настоящих утечек памяти в JS, конечно, не может быть, потому что процесс сборки мусора происходит автоматически и не может контролироваться из нашего кода. Выделить память под объект и забыть освободить невозможно. Но могут быть ситуации, связанные с ошибками в логике работы приложения, которые приводят к утечкам памяти другого рода. Например, забиндили обработчик, в котором что-то делаем с методами общего объекта и забыли его анбиндить. Или же посылаем письмо с большим телом и не очищаем тело даже после отправки.

image

Мы в Яндекс.Почте, сложном и массовом проекте, накопили заметный опыт в поиске и устранении таких утечек, и хотим им поделиться.
Итак, больше подробностей

Маркетинговая стратегия веб-студии/агентства

Reading time8 min
Views74K
Привет, Хабр! Мы продолжаем наш цикл материалов про бизнес веб-студий в рамках Осеннего Ускорения с NetCat и сегодня подробно говорим о маркетинговой стратегии веб-студии, а также публикуем шаблон карты маркетинговых активностей.

На нашем рынке творится полный кошмар с позиционированием и маркетингом студий/агентств. Каждая первая компания гордо объявляет себя «молодым динамично развивающимся digital-агентством полного цикла» — и в результате все игроки сливаются в единую серую безликую массу. Обсудим, как можно этого избежать, и как сформировать грамотную маркетинговую стратегию развития своей компании. Я не претендую на то, что такая структура документа является единственно верной, но на моем опыте такой формат всегда себя оправдывал.

Введение


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

Обзор и классификация CMS по категориям (2013)

Reading time30 min
Views237K
Недавний поиск списка CMS, на примере которых можно было бы объяснить студентам архитектуру и структуру сложного web-сайта, привел меня к любопытной статье с классификацией CMS, которая, однако, на текущий момент немного устарела, да и написана несколько сумбурно. Это подвигло меня составить новый обзор, собрав больше решений и дополнив их по возможности ссылками на официальные сайты, страницы закачки и демо-панели.

Я рассматривала CMS на php, в основном бесплатные, за некоторым исключением. В результате на текущий момент получился такой набор:

CMS общего назначения: Alto CMS, Cogear, Contao, Cotonti, DataLifeEngine, Drupal, ImageCMSCorporate, Joomla, Host CMS, MaxSiteCMS, MODX, MosquitoBloodyMary, ReloadCMS, Wordpress
Галереи: Coppermine, Gallery (Gallery2, обновленная до версии 3), Koken, MG2 = MiniGal 2, Pikateka, SimpleViewer, Zenphoto
Социальные сети: Elgg, Explay CMS, InstantCMS, LiveStreet, BigStreet
Форумы: IPB (Invision Power Board), Phorum, phpBB, phpBBex, PunBB, Simple Machines Forum, Vanilla, vBulletin
Интернет-магазины: ECShop, Magento, OpenCart, Семейство osCommerce, Prestashop
Сайты-визитки без SQL-базы: GetSimple, Monstra, Nanote, Stacey, CMS Чайник
Читать дальше →

Sublime Text Vintage Mode — справочник по горячим клавишам

Reading time3 min
Views50K
Как увидел Vintage Mode в действии сразу захотелось научиться им владеть. Как раз к этому времени я прошел курс Соло + VerseQ для слепого печатания на английском. Связка с Vintage Mode, мне казалось, будет очень эффективной для верстки, и я не ошибся.

image Для тех кто не знает Vintage Mode (Insert Mode в VIM) плагин для Sublime Text, который идет в комплекте с редактором. Взят он из редактора VIM, и многие думают, что пользу он может принести только бывшим пользователям Vim, но это ошибочное мнение. По умолчанию плагин деактивирован, как активировать объяснять не буду инструкция есть здесь. Скажу только что для входа в режим Vintage используется клавиша i, а для выхода ESC. По моему это крайне неудобно. Я воспользовался советом из оффициальной документации и теперь вхожу в Vintage Mode два раза нажав клавишу i. Подробности тут.

Вроде все отлично осталось только узнать список команд для каждой клавиши, немного понервничать, привыкнуть и готово. Но в официальной документации информации по клавишам нет, они обосновывают это тем, что клавиши те же что и в редакторе Vim. Но различия есть и их немало, документации на русском вообще нет ни по одному из редакторов (именно по Hotkeys Vintage Mode).
Читать дальше →

Коктейли ко дню программиста

Reading time5 min
Views189K
Здравствуй, Хабр!

Осталось несколько дней до дня программиста и, конечно, в эту 13-ю пятницу, многие из пользователей хабра буду отмечать этот праздник. Буду отмечать и я.

По случаю профессионального праздника, мне бы хотелось поделиться с хабравчанами рассказом о своём небольшом кулинарном проекте, который удалось реализовать буквально накануне. Думаю из названия поста уже стало понятно, что это — коктейли для программиста. Кажется, до этого момента IT и миксологию еще никто не пытался объединить, а потому у меня есть некоторая надежда на успех моего начинания.

Все началось вот с чего: моя супруга увлекается кулинарией и ведет небольшой кулинарный блог. В прошлом году на мой день рождения она пригласила к нам в гости на кухню настоящего бармена из барного startup-проекта БАРаДОМа.нет. С момента знакомства с Артёмом (барменом который превратил мой день рождения в домашнюю барную вечеринку), у меня появилась идея: найти рецепты (или придумать самим) коктейлей, которые бы вписались в IT-тематику.

Итогом нескольких дней активной переписки с Артёмом стала вот такая небольшая коктейльная карта:

  • Ruby
  • Python
  • Суровый Perl
  • JMP (aka Assembler)
  • Profit!
  • Epic fail
  • Memory leak


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

Чин-чин!

Основы профессиональной верстки электронных писем

Reading time7 min
Views105K
Верстка электронных писем
Ни для кого не секрет, что e-mail маркетинг только начинает набирать обороты во всем мире. А для России – это ещё и вовсе молодая ниша на рынке. И профессиональная верстка электронных писем здесь один из составляющих факторов успеха. Под профессиональной версткой понимается не только визуально красиво и надежно сверстанный макет, но и то, как выглядит usability открытки с маркетинговой точки зрения, как оптимизирована графика вместе с типографией для спам-фильтров и многое другое. Верстка электронных писем довольно обширная тема, в одной статье все не уместить, поэтому в данном посте постараюсь описать только базовые элементы и приемы, надежно проверенные за годы практики и работающие в top самых используемых почтовых клиентах мира: iPhone 4S/5; Outlook 07/10/13; iPad; Apple Mail; Android 2.3/4.0; Yahoo; Gmail. Если рассматривать только российский рынок, то нельзя не упомянуть о Mail.ru и Яндекс.Почта.

Что нужно знать в начале?


Сразу хочу выделить несколько из основных и важных моментов:

  1. В нашем арсенале имеется очень урезанный набор css-свойств, которые поддерживаются всеми почтовиками. При этом, стили нужно прописывать inline, а в head выносить только вендорные свойства и те блоки объявлений, которые не несут нагрузки на основную стилизацию письма. Ну и использовать link in head — крайне нежелательно.
  2. Не используйте background-image в основных визуальных элементах дизайна и не помещайте в изображения важную текстовую информацию. Вообще нужно всегда учитывать такой вариант, что письмо будет просматриваться получателем без единого изображения.


Каркас


Пожалуй каждый, кто хоть раз верстал письмо под рассылку, знает, что каркас лучше строить с помощью таблиц. На самом деле простая блочная модель div поддерживается на данный момент во всех перечисленных выше почтовиках, за исключением MS Outlook начиная с 2007 версии. Это связано с тем, что в качестве движка последние версии Outlook используют Microsoft Word, который в свою очередь много не знает о блочных css-свойствах. Игнорировать при верстке данный почтовый клиент я не рекомендую, поэтому в качестве фундамента все же используйте table. Да и добившись хорошего результата для Outlook, можно быть уверенным, что в большинстве почтовиках, письмо будет смотреться тоже хорошо, а скорее и лучше.

В качестве примера рассмотрим наиболее важные элементы из следующего, не сложного шаблона:
Шаблон письма для рассылки
Читать дальше →

Серьезное проектирование серьезных сайтов. Часть 1. Аналитика

Reading time13 min
Views122K

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

Читать дальше →

На пути к созданию безопасного веб-ресурса. Часть 1 — серверное ПО

Reading time7 min
Views99K
Я уже довольно долгое время хочу формализовать все свои мысли, опыт, ежедневно применяемый на практике, и многое другое в одном месте и предоставить их общественности. Уверен, многим этот материал будет полезен. Он посвящен различным моментам в конфигурации серверного ПО Linux и безопасным подходам к созданию сайтов/приложений на php (все же это до сих пор одна из самых популярных связок, хоть её успешно и подвигают другие технологии. Но советы так же легко применимы и к веб-ресурсам на других технологиях).

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

Adobe бесплатно раздает Creative Suite 2 (или же не раздает?)

Reading time2 min
Views320K
Читайте UPD7, Adobe разместила официальный ответ в своем блоге.

Акция невиданной щедрости от Adobe. Они решили раздать хоть и устаревший, но все же полный Creative Suite второй версии. Доступны версии как под Mac (PowerPC) так и под Windows.

В комплекте:
  • Creative Suite 2
  • Acrobat 3D 1.0 for Windows
  • Acrobat Standard 7.0
  • Acrobat Pro 8.0
  • Audition 3.0
  • GoLive CS2
  • Illustrator CS2
  • InCopy CS2
  • InDesign CS2
  • Photoshop CS2
  • Photoshop Elements 4.0/5.0
  • Adobe Premiere Pro 2.0


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


Скачать можно тут

UPD: Сайт слег, ключи одни и те же для всех. Под катом ключи и ссылки на софт. А так же сообщение от одного из разработчиков, говорящее что данные ключи и установщики могут использоваться только теми у кого уже есть купленная лицензия на CS2.
Читать дальше →

jQuery изнутри — парсинг html

Reading time6 min
Views66K
Продолжаем дело первой статьи и пытаемся разобраться с тем, что же делает за нас jQuery, когда мы с помощью этой библиотеки создаем DOM-элементы.

В прошлом выпуске мы упомянули, что при передаче в jQuery вместо селектора html-строки, на основе нее функция parseHTML создаст соответствующие элементы и вернет их в привычном jQuery-объекте. Сейчас мы рассмотрим все это более тщательно и затронем кроме core.js еще manipulation.js и attributes.js (мельком).
Я клевый, мне интересно!

Концепт-арт — история, назначение, проблемы связанные с ним, и способы его создания

Reading time21 min
Views125K


Предисловие


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

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

У тех матерых спецов, которые рано или поздно всенепременно явятся сюда, чтобы линчевать меня (хотя бы за подобную манеру изложения и отношение к предмету), — я заранее прошу прощения. Каюсь, грешен, но ничего с собой поделать не могу, и графоманию эту намерен и дальше продвигать в массы.

Партия реверансов сделана, тылы прикрыты, паноптикум можно считать открытым.

Уверен, что голая теория вам нужна не более чем собаке пятая лапа. Признаюсь также, что все разы, когда я сталкивался с голой теорией, заканчивались крепким сном. Когда-то давно, когда я только начинал изучать первый пакет трехмерного моделирования, купив пару толстенных книг и проигнорировав при этом известное положение о том, что важен совсем не размер, со мной начали приключаться удивительные вещи. На первых же страницах. Я засыпал. Позорно. В тех позах, в которых меня застигала чертова книга. Везде. Даже в метро.

Я не хочу того же для вас. Хочу, чтобы история была интересной, а посему – долой нудную теорию, долой правила, лекторский тон и никому не нужный апломб. Никаких графиков, таблиц и сравнений. Только эмоции и веселье, по возможности, наподобие этой работы. Один из артов которые я изготовил во время компании в поддержку финансирования разработки игры Wasteland 2.



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

Технология быстрого создания фонов для 2D-игр на базе 3D-заготовок (48 часов разработки)

Reading time15 min
Views151K

Вместо предисловия


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

Перед тем как начать я хотел бы сделать акцент на двух положениях:
Первое. Мы исходим из того что читатель знаком с такими пакетами как 3D Studio MAX (либо любым другим пакетом трехмерного моделирования) и Photoshop (или любым его аналогом). В данном конкретном случае я собираюсь использовать терминологию этих двух пакетов. Однако, не смотря на это те же самые принципы можно использовать, пользуясь любым другим софтом.

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

Я весьма относительный технарь и многие вещи, доступные другим технарям для меня — темный лес. Не смотря на это я считаю, что мастеру достаточно иметь один-два любимых инструмента, чтобы делать шедевры, а посредственности в свою очередь не хватит и чемодана этих инструментов, ибо за внешним лоском, эффектами и хитринками не будет, не души, не профессионализма.

Хочу также отметить, что я не причисляю себя к мастерам, которые делают шедевры. Данное примечание я делаю для тех злых людей, которые говорят (или скажут после публикации), что я заносчив, что меня занесло под небеса, и тех кто вместо того чтобы работать предпочитает злословить словно ябедник Кийр из моей любимой книги Оскара Лутса «Весна».

С преамбулами покончено перейдем к сути.

Я утверждаю и не беспочвенно, что хороший фон можно и нужно создавать не за неделю, не за пять дней и даже не за три. Чтобы сделать хорошую картинку для казуальной игры, без разницы i-spy это, match-3 или аркада, достаточно 48 часов. Разумеется, при условии того, что человек занимается работой, а не просиживанием штанов.

image

Читать дальше →

Кое-что о весе страницы

Reading time2 min
Views120K
Три года назад, когда я работал веб-разработчиком на YouTube, один из старших инженеров начал разглагольствовать о слишком большом весе видеостраницы. Страница была раздута до 1,2MB и содержала десятки запросов. Этот инженер так и заявил: если целые клоны Quake пишутся с объемом до 100KB, у нас просто нет оправданий! Я согласился с ним и был в восторге от нового проекта, решив сделать страницу просмотра YouTube с весом ниже 100 КВ. В этот вечер, в автобусе, едущем из Сан-Бруно, я написал код прототипа. Я решил ограничить функциональность базовым минимумом: видеоплеер, пять похожих видео, кнопка «Поделиться», инструмент разметки и десять комментариев, загружаемых с помощью AJAX. Я назвал проект “Feather” (англ. — перышко).

Даже при таком ограниченном наборе функций страница весила около 250 КБ. Я углубился в изучение кода и понял, что наше средство оптимизации (т.е. Closure compilation) не способно исключить код, который никогда реально не используется на самой странице (чего и следовало ожидать от любого инструмента в сложившихся обстоятельствах). Единственным способом дополнительно сократить код было вручную оптимизировать спрайты CSS, Javascript и изображения. Три дня стараний — и я получил гораздо более удачное решение. И все равно это было не 100 КБ. Я совсем недавно закончил написание кода видеоплеера HTML5, и поэтому решил включить его вместо гораздо более увесистого Flash player. Бамс! 98KB, и всего 14 запросов. Я снабдил код некоторыми базовыми возможностями мониторинга и запустил его исполнение в части нашего трафика.
Читать дальше →

Почему перемещать элементы с помощью translate лучше, чем с position:absolute top/left

Reading time2 min
Views37K
Для перемещения элемента по экрану есть два основных способа:

  • CSS 2D-преобразования и translate();
  • position:absolute и изменение top/left.

Крис Койер недавно писал, почему лучше и логичнее использовать translate (это быстрее, и свойство position имеет большее отношение к вёрстке, а не к визуальным эффектам и анимации, в отличие от translate).

Я хочу расширить его ответ и привести несколько хороших примеров. Я записал скринкаст, в котором помощью Chrome DevTools timline рассматриваю различия между этими подходами с точки зрения производительности, особенностей рендеринга и композитинга на GPU.



Если вам нужна сокращённая текстовая версия — продолжайте читать.
Читать дальше →

Создаем адаптивную страницу портфолио с фильтрами

Reading time8 min
Views31K
Доброго времени суток уважаемые хабражители. На сегодняшний день уже многие знакомы с понятием адаптивный дизайн и я хочу поделиться интересной реализацией страницы портфолио с фильтрами.

Netcribe
ДЕМО

Читать дальше →

Книги для тимлидов и руководителей проектов

Reading time2 min
Views171K
Какими свойствами должен обладать хороший тимлид? Он, несомненно, должен быть технарем, иметь разносторонний опыт, уметь налаживать диалог внутри команды и с начальством, вести дискуссии и принимать решения, брать на себя ответственность, понимать бизнес-процессы, думать как заказчик и владелец бизнеса. Ну и быть немного психологом.

В отечественном IT я часто наблюдаю следующую картину: тимлидом часто становился лучший (?) разработчик из команды (aka 23-летний сеньор). А чтобы стать руководителем проекта (project manager) иногда достаточно просто знать английский и «павэрпойнт» на уровне пользователя. Это реалии отечественного аутсорсинга и с этим нужно как-то жить.

В итоге часто получается как-то так:
Потому что на десять сеньоров по статистике девять тупят.
Читать дальше →

Javascript: Рисуем с помощью кривых Безье

Reading time3 min
Views63K
Доброго времени суток, хабражители!
Мне очень нравятся барочные элементы. В очередной раз встретив подобный узор на одном из сайтов, представил, как бы он чудесно смотрелся в анимации, картинка бы ожила. Тем более с приходом html5 оживление должно стать гораздо проще в реализации. Но как по точкам нарисовать кривую? Тут как раз кстати вспомнилась кривая Безье!

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

На самом деле, как всегда, надо было лишь уделить немного времени теории. Все оказалось просто и довольно интересно. В итоге получилась реализация кривых на яваскрипте с использованием canvas.
Кому интересно как строится эта извилистая бестия добро пожаловать под кат!
Читать дальше →

Information

Rating
Does not participate
Registered
Activity