С недавнего времени в рунете существует такой весь из себя замечательный проект - Тачила.ру. Это ни что иное как специализированная поисковая система по автомобильным объявлениям. Если вы хотите купить автомобиль и при этом не желаете тратить свое время на просмотр досок объявлений (коих в рунете десятки) в поисках лучшего предложения - вы стопроцентно целевая аудитория Тачилы.
Попахивает "джинсой", не правда ли? :) Ничего подобного. Тачила имеет самое непосредственное отношение как к тематике этого блога, так и к его автору. Дело в том, что весь функционал проекта сделан на Ruby, а фронт-енд - на Ruby on Rails. До недавнего времени я непосредственно работал в команде, занимающейся разработкой этого проекта, а теперь я всего лишь скромный "консультан по технологиям".
Проект очень молодой и, на мой взгляд, невероятно перспективный. Во-первых, в рунете не так уж и много специализированных поисковых систем, из них по автомобильным объявлениям есть что-то более-менее сносное только у Яндекса, но почему-то запрятано глубоко в недрах. Поисковый интерфейс Тачилы, хоть он и не идеален, но на сегодняшний момент мне кажется наиболее удобным из всех рунетовских вариантов.
С технической стороны есть несколько нюансов, с которыми пришлось столкнуться, прежде чем проект заработал "как надо". Например, для обеспечения устойчивости системы при нормальных нагрузках (сейчас это порядка 90 000 просмотров страниц в сутки) результаты поиска полностью кэшируются в статику. Сам поиск в плане производительности не напряжный, но вот динамический пересчет значений для всевозможных фильтров по цене, пробегу и прочим параметрам занимает ощутимое время.
Кроме того, были серьезные сложности с парсингом объявлений с топовых ресурсов и приведением их к некоему общему знаменателю. Для этого была разработана целая система для определения соответствий между данными, введенными пользователем на доске, и реальными параметрами. К примеру, одно и то же название модели автомобиля пользователи вводят чуть ли не в десяти различных вариантах - на русском, английском, с ошибками, как попало. Эту систему пришлось "обучать" в течение нескольких недель - от ее интеллектуальности напрямую зависит объем работы людей, модерирующих объявления перед попаданием в поисковую базу. В рамках той же системы разработан алгоритм для выявления дубликатов объявлений, каковых по разным доскам полным-полно.
Из интересных фишек проекта можно назвать использование техники "бесконечной страницы" при просмотре конкретных объявлений. Кликните по любому объявлению в результатах поиска автомобиля и увидите слева "бесконечный" блок результатов поиска, в который объявления догружаются по мере прокрутки. Подробнее про эту технику можно почитать тут.
В общем, проект зачотный - это я вам как инсайдер говорю :)