Friday, November 1, 2024

Drukarka Bambu Lab A1

Od pewnego czasu mam drukarkę 3D bambu lab A1 w wersji combo, tzn. z "AMS Lite" czyli podajnikiem na 4 szpule.

Krótko o sprzęcie

Drukarka

Sprzęt wymaga jedynie minimalnej obsługi. Pierwsze kroki to obsługa z ekranu dotykowego lub komórki. Sprzęt ma większe możliwości. Świetna pierwsza drukarka. Ale na dalszą zabawę żałuję, że nie kupiłem P1S lub X1.
Złożenie z wiki - przeoczyłem instrukcję. Idzie szybko.
Wersje P1 i X1 zajmują mniej miejsca (ale z AMS będą wyższe więc A1 daje możliwość miższej drukarki z większą zajmowaną powierzchnią).

AMS Lite

Podajnik fajny, lecz czasem brakuje mu siły. Posiada 4 podajniki łączone w pary, czyli 2x2. Każdy zawiera silnik z zębatkami i jest półprzezroczysty umożliwiając wgląd w to, co jest w środku. Gdyby ustawić podajniki pod kątem to mogli byśmy lepiej dysponować siłą (szpule numer 2 i 3 często mi się blokują).
Posiada kilka modyfikacji mających na celu "ubranie" szpul aby nie łapały wilgoci.

Jakość wydruków

Jak dla mnie "very quick draft" jest jakością znacznie przekraczającą moje oczekiwania. Zakupiłem głowice 0.6mm z utwardzonej stali i chyba te będę chciał wykorzystywać.
Materiały "plexi" (przezroczysty PETg) zatykały dyszę i pojawia się masa błędów wydruku.

Trudny start

Na początku nie znałem nazw. Extruder to ta część, która podgrzewa materiał (filament) i wyciska go jako pasek miękkiego tworzywa. Slicer to... oprogramowanie do obsługi drukarki. G-code to kod do tegoż. Filament to materiał do drukowania - zwykle na szpulach. Zdarzają się szpule albo "uzupełnienia" (niektóre szpule są przeznaczoen do ponownego wykorzystania - rozkręcamy je i nakłądamy na "wkład" - moim zdaniem super opcja).

Zużycie energii i materiałów

Dokładne pomiary przede mną. Drukarka ustawia temperaturę stolika na wysoką, co nie ma większego sensu jeśli wydruk ma już 5mm. Staram się ręcznie zmniejszać temperaturę do 40 stopni Celsjusza po osiągnięciu 5mm.
Niektóre materiały są bardzo wrażliwe na zmiany temperatury - tam bym nie zmniejszał temperatury stolika.
AMS Lite pozwala na mieszanie kolorów. Niestety najpierw trzeba przeczyścić dyszę i powstają "wieżyczki" na których drukuje się byle co. Chyba te wieżyczki drukują się niepoprawnie :(
Najlepiej nie mieszać kolorów (szybsze drukowanie, mniejsze straty materiału, czysty kolor).
Drukarka co jakiś czas odrzuca na bok śmieci, tzn. odrobinę filamentu. Na to trzeba jednak koszyczek sobie wydrukować (lub zrobić innymi metodami).

Oprogramowanie

Wszędzie zachwalany blender... jest strasznie nieintuicyjny.
Jestem człowiekiem starej daty. Wolę CADa. Najlepiej gdybym mógł kodować jak w Moray/Povray. Na razie WOMP w wersji darmowej jest OK. I bambu studio. Muszę jeszcze troszkę poeksperymentować.

Sunday, September 22, 2024

Firefox and dictionaries

 I'm using several versions of firefox: nightly, developer, stable.

There is a problem however:

This add-on is not compatible with your version of Firefox.

Or more precisely:

https://addons.mozilla.org/en-US/firefox/addon/english-us-language-pack/


As I'm using more than a single language on a daily basis, this is a problem (it highlights words which are correct and I cannot select proper dictionary). In fact I would like to mark a text that is is a mixture of 2 or more languages. Or mark its parts to be in a given language. But that is not possible with a single dictionary installed in firefox.

A solution is to install alternative version, not shown by the addons page:

https://addons.mozilla.org/en-GB/firefox/addon/english-us-dictionary/versions/

There is a version that supports my firefox.

If this was helpful for you - please, leave a comment.

Sunday, July 7, 2024

Rejestracja zwierząt w Bydgoszczy

Niedawno rejestrowałem nabycie zwierzaka w Bydgoszczy. Chodzi o zwierzaki rzadkie jak płazy, gady, ptaki i inne. Wiele osób nawet nie wie, że trzeba je rejestrować.

Kiedy te przepisy wchodziły w życie, było wiele niejasności, jak np. co mają zrobić hodowcy ferm drobiu, gdzie każdego dnia wykluwają się dziesiątki tysięcy kurcząt. Teraz jest lepiej ale nadal są problemy.

Skorzystałem z ulotki na Zgloszenie_do_rejestru_posiadania_zwierzat_objetych_ochrona.pdf (super, że ktoś go stworzył), ale niestety postanowiłem zapłacić według innej instrukcji, korzystając z systemu "autopay". Było by dobrze gdybym się trzymał ulotki!

Jakie problemy są z autopay?

  • Brak powiązania pomiędzy płatnością a związaną z nią operacją.
  • Brak potwierdzenia płatności - dostajemy tylko jakiegoś maila z potwierdzeniem transakcji autopay, która nie jest nam do niczego potrzebna.
  • Dodatkowa opłata 1zł
    • Dodatkowy koszt - przelew jest tańszy, bezpieczniejszy, pewniejszy i szybszy
    • Kwota, którą obciąża się nasze konto różni się od kwoty, jaką trzeba zapłacić
  • Możliwe dodatkowe problemy z racji używania pośrednika płatności między nami, bankiem a odbiorcą
To nawet niekoniecznie problem samego autopay, lecz problem z integracją (a raczej jej brakiem).

Ale jak to rejestrować?

Przede wszystkim warto udać się tam osobiście :( Niestety system jeszcze nie dorósł do czasów internetu. A jakie problemy mogą na nas czyhać:
  • Pismo musi być podpisane - a platforma ma jeszcze z tym problemy
  • Załączniki muszą być podpisane - z tym platforma ma duże problemy
  • Możemy popełnić jakiś błąd w formularzu - a pismo wpływa do urzędu z opóźnieniem
  • Coś może akurat nie działać (przerwa techniczna którejkolwiek z platform)

Rejestracja online jest nadal możliwa, ale rejestrując jedynie jednego, pierwszego zwierzaka i chcąc uniknąć problemów niestety platforma elektroniczna  nie jest najlepszą opcją.

Na koniec wierzę, że platforma elektroniczna to przyszłość i że będzie to funkcjonować pewnego dnia lepiej a wizyta w urzędzie nie będzie potrzebna (ani czytanie jakichkolwiek dokumentów, postów czy ulotek).

Thursday, June 27, 2024

Garett i nju monile

 Może komuś się przyda - jeśli tak to zostaw lajka/komentarz :)

Garett zegarek "dla dziecka" i konfiguracja połączenia w nju mobile.

Producent zaleca wyłączenie blokady SIM - ale u mnie z tym działało. Jednak wyłączyłem bo to tylko problem. Numer dziecka mam na karcie przy swojej (więc zmiany na koncie potwierdzam że swojego numeru).

Wchodzimy w opcje i dodajemy nowy APN. Nazwa dowolna.

Proxy: nie ustawiono

Port: nie ustawiono

Użytkownik: internet

Hasło: internet

Serwer: nie ustawiono

MMSC: nie ustawiono

MMS proxy: nie ustawiono

MMS port: nie ustawiono

MCC: 260

MNC: 03

Typ autentykacji: PAP lub CHAP

Typ APN: default, supl (zaznaczyłem dwa)

Protokół APN: ipv4

Nośnik: nie ustawiono

MVNO: nie ustawiono


Takie ustawienia u mnie zadziałały. 

Po ustawieniu i zapisaniu klikamy i wybieramy "use" - kropka powinna się pojawić przy tym APN.

Ja zrobiłem jeszcze restart urządzenia.

Sprawdziłem z "chat" a później w telefonie jeszcze sprawdziłem położenie (miałem ręczne odświeżanie więc musiałem wybrać urządzenie i po chwili lokalizacja zaskoczyła).

Jeśli masz innego operatora to możesz wejść w opcje swojego telefonu, poszukać swoich działających ustawień w sieciach i ustawić tak samo na zegarku.

Powodzenia


P S.

Garett jest tragiczny ale na rynku serio nie ma nic lepszego... 

Tuesday, May 28, 2024

2024-05-28 F**k EA

  •  Today I noticed that EA removed whole bunch of my games and addons:
    • star wars: empire at war forces of corruption
    • star wars empire at war gold pack
    • star wars galactic battlegrounds saga
    • star wars jedi knight: jedi academy
    • star wars jedi knight: mysteries of sith
    • star wars knights of the old republic
    • star wars knights of the old republic II - the sith lords
    • star wars republic comando
    • star wars the force unleashed II
    • star wars the force unleashed ultimate sith edition
    • star wars x-wing alliance
    • tacoma
    • the bard's tale trilogy
    • the sims 3
    • the sims 3 high end loft stuff
    • the sims 3 late night expansion pack
    • the solus project
    • the witness
    • torment: tides of numenera
    • tropico 6
    • vambrace: cold soul
    • abzu
    • anthem
    • battlefield 4
    • battlefield 1
    • 10x battlefield hardline gold battlepack
    • battlefield hardline: betrayal
    • battlefield hardline criminal activity
    • battlefield hardline getaway
    • battlefield hardline premium
    • supression battlepack
    • battlefield hardline iltimate edition
    • battlefield V
    • blackguards
    • blackguards 2
    • cities: skylines - pre-order pack
    • cities: skylines
    • command & conquer 4 tiberian twilight
    • command & conquer generals and zero hours
    • command & conquer red alert 2 and yuri's revenge
    • command & conquer red alert counterstrike and the aftermatch
    • command & conquer renegade
    • command & conquer tiberian sun and firestorm
    • command & conquer and the covert operations
    • command & conquer 3 tiberium wars and kane's wrath
    • command & conquer red alert 3 and uprising
    • FTL: faster than light
    • frostpunk
    • hand of fate
    • home behind
    • lego batman 2 dc super heroes
    • lego star wars iii: the clone wars
    • lego star wars: the complete saga
    • lego batman 3: beyond gotham
    • the lego movie videogame
    • mutant year zero: road to eden
    • need for speed rivals concept lamborgini complete pack
    • need for speed rivals koenigsegg one:1
    • need for speed rivals classic muscle livery for the dodge challenger SRT8
    • need for speed rivals track day livery for porsche 911 GT3
    • need for speed rivals vip matte livery for aston martin vanquish
    • need for speed rivals iltimate racer pack
    • ultimate cop pack
    • need for speed rivals: complete edition
    • need for speed rivals: complete edition bundle pack
    • need for speed rivals complete movie pack
    • need for speed rivals ferrari edizioni speciali complete pack
    • need for speed rivals loaded garrage pack
    • need for speed rivals simply jaguar complete pack
    • deadfire park
    • pillars of eternity: hero edition
    • prison architect
    • simcity: cities of tomorrow
    • skyclops coaster crown
    • sinner: sacrifice for redemption
    • simcity: complete edition
    • airships set
    • british city set
    • french city set
    • german city set
    • plumbob park
    • simcity heroes and villains set
    • amusement park set
    • slay the spire
    • snake pass
    • star wars episode I racer
  • I receiver my RISC-V banana board - need to check if this works before I can make use of it

As for the EA... I am really pissed. Especially about the bold titles on my list. Well... it seems I wouldn't be buying anything more from EA.

Other titles that I still do have on it:

  • Alice: Madness Returns
    • It shaped my mind a bit
  • Battlefield 1942
    • I loved it when it came out
  • Battlefield 3
  • Bejeweled
  • Burnout paradise
  • Red alert 2: Yuri's revenge
  • Red alert 3
  • Crysis 2
  • Crysis 3
  • Dead in bermuda
  • Dead space 3
  • Dead space
  • Dragon age origins
  • Dungeon keeper
  • FC24, FIFA 10, 13, 17, 18, 21, 22, 23
    • My son plays them
  •  Grid: Legends
  • Jade Empire: Special Edition
  • Mass Effect 2
  • Mass Effect Legendary Edition
    • I liked the story
  • Medal of honour
    • Outstanding feel of war
  • Medal of honor: pacific assault
  • Mirror's edge
    • I loked the story  
  • Need for speed: Heat
  • Need for speed: Most wanted
    • I spent some time playing it and music was great
  • Peggle
  • Plants vs zombies
  • Plants vs zombies garden warefare
  • Populous
  • Sim city 2000
  • Star wars: Battlefront
  • Syberia II
  • The Sims 2
  • The Sims 4
  • Theme Hospital
  • Ultima VIII
  • Unravel
  • Unravel two
  • Wing commander III
  • Zuma's revenge

Thursday, May 23, 2024

2024-05-23

Done:

  • Zaniesione dokumenty do szkoły syna
  • śniadanie i poranna kawka :)
     

TODO

  • Niedługo różne okazje więc jakieś zakupy trzeba poogarniać
  • Odwieszenie działąlności
  • Ponowna rejestracja płatnika VAT
  • Nauka java
Z wczoraj
  • Ukryć elementy oświetlenia lustra w łazience
  • Wymiana wentylatora u syna... ale nie mam rozgałęźnika i brakuje mi złącz wentylatorów

Wednesday, May 22, 2024

2024-05-22 nic

  • Mało produktywny tydzień:
    • Wstępnie ustalony termin kiedy jadę na nowy kontrakt
    • JUG w Bydgoszczy - super się spotkać z ludźmi
    • Księgowy - jeśli nie odezwie się to muszę do niego zadzwonić
    • Nauka JAVA - i od razu mały artykuł
    • Rower - jeden samotny wypad w słońcu ale ponad 36km w około godzinę i 40 minut
    • Fryzjer - o dziwo to nie lada wyzwanie
    • Typowe kłótnie domowe :/
    • Szukanie książki z religii i ogarnąłem pokój młodego
    • Wysprzątałem do końca balkon
    • Ogarnięta nieco sypialnia
    • Wyczyszczony ekspres
    • Mój telefon ma problemy z baterią - nie udało mi się ustalić żadnej przyczyny programowej więc to zapewne hardware
    • Założyłem wentylator u syna w kompie - ale wymiana na inny będzie dobrym pomysłem, ponieważ nie warto marnować wentylatora ARGB
    • Lampa pod lustrem
      • jasny zestaw jak był - 5 super jasnych listew LED
      • ciemny ma teraz 3 lampki z czego 2 nakierowywane
  • TODO:
    • [done] zorganizować sobie terminarz
    • [done] przygotować się na migrację telefonu
      • dostęp do banku
    • [done] zakupy
      • almette
      • soki
    • Ukryć elementy oświetlenia lustra w łazience
    • [done] Zmywanie
    • Wymiana wentylatora u syna... ale nie mam rozgałęźnika i brakuje mi złącz wentylatorów
    • Nauka java
      • [done] Optionals
        • Próba obsłużenia NULLa poprzez wrapowanie nullowalnych wartości w skomplikowany typ - sprawia, że całość będzie żreć RAM i będzie działać wolniej
      • [done] Kolektory
        • IMHO ktoś przekombinował to tworząc dziesiątki metod które można zaimplementować małym kosztem
      •  

Friday, May 17, 2024

2024-05-17

Wczoraj z młodym sporą część dnia spędziłem. Graliśmy w grę lego na xbox ale też układaliśmy coś z lego (ale niewiele). Plan z wyjściem na rowerek nie wypalił bo było dość chłodno. Udało mi się za to zrobić jakieś żarcie dla chłopaków (nugetsy), co nieco w domu ogarnąć i poczytać troszkę książkę (ale robienie czegokolwiek z nadaktywnym dzieckiem jest trudne).

Dzisiaj młody w szkole a ja na rower :)

Wednesday, May 15, 2024

2024-05-15 net latency, OpenVPN started

Egzaminy ósmoklasisty i maturalne skutkują w licznych dniach wolnych dla moich synów.
  •  2024-05-11 sobota: Zakupy z rana, żona z chłopakami pojechała autobusem do centrum a ja dojechałem i byliśmy na placu zabaw. Po wszystkim żona poszła do galerii handlowej, zjedliśmy w manekinie (dawno już tam nie byliśmy).
  • 2024-05-12 niedziela: Cały dzień w domu. Odwiedziła nas teściowa. Udało mi się w końcu zrobić poprawnie soft na routerze.
  • 2024-05-13 poniedziałek: Byłem z młodym na placu zabaw i na rowerku. Udało się puścić pranie ale niewiele więcej. Był też starszy syn bo także miał dzień bez szkoły. Ze starszym chyba głównie były spory o jego obowiązki i zaległości.
  • 2024-05-14 wtorek: Spędziliśmy razem cały dzień z młodym i nie było zbytnio czasu na cokolwiek innego. Byliśmy chwilę na balkonie i ogarnąłem go wstępnie (sprzątanie, mycie). Starszy syn położył się spać nie zajmując się żadnymi ze swoich obowiązków i licząc na to, że w nocy wstanie i będzie grać... ale ustawiłem opóźnienie ruchu sieciowego na 100ms :)
  • 2024-05-15 środa:  Rano zakupy zrobiłem. Był rowerek i plac zabaw (ale ciut chłodno już się robiło). Dzisiaj ponownie starszy syn był w domu. Chłopacy obejrzeli spidermana a ja w tym czasie mogłem siąść do OpenVPN - ale niestety nie skończyłem. Umyłem część okien. Młody bawił się umytymi zabawkami na balkonie.

Jutro dzień z młodym a starszego trzeba rano obudzić.

Obstawiam, że jutro nie dam rady nic zrobić.

Na piątek planuję rower ale się zobaczy.

Friday, May 10, 2024

2024-05-10 OpenWRT


 
  • OpenWRT. Cały dzień kompilowałem, konfigurowałem, zmieniałem i wykonywałem inne zadania związane z OpenWRT dla mojego routera. Teraz wychodzę od OpenWRT vanilla (bez modyfikacji). Nadal nie udało mi się ustawić SELinux :(
  • Kolejny temat na celowniku: JAVA. Muszę się podszkolić bo moje kwalifikacje trącą myszką.
  • Temat odłożony na lepsze czasy: LLM z RAG :( Może jak będę miał lepszy sprzęt do przetwarzania równoległego...
  • Dzisiaj przygotowałem ryż z jabłkiem i cynamonem, ale niestety rodzina wyraźnie preferuje wersję z dużą ilością cukru :( A żona bez cynamonu.
  • Zdrowotnie: od rana czuję ból przy dotyku na zakończeniu najniższych żeber i nie mam pojęcia co to może być. Może młody na mnie skoczył w łóżku jak w nocy przyszedł do rodziców do łóżka? Zobaczymy.
  • Dziwny problem z składką NFZ - mój pracodawca chyba nie zapłacił składki... ciekawi mnie co się dzieje, że w pue.zus nie widać składki.

Thursday, May 9, 2024

2024-05-09

Openwrt. Dziś kompilowałem kilka wersji openwrt na swój router. Działa dobrze ale nie opanowałem jeszcze dobrze rozmiaru partycji: resize aby dopasować do pamięci nie jest łatwy a security labels dodatkowo komplikuje sprawę.

PyData. Prezentacje dla mnie zbyt wysokiego poziomu. Tym bardziej, że ominęło mnie początkowe 20 minut (nie mogłem znaleźć tego miejsca). Nowością jest dla mnie wiele tematów ale fajną ciekawostką jest splitting dokumentów wejściowych danych treningowych na wejściu do modelu.

Przesyłki. W końcu dostałem filtr powietrza zamówiony kilka miesięcy temu. To mój jak na razie najdłużej idący zakup na Amazonie (ale za to za 80 zł mam filtr który normalnie kosztuje dużo więcej).

Pogoda wariuje. W jednej chwili marznę z zimna aby chwilę później pocić się na słońcu.


Wednesday, May 8, 2024

2024-05-08 🚗

  • Dzisiaj zostawiłem auto u mechanika - wymiana amortyzatorów... autko ma już swoje lata (a teraz już takich nie robią)
  • Od rana kompiluję OS na mój firewall... jak skończę to w kolejce mam prezentację o k8s
  • No i muszę ustalić jak się umówić na ekstrakcję zęba na NFZ... wolę aby to było zrobione w szpitalu niż u dentysty bo to jednak poważny zabieg (mała operacja)

2024-05-07 🍻

  • Kompilacja softu na mój firewall/router. Korci mnie aby kupić bananaPi który jest silniejszy albo bananaPi który ma więcej portów LAN (mógł bym odpuścić switcha). 🔬
  • Przejażdżka rowerowa z synem :) 🚲 🚲
  • Spotkanie z dawną ekipą OpusCapita (jej częścią) 🍻
    • Zupełnie tego nie przewidziałem ale dostałem masę pamiątek: flachę (nie piję, ale ładnie będzie wyglądała), kubek (wymiata pomimo, że mam zbyt wiele kubków już) i karta do decathlonu (przegięcie - powinni to zachować dla siebie). Za wszystko pięknie dziękuję (jeśli ktoś z Was to czyta) 🫡
  • Na koniec kupiłem na szybko zestaw lego... i okazało się, że młody już go ma :( A wszystko to w związku z wróżką Zębuszką i wypadnięciem jedynki u młodego
  • W trakcie dnia odzywała się średniego poziomu (juniorka) head hunterka z UK która chciała mnie podrzucić jednej firmie robiącej coś z AI. Dzwoniła gdy byłem na rowerze a później gdy byłem w knajpie. Niestety brak doświadczenia, niesamowicie mocny hinduski akcent oraz brak wiedzy w zakresie IT daje się u tej pani we znaki ale każdy musi gdzieś zaczynać. Tym samym jestem obecnie w trakcie 3 rekrutacji nawet nie szukając jeszcze pracy (podane poniżej chronologicznie według pierwszego kontaktu):
    • 1️⃣ firma w trójmieście w której bym chciał pracować ze względu na ludzi, ich doświadczenie, wyzwania technologiczne i dużą ilość danych
    • 2️⃣ firma z Bydgoszczy/Warszawy w której bym chciał pracować ze względu na ludzi, atmosferę w firmie, wkład w edukacje lokalnych społeczności oraz zagadnienia
    • 3️⃣ ta firma z UK o której nie wiem zbyt wiele i która nie pasuje do mojego profilu
    • ponadto 3 osoby zajmujące się pośredniczeniem prosiły mnie o moje CV ale na razie nie pociągnąłem tego tematu a na linkedin
    • w sumie mam 17 różnych ofert od początku kwietnia więc rynek jest dużo słabszy niż kiedyś... zdaje się, że kolejne 3 z tych osób mają moje CV co oznacza, że teoretycznie mogę być uwzględniany w aż 6 rekrutacjach (wolał bym aby to była jedna, może dwie rekrutacje na raz aby uniknąć niepotrzebnych inwestycji ze strony firm gdzie po wszystkim może się okazać, że jestem niedostępny... z drugiej strony to nie są rzeczy, które są szybko załatwiane i często brak jest kontaktu z daną firmą przez tydzień lub nawet dłużej)
      • Firma z 1️⃣ ma u mnie plusa za to, że miałem dodatkowy kontakt z HR z informacją, że sprawa jest w toku
  • Każda z powyższych opcji nie jest idealnym dopasowaniem mojego profilu... ale najważniejsze pytanie to czym chciał bym się zajmować... i sam nie potrafię na to odpowiedzieć ponieważ kręcą mnie:
    • big data (ale bardziej w kierunku NewSQL niż typowe hadoop+spark)
    • low level (openWRT, arduino, IoT) ale brak mi doświadczenia
    • DevOps (kubernetes itp. - chociaż w tym obszarze stricte nie pracowałem jedynie z doskoku na co dzień dotykając takich tematów)
    • Security (ale wiem, że nie mam jeszcze wystarczająco doświadczenia a ponad to może ten obszar być nieprzyjemny ze względu na konieczność szybkiej reakcji w przypadku incydentów)
    • Agile a dokładniej SCRUM - ale taki czysty i wiem, że ciężko to wprowadzić bez realnego wkładu ze strony kadry zarządzającej firmy... a z tym często jest słabo i jest wielu ludzi, którzy mają w tym o wiele większe doświadczenie niż ja

Monday, May 6, 2024

2024-05-06 🥱

Poranek jak zwykle - pobudka, budzenie dzieciaków, zaprowadzenie młodszego do szkoły.

Później rower - nędzne 17 km na ostrym kole.

Szybko prysznic i dentysta. Muszę się jeszcze umówić na wyrwanie zęba (nie warto go ratować).

Wróciłem i uciąłem sobie drzemkę. Później po młodego do szkoły.

Na koniec po warzywa do sklepu i do Lidla po bułkę dla młodszego (upatrzył sobie akurat te bułki).

Dzień minął a ja mam wrażenie, że nic nie zrobiłem a dzień trwał godzinę.

Sunday, May 5, 2024

2024-05-05 🥱

Dzień na spokojnie. Laba. Z żoną obejrzeliśmy jakiś film. Ja już dawno nie oglądałem nic. Całe moje życie to praca na innych a teraz chwilowo jest inaczej. Nawet "wakacje" to czas spędzony na służeniu rodzinie.

Starszy syn miał się uczyć na sprawdzian i na poprawę ocen z jednego przedmiotu. Chciałem mu pomóc w nauce - ale mnie spławił i zamiast tego grał, oglądał filmiki na mediach, był na siłowni i poza domem za laskami się uganiał. Teraz o 22 ma do mnie pretensje, że nie nauczę go magicznie w 5 minut na jutro...

Młodszy dzisiaj sporo grał. Chwilę z nim spędziłem a tak to grał, oglądał coś tam i co chwila wołał mnie. Mamy ani razu.

Szukałem kawy w piwnicy. O dziwo nie znalazłem - a mieliśmy spore zapasy. Jutro poszukam.

Popełniłem krótki artykuł o metodologii agile i jak często jest przeprowadzona z góry skazana na porażkę udawana transformacja na agile. Taką właśnie miałem w opuscapita - tam nikt nie chciał ani transformacji, ani nawet usprawnień. Zarząd jedynie skupiał się na cięciu kosztów i utrzymaniu klientów aby maksymalizować obecne zyski. Parę osób w zarządzie mogło patrzeć szerzej ale całościowo zarząd grał na zatracenie, nie na rozwój. Zarząd odseparował się od pionu technicznego za pomocą nietechnicznych, niebiznesowych managerów niższego szczebla którzy byli pionkami. Takie podejście nie ma szans na sukces. Z zalet to pieniądze były na poziomie ale przy tym atmosfera na wyższych szczeblach nieprzyjemna i przesiąknięta polityką. To jest przykład firmy, w jaką inwestorzy nie powinni inwestować.

Friday, May 3, 2024

2024-05-03 lenistwo

Wczoraj i dzisiaj nic nie robimy. Siedzimy w domu oglądając jakieś bajki, grając w gry Lego, czytając. Ponad to spacery. Sąsiedzi wyjechali nad morze a mają psa co stanowi problem i żona zgodziła się tym psem zająć.
Wczoraj byłem że starszym synem na rowerach i syn chciał żebym mu kupił loda - zgodziłem się ale nie w myślęcinku. Pojechaliśmy do sowy na mostowej. Byliśmy tuż przed zamknięciem i syn dostał resztkę smaku, który chciał. Końcówka inaczej by trafiła do zlewu. Jadł 15 minut a ta "1 gałka loda" to było chyba z pół litra.

Wednesday, May 1, 2024

2024-01-05 LLM

Wstęp

Poniżej znajduje się podsumowanie mojego obecnego rozumienia dużych modeli językowych (LLM, Large Language Model) potocznie nazywanych sztuczną inteligencją (SI) lub AI (artificial intelligence).

O dużych modelach językowych

Czym są i jak działają LLM

Tworzenie AI zaczynamy od dużego zbioru danych, np. wikipedia, będącego zbiorem danych treningowych (training dataset).

System rozłoży dane wejściowe na tokeny, tzn. niepodzielne cząstki (głoski, litery, wyrazy, fonemy czy cokolwiek tam mu będzie pasować). Na potrzeby uproszczenia opisu poniżej zakładam, że token odpowiada słowu. W rzeczywistości słowo skłąda sie zazwyczaj z dwóch lub więcej tokenów.
Szukamy połączenia (korelacji) między danymi. Przykładowo między słowami i ich umiejscowieniem w zdaniu dzięki czemu potrafimy przewidzieć, że przykładowo po wyrazie "kurka" najczęściej występuje "wodna" ale może też wystąpić "grzyb". Określamy też jak prawdopodobne jest wystąpienie każdego z wyrazów i wyznaczamy prawdopodobieństwo dla wszystkich.

Rzeczywisty system jest bardziej skomplikowany. Dane wejściowe zamieniamy na dane numeryczne. Matematycznie są to jakieś pozycje w przestrzeni tokenów, a podobne tokeny znajdują się w niej niedaleko siebie. Przestrzeń nie jest płaska, ani nawet trójwymiarowa - wymiarów jest dużo więcej.
Pozycje w przestrzeni określamy z jakąś dokładnością. Dla uproszczenia zakłóżmy dwa wymiary i współrzędne (x, y). Słowo "niebieski" może mieć pozycję (100.51, 35.33) a "turkusowy" pozycję (101.02, 34.51), ponieważ te słowa mają zbliżone znaczenie.
Pozycje określamy ze skończoną dokładnością, np. (100.5, 35.3) i (101.0, 34.5) lub (100, 35) i (101, 35). Warto zauważyć, że przy małej dokładności słowa mogą dostać tę samą pozycję. W rzeczywistości wymiarów mamy więcej niż dwa i nawet przy niskiej precyzji modele osiągają stosunkowo dobre wyniki.
W powyższy sposób możemy przewidzieć jakie słowo nastąpi po innym.
Tokeny zbieramy w grupy i powtarzamy z szerszą perspektywą. Dzięki temu możemy rozróżnić "zamek do drzwi" i "zamek u spodni". Tokeny są takie same, lecz ich znaczenie jest zupełnie inne. Token "zamek" powinien posiadać przynajmniej dwa różne położenia w zależności od kontekstu. Jeśli dobrze zrozumiałem LLM to wielowarstwowe przetwarzanie stanowi częściowe obejście tego problemu. Być może dało by się to rozwiązać poprzez przypisanie jednemu tokenowi zestawu pozycji, tzn. zestawu wektorów. Z drugiej strony przetwarzanie na wielu warstwach jest zbliżonym działaniem.
Na koniec system przewiduje jaki token nastąpi po innym tokenie na wejściu oraz po zestawie tokenów.

Praca z problemami wcześniej nie spotykanymi

Chcemy aby AI potrafiło pracować z danymi, które nie są takie same jak zbiór danych treningowych.

  • Rzeczywisty model chcieli byśmy "douczyć" w czasie rzeczywistym poprzez podanie skomplikowanego zestawu danych wejściowych, np. stron internetowych. Niestety to jest proces powolny i trzeba szukać alternatywnego rozwiązania.
  • Jeśli ilość tokenów na wejściu jest zbyt duża - model ma problem aby określić dobrze kolejne tokeny. Jest to związane z brakiem dobrych dużych danych wejściowych do szkolenia modelu jak i skomplikowanym procesem przetwarzania (i oszczędnościami w obliczeniach).
  • Aby zweryfikować czy nasz model radzi sobie dobrze z nieznanymi wcześniej danymi zwykle zbiór danych wejściowych dzielimy na dane treningowe i inne, np. walidacyjne.
  • Temperature. Jest to współczynnik który pozwala na wybór niekoniecznie dokładnych korelacji między tokenami (ich odzwierciedleniem w przestrzeniach wielowymiarowych). Wartość 0% (0.00) oznacza dokładny wynik, wartość 20% (0.20) oznacza potencjalnie nieszablonowe rozwiązania (kreatywność).

Wyzwania, problemy i zagrożenia związane z LLM

AI jest obarczona szeregiem problemów i zagrożeń. Często nie można ich uniknąć ale staramy się przynajmniej zminimalizować prawdopodobieństwo niepożądanych efektów.
  • Czasem model ma tzw. halucynacje, tzn. wykrył powiązanie między jakimiś miejscami w danych wejściowych a bzdurą, np. ktoś często popełnia literówkę w wikipedii to model przyjmie to za poprawną wartość. Może to być też powiązanie między teoretycznie niepowiązanymi danymi wejściowymi. W zasadzie to nie kontrolujemy tego, co model powiąże ani w jaki sposób. Jedynie nadajemy kierunek tworzeniu tych powiązań. W ten sposób szkolimy model ale nie kontrolujemy go podobnie jak uczymy dziecko (ale dziecko i tak może wyrosnąć na psychopatę).
  • Bezgraniczne zdawanie się na modele stanowi niebezpieczny trend. Inwestorzy często nie znają kontekstu swojej inwestycji, w który inwestują pieniądze. Inwestorzy oczekują jedynie zysków a firmy kierują się zyskiem jako słownym wyznacznikiem swoich działań. Przepisy oraz moralność są naginane do granic ryzyka (oraz konsekwencji ich złamania i wykrycia). Takie podejście powoduje skłonności do nadmiernego ryzyka.
  • Powierzając AI wykonanie jakiegoś zadania całościowo powinniśmy pamiętać o jego ułomnościach i ograniczeniach.
    • Model nie ma emocji i polega jedynie na matrycy prawdopodobieństwa wygenerowanej z danych wejściowych.
    • Model jest cyniczny i ślepo wykonuje polecenia.
    • Model jest skażony wszelkimi nieprawidłowościami w danych wejściowych i ma tendencje do halucynacji.
    • Model nie jest kreatywny a zwiększając "temperaturę" zwiększamy możliwość halucynacji.
  • Obecnie powierzamy modelom wykonianie jakiegoś zadania. Następnie dajemy mu kontrolę nad narzędziami do wykonania zadania.
    • Wejściowe zadanie zazwyczaj podamy nieprecyzyjnie - nie jesteśmy w stanie przewidzieć wielu komplikacji przed ich wystąpieniem. Degeneracja pierwsza.
    • Akcje przewidziane przez AI są wydane na powstawie nieprecyzyjnych danych obraczonych cynizmem i halucynacjami. Degeneracja druga.
    • Akcje wykonane przez AI przy użyciu narzędzi nie są kontrolowane. Mogą one prowadzić do kolejnych zwyrodnień. Degeneracja trzecia.
    • Efekt końcowy jest efektem danych wejściowych i funkcji na nich wykonanej razem z degeneracją na każdym poziomie, tzn. wynik końcowy zawiera iloczyn degeneracji.
  • Im większej kreatywności oczekujemy, tym większe degeneracje i halucynacje. To troszkę jak z schizofrenią. Im większe degeneracje, tym większy błąd wyniku na wyjściu.
  • Aby kontrolować potencjalnie niepoprawne (niebezpieczne) wyniki nakłada sie kolejne warstwy AI walidujące wyniki tej pierwszej warstwy. Kreatywne AI jest w stanie (celowo bądź przypadkowo) wygenerować wyniki, które nie zostaną zaklasyfikowane przez warstwę kontroli jako nieprawidłowe (tym bardziej jeśli jest ona zimna i cyniczna, tzn. posiada niską temperaturę).

Podsumowanie

Kierując się kapitalizmem firmy powierzają zadania nieprzewidywalnym schzofrenicznym modelom językowym zwiększając ich kreatywność (i poziom schizofreni) przez zwiększenie temperatury. AI ma coraz potężniejsze narzędzia pozbawione kontroli nad ich wykorzystaniem.
I to jest obecny trend na rynku (czyżby do pierwszej większej wtopy zainicjowanej przez AI?).

2024-01-05 Manor lords, grounded

W ostatnich dniach zajmowałem się:

  • Marnowaniem życia grając w manor lords na PC
    • Manor lords to symulacja (sim city) stawiająca na realizm i wysoki poziom trudności. Spędzasz w grze dużo czasu i jedyne co masz to symulacja rzeczywistości. Ani dzieci tym nie nakarmisz, ani dla społeczeństwa nic nie zrobisz. Równie dobrze dla własnej przyjemności możesz się upijać albo ćpać. Na plus grafika, animacje i mnogość parametrów. Na minus interfejs (często nie wiadomo jak co działa - autorzy pewnie zrobią samouczek ale to jak sprzedawanie długopisu który nie działa i samouczek jak używać ołówka zamiast).
  • Marnowaniem życia grając w grounded na xbox i PC
    • Ciekawa gra od studia microsoftu bazowana na filmie "kochanie, zmniejszyłem nasze dzieci". Niestety wysoki poziom trudności i duża ilość pracy aby cokolwiek w grze zbudować sprawiają, że to kolejny zjadacz czasu. Postanowiłem skorzystać z cheatów aby poznać grę i jej fabułę. Duży świat (cały ogród) który zawiera część naziemną oraz podziemną nie ułatwia rozgrywki.
  • Modelami językowymi - zrozumieniem jak działają
    • Przypomnieniem języka python
    • Zrozumieniem jak od sztucznych neuronów, z którymi miałem do czynienia, świat przeszedł do dużych modeli językowych i jak one działają. O tym kolejny post.
  • Jestem w trakcie rekrutacji do dwóch firm... Troszkę niefajnie się czuję z tym, zę do dwóch jednocześnie startuję (tym bardziej, zę w obydwu fajni ludzie i ciekawe tematy) ale działam nieco pod naciskiem żony a rekrutacja ciągnie się strasznie (gdyby nie opóźnienie w pierwszej to bym z drugą nie rozmawiał). Gdybym wiedział że któraś z tych opcji będzie OK to bym drugą już uciął żeby nie marnować ich czasu. Czas to pieniądz.
  • Prywatne:
    • Spokojny dzień w domu
    • Obejrzałem z żoną jakiś film (nie byłem świadom ale żona wykupiła 5 subskrypcji na platformach streamingowych i używa ich od kilku lat)
    • Starszy syn pojechał na hulajnogę a później był na spacerze z koleżanką
    • Byłem z młodszym synem na nauce jazdy na rowerze i jest OK ale ruszanie nadal do opanowania
    • Odinstalowałem path of exile. Grałem w tę grę od wczesnej bety i gra była OK. Teraz gra zawiera masę zawartości i stała się straszliwie skomplikowana i cierpi na tzw. "power creep", tzn. coraz potężniejsze przedmioty sprawiły, że poziom trudności też rośnie i przedmioty kiedyś dobre teraz są coraz częściej bezwartościowe. Nadal mnie fascynują pewne jej aspekty ale chyba czas na (już kolejną) przerwę.
      • Duży poziom złożoności a jednak zachowanie balansu to nie lada wyzwanie.
      • Olbrzymia zawartość i model free-to-play.
      • Większość płatnych rzeczy to te kosmetyczne. Niestety niektóre płatne dodatki wpływają na grę bardzo mocno a część z nich została dodana jako elementy bez których gra w modelu free-to-play staje się co najmniej trudna.
    • Odinstalowałem arcanum. Trzymałem z sentymentu i dla muzyki. Ale nigdy nie uruchomię a nawet gdybym to zrobił to tylko z cheatami bo nie chcę na gry marnować życia.
    • Taki mój osobisty bullshit: Powoli czyszczę komputer ze zbędnych rzeczy. Porządkuję. Muszę oczyścić życie. Zawodowe i prywatne. Nie piję (studenckie czasy za mną), nie palę (po byciu biernym palaczem w dzieciństwie), nie ćpam (i nigdy nie ćpałem). Czas na powrót do sportu (którego brak ze względu na rodzinę). Muszę znajdować czas na własne zainteresowania (nie tylko teraz ale również będąc w pracy). Czas dla rodziny - szczególnie dla starszego syna, który jest tzw. "szklanym dzieckiem", tzn. ofiarą swojego młodszego nadaktywnego brata, który wymaga opieki przez cały czas. Podobno w życiu powinny się liczyć praca, rodzina, zdrowie, przyjaciele i umysł (z tym ostatnim mam problem jak to przetłumaczyć). Odnoszę się do przemówienia Briana Dysona. Dla mnie praca była zawsze ważna - dzięki temu mogę utrzymać rodzinę. Rodzina? Skomplikowane. Jestem wdzięczny dwóm osobom w moim życiu, ponieważ mi pomogły. I mam szereg osób, za które jestem odpowiedzialny. Zdrowie? Mocno ucierpiało i zawsze było na dalszym planie - teraz ponoszę tego konsekwencje (a właściwie od kiedy byłem nastolatkiem... ponownie skomplikowane). Przyjaciele? Nie posiadam (a nieliczni z którymi mam jeszcze jakiś kontakt... kontaktujemy się rzadko i wszyscy mamy masę swoich spraw na głowie). Umysł? Dusza? Nie wiem jak to określić. Ja sam zawsze byłem gdzieś poza listą priorytetów... może czas to zmienić?
    • Muszę wykombinować jak utemperować młodszego syna i umożliwić mu zapanowanie nad emocjami. To, że ja sobie z tym dałem radę (być może nawet przesadnie) nie oznacza wcale, że on też da radę.

Tuesday, April 23, 2024

2024-04-23 Prezentacja

Dziś głównie prezentacja na JUG.

Mam gotowy wstęp: opis ogólny wirtualizacji, kubernetesa.

Muszę przygotować system: klaster k8s i z 2 laptopy workery. Kiedyś wiedziałem jak to zainstalować ale teraz dużo się zmieniło. Mam problem jak na swoim komputerze uruchomić węzeł roboczy.

Muszę też się przygotować na rozmowę rekrutacyjną - wstępną póki co.

Podczas mycia naczyń potłukłem miseczkę. A przy okazji rozciąłem sobie palec na długości około 2cm :/



Monday, April 22, 2024

2024-04-22 k8s

Mam troszkę wolnego czasu - jeszcze ponad miesiąc na urlopie (zaległy z zeszłego roku i z tego roku). Na co go wykorzystać? Prezentacja na JUG (a jednocześnie nauka). Temat? Bezpieczeństwo kubernetes i zaawansowane elementy zarządzania bezpieczeństwem kuberentesa.

Ale zanim to zrobię to najpierw przygotowanie:

  • W czym prezentacja? Oczywiście reveal.js bo go uwielbiam. office i powerpoint nadaje sie na prezentację na szybko ale przygotowanie prezentacji, które sprawia przyjemność to reveal.js
  • Jaki OS? Linux. Mam na komputerze różne windowsy (aktywowane oraz nie, długa historia). Linux a dokładnie Pop!OS (ale nie używam wielu jego opcji).
  • Monitor... muszę chyba przerzucić swój monitor do pracy bo FullHD to troszkę mało :(
  • Jaki kubernetes? Jest multum opcji. Jeśli ja mam problem z wyborem to jak inni? Prezentacja musi niestety to wymienić. Zainstaluję lokalnie pełnego kubernetesa ale odpalę go też na innej maszynie aby mieć przynajmniej 2 node'y.
  • Musiałem sobie zgrać klucze aby mieć dostęp do swojego githuba... okazuje sie, że mam 4 i każdy działa.
  • Najpierw w markup będę pisać. Odpalanie niestety jest problematyczne: reveal nie ma dostępu do plików lokalnych - przeglądarki bardzo mocno ograniczają dostęp. A do tego ja mam chyba syndrom bezpiecznika i mam poblokowane wszelkie skrypty - troszkę klikania.

 Równolegle rozmowy rekrutacyjne.

  • Jedna pewnie jakoś w tym tygodniu - czekam na odpowiedź bo fajni ludzie i bym z chęcią z nimi pracował (ale nie pasuje mi częste jeżdżenia na miejsce).
  • Druga ciekawa bo też super ludzie ale niezupełnie moja działka.
  • Trzecia w środę wstępnie.

A najlepsze że jeszcze nie zacząłem szukać. No i prośbę dostałem o wysłanie CV of "stefana"... czego nie zrobiłem jeszcze. Jakoś mi sie nie pali - ostatnie lata to praca ponad miarę, mało urlopu, łapanie zbyt wielu tematów na raz (co się przekłąda na niższą wydajność), często praca z legacy (z gówna bata nie ukręcisz).

 Przyziemnie tematy:

  • Ile był bym w stanie bez pracy się utrzymać? W tym roku mam zwrot podatku (nie wypełniłem PIT-2 i tak oto tracę na inflacji ale mam zwrot... wolałem tak). Do tego oszczędności (nie ma tego wiele ale coś jest). I pensje (co najmniej 4 jeszcze będą). Na jakiś rok starczy pewnie - może nawet 4 jak byśmy zacisnęli pasa. Ale przecież nie o to chodzi aby wydać wszystko - dzieciaki powinny dostać po mieszkaniu od rodziców i już jest git na start. Więc nie czuję presji jakoś i mogę się skupić na robieniu tego co mi sprawia przyjemność.
  • Mycie naczyń... zaległości mam.
  • Dzisiaj muszę syna odebrać wcześniej ze szkoły i z nim coś porobić. Ale przed tym ogarnąć mu pokój troszkę i wynieść część rzeczy.

TODO: 

  • Do prezentacji muszę dorzucić pluginy
  • Muszę ustawić socket.io aby prezentacja mogła otrzymywać pytania i komentarze w trakcie
     

Thursday, March 28, 2024

Ikea fyrtur vs kadrilj electronics

Summary
Fyrtur and Kadrilj are generally compatible and you could exchange blinds material or even parts. If you got one - it can be easily upgraded to the more expensive one.

Price paid
I got some kadrilj which were sold by Ikea second hand (returned items) that someone returned in a bulk. It costed 350 PLN each, width 140cm.
My wife recently bought fyrtur (again from returned items) and paid around 200 PLN, same width.

During summer it is too bright so I wanted to use thicker material but I found some (false) information on the internet that those models cannot be simply swapped.
It might be that there are incompatible versions as IKEA often upgrades their products and design without sharing this to the customers (because devices are not meant to be disassembled).

This time my wife bought a device that is faulty. I am not yet sure whether it is a faulty motor or electronics or something else but it is simply broken. The rule in general with IKEA is that you should not return 2nd hand goods (but it probably depends on many factors).
I started with internet search for the device teardowns and did not found many information. Some of them presented how to disassemble major parts.
Then I compared mechanisms of both devices. To my surprise the motor was exactly the same. So was the shape and size.

Next steps for me:
- exchange motors with the electronics and check if this is motor or electronics which is faulty
- disassemble faulty element (which would be challenging for sure) and find why it is faulty

Wednesday, March 20, 2024

Cannot save / Brak zapisu gry: XBox 360, XBox One, XBox Series

PL (EN bellow)

Problem: Uruchamiając grę XBox 360 (np. Star Wars: The Complete Saga) na nowszej konsoli (np. XBox One lub XBox Series) stan gry nie zapisuje się. Po ponownym uruchomieniu gry wszystko trzeba zaczynać od początku.

Objawy (na przykłądzie gdy Star Wars: The Complete Saga):

  • Po uruchomieniu gry opcja "XBox Live" nie jest dostępna
  • Po rozpoczęciu nowej gry pojawia się komunikat o braku zapisu osiągnięć
  • Może się też pojawiś komunikat o braku profilu gracza lub konta Live
  • Jeśli korzystamy z konta dziecka to dodatkowo możemy ujrzeć mylące komunikaty o braku dostępu do jakichś opcji lub o ograniczeniach konta dziecka
Przyczyna: Microsoft nie dopracował współpracy nowszych konsol ze starszymi systemami.

Rozwiązanie:
  • Po uruchomieniu gry XBox 360 należy jednocześnie włączyć przyciski kontrolera "po lewej" i "po prawej" od środka, tzn. "prostokąty" oraz "hamburger" - spowoduje to wyświetlenie menu XBox 360
  • Zapewne nie mamy pobranego konta "XBox Live" na konsolę więc należy się "zalogować" w wyświetlonym menu
  • Gdy zostaniemy zapytanie o nazwę konta i hasło - musimy się zalogować tą formą uwierzytelniania (możliwe, że trzeba będzie włączyć stosowną opcję uwierzytelniania dla starszych aplikacji na stronie web microsoftu - u mnie nie było to potrzebne)
  • Zostanie pobrany nasz profil gracza - być może zostaniemy zapytanie o miejsce zapisu profilu (u mnie był to "online storage" z limitem 2GB)
  • Zostawiamy komentarz pod tym wpisem abym wiedział że komuś pomogłęm (a inni oraz microsoft wiedzieli jak często ten problem denerwuje użytkowników)