Pull to refresh
0
0
Виталий @pheonix

User

Send message

12 уроков из управления проектами и запуска стартапов

Reading time9 min
Views126K
Я разработал около сотни проектов, в том числе — стартапов. Многие из них достигали пика и умирали, некоторые работают до сих пор. Делал как B2C, так и B2B.

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

Если лень читать — ролик, выражающий основной дух и главный смысл, находится внизу. Ролик вызовет восхищение — отлично, идите делать очередной релиз. Ролик вызовет отторжение — читайте пост до другой реакции сколько угодно :)



1. Важнее всего — желание

Один из первых стартапов в моей жизни не состоялся потому, что из четверых друзей, кто решил делать, желания сделать проект по-настоящему не было ни у кого. Если вы не способны в течение каждого дня месяца думать о проекте и предпринимать реальные шаги, возможно, не стоит делать проект.
Читать дальше →
Total votes 78: ↑64 and ↓14+50
Comments41

Быстрое веб-приложение — трепанация сети

Reading time10 min
Views33K
Психология — интересная и иногда полезная наука. Многочисленные исследования показывают, что задержка в отображении веб-страницы дольше 300 мс заставляет пользователя отвлечься от веб-ресурса и задуматься: «что за хрень?». Поэтому УСКОРИВ веб-проект до психологически невоспринимаемых значений, можно ПРОСТО удерживать пользователей дольше. И именно поэтому бизнес готов тратиться на скорость: $80М — чтобы уменьшить latenсy всего на 1 мс.



Однако, чтобы ускорить современный веб-проект, придется кровушки пустить и основательно покопаться в этой теме — поэтому базовое знание сетевых протоколов приветствуется. Зная принципы, можно без особых усилий ускорить свою веб-систему на сотни миллисекунд всего за несколько подходов. Ну что, готовы сэкономить сотни миллионов? Наливайте кофе.
Читать дальше →
Total votes 83: ↑66 and ↓17+49
Comments42

Интеграция сайта с 1С — риски и немного реальности

Reading time5 min
Views99K
Фэйлом кончаются от 30% до 50% попыток внедрить штатную интеграцию сайта с 1С. Это коллеги рассказали, у меня-то в бизнес-плане заложено 75%. То есть, в трех случаях из четырех — придется что-то подкручивать напильником, а в одном — вообще вызывать эвакуатор или реанимацию. И чего бы это, ведь…

… Топовые производители современных отечественных систем управления в один голос заявляют, что умеют интегрироваться с 1С. Естественно, это касается по большей части типовых конфигураций — всего не предусмотришь, ага. Да и маркетинг заставляет говорить, что «это просто!». Слоган, который, наверное, никогда не умрет.

Рассмотрим процесс интеграции с точки зрения клиент-исполнитель. Сценарий продажи может превратиться в сущий адъ из-за пары неловких движений менеджера.



Так что знакомимся с горьким опытом и делимся своим:

Читать дальше →
Total votes 97: ↑87 and ↓10+77
Comments91

Как устроен мир семантической микроразметки

Reading time13 min
Views155K
Я работаю в команде семантического веба в Яндексе. Мы занимаемся тем, что создаем продукты на основе семантической разметки, делаем свои расширения и участвуем в развитии стандарта Schema.org.

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



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

Микроразметка состоит из словаря и синтаксиса.
Что и как, подробно...
Total votes 109: ↑100 and ↓9+91
Comments69

Верстка для самых маленьких. Верстаем страницу по БЭМу

Reading time14 min
Views391K
Недавно хабраюзер Mirantus написал статью «Как сверстать веб-страницу», в которой рассказывал о том, как же сверстать веб-страничку. В его статье было подробно рассмотрено, как выделить отдельные элементы из заданного шаблона, подобрать шрифты и т.п. Однако его подход к написанию, собственно, веб-страницы мне показался не очень хорошим, о чем я написал в комментариях.

В данной статье я хочу рассказать, о том, как можно сверстать «хорошо» (по крайней мере структурировано ;), а заодно рассказать и о методологии, которая может «упростить жизнь» при верстке. Структура поста будет следующей:

  • BEM
  • Собственно пример — как сверстать страницу

Читать дальше →
Total votes 154: ↑133 and ↓21+112
Comments172

FileAPI 2.0: Загрузка файлов на сервер год спустя

Reading time11 min
Views70K
FileAPI 2.0Привет Хабр! Примерно год назад я представил вашему вниманию первую версию open-source библиотеки FileAPI, предназначенную для работы с файлами на клиенте и последующей загрузки на сервер.

За это время был пройден долгий путь. Библиотека заработала 670+ звезд и 90+ форков. С помощью github-сообщества удалось исправить множество «детских» проблем и внести ряд улучшений. Было закрыто более 100 тасков, и благодаря Илье Лебедеву сделана загрузка файлов по частям. Сегодня я с гордостью хочу представить вам FileAPI 2.0.
Читать дальше →
Total votes 166: ↑157 and ↓9+148
Comments85

MySQL шпаргалки

Reading time3 min
Views823K
Часто, когда разрабатываешь сайт, замечаешь, как на одни и те же грабли наступают разработчики при проектировании базы данных.

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

Читать дальше →
Total votes 215: ↑193 and ↓22+171
Comments230

На Яндекс.Картах теперь можно забронировать столик, записаться на стрижку или на приём к врачу

Reading time1 min
Views17K

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



Читать дальше →
Total votes 60: ↑55 and ↓5+50
Comments22

Договор на разработку сайта: так, а не иначе

Reading time29 min
Views152K
Присылает нам заказчик (Газпром) свою версию договора.
Понимаем — нашу они не подпишут,
вносим реквизиты и отправляем обратно.
Пропадают на две недели… возвращают протокол разногласий к договору.


Последняя неделя выдалась жаркой на переговоры с юристами заказчиков. Проекты я не веду, но так уж получилось, что все договора проходят через меня. Соответственно, я участвую в их согласовании.
Читать дальше →
Total votes 135: ↑129 and ↓6+123
Comments78

5 правил верстки email-писем от Печкина

Reading time2 min
Views75K

Сегодня мы хотели бы рассказать о базовых правилах верстки HTML в email-письмах. Как известно, на свете существует множество почтовых клиентов:
  • веб-версии у почтовых провайдеров (Gmail, Yandex, Mail, Yahoo итд.)
  • десктопные почтовые клиенты (Outlook, Bat, Thunderbird, Mac Mail)
  • мобильные почтовые клиенты (Blackberry, Android, Iphone, Ipad итд)


К сожалению, не существует обязательного стандарта верстки писем, который бы универсально поддерживался бы всеми клиентами. Часть поддерживает CSS3, часть нет, какие-то теги и аттрибуты поддерживаются, какие-то нет, не говоря уже о том, что поддержка HTML и CSS меняется даже в пределах одного почтового клиента от версии к версии. Последнее особенно заметно на примере Outlook (от Express и 2003 к Outlook 2011).

Что же необходимо знать тем, кто собирается самостоятельно верстать HTML-код для email-писем?
Посмотреть 5 правил верстки email
Total votes 56: ↑46 and ↓10+36
Comments24

Сравнение эффективности минимизаторов CSS- и JavaScript-кода

Reading time3 min
Views31K
Логотипы модулей-минимизаторов из Bundle Transformer

Разработчики, использующие Bundle Transformer, часто спрашивают у меня: «Какой минимизатор обладает самой высокой степенью сжатия?». В принципе, в сентябре прошлого года в своей статье «Вышел Bundle Transformer 1.6.2 или что изменилось за полгода?» я уже проводил сравнение минимизаторов по степени сжатия кода, но это сравнение было поверхностным и не было подкреплено цифрами.

В этой краткой статье мы проведем сравнение наиболее популярных алгоритмов минимизации CSS- и JS-кода на примере адаптеров-минимизаторов из Bundle Transformer. В качестве исходных файлов будут использоваться файлы bootstrap.css и bootstrap.js из Twitter Bootstrap версии 2.3.2. Измерять размеры файлов мы будем с помощью YSlow.
Читать дальше →
Total votes 53: ↑48 and ↓5+43
Comments26

Создание графической капчи с выбором лишнего варианта

Reading time4 min
Views19K
image

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

И так, суть капчи в том, что пользователю отображается несколько иконок и необходимо выбрать ту, которая логически не вписывается в общий ряд. Думаю в интернете таких вариантов море, но я не нашел (ну если честно не особо то и искал).
Читать дальше →
Total votes 31: ↑18 and ↓13+5
Comments37

50 потрясающих плагинов jQuery

Reading time1 min
Views89K

Кто-то вчера шутил, а кто-то занимался реально полезными вещами. Как например болгарский разработчик Мартин Ангелов, опубликовавший впечатляющий обзор JS библиотек:
http://tutorialzine.com/2013/04/50-amazing-jquery-plugins/
Настоятельно рекомендуется к обозрению.
PS Куда-то пропал тип топика «Ссылка» :(
Total votes 121: ↑76 and ↓45+31
Comments20

«Движущиеся фото» от Microsoft Research

Reading time1 min
Views8.6K
Исследовательское подразделение Microsoft Research выпустило любопытное ПО Cliplets для создания фото, отдельные объекты на котором могут двигаться — такие фото в интернете называют синемаграфами (cinemagraphs). В целом, идея похожа на старую GIF-анимацию, за исключением того, что фото получается гораздо более интересным и детальным. В данном случае Cliplets предлагает выбрать объект на некотором видео, последовательные кадры которого анализируются, чтобы в итоге и получить готовую «синемаграфию».

Такая же функциональность присутствует в iOS-приложении Cinemagram, хотя в данном случае Cliplets работает, понятное дело, на Windows и бесплатна.

Видео работы с Cliplets



Скачать Cliplets можно тут.
Total votes 82: ↑76 and ↓6+70
Comments51

CSS3-генераторы. Лучшее

Reading time2 min
Views199K








Доброго времени суток! Сразу объяснюсь по поводу оформления поста: однажды, наткнувшись на статью о CSS-генераторах, меня не сильно порадовало безмерное количество информации и навигационных элементов в представленных генераторах, и еще больше — их пользовательский интерфейс! Возмутило то, что инструменты для работы со стилями — сами не выдержаны в рамках возможностей, которые они представляют… как так?!

Когда занимаешься творчеством, хочется иметь подручные средства и инструменты на освоение и работу с которыми тратишь минимум усилий и времени. В результате всего этого, пришла мысль: отобрать лучшие инструменты и организовать их для частого использования (а-ля навигационное меню, такой себе: Quick Launch).

Надеюсь, для многих ноу-хау станет хорошим помощником в процессе веб-разработки.
Читать дальше →
Total votes 114: ↑104 and ↓10+94
Comments26

intro.js — пошаговое руководство для веб-страницы

Reading time1 min
Views51K


Эта маленькая библиотека позволяет очень просто создать пошаговое введение для сайта или приложения. Достаточно добавить атрибуты data-intro и data-step с описанием и номером шага соответственно к нужным элементам страницы. Вот так:

<a href='http://google.com/' data-intro='Hello step one!' data-step='1'></a>
Читать дальше →
Total votes 139: ↑134 and ↓5+129
Comments24

Webfonts — разбираемся с антиалиасингом под Windows (UPD)

Reading time6 min
Views71K
Думаю, что не только я, но и другие пользователи Chrome под Windows, на многих сайтах замечали проблемы c отображением нестандартных шрифтов. Читать текст на таких сайтах можно, но глазам больно. Я бы так все это и продолжал терпеть, но на одном из недавних собственных проектов этот вопрос встал буквально ребром. Решил разобраться во всем досконально.

Разница в этих двух фрагментах очевидна. Первый сделан со случайно выбранного сайта adaptive-images, а второй с его локальной копии, в css которой была изменена буквально одна строчка.

(Читавшие первую версию статьи могут сразу перейти к UPD, где приведено работающее альтернативное решение проблемы для Chrome)


И в чем же там дело?
Total votes 78: ↑74 and ↓4+70
Comments35

Как изменить структуру сайта без потери позиций?

Reading time5 min
Views48K
При необходимости что-то делать с запущенным в начале 2000-х сайтом, доисторическим ящером фронтпейджевского периода, первая реакция нормального перфекциониста будет такой:


Но вот сервер уже облит цифровым бензином, а цифровая спичка готова запустить процесс обеззараживания жестких дисков, и ответственному человеку приходит в голову мысль: «А как же поток целевой аудитории? Как же закупленные ссылки, достигнутые позиции в результатах поиска?..» Конечно, подумать об этом необходимо и при переделке/модернизации, и при полном перезапуске сайта.

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

Итак, правило №1: Не надо менять URL’ы только потому, что очень хочется начать все с нуля.

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

Правило №2: Можно смело удалять страницы или менять URL’ы в том случае, если на них нет никаких внешних ссылок.

Правило №3: Если внешние ссылки есть, но у страниц нет хороших позиций в ТОПах поисковой выдачи, эти страницы также можно удалять или менять им URL’ы. Если контроль над внешними ссылками имеется, их можно перенаправить на новые страницы.

Выше рассмотрены самые приятные с точки зрения разработчика новой версии сайта ситуации — все они, в общем-то, не требуют никаких дополнительных телодвижений. Но если владелец сайта заявляет, что необходимо сохранение позиций в выдаче, а на ссылки потрачены серьезные деньги, придется уделить внимание структуре URL и перенаправлению линков.
Читать дальше →
Total votes 8: ↑5 and ↓3+2
Comments6

Как на самом деле работает mod_rewrite. Пособие для продолжающих

Reading time17 min
Views279K
image
Эта статья выросла из идеи продвинутого обучения наших сотрудников технической поддержки работе с mod_rewrite. Практика показала, что после изучения имеющихся в большом количестве учебников на русском языке саппортам хорошо дается решение шаблонных задач, но вот самостоятельное составление правил происходит методом проб и большого количества ошибок. Проблема заключается в том, что для хорошего понимания работы mod_rewrite требуется изучение оригинальной англоязычной документации, после чего — либо дополнительные разъяснения, либо часы экспериментов с RewriteLog.

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

Я предполагаю, что читатель уже знаком с тем, что такое mod_rewrite, и не буду описывать его основы, которые легко найти в интернете. Также нужно отметить, что в статье освещается работа mod_rewrite при использовании его директив в файле .htaccess. Отличия при работе в контексте <VirtualHost> изложены в конце статьи.

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

Почему так происходит?
Читать дальше →
Total votes 208: ↑203 and ↓5+198
Comments25

Cила CSS поможет тебе принять форму, SVG!

Reading time8 min
Views106K

Нам нужно:
  1. Установить на сайте собственные иконки с помощью SVG.
  2. Они должны управляться с помощью CSS (форма, размер, заливка, эффекты в том числе и их поведение).
  3. Они должны иметь маленький вес и находиться в одном месте для экономии http запросов.
  4. Работать во всех основных современных браузерах.

демо
Читать дальше →
Total votes 50: ↑49 and ↓1+48
Comments29

Information

Rating
Does not participate
Location
Сургут, Тюменская обл. и Ханты-Мансийский АО, Россия
Date of birth
Registered
Activity