Сайт знакомств за 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 приложений. При условии обычной работы «с
На что ушло время:
- Идея — оформление целей, особенностей и названия сайта в целостный бренд;
- Планирование — создание информационной архитектуры и функциональных спецификаций;
- Дизайн — создание прототипа, эксперименты с типографикой, расположением и цветом элементов;
- Разработка — написание программного кода;
- Тестирование — «разглаживание неровностей»;
- Запуск — выход в свет.
Я сделал все это не за 66,5 _последовательных_ часов, не подумайте. Из-за постоянной занятости днем на основной работе я мог работать над сайтом только вечером и по выходным. Я начал вести учет после первых дней работы над сайтом, работа спорилась, и мне стало интересно, сколько же всего времени мне потребуется, чтобы закончить сайт. Теперь опишу принципы, которых я придерживался, чтобы создать сайт Mingle2 за такое короткое время.
Цель и отличительные особенности сайта
У меня нет девушки, и после опыта онлайн-знакомств я выяснил две вещи:
- Рынок платных сайтов знакомств очень насыщенный.
- Рынок бесплатных сайтов знакомств тоже насыщенный, но тут преобладают медленные малопонятные сайты, почти непригодные к использованию из-за перегруженности рекламой.
Я увидел незанятую нишу и решил попробовать, поскольку знал, что смогу создать без лишних затрат кое-что получше за очень короткое время. Нет риска увольнений и промотанных венчурных вложений. В худшем случае я потерял бы 66,5 часов из жизни, несколько банок кофе и продолжил бы заниматься своей постоянной работой.
Мозговой штурм
Я занялся мозговым штурмом, чтобы собрать все функции, которые я хотел бы видеть на сайте знакомств. Я не старался разместить их в каком-то порядке, а просто записывал из в той последовательности, в какой они пришли мне в голову. Это отличный способ достать все стоящее оттуда, сортировку оставив на потом.Идеи от конкурентов
Мне не хотелось ограничивать список функций сайта только своими идеями, поэтому я еще раз зарегистрировался на более чем десяти сайтах знакомств, чтобы подробно разобраться, как работает большинство из них. Через несколько часов исследований у меня получился еще один бессистемный список функций. Я объединил его с результатами мозгового штурма.Отличительная особенность, а не еще один «сайт для всего»
Я урезал объединенный список функций, оставил только минимум: на сайте одинокие люди могут найти друг друга и общаться. Под нож попали различные рейтинги популярности, «оцени мое фото» и прочие функции, непосредственно не связанные со знакомством.«Делай проще, дурачок» (K.I.S.S.)
Знаете ли вы про ошейники для собак, что бьются током каждый раз, когда собака начинает лаять? Мне хотелось, чтобы каждый директор или маркетолог в области информационных технологий был оборудован устройством, которое визжало бы «Делай проще, дурачок! » каждый раз, когда они делают вещи неоправданно сложными. Во время разработки Mingle2 я постоянно напоминал себе о принципе KISS.Минимизируйте помехи
Привлекайте к работе других людей только в случае абсолютной необходимости, особенно если вы хотите обойтись без лишних затрат. Я мог обозреть весь проект от начала до конца и знал, что смогу сделать все сам еще до того, как написал первую строчку кода. Не было никаких совещаний, диаграмм Ганта и конференц-звонков. Только я и мой компьютер.Избегайте «свалки функций»
Эта проблема более актуальна при работе с клиентом, но может возникнуть и при развитии своего проекта. Не дайте изначальной идее разрастись до такой степени, что вы уже работаете над проектом больше 6 месяцев и все, что вы можете показать — это одна из самых сложных панелей навигации в истории интернета. Иногда нужно попридержать генератор идей, но не выключать его полностью.Воздержитесь от имени в стиле Веб 2.0
В серединеВыберите самое главное
Я взял свой урезанный список функций и отсортировал его по важности. Более важные функции и особенности я старался размещать на наиболее видных местах сайта, для Mingle2 это было объявление о бесплатности сайта, форма регистрации и входа на сайт, а также функция «найти одиноких людей». Отсортировать функции и требования к сайту по приоритетности исключительно важно перед началом работ по дизайну.Тщательно потрудитесь над макетами
Макет сайта, сделанный на основе функциональных спецификаций — это, по сути, дизайн без всяких красивостей. Есть несколько способов и средств для создания такого макета: специальные программы, рисование на большой доске или в Photoshop. Некоторые начинают с таксономии, другим сначала рисуют страницы. Я предпочитаю ручку с бумагой, иногда — доску. Первым делом я рисую как страницы относятся друг к другу, что-то похожее на карту дорог. Только потом я рисую внутренности каждой страницы, приходится много писать и часто комкать бумагу. Не следует ожидать, что все получится с первого раза, для некоторых страниц мне пришлось переделывать расположение элементов десятки раз.Смешивайте, чтобы было интересно
Я не спланировал все страницы сайта за один подход, а остановился и занялся подбором визуальных элементов еще на этапе макетирования. Пришлось переключиться на разработку логотипа чтобы сохранить мотивацию. Важно сразу не кидаться с головой в написание кода и не слишком увлекаться рисованием красивых деталей в Photoshop. Но если вы не можете до начала работы представить в деталях каждую часть будущего сайта, это не должно останавливать вас. Чаще переключайтесь с одной деятельности на другую, это позволит не растерять удовольствие от работы.Дизайн
Мне всегда нравилось создавать дизайн, который будет затем превращен в HTML-код. Один человек может дать другому множество советов о дизайне, но вместо этого я перечислю, чего я хотел добиться дизайном Mingle2:- Баланс — особое внимание я хотел уделить этому на главной странице, старался достичь равновесия. Один из самых сбалансированных сайтов, который я когда-либо видел, — это gr0w.com, мне хотелось получить что-то похожее.
- «Ух ты!» — мне хотелось, чтобы сайт вызывал реакцию «Ух ты, как красиво!» при первом посещении. Не знаю, насколько хорошо мне удалось добиться этого, но результатом я доволен.
- Сейчас
2007-й год — большинство сайтов-конкурентов выглядят так, как будто были созданы еще динозаврами. Мне хотелось получить преимущество за счет современного внешнего вида.
Мало-помалу достигайте результата
Я занят на постоянной работе сИспользуйте фреймворки для быстрой разработки
Я разработал этот сайт с использованием фреймворка CakePHP, который называют «Rails для php», применяя такие паттерны как MVC и ActiveRecord. Фреймворки берут на себя все рутинные задачи веб-разработки, такие как CRUD (Создание, Чтение, Обновление и Удаление), валидация форм и проверка других входных данных, позволяя вам сконцентрироваться на основных функциях сайта. Другими популярными фреймворками являются Django и Ruby-on-Rails.Учтите кривую обучения для фреймворка
Mingle2 — это пятый сайт, который я разрабатывал на базе CakePHP, поэтому уже знал основные подводные камни. Не ожидайте существенной экономии времени сразу после начала использования фреймворка, выделите некоторое время на обучение.Мне нравится Mingle2 в его сегодняшнем виде. Очень хороший дизайн, чистый код и сайт работает отлично. Самое главное, что если бы проект провалился, я потерял бы всего лишь 66,5 часов своей жизни.
Все про українське ІТ в телеграмі — підписуйтеся на канал DOU
9 коментарів
Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.