четверг, 12 августа 2010 г.

Оптимизация обработки поисковых запросов (часть 2)

Инсталлятор x86
Исходный текст (С++)
ZIP-Архив x86

------------------------------------------------------------------------
r4395 | pavel.pimenov | 2010-08-12 20:44:19 +0400 (Чт, 12 авг 2010) | 2 lines
* Оптимизация обработки поисковых запросов (часть 2) исключаем постоянный вызов функции Text::toLower к именам файлов вашей шары при поступлении запросов из сети.
Цена оптимизации: дополнительно храним в памяти имена всех файлов в нижнем регистре и обновляем их только в случаях изменениях шары или запуска.
------------------------------------------------------------------------
r4394 | pavel.pimenov | 2010-08-12 20:35:12 +0400 (Чт, 12 авг 2010) | 1 line
* Добавлена опция в ком-строке FlylinkDC.exe /nowine (запустить флая в эмуляторе wine без  "обрезания" функций - возможны падения под старыми версиями wine)
------------------------------------------------------------------------
r4384 | tret2003 | 2010-08-11 09:05:02 +0400 (Ср, 11 авг 2010) | 2 lines
* (Closes issue #104) : Пункты меню "Копировать..." убрал "в буфер обмена"
------------------------------------------------------------------------
r4381 | pavel.pimenov | 2010-08-09 22:47:45 +0400 (Пн, 09 авг 2010) | 1 line
* Отключил загрузку CustomLocations.bmp под wine (http://flylinkdc.blogspot.com/2010/08/customlocationsbmp-wine.html)
------------------------------------------------------------------------
r4378 | pavel.pimenov | 2010-08-09 22:40:40 +0400 (Пн, 09 авг 2010) | 1 line
* Привел конфигурацию GDIOle к общему виду "Debug LIB" заменил на "Debug"

15 комментариев:

Анонимный комментирует...

когда x64 будет?

Анонимный комментирует...

В коде есть ошибка при обращении к WMP... Вместо ARTIST флайлинк запрашивает BAND...

truth комментирует...

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

Например блог Оперы: http://my.opera.com/desktopteam/blog/

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

Pavel Pimenov комментирует...

1. x64 будет вечером. этот билд не собрался из-за ошибки в конфигурации проекта.
2.Спасибо посмотрим (недавно этот кусок уже чинили)
3.Подробности были приведены для программистов (они ведь тут есть?).

p.s.
Вторую часть оптимизации я написал без подробностей (из-за нехватки времени на оформления поста :)

Анонимный комментирует...

> Цена оптимизации: дополнительно
> храним в памяти имена всех файлов
> в нижнем регистре и обновляем их
> только в случаях изменениях шары
> или запуска.

А не лучше будет при первом запуске опустить всю базу в нижний регистр и далее писать в базу только в нижнем регистре?

Анонимный комментирует...

А почему sqlite не используется для поиска? Он же умет регистронезависимый поиск делать =0

Кстати, сделали бы применение функции vacuum на базу sqlite, у пользователей которых база не один год, старт программы заметно ускоряется.

Анонимный комментирует...

sqlite для поиска можно попробовать, но там же прийдется говорить like '%xxx%'
а это фулскан таблицы.

Также в базовой версии не поддерживается регистронезависимый поиск по русским буквам.

(есть патченная реализация
http://code.google.com/p/sqlite1c/
но я ее не смотрел детально)

При случае попробую, но есть сомнения, что like будет быстрее обхода коллекции в памяти.

Анонимный комментирует...

Я предлогал павлу четко распределить в команде кто чем занимается и обновлять эту информацию online. Так былоб сразу видно когда что будет реализовано, у кого что спрашивать и темпы работы ускорились бы, т.к. разработчики в таком случае не будут бросаться из одной области разработки в другую.

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

Также я знаю двух разработчиков, которые хотели бы также, на чистом энтузиазме принять участие в разработке, но текущая "замкнутость" проекта отбивает у них всякое желание. В этой области нужно тоже что-то пересмотреть.
Сюда кстати относится и невозможность связаться с разработчиками, все контакты скрыты. Хотя ведь можно завести отдельную почту и уделять 10 минут времени в неделю на прочтение.

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

Павел, что вы думаете по этому поводу?

Pavel Pimenov комментирует...

Спасибо за развернутое письмо.
* Поправка - разработчики не скрываются.

Все, кто коммитят изменения в репозитарий svn
http://code.google.com/p/flylinkdc/source/list

делают это через аккаунт гугла майла

их адрес состоит из имени коммитера - собачка - gmail.com

Пример лога

r4392 | pavel.pimenov | 2010-08-12 20:15:43 +0400 (Чт, 12 авг 2010) | 2 lines

Автору этого коммита можно написать по адресу
pavel.pimenov@gmail.com

* список задач находится тут
http://code.google.com/p/flylinkdc/issues/list

* Форум есть, он тоже на гугле но меня достает чистить там спам :(

Анонимный комментирует...

Ну вот а я про это все не знал... у вас же это нигде не написано.
Получается проблема только с модерированием и организацией.
Это всего лишь предложение, не хочу никому навязывать своё мнение:
1) Нужно набрать модераторов для форума, и там же сделать отдельную страницу с TODO листом, который могут модифицировать только разработчики и модераторы. Соответственно по просьбе пользователей оценивать их предложение и если оно адекватно - добавлять его в лист.
Создать на форуме отдельные разделы и темы. Вижу у вас явно есть проблема с донесением до всех разработчиков своих мыслей по поводу изменения кода. Сейчас всё висит на этом блоге - это совершенно нехорошо и как-то несолидно для такого проекта.
2) С антиспамом вроде сейчас не так всё и плохо,.. я имею ввиду последние форумные движки. Стоит перейти на один из них и проблема отпадёт сама собой. Посмотрите сколько сейчас существует больших форумов, которые практически не модерируются - на них нет спама.
3) Перенести все обсуждения релизов отсюда на форум. Здесь надо писать только о выходе новых версий и разных новостях проекта.
4) Написать на главной странице сайта где что и как.
- Контакты
- Лист найденных баг и TODO
- Обсуждение новых версий
- Как влиться в проект
- Как передать свой исходник
...

Анонимный комментирует...

в клик командах - двойной клик в списке любимы [ в подменю там где править есть слово
&Свойства

удалите &

оно там ненужно...]

Анонимный комментирует...

в панели инструментов тоже уберите & amp;

такие же глюки

Анонимный комментирует...

http://s61.radikal.ru/i171/1008/e8/933876cd7bb9.png
вот скрин глюков в переводе

Анонимный комментирует...

Дайте этим спамерам пизды наконец.
(это я о спаме выше. Риторическое обращение к народу)
Читаю только что топик этот, читаю о том что в форум спамят. И тут на тебе - ОНИ и сюда даже добрались насрать.
Засунуть такого между клещей головой. И сделать ему "ремонт квартир".

Анонимный комментирует...

Superb blog post, I have book marked this internet site so ideally I’ll see much more on this subject in the foreseeable future!