Mariusz Waśkowiec

Mariusz Waśkowiec Projektant -
programista Java,
Python - Telecom
Media Sp....

Witam,

Na wstępie proszę, żebyście nie traktowali tego posta jako reklamę (choć po części taki jest), ponieważ pisana przeze mnie aplikacja i serwis są oprócz biegania i roweru moimi pasjami którymi chce się podzielić. Do tego w przypadku strony www, nie ma tam jakichkolwiek reklam i wszystko co robię jest bezinteresowne...

Jak każdy, kto przesiadł się na Androida, szukałem dobrego programu do nagrywania tras rowerowych i biegowych. Niestety, jak to zawsze bywa, nic nie jest idealne, a raczej nic nie spełnia wszystkich potrzeb. Jeden program posiada mapy offline, inny dobre statystyki, a jeszcze inny fajną prezentację trasy, dlatego skusiłem się, żeby napisać coś swojego :)

Napisanie czegoś samemu, oprócz stracenia mnóstwa czasu, ma jednak sporo zalet. Najpierw powstał serwis www służący w głównej mierze do analizowania tras gps, a teraz stopniowo rozwijam aplikację na Androida, która się z nim integruje. W chwili obecnej aplikację piszę pod kątem biegania, ale nic nie stoi na przeszkodzie wykorzystywać ją do jazdy na rowerze, czy jazdy na nartach.

Zawsze irytowało mnie podczas biegania wyjmowanie telefonu, żeby np. sprawdzić dystans, czy tempo. Wypadałem wtedy z rytmu i co gorsza, zdarzyło mi się kiedyś przypadkiem wyłączyć nagrywanie trasy. Kupno np. Forerunnera nie wchodziło w grę, więc zacząłem poszukiwania alternatywy i tak stałem się szczęśliwym posiadaczem Sony Ericsson LiveView. Jest to swego rodzaju programowalny zegarek, który może wyświetlać dowolne informacje z telefonu. Właśnie tutaj idealnie widać przewagę pisania czegoś samemu, ponieważ dodałem prostą obsługę (wyświetlane są najważniejsze informacje typu dystans, tempo, czas itp.) tego gadżetu, a ani SportsTracker, ani Endomondo nie mają odpowiednich pluginów i trzeba byłoby korzystać, albo z płatnego SportyPal, albo z MyTracks, który jest raczej słaby do treningów.

Aplikacja dostępna jest tylko w Android Markecie pod nazwą: Navime GPS Tracker (https://market.android.com/details?id=pl.navime.android), a cały serwis znajduje się pod adresem: http://navime.pl
Dla ciekawskich link do informacji o LiveView: http://www.sonyericsson.com/cws/products/accessories/o...

Jeśli macie jakieś sugestie, to proszę pisać, a na pewno nic nie obejdzie się bez odzewu :) W tej chwili największą skarbnicą sugestii jest kolega, który dość dużo biega i przykładowo właśnie dla niego niedługo dodam natywną obsługę (przez plugin) Forerunnera w serwisie www. Proszę też o wyrozumiałość i niekrytykowanie mnie od razu za to, że chcę się czymś podzielić.

PozdrawiamMariusz Waśkowiec edytował(a) ten post dnia 31.12.11 o godzinie 00:55
Sebastian Z.

Sebastian Z. Manager, Fima Polska
Sp. z o.o.

Mnie serwis nie zachęcił choćby przez wygląd dzienniczka, który jest dość nieczytelny. Nie są wyeksponowane istotne dla biegacza dane (dystans + tempo + hr avg + hr max). Brak możliwości zrzucenia treningu z Garmina. Prędkość zamiast tempa. Nieintuicyjna klikalność (np. przejście z dzienniczka do szczegółów treningu, klikając w "sprzęt" mam komunikat, że "sprzęt nie został zdefiniowany", przy czym nie wiem gdzie wejść żeby go zdefiniować). Dziwne nazewnictwo (dla mnie "trasa" to coś zupełnie innego niż trening, trening może być wykonany wielokrotnie na tej samej trasie - ma szczególne znaczenie dla nie-gpsowców). Szczątkowe statystyki, nieuwzględniające wpisów nie-GPS. Nie widzę możliwości ręcznej poprawy trasy jak np. w runkeeperze, ale to chyba dość trudne zagadnienie. Rekordy się liczą we wkurzający sposób a'la endomondo, czyli wg dystansu GPS a nie dystansu zawodów (wkurzające). Fajny pomysł z wszystkimi trasami użytkownika na jednej mapie, tak się tylko zastanawiam jak to będzie wyglądało przy 200 treningach rocznie mniej więcej w tej samej okolicy i czy będzie czytelne. Na dzień dzisiejszy nie jest czytelne gdy ktoś biega w rozproszonych geograficznie miejscach. Jak na serwis który zrobiłeś dla siebie może OK, ale do serwisu dla biegaczy na poziomie moim zdaniem trochę mu jeszcze brakuje. Wydaje mi się, że zbyt się skupiłeś na rejestracji śladu GPS, zamiast na funkcjonalnościach typowo sportowych.
Mariusz Waśkowiec

Mariusz Waśkowiec Projektant -
programista Java,
Python - Telecom
Media Sp....

Serwis (w przeciwieństwie do aplikacji na telefon) w pierwszej kolejności był tworzony pod kątem turystycznym, a nie treningowym, dlatego też pewne rzeczy są inaczej pomyślane. Skupiałem się na rozwiązaniach, które z punktu widzenia treningów są zbędne lub nawet przeszkadzają jak np. wygląd dziennika. Odkąd zacząłem biegać, a nie tylko turystycznie jeździć rowerem chciałbym dostosować navime do potrzeb osób trenujących. Ze względu na to, że sam wszystko robię jestem "skażony" serwisem w obecnej formie i po prostu nie zauważam wielu niedociągnięć. Dlatego potrzebna jest świeża krew :) i dlatego tez zależy mi na konstruktywnych komentarzach.
Sebastian Z.:
Mnie serwis nie zachęcił choćby przez wygląd dzienniczka, który jest dość nieczytelny. Nie są wyeksponowane istotne dla biegacza dane (dystans + tempo + hr avg + hr max).

Obok widoku podstawowego dziennika, jest też inny z następującymi kolumnami: tytułem, dystansem, czasem trwania, tempem i datą dodania. Niestety, jak widzę, przełącznik widoków nie jest intuicyjny i nie rzuca się w oczy... W opcjach wyświetlania, obok listy tras, należy wybrać "tabela" i później nacisnąć na "pokaż". Czy według Was, lepszym rozwiązaniem jest jakieś wyeksponowanie przełącznika widoków, czy może wprowadzenia profili w serwisie np. turystyczny i treningowy?
Brak możliwości zrzucenia treningu z Garmina.

Navime akceptuje pliki *.tcl z Garmina, łącznie z odczytem tętna. Kolega ma Forerunnera i właśnie takie wrzuca trasy. Jak tylko pożyczę od niego Garmina, to dodam jeszcze obsługę specjalnego pluginu, dzięki któremu nie trzeba będzie zgrywać tras do pliku i później je importować, tylko od razu będą wczytywane z urządzenia. Aby ułatwić dodawanie tras / treningów, jest opcja dodawania wielu tras na raz, a nie tylko pojedynczo. Przykładowa trasa dodana przez kolegę z Forerunnera 305 ze statystykami i wykresami tętna: http://www.navime.pl/trasa/7390/2011-12-10+11_45_58_hi...
Prędkość zamiast tempa.

Praktycznie wszędzie starałem się podawać prędkość i tempo, dlatego, jeśli gdzieś brakuje takiej opcji, to proszę o info gdzie, a ja to poprawię. Z tego co kojarzę, to chyba nie ma opcji tempa przy dodawaniu trasy bez danych gps...
Nieintuicyjna klikalność (np. przejście z dzienniczka do szczegółów treningu, klikając w "sprzęt" mam komunikat, że "sprzęt nie został zdefiniowany", przy czym nie wiem gdzie wejść żeby go zdefiniować).

To jest właśnie to, o czym wspomniałem na początku, nie intuicyjność bierze się w głównej mierze z tego, że sam wszystko robię i wiele opcji jest dla mnie oczywistych, a inni nie mogą ich znaleźć... Opcja dodawania sprzętu znajduje się w profilu na samej górze i szczerze mówiąc myślałem, że jest bardzo dobrze widoczna...
Dziwne nazewnictwo (dla mnie "trasa" to coś zupełnie innego niż trening, trening może być wykonany wielokrotnie na tej samej trasie - ma szczególne znaczenie dla nie-gpsowców).

"Trasa" jest pojęciem, które jest najbardziej uniwersalne w kontekście serwisu z trasami gps. Mógłbym pisać "ścieżka", ale wiele osób nie miałoby pojęcia o co chodzi. W przypadku osób trenujących bardziej odpowiedni byłby trening, ale tak właśnie można określić typ trasy. Co do wielu treningów na tej samej trasie, to myślałem o tym, ale kompletnie nie mam pojęcia jak to rozwiązać. Chodzi o to, że nie wiem jak technicznie w takim przypadku prezentować "trasę / trening" i jak z czegoś takiego liczyć statystyki. Serwis z założenia przeznaczony był dla osób korzystających z gps, a dopiero później dodałem opcję dodania trasy bez danych gps, ale za to z możliwością narysowania takiej trasy.
Szczątkowe statystyki, nieuwzględniające wpisów nie-GPS.

Statystyki gps są dość rozbudowane i jest ich więcej niż w większości podobnych serwisów. W przypadku tras nie-gps znowu kłania się to, że wszystko robię sam i statystyki da się dodać, ale przeoczyłem ich wyświetlanie :( Oczywiście poprawię to.
Nie widzę możliwości ręcznej poprawy trasy jak np. w runkeeperze, ale to chyba dość trudne zagadnienie.

Dodałem kilka algorytmów poprawiających wyświetlanie trasy, przez to wyeliminowałem większość problemów związanych ze słabym sygnałem gps (i np. związane z tym nieprawdopodobne zawyżanie vmax). Nad edytorem do poprawiania tras kiedyś myślałem i miałem wykorzystać obecny do rysowania tras bez danych gps, jednak doszedłem do wniosku, że nakłady pracy będą niewspółmierne do ilości osób, które z tego skorzystają.
Rekordy się liczą we wkurzający sposób a'la endomondo, czyli wg dystansu GPS a nie dystansu zawodów (wkurzające).

Możesz napisać coś więcej, bo nie do końca rozumiem o co chodzi...
Fajny pomysł z wszystkimi trasami użytkownika na jednej mapie, tak się tylko zastanawiam jak to będzie wyglądało przy 200 treningach rocznie mniej więcej w tej samej okolicy i czy będzie czytelne.

Opcja ta powstała z dość prostej przyczyny, jeżdżąc rowerem chciałem na jednej mapce widzieć gdzie już byłem, a gdzie nie i gdzie mogę jeszcze pojechać :) Miałem dodać do tej mapki wybór rodzaju aktywności, żeby np. widzieć tylko biegi, ale z braku czasu nie ma takiej funkcjonalności. Przy takiej ilości tras, czytelność gwarantują tylko różne kolory tras, jednak na małym obszarze i tak może wszystko się zlewać.
Na dzień dzisiejszy nie jest czytelne gdy ktoś biega w rozproszonych geograficznie miejscach.

Niestety nie ma na to dobrego rozwiązania...
Jak na serwis który zrobiłeś dla siebie może OK, ale do serwisu dla biegaczy na poziomie moim zdaniem trochę mu jeszcze brakuje. Wydaje mi się, że zbyt się skupiłeś na rejestracji śladu GPS, zamiast na funkcjonalnościach typowo sportowych.

Ślady gps i funkcje turystyczne (jak np. automatyczne lokalizowanie zdjęć na mapie), były na początku główną funkcjonalnością serwisu. Z czasem moje zainteresowania ewaluowały w kierunku treningów i dlatego zaczęło pojawiać się więcej statystyk, więcej wykresów itp. Jak cały czas podkreślam, jestem skażony obecną formą serwisu, a moje doświadczenia treningowe są stosunkowo małe i dlatego potrzebuję sugestii i propozycji zmian, aby serwis stał się przydatny również dla osób trenujących.
Sebastian Z.

Sebastian Z. Manager, Fima Polska
Sp. z o.o.

Rekordy się liczą we wkurzający sposób a'la endomondo, czyli wg dystansu GPS a nie dystansu zawodów (wkurzające).

Możesz napisać coś więcej, bo nie do końca rozumiem o co chodzi...

Biegniesz maraton, czyli 42,195 km w jakimś określonym czasie, np. 3h30min. Na GPS wychodzi Ci więcej niż wg atestu trasy, bo nie biegniesz optymalnym torem, bo zbiegasz do punktów odżywczych itp. I zamiast 42,195 masz np. 42,7 km. Serwis przyjmuje Ci zatem jako rekord w maratonie czas krótszy niż 3h30, bo odlicza "nadmiarowe" 500 m. Masz w serwisie inny rekord niż oficjalny zmierzony chipem.
Mariusz Waśkowiec

Mariusz Waśkowiec Projektant -
programista Java,
Python - Telecom
Media Sp....

Sebastian Z.:
Biegniesz maraton, czyli 42,195 km w jakimś określonym czasie, np. 3h30min. Na GPS wychodzi Ci więcej niż wg atestu trasy, bo nie biegniesz optymalnym torem, bo zbiegasz do punktów odżywczych itp. I zamiast 42,195 masz np. 42,7 km. Serwis przyjmuje Ci zatem jako rekord w maratonie czas krótszy niż 3h30, bo odlicza "nadmiarowe" 500 m. Masz w serwisie inny rekord niż oficjalny zmierzony chipem.
Spoko, już wiem o co chodzi. Mogę dodać dodatkową statystykę opartą na wpisanym dystansie, a nie tym z gps.

Co do samego dystansu podawanego przez gps, to jest to standardowy problem i zależy on błędów wskazań gps (a dokładniej od pływania sygnału), niż zbaczania z trasy. W przypadku słabego sygnału gps, odbieranego z małej ilości satelitów, pomimo tego, że np. stoisz w miejscu, Twoja pozycja będzie "skakała" w pewnym promieniu. Jako, że program rejestrujący trasę, nie wie, czy akurat poruszałeś się, czy to tylko błąd wskazań, zapisuje kolejne punkty trasy. W ten sposób na dłuższym dystansie robi się dość znaczne przekłamanie i zawyżenie dystansu. Kolejnym, bardzo widocznym efektem błędów wywołanych pływaniem sygnału jest czasem nierealne wskazywanie vmax, np. ponad 200km/h podczas marszu. W navime.pl, jak i aplikacji na telefon (tutaj lepiej to działa, bo aplikacja ma na bieżąco informacje o ilości śledzonych satelitów), zastosowałem kilka algorytmów, żeby wyeliminować ten problem. Niestety często zdarza się, że przez te algorytmy trasa nieznacznie skraca się... Takie życie, trzeba wybierać mniejsze zło...
Mariusz Waśkowiec

Mariusz Waśkowiec Projektant -
programista Java,
Python - Telecom
Media Sp....

Wprowadziłem kilka poprawek. Dodałem prezentację statystyk w głównym widoku trasy bez danych gps. Teraz wygląda to tak (chyba to Twój wpis):
http://www.navime.pl/trasa/7566/das
Dodatkowo jest możliwe pole do uzupełnienia, w którym można wpisać dowolne inne dane, jak np. strefy treningowe itp. Nie można jeszcze ustawić tempa, ponieważ nie wiem, czy ma być dla niego osobne pole do wprowadzenia, czy ma być w locie liczone na podstawie dystansu i czasu. Postaram się też przejrzeć serwis i bardziej go dostosować serwis pod kątem osób nie korzystających z gps.

W zakładce "sprzęt" w widoku trasy, jeśli jesteś zalogowany, dodałem szybki link do zdefiniowania nowego sprzętu. Dzięki temu w trasach gps liczone są dla każdego sprzętu osobne statystyki.

Aby bardziej dostosować serwis do różnych potrzeb, dodam niedługo okno dialogowe przy wyświetleniu listy tras / treningów. Dzięki czemu, po zalogowaniu, każdy będzie mógł zdefiniować domyślny widok, czy ma to być lista, czy tabela (oczywiście w każdej chwili będzie można to zmienić).

Odnośnie wspomnianego liczenia czasu, to też zajmę się tym w bliskiej przyszłości.

EDIT: Dodałem, dla zalogowanych użytkowników, wybór domyślnego widoku tras (lista lub tabela). Dzięki temu osoby trenujące mogą się skupić na liście z danymi statystycznymi, a nie na mapce trasy. Dodałem też możliwość określenia typu nawierzchni trasy oraz trochę bardziej dostosowałem serwis dla ludzi bez gps.Mariusz Waśkowiec edytował(a) ten post dnia 09.01.12 o godzinie 01:07

konto usunięte

Runkeeper i Nike+ (oba są na iOS, nie wiem jak Android) po prostu mówią do słuchawek co jakiś czas jakie masz tempo i dystans. Ja mam ustawiony feedback co 250 metrów tak żeby kontrolować tempo.
Mariusz Waśkowiec

Mariusz Waśkowiec Projektant -
programista Java,
Python - Telecom
Media Sp....

Na pewno dodam taką funkcjonalność w aplikacji na Androida, ponieważ tak jak napisałeś jest to bardzo pomocne i pozwala utrzymywać tempo. Ze względu na to, że kupiłem LiveView mam na bieżąco podgląd bez patrzenia na telefon i dlatego też na razie trochę odwlekło się w czasie dodanie opcji mówionych informacji.
Mariusz Waśkowiec

Mariusz Waśkowiec Projektant -
programista Java,
Python - Telecom
Media Sp....

Minęło trochę czasu od ostatniej aktywności w tym poście. Starałem się nie próżnować i zmieniłem kilka rzeczy zarówno na stronie jak i w aplikacji. Na stronie dodałem wykresy aktywności, które uzupełniają surowe dane statystyczne. Powinny być pomocne przede wszystkim osobom, które trenują i chcą sobie tworzyć harmonogramy na podstawie wcześniejszych danych. W statystykach tras dodałem informacje o czasach najszybszych odcinków np. najszybszy kilometr oraz najdłuższe dystanse pokonane w określonym czasie np. przebyty dystans w 10min.

Więcej zmian wprowadziłem w Navime GPS Trackerze. W najnowszej wersji skupiłem się przede wszystkim na poprawie funkcjonalności oraz wyglądzie. Dodałem m.in. statystyki w dzienniku tras, zmieniłem sposób nawigacji podczas nagrywania i podglądu trasy oraz zwiększyłem czytelność prezentowanych danych. Przykładowe zrzuty aplikacji dostępne są pod adresem: http://www.navime.pl/aplikacja-na-telefon

W planach mam zamiar wprowadzić mapy offline w aplikacji na telefony oraz pełną synchronizację aplikacji ze stroną, czyli możliwość pobierania wcześniej wrzuconych tras z serwisu na telefon. Dzięki temu, może uda mi się w końcu dodać wyścig z cieniem lub podążanie po trasie. Chciałem dodać w aplikacji możliwość głosowego informowania np. o tempie, ale niestety nie znalazłem dobrych darmowych głosów, które można wykorzystać.

Oczywiście jak zawsze proszę o sugestie i opinie, dzięki którym mogę lepiej dostosować serwis i aplikację do potrzeb szerszego grona użytkowników :)
Mariusz Waśkowiec

Mariusz Waśkowiec Projektant -
programista Java,
Python - Telecom
Media Sp....

Staram się powoli wdrażać sugestie i dodałem komunikaty głosowe podczas nagrywania trasy w wersji 2.3 Navime GPS Trackera.
Asystent głosowy informuje o przebytym dystansie, czasie trwania oraz średnim tempie np. przebyty dystans 2 kilometry, czas 14 minut 18 sekund, średnie tempo 6 minut 54 sekundy. Komunikaty mówione są co określony czas lub dystans np. co minutę lub kilometr. Navime Gps Tracker jest chyba jedyną aplikacją, która mówi po polsku :) Wczoraj testowałem podczas krótkiego biegu i według mnie komunikaty bardzo pomagają utrzymać tempo.

konto usunięte

a kiedy wersja na iPhone? :)
chętnie potestuję.
Mariusz Waśkowiec

Mariusz Waśkowiec Projektant -
programista Java,
Python - Telecom
Media Sp....

Niestety wersja na iPhone raczej nie powstanie... Gdyby doba była dwa razy dłuższa, to nauczyłbym się programowania na iOS i zrobił wersję na tą platformę. Niestety wszystko piszę sam i wole skupić się na stronie i aplikacji na Androida, żeby dobrze działały, niż brać się za nowe rzeczy i robić je łebkach. Jeśli ktoś chciałby hobbystycznie ;) napisać wersję na iOS, to mogę wystawić API.

konto usunięte

To trzymam kciuki za rozwój aplikacji na platformie Android.
Screenshoty wyglądają ciekawie.
Mariusz Waśkowiec

Mariusz Waśkowiec Projektant -
programista Java,
Python - Telecom
Media Sp....

Pewnie by lepiej wyglądały gdybym miał chociaż szczątkowe umiejętności graficzne ;) A tak poważnie, to bardziej liczy się funkcjonalność, niż wygląd, pomimo tego, że jednak na początku człowiek skupia się na wyglądzie. Najlepszym przykładem jest Endomondo, które pomimo ubogiej szaty graficznej, jest bardzo dobrym programem.

Co do samej aplikacji, to muszę w końcu poprawić przesuwanie mapy, bo w tej chwili ciężko jest przesunąć ją na boki. Aby np. przesunąć w prawo, należy najpierw ruszyć palcem w dół, a dopiero później w prawo lub w lewo. Zrobię coś podobnego jak jest w Endomondo, czyli przycisk blokujący przesuwanie mapy / przesuwanie ekranów aplikacji. Przy dobrych wiatrach, może wrzucę dzisiaj / jutro nową wersję, ale ze względu na ładną pogodę, na pewno nie będę siedział przy kompie w ciągu dnia :)
Krzysztof Jarzyna

Krzysztof Jarzyna Informatyk, Sebix
Company

Jeśli chodzi o aplikacje stricte sportowe to polecam zapoznać się z tym artykułem. Znajdziecie tutaj wiele ciekawych informacji na temat aplikacji mobilnych.

Następna dyskusja:

Lago di Garda - raj nie tyl...


Wyślij zaproszenie do