Wybór najlepszego interfejsu

Dodana kolejna funkcja, zwracająca trasy i odpowiednie dla nich najlepsze interfejsy. Napisane na szybko rano, przetestowane i poprawione przed chwilą, bo nie wiem jakim cudem napisałem rano taki bezsens. Plan był znacznie bardziej ambitny, dzień zapowiadał się pięknie i nawet zaryzykowaliśmy bonusowy wypad do centrum handlowego Posnania celem nabycia oświetlania, ale…

Zanim przejdziemy do ale dygresja nt. owego centrum. Nie wiem co jest zrobione źle. Albo nie jest skończone i nie działają wentylatory, albo jakaś awaria czujników, albo… broken by design. W każdym razie efekt jest taki, że na dość luźnym parkingu, przy braku jeżdżących aut jest duszno i mocno śmierdzi spalinami. Pierwszą rzeczą po wyjeździe było gruntowne przewietrzenie auta, nie chcę myśleć co będzie przy większym ruchu…

Inne wtopa – oprogramowanie do znajdowania trasy na tabletach (oj, można się zgubić, można…) działa w oszczędnej (Poznań, prawda? ;-)) wersji demo, zachęcającej klientów do zakupu licencji. Albo poczekania. Profesjonalnie. Niestety, fotki nie zrobiłem, bo napis zdążył zniknąć, a trochę mi się spieszyło, więc nie uruchamiałem drugi raz.

Wracając do ale: brak czasu, sponsoruje bieg Wings for Life World Run (ciekawa formuła, swoją drogą, może kiedyś się skuszę?). Nie wiedziałem, że się odbywa, więc nie sprawdziłem trasy i na powrocie utknąłem w korkach. Pewnie nie wkurzałoby, gdyby nie fakt, że bieg najpierw blokował główną ulicę z jednej strony centrum, a potem… inną ulicę z drugiej strony centrum. Jak doczytałem później, w międzyczasie jeszcze trzecią ulicę. Generalnie wjazd do centrum w praktyce wyłączony na ponad godzinę (stawka mocno rozciągnięta…), miasto totalnie zablokowane, bo korki się skumulowały, podobno 800 aut stało na rondzie Śródka.

Nie wiem co za umysł wytyczył tak trasę, ale jeśli chce w ten sposób zniechęcić ludzi do biegów czy też tej konkretnej imprezy, to jest na doskonałej drodze. Bo rozumiem start w centrum, przebiegnięcie przez centrum i jakieś utrudnienia w ruchu, żeby biegacze „byli widoczni”, ale totalna blokada centrum i pałętanie się biegaczy przez godzinę? Noż wyraz.

W każdym razie po godzinie stania w korku cała energia i chęć pisania czegokolwiek poszły się paść, więc tylko poprawki, ten wpis i tyle. Sondy dziś nie będzie.

PS Oświetlenie kupiłem.

Przerwa majowa

Uważni czytelnicy dostrzegli, że w zeszłym tygodniu nie pojawił się żaden wpis. Regulamin DSP2017 dopuszcza przerwy w prowadzeniu projektów i… zeszły tydzień należy potraktować jako przerwę. Zresztą ponad tydzień, bo w zasadzie majówka cała nieprojektowa, z małym wyjątkiem, o którym zaraz. W każdym razie z konkursu się nie wycofałem i mam nadzieję, że tygodni roboczych będzie wystarczająco dużo. Nie liczyłem ile jest dokładnie, a zarejestrowałem się z opóźnieniem. Tak czy inaczej, nie chodzi o to by złowić króliczka…

Przerwy są dobre, czy to w pracy jako urlop, czy przy projekcie. Można spojrzeć z boku, wyskoczyć z utartych torów i nabrać energii. W każdym razie zeszły tydzień był mocno pracowity, a wypełnianie PITów, to nie jest coś, co warto odkładać na ostatnią chwilę, powiadam wam. Zresztą warto wcześniej sprawdzić, czy ma się komplet papierów, jak się okazuje. W każdym razie zdobyłem kolejny skill w zakresie obsługi podatków. Ale ostatecznie wszystko w miarę wyprostowane.

Potem był czas dobrych imprez i intensywnego chodzenia po sklepach celem urządzenia oświetlenia – powiedzmy, że 20% zrobione. A w międzyczasie doglądanie zewnętrznych rzeczy – a to serwer się zaczął restartować bez przyczyny (odpowiedź ISP rozwaliła, ale restarty ustały, hm…), a to ktoś zepsuł format danych, z których korzystam… Chwilę trwało, zanim przyswoili, że błąd zgłasza osoba z zewnątrz, a nie pracownik. Fun, fun, fun. Tylko czasu szkoda.

Udało mi się zrobić dwie związane z projektem rzeczy: przetestować uruchomienie programu na czystym systemie z ARM (działa, czemu miałby nie działać?) oraz wstawić Raspberry Pi zamiast Banana Pi jako router, czyli odzyskać właściwą sondę. Co prawda to ostatnie nie udało się w 100%, bo robiłem na szybko, trochę czasu zeszło na ustalenie, że NAT lepiej działa, jak się włączy forwarding, a po wszystkim okazało się, że logowanie przy pomocy autossh coś nie działa, ale powiedzmy, że wariant minimum jest zrobiony. Z powodu małej ilości czasu nie zaryzykowałem też wpięcia drugiego modemu.

Przerwa i programowanie w pracy skłoniło ku refleksji, że może jednak lepiej będzie docelowo przepisać to obiektowo. Głównie chodzi o łatwość wykorzystania kodu w innych projektach – dokładnie to przerabiam w pracy. W cele projektu oficjalnie tego nie wpisuję póki co, ale jeśli tylko starczy czasu, to będzie próba refaktoringu kodu.

Status abcc – 75% zrobione

Za wiele się nie wydarzyło w tym tygodniu w projekcie. Nie uruchomiłem i raczej nie uruchomię stacji testowej, bo jakoś nie ma weny. Za to zrobiłem względny porządek z opisami i funkcjonalnościami, więc powinno dać się względnie komfortowo uruchomić. Gdyby ktoś miał Linuksa i chciał się pobawić – zapraszam i czekam na uwagi. Póki co wyniki są wyświetlane na stdout i całość nie działa w pętli, tylko wykonuje jeden przebieg, ale to detale.

Rozważam uruchomienie stacji testowej oraz przejście na wypisywanie rzeczy do dorobienia/poprawki jako issues.

Czas na DSP2017 został zjedzony przez inną nową zabawkę – Pyevolve. Jest to biblioteka do algorytmów genetycznych, które chcę wykorzystać do rozwiązywania pewnego zagadnienia. No i wsiąkłem w testy, zabawę, przeglądanie dokumentacji i kodu. Z zalet: chyba pierwsza biblioteka, która wygląda na używalną. Jeśli ktoś zna inne godne uwagi (proste, rozszerzalne), to poproszę namiar.

A skoro o algorytmach genetycznych mowa – jest konkurs dotyczący algorytmów genetycznych. Chociaż ja się na grant raczej nie łapię…