Великие слова

s_a_p 9 февраля 2009 в 19:21 481
GreatWords История GreatWords.ru — сайта, где можно найти и записать умные слова из книг, краткие гениальные высказывания — началась с моей простой фразы: «Давно хочу сделать сайт, где буду записывать все цитаты. Книг читаю много… всё, что выписываю, теряется». Совместно с Евгением Гетманенко мы реализовали идею сайта с мудрыми словами, о чем я и хочу вкратце рассказать.



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

Сайт по своей структуре небольшой…

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

Размеры элеманта облака нелинейно зависят от колличества привязанных к нему цитат…

Сначала мы не рассчитывали, что сайт будет полностью реализован без единой перезагрузки страницы, с помощью Ajax. Но со временем решили сделать так, продублировав поддержку большинства страниц на случай выключенного JavaScript (Евгений пожелал иметь возможность записи цитат с мобильного телефона) и для поисковиков. Подтолкнуло нас к этому принятие плеера — самой удачной концепции здесь для осуществления перехода между цитатами. Следуя этой концепции, список цитат по автору или по метке выглядит как плейлист. Вы можете выбрать любую цитату из списка и прочитать ее, а также воспользоваться кнопками «Предыдущая цитата» и «Следующая цитата». Но самое главное — возможность воспроизведения. Настроив скорость чтения под себя и нажав кнопку воспроизведения, вы можете откинуться на спинку кресла и наслаждаться великим словами — цитаты будут меняться автоматически с заданной вами скоростью. Причем это всего лишь опция; когда она не нужна — не мозолит глаза.

Причем это всего лишь опция, которая, когда не нужна, не мозолит глаза…

Как-то я подумал: если бы при работе обычного десктопного приложения, после каждого действия форма начинала мигать и перезагружаться, как бы это воспринималось :-)? Современные веб-приложения не должны уступать прикладному софту. При загрузке очередной страницы предыдущая никуда не исчезает и не мигает. Справа снизу появляется анимированная иконка загрузки, курсор мыши изменяется на песочные часы. Я верю, что сайты будущего будут именно такими.

При загрузке очередной страницы предыдущая никуда не исчезает…

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

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

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

Немного о технической стороне: при написании бекенда не использовался ни один php-фреймворк (да-да, сайт сделан на php), код полностью написан с нуля. При написании фронтенда js-фреймворки также не использовались, весь js написан вручную, но была использована библиотека JsHttpRequest. Сверстан сайт по стандартам XHTML. Кстати, есть одно техническое ограничение: мы не гарантируем корректную работу сайта в Internet Explorer 6. Причина проста — он абсолютно не поддерживает современных технологий.

Дополнения

1. По желаниям многих пользователей появится версия с белым фоном и черным шрифтом, как альтернативная существующей.
2. После непродолжительного хабраэффекта, сайт снова работает.
3. Спасибо всем за высокие оценки топика, благодаря им я теперь могу дать инвайт Евгению Гетманенко, с которым мы и сделали этот проект.
4. Также спасибо за комментарии здесь и за письма с замечаниями и пожеланиями.
5. Ну и спасибо за вашу активность. Физически не успеваю одобрить все цитаты :) Но вы можете быть уверены, если цитата адекватна, она обязательно появится на сайте.
Проголосовать:
+94
Сохранить: