Сайт знакомств за 66, 5 часов

Перевод. Оригинал: How I Built a Web 2.0 Dating Site in 66.5 Hours.

В 2007 году сайт знакомств Mingle2 купила другая подобная компания JustSayHi. Их инфраструктура основана на фреймворке Ruby on Rails, на который в конечном итоге был портирован Mingle2. Для тех, кому интересно, как выглядел Mingle2 раньше, я выложил CakePHP-версию сайта здесь: old.mingle2.com

Я разработал полнофункциональный сайт знакомств за 66,5 часов от замысла до запуска, что является подтверждением эффективности фреймворков для быстрой разработки Веб 2.0 приложений. При условии обычной работы «с 9-ти и до 5-ти» весь процесс занял бы не более полутора недель.

На что ушло время:

  • Идея — оформление целей, особенностей и названия сайта в целостный бренд;
  • Планирование — создание информационной архитектуры и функциональных спецификаций;
  • Дизайн — создание прототипа, эксперименты с типографикой, расположением и цветом элементов;
  • Разработка — написание программного кода;
  • Тестирование — «разглаживание неровностей»;
  • Запуск — выход в свет.

Я сделал все это не за 66,5 _последовательных_ часов, не подумайте. Из-за постоянной занятости днем на основной работе я мог работать над сайтом только вечером и по выходным. Я начал вести учет после первых дней работы над сайтом, работа спорилась, и мне стало интересно, сколько же всего времени мне потребуется, чтобы закончить сайт. Теперь опишу принципы, которых я придерживался, чтобы создать сайт Mingle2 за такое короткое время.

Цель и отличительные особенности сайта

У меня нет девушки, и после опыта онлайн-знакомств я выяснил две вещи:

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

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

Мозговой штурм

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

whiteboard

Идеи от конкурентов

Мне не хотелось ограничивать список функций сайта только своими идеями, поэтому я еще раз зарегистрировался на более чем десяти сайтах знакомств, чтобы подробно разобраться, как работает большинство из них. Через несколько часов исследований у меня получился еще один бессистемный список функций. Я объединил его с результатами мозгового штурма.

Отличительная особенность, а не еще один «сайт для всего»

Я урезал объединенный список функций, оставил только минимум: на сайте одинокие люди могут найти друг друга и общаться. Под нож попали различные рейтинги популярности, «оцени мое фото» и прочие функции, непосредственно не связанные со знакомством.

«Делай проще, дурачок» (K.I.S.S.)

Знаете ли вы про ошейники для собак, что бьются током каждый раз, когда собака начинает лаять? Мне хотелось, чтобы каждый директор или маркетолог в области информационных технологий был оборудован устройством, которое визжало бы «Делай проще, дурачок! » каждый раз, когда они делают вещи неоправданно сложными. Во время разработки Mingle2 я постоянно напоминал себе о принципе KISS.

Минимизируйте помехи

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

Избегайте «свалки функций»

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

Воздержитесь от имени в стиле Веб 2.0

В середине 90-х было очень популярно иметь доменное имя с префиксом «cyber». Но будете ли вы делать так сегодня? Мне кажется, что имена наподобие «SquaBlar», «Fastr» или «thisdomain.is.friggin.ridiculo.us» тоже скоро устареют. Я хотел, чтобы имя сайта намекало на его цель, было необычным, набирать его на клавиатуре и произносить должно быть легко. Такое название удалось придумать не сразу, и поскольку имя сайта не очень важно для успеха, то почти все время работы я называл его «кляп» (barnakle). Нужно было временное имя и это было первое, что пришло в голову.

Выберите самое главное

Я взял свой урезанный список функций и отсортировал его по важности. Более важные функции и особенности я старался размещать на наиболее видных местах сайта, для Mingle2 это было объявление о бесплатности сайта, форма регистрации и входа на сайт, а также функция «найти одиноких людей». Отсортировать функции и требования к сайту по приоритетности исключительно важно перед началом работ по дизайну.

outlines

Тщательно потрудитесь над макетами

Макет сайта, сделанный на основе функциональных спецификаций — это, по сути, дизайн без всяких красивостей. Есть несколько способов и средств для создания такого макета: специальные программы, рисование на большой доске или в Photoshop. Некоторые начинают с таксономии, другим сначала рисуют страницы. Я предпочитаю ручку с бумагой, иногда — доску. Первым делом я рисую как страницы относятся друг к другу, что-то похожее на карту дорог. Только потом я рисую внутренности каждой страницы, приходится много писать и часто комкать бумагу. Не следует ожидать, что все получится с первого раза, для некоторых страниц мне пришлось переделывать расположение элементов десятки раз.

Смешивайте, чтобы было интересно

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

Дизайн

Мне всегда нравилось создавать дизайн, который будет затем превращен в HTML-код. Один человек может дать другому множество советов о дизайне, но вместо этого я перечислю, чего я хотел добиться дизайном Mingle2:
  1. Баланс — особое внимание я хотел уделить этому на главной странице, старался достичь равновесия. Один из самых сбалансированных сайтов, который я когда-либо видел, — это gr0w.com, мне хотелось получить что-то похожее.
  2. «Ух ты!» — мне хотелось, чтобы сайт вызывал реакцию «Ух ты, как красиво!» при первом посещении. Не знаю, насколько хорошо мне удалось добиться этого, но результатом я доволен.
  3. Сейчас 2007-й год — большинство сайтов-конкурентов выглядят так, как будто были созданы еще динозаврами. Мне хотелось получить преимущество за счет современного внешнего вида.

Мало-помалу достигайте результата

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

Используйте фреймворки для быстрой разработки

Я разработал этот сайт с использованием фреймворка CakePHP, который называют «Rails для php», применяя такие паттерны как MVC и ActiveRecord. Фреймворки берут на себя все рутинные задачи веб-разработки, такие как CRUD (Создание, Чтение, Обновление и Удаление), валидация форм и проверка других входных данных, позволяя вам сконцентрироваться на основных функциях сайта. Другими популярными фреймворками являются Django и Ruby-on-Rails.

Учтите кривую обучения для фреймворка

Mingle2 — это пятый сайт, который я разрабатывал на базе CakePHP, поэтому уже знал основные подводные камни. Не ожидайте существенной экономии времени сразу после начала использования фреймворка, выделите некоторое время на обучение.

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

Підписуйтеся на Telegram-канал редакції DOU, щоб не пропустити найважливіші статті.

👍НравитсяПонравилось0
В избранноеВ избранном0
Подписаться на автора
LinkedIn



Підписуйтесь: Soundcloud | Google Podcast | YouTube


9 комментариев

Подписаться на комментарииОтписаться от комментариев Комментарии могут оставлять только пользователи с подтвержденными аккаунтами.

А девушку хоть нашел? Сомневаюсь. В реале надо знакомиться, а не на всяких дурацких сайтах. Нормальные мужики по интернету не знакомятся.

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

Як на мене, основною ідеєю статті було не повідомлення про факт створення ще одного сайта знайомств, а ось це:

за 66, 5 часов от замысла до запуска, что является подтверждением эффективности фреймворков для быстрой разработки Веб 2.0 приложений

2Максим Николенко: true?

умение продавать свой бизнес другим ортогонально написанию сайтов за 67 часов. Success story наверно должна была быть о том как продать сайт (?) таким же друзьям стартаперам.

2Igor Katkov: Ну он же написал «У меня нет девушки»:) А вообще "В 2007 году сайт знакомств Mingle2 купила другая подобная компания JustSayHi"то есть можно было бы и без адсенса.Да и с адсенсом бывает более-менее прибыльно, см. напримерhttp://www.timothyallard.com/b.../

ну вот изготовил он ещё один сайт знакомств, повесил google AdSense и ещё банеров. Которые рекламируют такие-же сайты знакомств. А смысл? Хорошо, если за хостинг платить хватает. какая вообще была цель?

Спасибо, обратил внимание на пункт «Мало-помалу достигайте результата» — важная вещь. Понравились именно небольшие цели. Действительно, если по каким-либо причинам не хватает мотивации (та же усталость после работы), то эти цели срабатывают как ловушка — задача очень простая и легкая, делается за минуту, при этом неявно происходит переключение состояния на более глубокий рабочий настрой, без неприятных эмоций. А дальше — только интереснее становится:) Иногда себя на этом ловил, но не придал этому должного внимания. Теперь включу такие цели в обязательное планирование}:)

Ідея дуже хароша але в мене теж є подібна вона теж направлена на пошук людей з якими ви готові провести все життя!
1.Але критерії підбору, рейтингу людей тут інші.
2.Люди будуть оцінювати один одного общаючись і цим самим набираючи позитивні чи негативні голоси в свою сторону.
3.Користувачі будть мати велике меню підбору пошуку людей по даному рейтингу людини.

Докладніше я готовий поділитись інформацією по тел.0989666860 або в контакті мій id123590242

Подписаться на комментарии