Czy jest coś lepszego od Nominatim?

Ale czy na pewno jest to problem Nominatima? Czy probowaleś zgłosić problem w repozytorium Nominatim?

A może jest to problem z danymi?

Nie mniej, swego czasu kolega Rogal zrobił geokodowanie w ElasticSearchu i był z niego bardzo zadowolony (dla jego przypadku użycia).

Znaczy to nie jest jakiś pojedynczy problem, ale wydaje mi się, że najczęściej problemem jest Nominatim. Np. szukam sobie ulicy Wspólnej w Łodzi i żaden z wyników nie jest w Łodzi. Ale jeżeli dopiszę nazwę dzielnicy - Bałuty to już dostaję prawidłowy wynik.

Z repozytorium na githubie się zapoznałem. Z tego co widzę, prowadzi je niemiła pani, której sprawia przykrość, że ktoś śmie zgłaszać błędy. Biorąc pod uwagę, że czekają tam na wdrożenie pull requesty sprzed 5 lat, to nie widzę sensu zgłaszania tam czegokolwiek.

Też wydaje mi się, że może współczesny silnik wyszukiwawczy mógłby pociągnąć szukanie równie dobrze. Stąd m.in. to pytanie. Przy czym ( bez obrazy ), to że eksperymenty Rogala się powiodły to jeszcze nie wiele znaczy.

A tak z ciekawostek ( chociaż może mało kogo to ciekawi ), to klikając po bugach w Nominatim zwróciłem uwagę na parę:

  1. Wyszukiwanie adresów z 1 w nazwie ( np. Polna 1 ) może nie działać. Błąd zgłoszony w maju 2017. Wynika z problemu znanego od grudnia 2014.
  2. Wyszukiwanie “Wyszyńskiego Olsztyn” i “Kardynała Wyszyńskiego Olsztyn” zwraca różne wyniki. Błąd został zgłoszony we wrześniu 2015. Wynika z problemu znanego od listopada 2013.

Nie potrafię pojąć jak tak podstawowe przypadki użycia od tylu lat nie są obsługiwane. Fajnie, że w OSM jest mnóstwo punktów adresowych, ale co z tego, że nie ma narzędzi do ich wyszukania? Naprawdę podziwiam to, że Nominatim potrafi mi znaleźć adres w jakiejś podrzędnej wiosce, ale zaraz potem przestrzela kolejny adres o kilkadziesiąt kilometrów :frowning:

Mnie spotkało to samo. Próbowałem znaleźć w Białymstoku adres bloku przy ulicy Generała Józefa Bema 91. Wpisywałem Bema 91, Białystok i niczego OSM nie znajdowała. Gdy wpisałem pełną nazwę ulicy z numerem budynku, czyli Generała Józefa Bema 91, Białystok - znalazło. Ale już np. dla takiej ulicy Generała Władysława Andersa w Białymstoku znajduje budynki, gdy wpiszemy np. Andersa 54, Białystok (testowo sprawdzałem wyszukiwanie na tym budynku właśnie i go OSM znalazła - oznaczyła i wyświetliła). Od czego to zależy?

Dostałem informację, że w tej chwili (i to dłuższej już) cały Nominatim jest w tej chwili ogarniany przez jedną osobę. Przy projekcie tej wielkości oznacza to, że osoba może niewiele więcej niż ogarniać pull requesty na githubie. Czyli programiści - klawiatury w dłoń i robić poprawki i zgłaszać PR, przydałby się też pewnie ktoś, kto chciałby wspomóc koleżankę w ogarnianiu tych PRów.

Sam bym miał parę uwag do wrzucenia, ale akurat tego(*) kodować nie umiem.

(*)webaplikacji w ogólności.

Mi akurat Nominativ znajduje ten adres. Fakt że pierwszy wynik jaki wyrzuca to „Suburb Bema, Białystok, województwo podlaskie, Polska”, ale po kliknieciu =>More results dostaję rzeczony adres jako drugi na liście.
Pewnym połowicznym rozwiązaniem byłoby tu dodanie do ulicy Generała Józefa Bema tagu short_name=Bema, bo zauważyłem że Nominativ ogólnie nie radzi sobie najlepiej z długimi nazwami ulic, a w szczególności problematyczne wydają się być ulice rozpoczynające się od „Aleje”, „Plac” , „Księdza” czy “Generała”.
Alternatywnie pozostaje również np. zapytanie do Overpass turbo - wpierw wyszukujemy Białystok a potem w kreatorze kwerend “addr:street~Bema AND addr:housenumber=91”. Prędkość wyszukiwania zbliżona do Nominativ.

Względnie
“addr:street”~Bema AND “addr:housenumber”=91 in Białystok
po czym kliknąć na “zoom to data”

Problem w tym (jeśli chodzi o mnie) że w ramach hobby to więcej z OSM nie zrobię.

W dodatku akurat z Nominatimem mam zerowe doświadczenie. Nawet jeśli jakaś firma korzystająca z niego zasponsoruje dodanie czegoś co im brakuje to i tak mnie nie wezmą bym to zaprogramował :slight_smile:

No tak. Faktycznie. Zbyt zmęczony byłem widocznie, by zauważyć guzik pod spodem. W każdym razie skoro dla ulicy Generała Władysława Andersa szukajka zwraca od razu wynik po wpisaniu Andersa, a dla Bema po wybraniu widoku wyników szczegółowych to znaczy, że summa summarum tak średnio…

Moje domniemanie jest takie że w przypadku „Bema 91, Białystok” wpływ na wyszukiwarkę ma bliskie sąsiedztwo węzła place=suburb o nazwie Bema.
Suburb teoretycznie jest/powinien być czymś „większym” niż pojedyncza ulica i przypuszczam dlatego jako pierwszy na liście wyników pojawiał się priorytetowo właśnie „Suburb Bema, Białystok, województwo podlaskie, Polska” a nie budynek z adresem.
Po uzupełnieniu ulic o nazwie Generała Józefa Bema o tag short_name=Bema Nominativ od razu zaczął zwracać jako pierwszy wynik „Building 91, Generała Józefa Bema, Bema, Białystok, województwo podlaskie, 15-363, Polska”, suburb pojawia się jako drugi wynik, dopiero po wciśnięciu „More results”.

Dzięki za fatygę i dodanie skróconej wersji nazwy. Swoją drogą to takie ulice wywodzące się z długaśnych nazw z przedrostkami/tytułami, typu Kardynała Stefana Wyszyńskiego, czy Papieża Jana Pawła II powinny mieć dodane skrócone wersje.

To fakt, czasami bez short_name ani rusz…
Szczególnie w przypadku niektórych naprawdę długaśnych nazw.
Akurat w tej kategorii Białystok jest niekwestionowanym rekordzistą - według TERYTu jest tam ulica o najdłuższej oficjalnie nadanej urzędowo nazwie w Polsce, czyli „Rondo Arcybiskupa Generała Mirona Chodakowskiego Prawosławnego Ordynariusza Wojska Polskiego:smiley:

A niedawno nadano nazwę jednemu z rond na granicy osiedli Bojary i Piasta o nazwie Rondo Korony Królestwa Polskiego i Wielkiego Księstwa Litewskiego :wink:

To w skrócie wyjdzie “rondo Polski i Litwy”? :smiley:

KORONY i Litwy.

Wracając do tematu ( swoją drogą dziwna praktyka, że moderator z administratorem kierują wątek na boczny tor ), z tego co widziałem to Nominatim jest prowadzone przez koleżankę, która z jednej strony robi z siebie ofiarę ( biedna sama musi prowadzić projekt ), z drugiej odpycha ludzi, którzy chcą pomóc. Bo trochę trudno wytłumaczyć jej odmowę umieszczenia na stronie projektu informacji, że potrzebna jest pomoc w rozwoju. Albo tłumaczenia, że tyle czasu zajmuje jej maintenance, że nie ma czasu napisać wprowadzenia dla nowych developerów ( którzy przecież z niej by ten “obowiązek” zdjęli ).

Przy czym, mam wrażenie, że Nominatim jest przestarzałym projektem, którego rozwój może być bezsensowny w obecnej formie. Bo w kontekście istnienia enginów wyszukiwawczych może nie warto po swojemu implementować np. jakieś klastrowanie czy obsługę literówek, skoro np. ElasticSearch takie funkcjonalności zapewni. Ale może coś się od tego czasu zmieniło i jak najbardziej apel o wsparcie jest na miejscu.

O rany, demonizujesz funkcje i trzymanie wątku. Jesteśmy tak samo uczestnikami forum jak inni i dopiero jak jest jakiś konflikt, który sam nie wygasa, to ma znaczenie.

A merytorycznie - może masz rację. A masz jakiś pomysł co chcesz z tym zrobić?

Moim zdaniem moderacja jest istotna i nie powinna mieć miejsca tylko jak jest konflikt. Poza osobami miło dyskutującymi tu i teraz, są ludzie, którzy takie forum traktują jako źródło wiedzy. Strasznie irytujące jest szukanie jakiejś informacji przez kilka stron forum, na których dyskusja schodzi np. na temat ronda w Białymstoku.

A co do Nominatim, to nic nie chcę z tym zrobić. Raczej bym chciał żeby pewne rzeczy były zrobione i to nie jest kwestia lenistwa. Moim zdaniem problem jest w sposobie organizacji i ludziach. Póki osoby prowadzące projekt nie przyznają się do porażki ( bo to, że 10 letni program nie obsługuje podstawowych przypadków użycia jest porażką ) i nie są gotowe szukać pomocy, to nie wiele się zmieni. Jasne, gdybym nauczył się archaicznych technologii ( kto w dzisiejszych czasach programuje procedury bazodanowe? ) i rozgryzł nieudokumentowany kod, to pewnie dałbym radę jakiś ticket rozwiązać. Ale moim zdaniem to by było reanimowanie trupa.

No to ja mam inną wizję moderacji niż ty.

Ale jeśli uważasz, że Nominatim jest przestarzały, to czemu sam nie zaczniesz czegoś nowego? Po co czekasz żeby lonvia się przyznała do porażki i zaczęła od nowa, skoro to jest twoja wizja? A może chociaż ją zacznij namawiać i pokazywać nową perspektywę? Każde z tych działań coś może zmienić, i każdym możesz się zająć zamiast czekać.

Tu jest lista różnego rodzaju oprogramowania do wyszukiwania - może tam znajdziesz coś interesującego:

https://wiki.openstreetmap.org/wiki/Search_engines

a ten nawet używa elasticsearch:

https://wiki.openstreetmap.org/wiki/Photon