Kategoria: Luźne przemyślenia

Oprogramowanie deweloperskie z lat 80-90.

Mamy rok 2019 a w mojej szufladzie wciąż leżą dwie dyskietki 5.25″. Nie sądzę, żeby się jeszcze kiedyś do czegoś przydały, traktuję je raczej jak namacalny fragment poprzedniej epoki w historii IT.

Dyskietki 5,25″ „KL100 (Keil 8051) Professional Development Package Demo” oraz „Wgłąb języka C”.

Pierwsza dyskietka to dodatek do książki „Wgłąb języka C” Adama Sapka, zawiera ona kod źródłowy do przykładów z książki.

Druga to „KL100 (Keil 8051) Professional Development Package (Demo)”. Dość enigmatyczna nazwa, ale po małej wizycie u wujka google, dowiadujemy się, że jest to oprogramowanie do programowania 8-bitowych mikrokontrolerów 8051, powstałych na początku lat osiemdziesiątych poprzedniego wieku. Z lekką dozą przesady można powiedzieć, że to takie ówczesne arduino 😉

Uczę dziecko programować

Jakiś czas temu moja sześcioletnia córka miała powiedzieć w przedszkolu czym zajmują się rodzice i bezbłędnie powiedziała że jestem programistą, ale do końca nie wiedziała o co w tym chodzi.

Dziś, gdy siedziałem i czytałem książkę o Pythonie, przyszła do mnie mówiąc jakie obliczenia matematyczne umie robić. Jako że miałem komputer z odpalonym linuksem pod ręką, odpaliłem interpreter pythona i zacząłem wpisywać równania, które mówiła córka: 1+1, 2+2, później odejmowanie, a nawet pokazałem jej dzielenie i co się dzieje gdy podzielimy przez zero. Widziałem w jej oczach zainteresowanie, więc zacząłem opowiadać że to właśnie na tym polega programowanie, że mówimy komputerowi żeby coś policzył a on to bardzo szybko robi. Aby pokazać że nie tylko o liczenie możemy poprosić nasz komputer wpisałem w pythonie:

>>> import turtle
>>> turtle.forward(50)
>>> turtle.left(90)
>>> turtle.forward(50)

Na ekranie zaczęło się coś rysować, a rysowanie to jest hobby mojej córki, więc zainteresowanie się nasiliło do tego stopnia, że już po chwili mieliśmy narysowany prosty domek.

(więcej…)

Praca z time trackerami

Czasami ludzie pytają mnie gdzie pracuję, odpowiadam że w domu. Często wtedy jestem wypytywany o szczegóły, zwłaszcza jeśli mój rozmówca nie miał wcześniej styczności z pracą zdalną. No i gdy tak opowiadam o tajnikach sztuki „remote work”, rozmowa w którymś momencie dojdzie do momentu: „masz fajnie, bo nikt cię nie kontroluje…”, no i wówczas tłumaczę, że używam aplikacji do logowania czasu pracy, które również robią zrzuty ekranu. I w tym momencie dla czar pryska, rozmówca zaczyna szukać drugiego dna, inwigilacji, ograniczenia wolności osobistych i tym podobnych straszności.

Tutaj dochodzimy do tematu niniejszego artykułu: jak się pracuje z time-trackerami i dlaczego nie jest to takie straszne.

(więcej…)

Dlaczego firmy z USA wybierają polskich programistów.

Trafiłem ostatnio na ciekawy tekst na blogu pewnej amerykańskiej firmy.

We wpisie tym, autor opowiada co firmom z USA podoba się w polskich programistach i generalnie pracownikach branży IT i dlaczego decydują się na outsourcing do Polski.

Nie będę przytaczał tutaj cytatów, podzielę się linkiem do artykułu: (więcej…)

Komunikator napisany w Javie w 2008 roku.

Jakże miłe było moje zaskoczenie, gdy przeglądając katalogi ze starymi projektami znalazłem komunikator, który pisałem ponad 10 lat temu jako pracę licencjacką na Uniwersytecie Łódzkim. Jeszcze większym zaskoczeniem było dla mnie to, że komunikator zadziałał od ręki.

Na screenie widać konsole uruchamiające serwer i klienta oraz interfejs graficzny klienta. Ładny, prawda? 🙂

Komunikator jest napisany w Javie i składa się z dwóch części: klienta i serwera. Wiadomości zapisują się w bazie MySql.

 

Dzień Programisty 2018

Wszystkiego Najlepszego z okazji 256 dnia roku, czyli:

Dnia Programisty

Życzymy wam na tyle mało bugów, żebyście w nich nie tonęli i na tyle dużo, żebyście mieli satysfakcję z ich naprawiania.

Pieniądze same przyjdą 😉

Programowanie w upał

Dawno nie było wpisu na luzie, to coś skrobnę tym razem.

Przez ostatnie tygodnie pracowałem nad aplikacją w Ionic’u, co dało się zauważyć w poprzednich wpisach. Praca nad aplikacją mobilną jest trochę inna niż praca nad aplikacją np. w PHP, bo trzeba to testować na różnych urządzeniach, co ma dużą zaletę: można się co jakiś czas oderwać od komputera.

Zacząłem trochę pracować na stojąco, gdyż przy ostatnim remoncie w mieszkaniu znalazłem stolik do laptopa który, jak się okazało, mogę postawić na biurku i na nim położyć mysz i klawiaturę i w ten sposób stworzyć sobie miejsce do pracy na stojąco. Statyw na monitory mam na tyle konfigurowalny, że łatwo mogę przestawiać sobie ustawienie do pracy na siedząco i na stojąco.

Ostatnie tygodnie to również okres długotrwałych upałów w Europie. (więcej…)

Api w Laravelu – zwracanie odpowiedzi zamiast przekierowań

Dawno mnie tu nie było, bo byłem na urlopie a zaraz po nim wskoczyłem do nowego projektu i jakiś czas zastanawiałem się o czym napisać. Natrafiłem na jedną rzecz, której użyłem już w kilku projektach, dlatego myślę, że warto o tym napisać.

Jeśli robiłeś API w Laravelu, możliwe że spotkałeś się z takim zachowaniem, że gdy walidacja requestu nie przechodzi, wykonywane jest przekierowanie. Zamiast tego, lepiej byłoby dostać w odpowiedzi JSON z informacją o błędzie. Jak to zrobić? Już pokazuję.

(więcej…)

Ionic – wrażenia po napisaniu pierwszych aplikacji

Jakiś czas temu pisałem o mojej Wyszukiwarce Rymów. Ten projekt jest moim poligonem doświadczalnym, dlatego wróciłem do niego podczas nauki Ionica i przepisałem wersję mobilną na ten właśnie framework.

Aplikację na androida znajdziecie tutaj natomiast starą wersję pisaną w javie tutaj.

Wcześniej, w ramach zapoznania z Ioniciem napisałem też prostą gierkę typu memory: klik.

Skoro więc poznałem już co to jest ten Ionic, opowiem wam czego się dowiedziałem.

(więcej…)

Ubuntu – odtwarzanie stereo na urządzeniu wielokanałowym

Od kilku lat używam interfejsu audio U46XL zarówno do nagrywania muzyki, jak i do zwykłego odtwarzania. Miałem jednak z nim problem w ubuntu, ponieważ pulseaudio rozpoznaje tą kartę jako urządzenie w standardzie 5.1 i dźwięk był brzydki. Kombinowałem jak zmusić pulseaudio do traktowania mojego interjesu jako urządzenia stereo, nawet rozważałem napisanie własnego sterownika. Znalazłem jednak inne rozwiązanie, w dodatku bardzo proste.

Okazuje się, że pulse audio remiksuje dźwięk ze standardu stereo do 5.1 i trzeba tą funkcjonalność po prostu wyłączyć.

Aby to zrobić, należy w pliku /etc/pulse/daemon.conf ustawić:

enable-remixing = no

i zrestartować demona pulseaudio:

pulseaudio –kill

Po tym zabiegu dźwięk stał się normalny, a moje uszy przestały się bronić przed słuchaniem muzyki z mojego ubuntu.

No to słucham… nagranie zgrane z winyla do formatu flac brzmi cudnie!