Skip to main content

Blog.dsinf.net

Sygic, A4 i Wadowice
·1122 words·6 mins
Blog.dsinf.net Andoid Nawigacje
Jadąc do Krakowa i okolic postanowiłem przetestować jakkolwiek mi znaną nawigację Sygic na smartfonie z Androidem (v2.3, SE Xperia Neo V). Jakkolwiek mi znaną bo była to najlepsza, a konkretniej jedyna profesjonalna, nawigacja na Nokię N900. Wówczas zdawała się cudowna głównie dlatego, że dziwnym był fakt wypuszczania czegoś co działa i jest płatne na tak niszowy system jakim był, jest i niestety będzie Linux Maemo. W Internecie krążył zestaw poszerzony o skrypt Perla pozwalający użytkownikowi korzystać z aplikacji tak jak z każdej innej z repozytorium, tj. bez opłacania twórcy. Teraz można korzystać z Androidowej wersji przez 14 dni trialu, kiedyś było to tylko 7. Ściągnąwszy pakiet główny (około 200MB) i pakiet regionalny (ok. 150MB) mogłem dopiero przystąpić do pracy, ale spodziewałem się sporej objętości na dysku. Interfejs pracuje w full-screen’ie, ma także własny pasek zadań (ten górny), a więc wygląda tak samo dobrze na każdej wersji Androida (w tym na wielkoformatowym tablecie). Już na starcie program zachęca do rejestracji na witrynie producenta co umożliwia nie tylko zapisywanie “w chmurze” tras, miejsc itp., ale także zgłaszanie społeczności użytkowników wpadków, korków i innych. To jest pierwszy plus. Podstawowym widokiem jest “piesza wędrówka”. Jest on dość praktyczny, gdy idziemy pieszo, ale nawet 50km/h w mieście to za dużo: mapa za wolno się obraca i ten ludzik dość szybko przemierzający mapę… Mi osobiście brakuje trybu wędróki samochodowej: inne oznaczenie naszej pozycji, dopasowanie mapy do prędkości. Ale to jest nawigacja, więc nie czepiajmy się. Planowanie trasy działa bardzo dobrze, choć najlepiej trasy planować jeszcze w domu i weryfikując, czy przypadkiem nie przyjdzie nam podziwiać przyrody na polnych drogach - zwłaszcza gdy do trasy dodajemy punkty własne. Jeśli jedziemy wg. głównych wskazówek trasy są dość porządne. Nie zabrakło oczywiście opcji unikania konkretnych typów dróg, czy optymalizji całej trasy. To co dla mnie jest naganne to brak możliwości nawigowania do konkretnego adresu podając go “z palca”: wprowadzając ulicę mamy możliwość zlokalizowania konkretnego POI lub fagmentu ulicy na podstawie jego bliskości z inną ulicą. Co ciekawe wtedy ujrzymy pełny adres. Generalnie sam moduł wyznaczania tras 4/5 dopóki nie zechcemy jechać w dziwne miejsca. Ale wtedy i tak najlepiej zapisać sobie mapkę dojazdu z internetu. Samo nawigowanie jest dla mnie więcej niż bardzo dobre. Co do komunikatów lektora - cóż: normalne; polskojęzycznych kierowców nawiguje kobieta. Manewrowanie na skrzyżowaniach czy rozjazdach przebiega bardzo sprawnie, a asystent pasa ruchu zrobił na mnie ogromne wrażanie: nie narzuca się i pomaga w dość dziwnych miejscach. W trakcie jazdy widzimy również ograniczenia prędkości - te jednak nie w 100, a mozim zdaniem 95 procentach są poprawne. Niezgodność z maoich obserwacji wynikała z braku wszytskich obszarów zabudowanych w bazie aplikacji. Ale i tak są bardzo dobrze ustawione (największy rozjazd jaki zauwązyłem to chyba 80 metrów). Fotoradary z moich obserwacji wszystkie umieszczone są bardzo dobrze. To, na co warto jeszcze zwrócić uwagę to fakt, że podczas wjazdów do miast widzimy delikatną notyfikację o stacjach benzynowych. Informacje o nich możemy także uzyskać gdzieś w menu. Ogólnie zgodność ze stanem faktycznym 5/5. No, może 5,25/5 - w końcu to nawigacja nie przez Polaków stworzona i obejmująca cały świat. Interfejs w trakcie nawigowania w orientacji pionowej jest bardzo dobry: na górze wąski pasek stanu, poniżej mapka z możliwością jej łatwego przesuwania i zmiany orientacji 2D/3D, poniżej zegar, czas planowanego przyjazdu, odległość do celu, bieżący lub następny manewr i odległość do następnego. Ale przeglądanie mapy w trakcie nawigowania jest pomysłowe, w końcu to poważny produkt! Klikając “wróć” lub odpowiedni przycisk fizyczny możemy natychmiast wrócić do naszej bieżącej pozycji. Ale to nie wszystko. Gdy przez 10 sekund nic nie zrobimy automatycznie zostaniemy cofnięci do nawigowania. To bardzo praktyczne gdy w korku przglądamy następne manewry i po ruszeniu nie mamy możliwości kliknąć wróć. Kolejny plus. Na koniec słów kilka o adaptatywności Sygica w obliczu zmiany trasy. Gdy spróbowałem dodać punkt przejazdu tak, by stworzyć trasę zgodną z wygenerowaną w innym narzędziu nagle znalazłem się na drodze, która penie nie jest uwzględnoina u Google’a. Konkretnie w środku pola. Aplikacja kosztem jakości drogi, czy też czasu przejazdu wybrała najkrótszą i najmniej odbijającą od linii prostej trasę. Cóż, zdarza się. Ale warto rewidować trasę jeszcze w domu. Drugim obszarem adaptatywności Sygica jest pojechanie inną drogą poza miastem. Niestety telefon próbuje nas zmusić do zawrócenia. Cóż zrobić? Albo wyciszyć dźwięki i jechać po swojemu, albo szybko znawigować się z bieżącej pozycji do ulubionej - warto mieć bieżący cel w ulubionych. Żeby podratować Sygica opiszę dostosowywanie się w mieście. To przebiega nadzwyczaj dobrze i nie każe nam zawracać - nie tylko na drogach jednokierunkowych. Co prawda kiedy pilot z nawigacją w dłoni albo sam Sygic przekazuje kierowcy kilka razy z rzędu komendę “skręć w lewo” jest to podejrzane, ale ratuje w sytuacji, gdy skręciliśmy za wcześnie lub za późno. Podsumowywując adaptatywność: +/- za planowanie trasy, - za pojechanie inaczej poza miastem, oraz + za dostosowanie się do pomyłki ze strony kierującego w mieście. Generalnie wychodzi 0 (zero), ale ogólnie dałbym 0,5 za to, że mimo wszystko dojeżdżamy do celu i nie jest to droga z Lublina do Krakowa przez Gdańsk. Nie ma tragedii. Na prawie koniec słów kilka o informacjach, które możemy uzyskać z aplikacji. Na uwagę zasługują informacje o krajach: proste, acz bardzo praktyczne. POI uporządkowane są całkiem sensownie. Ładnie wygląda informacja o połączeniu z satelitami GPS. Bateria zużywa się jak na nawigacje przystało, ale nie natychmiastowo. Zablokowanie ekranu pozwoli nam ją oszczędzić, gdyż w tym czasie Sygic się usypia, by po odblokowaniu w ciągu kilku chwil gdy ponownie łączymy się z GPSem wskazać nam drogę. Telefony z AGPSem, czyli wszystkie, łączą się natychmiastowo, czego niestey nie można powiedzieć o tabletach bez 3G (np. ASUS Transformaer Prime nawet z zewnętrznym GPS dongle). Aplikacja Sygic to najlepsza nawigacja jaką miałem okazję testować na Androidzie, świetnie dostosowana do naszego kraju i pomimo drobnych mankamentów świetnie przyda sie w trasie.
Problem 8 hetmanów z dodawalnym przez użytkownika pierwszym
·463 words·3 mins
Blog.dsinf.net Algorytmika C++
Problem, a raczej ćwiczenie programistyczne jest dość szeroko znany - jak ustawić na kwadratowej szachownicy 8x8 dokładnie 8 hetmanów tak, żeby się nie “biły” lub “widziały” tj. żeby w każdej kolumnie, wierszu i skosie był maksymalnie jeden hetman. Moje rozwiązanie problemu postanowiłem poszerzyć o możliwość podania przez użytkownika pozycji pierwszego hetmana - pozwala to ukazać realną pracę algorytmu oraz zgłębić problem rekurencji z powrotami. Jeśli spojrzeć na aspekt definiowalnego przez użytkownika pierwszego hetmana to jest to pionerski algorytm, gdyż w momencie tworzenia na pewno nie był dostępny albo był bardzo trudno dostępny w Internecie.
Wykres ciepłoty komputera
·373 words·2 mins
Blog.dsinf.net Acpi Linux Perl
Skrypt dość prosty - odczytuje aktualną temperaturę komputera, zapisuje do rotacyjnego loga i tworzy estetyczny wykres przy pomocy biblioteki GD. Oczywiście działa tylko pod Linuksem 😉 Językiem tworzenia został wybrany Perl - głównie ze względu na początki mojej przygody z tym językiem, ale także ze względu na łatwość parsowania plików. Jest to następca skryptu PHP o tej samej nazwie - ciepło, który jednak nie tworzył żadnego loga, a jedynie odczytywał wynik acpi -Vi odpwoiednio kolorował wynik. Źródła protoplasty cieplo.pl zaginęły. Poniżej źródło z sierpnia 2011:
Czytnik losowych cytatów z bash.org.pl
·495 words·3 mins
Blog.dsinf.net C++
Pierwszy z cyklu odgrzebany program - czytnik losowych cytatów z bash.org.pl. Zrodził się z potrzeby - przy przeglądaniu losowych tekstów na samej stronie polskiego bash’a to co mnie denerwowało to przede wszystkim reklamy oraz zmieniający pozycję w trakcie ładowania witryny przycisk losowy. Rozwiązanie? Prosta aplikacja w niechlujnym C#. Jak pomyślał, tak zrobił. Jedyne, co warte uwagi w samym algorytmie to metoda ściągająca zawartość strony i wyświetlająca ją tak jak przeglądarka: znaczniki <br />, &lt i inne na graficzne odpowiedniki.
Języki programowania – z przymrużeniem oka
·35 words·1 min
Blog.dsinf.net
Obrazek odgrzebany po pół roku (wyzej) i stary dowcip: 1)-Puk, puk -Kto tam? -C++ 2)-Puk, puk -Kto tam //po pół godziny -Java 3)-Puk,puk -assembler “If you understand this jokes you probably don’t have friends” 😉
n900 ciągle żywa
·533 words·3 mins
Blog.dsinf.net N900
Jak wiadomo Nokia N900 to najlepsze urządzenie klasy… no właśnie jakiej? Wg. producenta “tablet internetowy z funkcją telefonu” (czyt. znakomity następca tabletów serii N8x0 z 3G na pokładzie). Bo powiedzieć o n900 smartfon to obraza. Żeby to udowodnić kilka przykładów: unikalny system operacyjny - Maemo 5 z aktualizacją Comunity SSU, prawdziwy multitasking, fabrycznie zrootowany (chociaż jak Linuks sam z siebie może nie mieć roota?) oraz odblokowany bootloader. Dla osób, które o N900 nie słyszały wspomnę kilka słów o jej wspaniałej budowie - rozsuwana klawiatura, lekko ceglasta sylwetka, CPU jak na czasy produkcji z najwyższej półki i naturalnie lepsze od panującejo iphone’a - cudo Texas Instruments ARM Cortex A8 600MHz, grafika PowerVR SGX 530 z OpenGL dwójką, proste, ale praktyczne wyjście wideo z trójkanałowego mini-jacka, pamięć flash 32GB, RAM 256MB+750MB swap’a oraz… port podczerwieni. Procesor jak procesor. Ktoś powie, że dzisiaj słaby. Ale jakie mobilne CPU można podkręcić dwukrotnie (tak, na tyle jest odblokowany mnożnik). A port podczerwieni? Już instkrukcja zdradza, że został wsadzony jako zapchajdziura: żadna aplikacja systemowa go nie używa, ale wiele aplikacji - tak (w tym polski projekt z tego roku - pierogi). Obok n900 nie można było przejść bez kilku(dziesięciu) słów wstępu 😉 Pytanie, które nurtuje wielu obserwatorów świata open source i samych użytkowników jest dość trudne: co powoduje, że jeden telefon, który ma 3 lata, a producent nic z nim nie robi zgromadził taką społeczność? Czy to zasługa hardware’u? Chyba nie bo w dzisiejszych czasach każdy nowy smartfon z najniższej półki da porównywalną/większą moc. To chyba zasługa tego, że to “najmniejszy komputer w kieszeni” (autor tego cytatu pozostanie anonimowy) - da się programować, kompilować spore projekty, bez problemu stoi na tym serwer WWW i MySQL, podobno da się się drukować przez CUPS, chodzi OpenOffice - niezbyt wygodny, ale pełnowymiarowy pakiet jest, da się wgrać (prawie) każdego Linuksa. Wgrać inny system niż stockowy - to brzmi ciekawie. No i właśnie o tym miał być artykuł, ale bez pochwalenia koncepcji o numerze RX-51 się nie da 😉 Co poza Maemo 5 da się wgrać? Po pierwsze MeeGo 1.2 Community Edition. Działa (bardzo bardzo) topornie i ewidntnie nowe Qt nie wyrabia na 600MHz, bo overclockingu nie ma. Gdyby jednak ten system jakkolwiek działał to poza przeglądarką, kalkulatorem, kalendarzem niewiele uruchomimy. Kolejny system jest niemal oczywisty - Android. Obecnie do repozytorium dodano nawet instalkę z wizardem do wgrania systemu na kartę microSD. Android jak Android. Szkoda, że nie ma ekranu wprowadzania PINu (w innych telefonach to producent dodaje kawałek firmware’u) i musiałem kupić nową kartę SIM, gdyż karta na abonament (a przynajmniej ta z Orange) nie pozwala mi wyłączyć pytania o PIN. Przedostatni news ze świata NITdroida (NIT=Nokia Internet Tablet) to dodanie obsługi dzwonienia, ale niestety bez dźwięku - brak kodeków. Ostatni to Możliwość wgrania ICS, który jednak muli się nawet na N9. A może warto wgrać system desktopowy? Nie ma problemu: pierwsza była zdaje się Fedora (ale nawet nie umiała ładować akumulatora), a ostatnim wydarzeniem jest Ubuntu 12.04 z Unity/KDE/LXDE. Instalacja teoretycznie prosta - skrypt na PC z Linuksem: wystarczy włożyć kartę do czytnika odpalić i przejść wizarda. Efekt jest piękny (https://www.youtube.com/watch?v=tRUlJ2GXI04) pod warunkiem, że się namęczymy na PC i wgramy pakiet binfmt dla qemu, zeby chroot poradził sobie z binarkami ARM.
Windows 8 a multiboot oraz przedziwny atrybut AMI BIOSu "SATA mode"
·689 words·4 mins
Blog.dsinf.net Bios Windows Windows 8
Artykuł ten pisałem jako luźną notatkę jeszcze do wersji Consumer Preview ósemki. Od tego czasu trochę się zmieniło, lecz to, co można znaleźć w Internecie nt. tego problemu - nie. Mało kto w etapie Preview (swoją drogą od zawsze nazywano to Release Candidate, ale MS lubi podglądy więc niech im będzie) korzysta tylko z Bety – większość ludzi doinstalowywuje go obok wysłużonego XP, czy Siódemki oraz nierzadko Linuksa. Bo trzeba mieć działający system. Po setupie, który jest jak na systemy z Redmond szybki widzimy graficzny(!) bootloader, ale 99% z nas kliknie Enter lub pobawi się myszką. I to był statni raz kiedy w normalnych warunkach ujrzymy ten ekran, dający także zaawansowane opcje rozruchu, takie jak chociażby Tryb Awaryjny. Dlaczego? Część czytelników zapewne powie “Wciśnij F8”. I tu zaczynają się schody. Genialni programiści pracujący pod skrzydłami Steven’a Sinofsky’iego uznali, że skoro system odpala się 7 sekund (czysty może i tak, ale nie czepiajmy się…) to czas na kliknięcie F8 to… 200 milisekund. Naturalnie trzymanie od POSTa F8 nic nie da, bo trzeba kliknąć i wstrzelić się w ten okres czasu. Ale (na szczęście) to nie jedyny sposób aby dostać się do boot menu. Jak dowiadujemy się przez przypadek (bo po co informować użytkownika o opcjach systemu, niech się pobawi): klikając Restart (także nieźle ukryty; Ctrl+Alt+Del to jedyne graficzne miejsce z opcjami wyłączania) trzeba wcisnąć Shift. I co ujrzymy? Bootloader. Cóż. Trochę dziwne miejsce jak na uruchamianie trybu awaryjnego, ale OK. Co to znaczy? Że Okienka muszą działać, by dostać się do boot menu. Ale chyba tryb awaryjny odpalamy, jak coś nie działa. Wydawać by się mogło, że MS trochę przewidział i po awarii systemu pokazuje się niebieski ekran z bialamy literkami z listą wyboru opcji rozruchu. Otóż nie. Windows zyskal inteligencję i nawet po jednym nieudanym rozruchu (co osiąga się chociażby pięciosekundowym power buttonem) zaczyna się naprawiać. WTF?! Ratunek? Metoda zajmująca każdorazowo kilka minut: płyta instalacyjna (lub pendrive). Uwaga, to nie jest wcale takie oczywiste. Po załadowaniu całego OSa (jakby nie można tego było umieścić w menu rozruchowym samej płyty) wybieramy klawiaturę, potem Repair, następnie Advanced aż wrzeszcie Select another OS. Ręce opadają. \o/ Ale to nie koniec. Jestem w trudniejszej sytuacji, bo na laptopie, którego używam (dość powszechny problem) mam do wyboru dwa tryby magistrali SATA: Enchanced i Compatibile. Systemy do Win2k3r2, w tym XP nie wspólpracują z “fajniejszym” trybem tylko BSoDują się. Zaś Win8 nie jest wstecznie zgodny i na trybie kompatybilnym też się BSoDuje, tym razem z minką. Co ciekawe ten tryb zmienia też zachowanie hybrydowej karty graficznej, ale to temat na oddzielny tekst. Wracając do meritum. Windows używając opcji restart (też przy wyborze innego systemu operacyjnego w nowym bootloaderze) odwołuje się do trochę innef funkcji BIOSu, tak, że można łatwo się zagapić i nie wejść do SETUPa. A co z “Press any key to boot from DVD…”? Żeby było zabawnie pojawia się po kilkusekundowym blackscreenie, kiedy to płytka sprawdza dysk -.- Reasumując: żeby odpalić inny system najefektywniej i najprościej trzeba odpalić komputer z DVD, odczekać swoje i… już. Dziękujmy MS za tak dobry system. Ale zaraz? To chyba parzysta wersja.
bash.org.pl reader
·495 words·3 mins
Blog.dsinf.net
Pierwszy z cyklu odgrzebany program - czytnik losowych cytatów z bash.org.pl. Zrodził się z potrzeby - przy przeglądaniu losowych tekstów na samej stronie polskiego bash’a to co mnie denerwowało to przede wszystkim reklamy oraz zmieniający pozycję w trakcie ładowania witryny przycisk losowy. Rozwiązanie? Prosta aplikacja w niechlujnym C#. Jak pomyślał, tak zrobił. Jedyne, co warte uwagi w samym algorytmie to metoda ściągająca zawartość strony i wyświetlająca ją tak jak przeglądarka: znaczniki <br />, &lt i inne na graficzne odpowiedniki.