Поиск нужной программы (без знаний о ее названии, а только по функционалу) усложняется год от года. Это происходит из-за того что: Большое количество программ. За счет поисковой оптимизации, на первых строках по ключевым словам выводятся в только информация которая была оптимизирована под поисковые запросы. Т.е. на первых позициях будут либо платные программы, либо условно-бесплатные. А полностью бесплатные программы будут на нижних строках поиска. Большое количество дублированной информации. Большое количество одинаковых сайтов с одинаковыми программами. Большое количество почти одинаковых программ. Если нет точного названия программы, а только лишь нужный функционал, то может оказаться так, что на первых строках будут лишь платные программы или одна и та же программа (просто на разных сайтах), а бесплатных программ или другие программы (мало популярные) может не быть в первых строках поиска. В результате чего может сложиться впечатление, что других программ нет или поиск будет длиться слишком долго, что может надоесть. Вот и получается, что выбор программ искусственно ограничивают. Пример:  Год назад искал программу для записи с экрана, через поиск нашел достаточно большое количество разных программ. Протестировал несколько и выбрал одну нормальную (полностью бесплатную). Недавно опять понадобилась подобная программа, и я через поиск (на домашнем ПК) пытался ее найти. Так вот (т.к. забыл название той программы и она была на офисном компьютере) потратил около часа, перепробывал несколько программ, но найти ту или более менее подходящую не смог. Потом взяв на офисном компьютере название программы, придя домой тут же ее нашел. А представьте, что кто тоже не смог найти подходящую программу, взял и написал ее, а потом пытаясь сделать, что бы она находилась через поиск обнаружил кучу других, таких же программ (которых раньше не смог найти). Для устранения этой проблемы можно создать каталог программ (товаров), в котором будут все программы, удобный фильтр, а также удобный поиск. Программы и товары в нем не будут дублироваться.  Но при создании такого каталога возникает проблема, сложность его наполнения из-за большого количества информации. Сложность по наполнению каталога можно частично решить, т.к часть объектов могут добавлять пользователи, разработчики программ, производители товаров (и это должно быть бесплатным). Т.к. если у каталога большая база, то у него будет больше пользователей. Также для облечения стартовой задачи можно делать базу по отдельной категории. Получаемые плюсы для пользователя: Упрощается поиск программы. Доступна сразу информация по большому числу программ, а с помощью различных фильтров можно быстрее отыскать нужную программу. Получаемые плюсы для разработчика: Программа становиться легко находимой пользователем. Сокращение издержек на рекламу. Видно, каких программ еще нет (т.к. поиск большей степенью будет осуществляться через фильтры, то будет видно, какого софта и с каким функционалом еще нет). Такая идеи, думаю, что посещала многих, но в процессе анализа наталкивалась на сложность в виде создания большой базы данных. Но можно сделать следующее: Взять для начала только небольшую область применения программ.  Дать возможность разработчикам и пользователям самостоятельно добавлять программы. Дать возможность пользователям производить модерацию (указывать на ошибки в описании). Также можно использовать автоматические алгоритмы для сбора информации с сайтов. По товарам тоже самое. Только у баз данных с товарами больше последующего применения, а именно на их базе можно делать  (очень) большие интернет-магазины. Например: создается сайт с каталогом ручного электроинструмента. Делаются все возможные фильтры поиска. Пользователи заходят и начинают быстро находить нужный инструмент, под их потребности. Нужна сетевая дрель, с длиной кабеля от 2 метров, мощность более 700 Вт и каталог выдает десяток разных вариантов (и еще предлагая дополнительно их отфильтровать по другим критериям). Если этот сайт также будет и интернет-магазином, то у некоторых вариантов будет стоять цена и возможность покупки. Также есть проблемы и с поиском товара, если не знать его названия, то по функциям, его найти сложно. И по поиску различных сервисных сайтов. Например, сайт с каким нибудь нужным сервисом был создан, раскручивался определенное время (была информация в СМИ, реклама), потом его перестали раскручивать (либо набрали нужное число пользователей, либо посчитали это экономически невыгодно). Когда сервис раскручивали, Вы не обращали на него внимание, за ненадобностью. А сейчас этот сервис Вам понадобился, а Вы уже не можете вспомнить его название, на близкие к функционалу сервиса запросы, поиск выдает другие сайты, с другой информацией.