Podobne postybeta
Syncrhonizacja przez osoby.... komputery trzecie ;-)
Czy EULA (End-user license agreement) jest potrzebna w aplikacji mobilnej, czy nie?
Tęskni mi się Linux ;-)
Windows mnie jednak nie lubi ;-)
API ssie w świecie walled gardens
Tak się zastanawiam czy powoli ta grupa akcesoriów się nie kończy...
Mam wiele powerbanków, nawet jeden takich, którym można ładować laptopa...
Ale tak, jak gdzieś lecę samolotem już nie borę powerbanku, bo zbyt wiele linii lotniczych zakazuje używania w trakcie lotu i wiele ogranicza pojemność tego co można wnieść na pokład.
Do tego nie mam powodów... telefon mi starcza, tablet mi starcza...
Znów jak chodzę z urządzeniem po mieście to baterie są na tyle mocne, że nawet jak chodzę, robię zdjęcia, słucham podcastów/książek to nadal baterii starcza... no i ja mam zawsze 2 telefon na sobie ;-) [i 2 pary słuchawek ;-)]
Tak naprawdę jedyny przypadek gdy używam powerbanku to jazda Pędziolino. Bo mój iPad Pro 11" 2nd gen ma już swoje lata i bateria może nie wytrzymać tych 5-6h jazdy pociągiem i oglądania filmów. Ale tutaj powerbank mógłbym zastąpić po prostu używając znajdującego się w Pędziolino gniazdka, bo ładowarki i tak mam ze sobą ;-)
Obecnie najbardziej użyteczny jest powerbank zasilając moją "medusa lamp" ;-)
A w moich "bazach" czyli albo domu, albo miejscach spania mam zawsze cały zestaw do ładowania. W razie np. ładowanie telefonu przez wireless jest za wolne to spokojnie podpinam po USB-C, a moje ładowarki to są te, które mają do 100 W na 1 port, więc iPhone i Pixel "lecą" na dość dużych mocach...
Stąd powerbank co prawda nadal znajduje się na mojej wyjazdowej checkliście, ale już na większość wyjazdów go nie zabieram ;-)
python3 -c "import platform; import sys; print(f'Machine: {platform.machine()} | Type: {sys.version}')"Nieraz w dyskusjach w jednej z poprzednich firm, gdy rozmawiałem z PMami miałem argument, że w końcu to developerzy są niezbędni do zbudowania produktu. PM, PO, EM nawet QA są po to by ten proces był szybszy i lepszy, ale sami bez developerów nic nie zbudują, a developerzy bez nich i owszem ;-)
Ale teraz vibecoding sugeruje, że jednak PM/PO o odpowiednim poziomie ogaru wystarczy.
Z jednej strony się zgadzam, z drugiej mam pewne wątpliwości.
Wątpliwości związane z nazwijmy to ilością informacji, która jest w stanie przetworzyć człowiek.
Wiemy z nauki o tym jak się ludzie uczą i zapamiętują, że nasz mózg jest w stanie w danym momencie trzymać w "pamięci podręcznej" 4 do 7 rzeczy, ale dla większości populacji to jest bliżej 4. To są rzeczy o których możemy myśleć tak, że bez dodatkowych narzędzi jak jakieś wizualizacje umiemy śledzić interakcję i wpływanie na siebie tych rzeczy.
Mamy tutaj 2 sposoby ataku, jeden to narzędzia zewnętrzne, np. wizualizacja czy to na kartce, czy przez postawienie rzeczy na stole... ale to działa tylko dla pewnych rzeczy, czasem to o czym myślimy ma więcej niż 2 czy nawet 3 wymiary, czasem relacji nie da się "uprzestrzennić", no i nie wszyscy tak myślą.
Drugą metodą jest chunkowanie, albo bardziej abstrakcje. Możemy zbiór pewnych rzeczy złożyć w grupę i myśleć o niej jako o jednej rzeczy, ukrywając co jest w środku.
Vibecoding to takie narzędzie łączące dwie te techniki. Z jednej strony ukrywa złożoność problemu, z drugiej daje nam prosty interfejs do sugerowania zmian. Zakładając, że to działa (jest teraz powiedzmy znośnie) daje to możliwość ukrycia złożoności i przez to jeden człowiek jest to w stanie ogarnąć.
Systemy agentowe sugerują, że to można budować tak warstwami, tam gdzie był jeden człowiek jest agent, tam gdzie był jeden nadzorca, jest agent i warstwa po warstwie... ale i to jest "wydaje mi się", "gut feeling" i tym podobne.
Jest jakaś granica. Każda warstwa dodaje niepewność w interpretacji, ukrywa to przed nami i w pewnym momencie troubleshooting jest niemożliwy... bo root cause problemu jest bardzo głęboko, albo jeszcze zabawniej jest wynikiem interakcji wielu ukrytych głęboko problemów.
To jest tak jak dziś z LLMami... albo z ulubionymi przez Stephena Wolframa emergentnymi właściwościami. Gdzieś w końcu się pojawia coś czego abstrakcja nie umie ukryć bez zgubienia zrozumienia.
Nie do końca wiem jaki z tego wniosek wypływa ;-) poza tym, że mam wrażenie, że vibecoding nie wyeliminuje programistów. Może nas zmienić, może zmniejszyć ilość, może (acz tu mam wątpliwości) obniżyć próg wejścia (czyli tu jestem w pozycji, jeśli PM/PO są w stanie używając vibecodingu zbudować coś, to najpewniej są intelektualnie zdolni do nauczenia się programowania).
Tak, to jest gut feelign, bo może, kiedyś agenty nie będą miały ograniczenia jak my 4 rzeczy naraz w głowie, ale będą w stanie operować na 1000 albo milionie? Tylko, że wtedy agent będzie nie tylko bystrzejszy od nas, my będziemy jak mrówka w stosunku do człowieka.... (a i tu nie wiemy, czy nie ma jakiejś granicy inteligencji i jak daleko od niej jesteśmy ;-))
Jeszcze inna sprawa, vibecoding pokazuje, że trudność w projekcie jest w tym by zdecydować co chcemy zbudować, ale chodzi o taki opis gdzie nie macha się rękami, a podaje konkretne rozwiązania ;-)
Mój nowy pracowy projekt to dużo Lambd... nie lubię Lambd ;-)
Tzn. co do samej idei lambd mam jeszcze nie ukształtowane podejście, widzę zalety, ale i wady też.
Problemem jest jednak coś innego. Gdy buduję coś to mam tego obraz w głowie, gdy wchodzę w coś co zbudowano to próbuje sobie zbudować tą mapę i cholerne lambdy są tu problemem ;-)
Tzn. mogę wszystkie lambdy potraktować jako 1 kwadracik, ale ja nie tyle chcę architekturę poglądową, a mapę by szybko się po tym poruszać. Chcę wiedzieć które kawałki kodu z jakich zasobów korzystają i tak dalej.
Rysuje to sobie w Obsidianie, na razie jest bałagan, ale idea jest taka, że jak już wszystkie zależności narysuję to będę mógł poprzesuwać je tak by sobie wyodrębnić pewne obszary. Coś na tej zasadzie, że taką bardzo zgrubną analizę grafu użyję do zobaczenia struktury ;-)
Spróbowałem nawet dziś trochę oszukać i zagadałem do Copilota w trybie Agent, by przejrzał kod i zbudował w mermaid diagram pokazujący która lambda używa którego zasobu. Wyszło mu to zgrabnie, ale np. DynamoDB jest jednym prostokącikiem, a ja wiem, że table jest więcej, to samo z S3...
Ale jest nadzieja ;-)
Nadal te lambdy mi trochę spędzają "sen z powiek" bo dobrze by było popatrzyć na step functions, na autentykatory i jakoś to w mojej mapie narysować...
Poprzedni projekt był dużo prostszy, ale to była tak naprawdę banda batch processów, a to łatwo rozrysować ;-)
A czemu mam wątpliwości do lambd?
Rozumiem ich urok, ale wydaje mi się, że ta abstrakcja jest trochę za wysoko. Do tego widzę, że wpływa na architekturę w tym, że robi się z tego trochę spaggethi, do tego step functions przejmują część funkcjonalności. Sam sobie je wyobrażałem bardziej jako kod, a to jest diagram.
Jakaś część mnie ma takie coś "a ja to się będzie mergować"? W sensie, że mergowanie tekstu jakoś mamy opanowane, do tego narzędzia mogą rozumieć kod i jego AST, to pomaga w mergowaniu, do tego mamy wiele lat praktyki w dzieleniu kodu tak by mergowanie było proste, a jak mergować diagramy?
Ale widzę też plusy, mam coś co może zająć dużo czasu? To nie muszę tego sam ogarniać, zrobi to za mnie step function.
Dziwna sprawa, łatwiej mi używać Macbooka Air'a niż mojego "desktopa" Mac'a Mini... ale, że Air ma tylko 24 GB RAM to nie mogę się tu zbytnio bawić w budowanie niczego co używa lokalnego LLMa...
Więc mam kilka głupiutkich pomysłów do zvibecodowania, ale mam takie "E, tam mi się nie chce iść" (do "dużego komputera"), a na laptopie "E, ale tutaj testowanie tego to będzie koszmar" i nic nie robię ;-)
Nie ma to jak znaleźć sobie wymówkę ;p
Inna sprawa, jak nazywają się moje komputery?
Mac Mini M4 Pro z 64 GB RAM to bestia, a Macbook Air z M4 i 24 GB RAM to bestyjka ;-)
To zdjęcie powinno tłumaczyć czemu ma na imię bestia ;-)
Inna sprawa, gdy mieszkałem te ~6 miesięcy w USA te prawie 8 lat temu to pracowałem tylko używając laptopa. Od 6 lat pracując de facto prawie cały czas z domu też pracuję tylko na laptopie.
W pewien sposób duży ekran mnie teraz hamuje... chociaż z racji jednak słabszego wzroku lubię duży ekran.. ale teraz to trzeba wstać, podejść tam, odblokować go, a laptopa mam przy sobie...
W pracy znów pracuję nad czymś gdzie mam jakiś research ;-) i już za chwilę za chwileczkę będę sobie (mam nadzieję) pisał kod który będzie produkcyjny w Pythonie.
Mam kilka tematów i stąd mam pomysł pójścia z Developer Notebookiem... takim miejscem do trzymania wiedzy... zwykle takiej rzeczy nie mam, w pewien sposób blog mi za to robił i mam jeszcze Cookbook w Notion... ale tu jest bardziej coś do zbierania wiedzy.
Nie wiem czy mi to wyjdzie bo ja ogólnie nigdy nie byłem dobry w notowaniu, zwykle wszystko mam w głowie, często po prostu pamiętam jak nawigować do danej informacji z jakiegoś linka..... stąd też lubię np. system sobie rysować z linkami ;-) [od czasów jak jest Obsidian, moim sposobem jest mieć rozrysowany cały system w Obsidianie na Canvas i chcę iść do danego podsystemu (repo np.) to kilkam w kwadraciku i już tam jestem... nawet mam zasadę, że trzymam w pracy Obsidiana na space 1, pracową przeglądarkę na 2, prywatną na 3 i Firefoxa (prywatnego też) na 4... dzięki czemu jak idę do Obsidiana to "mijam" pracową przeglądarkę i klik w Obsidian zaprowadzi mnie dokładnie do tej przeglądarki ;-)
Innym problemem poza tym - czy to będę pisał, ten Developer Notebook jest język... polski jest dla mnie prostszy, w końcu nim mówię od maleńkości, z drugiej strony w pracy mówię tylko po angielsku... w kodzie komentarze i większość komunikatów po angielsku (niezależnie czy pracowym czy moim) piszę prawie od 22 lat ;-) Więc mnie ciągnie ten angielski....
Pójdę na 99% w angielski, bo łapię się nawet na tym, że jak myślę o kodowaniu to przełączam się na angielski ;-) [to z ćwiczenia przed rozmowami różnymi]... co jest o tyle zabawne, że nadal polski jest dla mnie wygodniejszy, w tym sensie, że znam tu więcej związków frazeologicznych, moja intuicja językowa jest dużo wyższa, znam o wiele więcej słów, mam nawet lepsze słowotwórstwo... w polskim wiem i rozumiem "języczek u wagi" i wiem, że to jest ten dzyndzelek w wadze, który wskazuje wynik, wiem, że mamy "drogę najmniejszego oporu" a nie "najmniejszą drogę oporu", a w angielskim jednak zwykle pamiętam tylko ogólny vibe i wiem, że "son of a gun" można powiedzieć... ale bez przeczytania historii tego nie wiedziałbym skąd to... (i tego akurat nigdy nie użyłem ;-))
A jeszcze gdzie trzymać ten Developer Notebook... ale to jest w miarę proste, to będzie jednak Obsidian... bo jest lokalny.
Nice :-)
Głównym powodem tego, że pojechałem w tym roku do Milanu aka Mediolanu na Olimpiadę było to video:
Gdy je zobaczyłem to sobie zacząłem zadawać pytanie jak oni to filmowali i uznałem, że dobrze by było zobaczyć jak robią taniec na lodzie i zobaczyć jak to filmują... i wtedy była myśl "A może by pojechać na Olimpiadę i zobaczyć?".
Sprawdziłem bilety, okazało się, że były, więc kupiłem sobie Ceremonię Otwarcia i 2 eventy na lodzie....
Na Ceremonii Otwarcia byłem, na pierwszym evencie na lodzie nie bo było to o 9:55, czyli wtedy gdy wstawałem ;-) ale byłem już na tym drugim, to był Rhythm Dance.
Filmowali to normalnie z kamer wkoło lodowiska i z pająka nad lodowiskiem....
Ale co ważne, gdy para już kończyła tańczyć na lodowisko wyjeżdżał kamerzysta na łyżwach w białym stroju.... ten sam gościu, który nakręcił to video, które mnie zmotywowało do pojechania do Milanu/Mediolanu :-) Typ nazywa się Jordan Cowan :-) i z tego co rozumiem to też jest łyżwiarz figurowy. Ma kamerę z supportem, który pozwala mu trzymać kamerę oburącz. Robi takie najazdy na zawodników jakich normalna kamera nie umie :-) No czad :-)
Czyli mam tu pełny punkt ;-)
Wyobraźmy sobie sytuację, że mamy pannę Annę Nowak, i kawalera Piotra Nowak.
Mają to samo nazwisko, ale nie są spokrewnieni (przynajmniej w kilku pokoleniach, bo później to już nikt nic nie wie ;-)).
Pobierają się. I teraz zaczynają się ciekawe rzeczy z nazwiskiem.
Oboje muszą zdecydować jak się będą nazywać.
Ich opcje:
W Polsce zwykle nadal to kobieta przyjmuje nazwisko męża.
Rozpatrzmy ten case, czyli case Anny Nowak.
Jeśli pani Anna Nowak przyjmie nazwisko męża Piotra Nowak to będzie to zmiana z Anna Nowak na Anna Nowak ;-)
W dowodzie się nic nie zmieni, więc nie musi zmieniać ;-) ale w PESELu zostanie dokonana zmiana która uwidoczni, że to Nowak jest z małżeństwa, nie z domu ;-)
Ciekawa sprawa, jeśli Anna Nowak(po mężu) i Piotr Nowak się rozwiodą, to Anna Nowak musi podjąć w ciągu 3 miesięcy decyzję czy chce zostać Anną Nowak(po mężu) czy Anną Nowak(z domu) ;-)
Ale okazuje się, że najpewniej w bazie PESELa nazwisko jest free flow, bo Anna Nowak(z domu) stając się Anną Nowak(po mężu) nie będzie miała zmienionego linkowania do innego nazwiska Nowak ;-) a tylko coś co możemy sobie nazwać "źródłem nazwiska" ;-)
Teraz czekam aż spotkam kogoś o nazwisku Nowak-Nowak, albo Kowalski-Kowalski ;-) (bonus points za Nowak-Kowalski lub Kowalski-Nowak ;-))
Ale wróćmy do Anny Nowak, jeśli sama jest bardzo konserwatywna czy staroświecka to może chcieć trzymać się polskich zasad odmiany nazwisk ;-)
Więc przed ślubem byłaby Anną Nowakówną, po ślubie jeśli przyjęłaby nazwisko męża byłaby Anną Nowakową, ale zostawiwszy sobie nazwisko panieńskie nadal byłaby Nowakówną, chociaż byłaby mężatką ;-)
Najlepsze jest jakby postanowiła mieć podwójne nazwisko, bo wtedy byłaby Anną Nowakówną-Nowakową ;-)
(czy tylko ja miałem w szkole podstawowej polonistkę która tęskniła za odmieniowywanime nazwisk?)
Inna sprawa, że obecny model przyjmowania nazwisk prowadzi do "wymierania" nazwisk ;-)
Jak sobie zasymulujemy układ, że startujemy z 1000 nazwisk losowo przydzielonych 3000 osób, i te osoby się "losowo" spotykają i w każdym pokoleniu para ma 2 dzieci o losowej płci i dzieci mają nazwisko zawsze po ojcu to liczba nazwisk maleje tak jak na obrazku (to są wyniki dla 10 symulacji)
A czemu nazwiska wymierają?
Bo jak w danym pokoleniu są tylko dziewczynki o zadanym nazwisku to w kolejnym nie będzie dzieci z tym nazwiskiem....