wtorek, sierpnia 17, 2010

Jak wnuk za babcię płaci ;-)

Wiecie czemu ZUS nie ma pieniędzy na emerytury?
Bo ma ich po prostu za mało.

Emerytury kosztują nas 140 mld złotych rocznie. Żeby do ZUS trafiło tyle kasy każdy pracujący obywatel polski powinien odprowadzać około 1/4 swojej pensji na wypłaty emerytur dla obecnych emerytów.
Płynie tam zaś góra 20% naszych pensji... de facto mniej, bo blisko połowa z tych pieniędzy płynie do OFE, które kupują za nie obligacje, z których rząd bierze kasę na dofinansowanie ZUS :-)

No to nie dziwota, że system nie wydoli. Z pustego nawet ZUS nie naleje ;-)
Nasi emeryci żyją na koszt swoich wnuków i prawnuków.
Złe to nie jest, ale smutne, że większość ludzi nie wie jak to działa.



Podobne postybeta
2011 zaczęty ;-)
Polacy - naród paserów? ;-)
Wyrocznia od siedmu boleści
Jak się profesjonalnie kłamie
zVATowani 2

Znów o rozwiązywaniu krzyżówki

Nadal uważam, że najlepszym sposobem rozwiązania sprawy tego krzyża w Warszawie sprzed pałacu Prezydenckiego jest ignorowanie go.
Wymusić zdemontowanie, ale nie usuwać. Jak jego miłośnicy chcą to mogą go sobie nosić.
Już o tym pisałem.

I miałem rację ;-) pojawiły się pomysły pomnika upamiętniającego ofiary tej katastrofy.
Pomnika, który jak będzie to wygodne dla PiS to będzie zbyt mały, zbyt mało reprezentacyjny, zbyt nowoczesny, zbyt świecki, zbyt .... Innym razem będzie totemem kultu Lecha Kaczyńskiego.

I po co?

Ta katastrofa choć straszna dla rodzin ofiar dla państwa znaczyła niewiele. Największe konsekwencje miała śmierć Prezesa NBP.
Śmierć Prezydenta przyśpieszyła tylko nieuniknione czyli pożegnanie się Lecha Kaczyńskiego z fotelem prezydenta. Państwo spokojnie poczekałoby te 8-9 miesięcy bo w Polsce prezydent to tylko figurant, prawdziwa władza jest w rękach premiera.

Budowanie pomnika, szczególnie przed pałacem prezydenckim to budowanie pomnika PiS, a to głupie w sytuacji gdy 60-80% społeczeństwa nie chce na nich głosować.

No i hmm.. Narutowicz na pomnik w Warszawie czekał prawie 80 lat, w ogóle jedyny pomnik jaki mu wybudowano po jego śmierci stał w Bielsku, a powstał też tylko z przyczyn politycznych i to parę lat po jego śmierci.
A dla samego społeczeństwa śmierć prezydenta w zamachu i to z ręki polaka to jednak coś większego niż śmierć w katastrofie lotniczej.

A teraz czas spać ;-)

Podobne postybeta
Jak rozwiązać krzyżówkę? ;-)
Mistrzowie political fiction
Nexus 4 me wants...
"Cud"
Ingress i moje portale... ;-)

Cukierki, radosny chaos i takie tam, czyli Przemkowe rojenia ;-)

Nigdy nie marzyłem o tym by zostać architektem oprogramowania. Nie chodzi tylko o to, że to nudna robota jest (dla mnie, są osoby które się w tym realizują i mają świetne wyniki. Ale stanowią mniejszość), chodzi też o to, że jest to często robota bez sensu.

Bo opiera się na założeniu, że w przypadku oprogramowania da się projektować "od góry". Że można zbudować projekt oprogramowania i go zrealizować.
Nie można.

Ogólną koncepcję można, z zaznaczeniem, że się może zmieniać, ale całego softu nie.

Nie ma ludzi z tak dużymi głowami by byli w stanie zobaczyć wszystkie możliwe zależności bez zobaczenia prototypu.

Bo cukierki widać głównie od dołu ;-)

Cukierek to ułatwiajka gdy chodzi o interfejs użytkownika, albo sprytny pomysł, który załatwia za nas większość roboty.

Tak, część cukierków jest na poziomie architektury, ale giną tam w tłoku masy wymagań.

Kiedyś pisałem narzędzie które miało tworzyć pewną strukturę w bazie danych, dokładniej miało i nadal to robi i będzie robić przez kolejne lata ;-) tworzyć te pewne struktury często. W jednej bazie miało się znaleźć kilka tysięcy rekordów, które tworzą zamkniętą całość, a między tymi rekordami istnieją wzajemne powiązania, polegające na tym, że niektóre z nich są kluczami obcymi w innych tabelach.
Klasycznie trzeba by było stworzyć jakiś schemat tych zależności i zakodować go.
Ja zrobiłem inaczej. Dałem programowi wszystkie rekordy które ma włożyć [dla ułatwienia w postaci zrzutu z bazy jako serię INSERT INTO] i wstawiłem do niego zgadywajkę, która na podstawie nazwy pola zgaduje czy ma do czynienia z kluczem głównym czy obcym, czy może z danymi nie będącymi akurat kluczem ;-). Akurat w tej bazie było to proste.
Aha, zmiany w bazie odpadały.
I teraz program działa tak, że najpierw na szybko w pamięci buduje sobie mapę tabel, a w każdej z nich trzyma listę rekordów do włożenia. Bierze pierwszą tabelę z brzegu i próbuje ją włożyć do bazy, robiąc to sprawdza czy aby nie ma tam kluczy obcych, jak są to po prostu rekurencyjnie próbuje włożyć wszystkie rekordy tabeli z kluczami obcymi, jak tam są inne klucze obce to idzie dalej, aż dociera do tabeli, które nie mają kluczy obcych. Wkładając je do bazy zapamiętuje jakie mają teraz numery (tak, dodatkowe utrudnienie to constraints UNIQUE na numerach rekordów) i w razie gdzieś używany jest klucz obcy to prosta funkcja zwraca jego nowy numer.
De facto program robi sortowanie topologiczne i łazi po grafie zależności między tabelami, ale nie zna ich przed uruchomieniem ;-)
Cały engine powstał w 2-3 dni i działa od prawie 3 lat bez zbytnich modyfikacji.
Taki cukierek :-)

Gdyby projektować to od góry to byłoby tak z pół tony wzorców użyte, kodowanie byłoby nudne i smutne, a wszystko trwałoby kilka tygodni. Gdyby trafić na ambitnego architekta to skończyłoby się na użyciu specjalnego języka tylko do opisu zależności ;-)

Programy komputerowe się wyłaniają. Puki ich nie stworzysz nie wiesz do końca gdzie pójdą.

Ale jak się wszyscy upierają przed projektowaniem z góry to później nagle w trakcie kodowania okazuje się, że są sprzeczności, że trzeba je jakoś obejść.

Choć taki radosny chaos jaki ja lubię ma tę wadę, że nie wszyscy go lubią. Nawet większość go nie lubi ;-)
Wg. mnie lepiej się sprawdza, bo pozwala szybciej reagować, nie wymaga miesięcy przygotowań, które i tak idą często na marne w trakcie implementacji, bo się okazuje, że jednak się czegoś nie da, albo (co rzadziej, ale szczęśliwiej ;-)) da się prościej no i jest zabawniejszy.
No i trudno powiedzieć czy radosny chaos sprawdza się w dużych systemach.
Choć tu też jest to, że jak mi się wydaje lepsze są duże systemy, które powstają z masy małych programów i programików, niż takie które powstają w ramach WIELKIEGO NIESTETY WYSŁOWIONEGO PLANU.
Koszty naprawy czy nawet przepisania małego fragmentu SYSTEMU są niskie, koszty zmiany w kodzie SYSTEMU są wysokie. Bo jak coś spapramy w małym narzędziu to zawsze można szybko wrócić do starszej wersji, a cały system trudniej zmienić ;-)

O! Protokoły (albo protokóły ;-)) są ważne. Wg. mnie im prostsze tym lepsze.

Na koniec zastrzeżenia ;-) Prawdziwego [w mojej ocenie] architekta spotkałem raz, takich różnych tytularnych wielu. Ci lepsi nie decydowali o tym jak ma wyglądać aplikacja, a jedynie wytyczali ogólny kierunek implementację zostawiając developerom. W końcu developerzy to nie jest banda kretynów, a ludzie którzy znajdują się w wąsie krzywej Gaussa i różnica między nawet najmniej inteligentnym developerem, a architektem jest dużo mniejsza niż między nimi, a przeciętnymi ludźmi. W skrócie to zdolne bestie są.
Poznałem też "architektów", którzy nie powinni mieć nawet prawa zbliżania się do komputerów ;-)
Z obserwacji tych drugich jest więcej, na szczęście zwykle poza firmami gdzie ja pracuję :-) [z niechlubnym wyjątkiem poprzedniej, która upadła jakieś pół roku po tym jak z niej odszedłem :-)]

To wyżej może się zmienić, akurat dziś jestem w takim nastroju, jutro mogę uważać, że wszystko trzeba projektować i planować ;-) bo wszystko zależy od Eli, eli dane podejście będzie działało, eli nie będzie ;-)
Tu nie ma prawd objawionych ;-)

Podobne postybeta
U mechanika... czyli nudne pisanie o niczym dla zabicia nudy
Nie lenistwo, a strach. Prawdziwe źródło długu technicznego
Budowanie rusztowań
Ingress - to wciąga ;-)
Świat disco polo...

poniedziałek, sierpnia 16, 2010

Przezorny zawsze ubezpieczony ;-)

Strasznie się przed chwilą w Krakowie rozpadało... ale deszcz nam nie straszny ;-) gdy na dnie torby leży peleryna ;-)

Śliczna, nie? ;-)


Podobne postybeta
"Drzewo" ;-)
Przyjaciel ;-)
#100 ;-)
Skarpetki zamiast kapci ;-)
Książkowy sierpień

niedziela, sierpnia 15, 2010

Bloggeroidujemy ;-)

Bloggeroid pobiera się tak sobie, jak na razie trochę ponad 400 instalacji jest.

Ale ponieważ i tak piszę go dla siebie to kombinuję jak mu dodać nowych funkcji ;-)

A, że jak dobrze pójdzie to we wrześniu wybiorę się na zasłużone wakacje do Afryki [takiej bliskiej i taniej, czyli Tunezji ;-)] to kombinuję nad kolejnym ficzerem. Czyli nad możliwością publikowania "do kolejki".
Tak by w momencie gdy telefon nie będzie w zasięgu żadnej sieci to publikowanie będzie polegało na wrzuceniu postów do kolejki, za to gdy telefon znajdzie się w zasięgu sieci to Bloggeroid będzie publikował te skolejkowane wpisy.

W zamyśle chodzi o to by mimo wyłączonej transmisji danych w roamingu można było blogować :-)

A teraz sobie próbuję napisać zapisywanie postów na SD [to już mam] i wczytywanie z SD [tego jeszcze nie mam ;-)]. Ale jak zwykle okazuje się, że problemem jest uczynienie tego wszystkiego spójnym ;-)


Podobne postybeta
Czy nazwa miasta się wyśle? ;-)
Strzeż się uses-feature
Lekcja na dziś - żeby konfiguracja działała trzeba ją zapisywać i odczytywać ;-)
Bloggeroid - polityka małych kroczków ;-)
Bloggeroid 1.1 :-)

YouTube czy Vimeo?

Temat był już wałkowany wielokrotnie w sieci, ale sam też to chciałem sprawdzić :-)

Który serwis nadaje się lepiej do publikowania video w HD? :-)

Vimeo wygląda tak:

Untitled from Przemysław Rumik on Vimeo.



Minusem jest to, że trzeba czekać nawet 30 minut na to by film był dostępny, a dodatkowo mamy limit 500MB tygodniowo. Na filmy HD to nie jest dużo ;-)
Dodatkowo po osadzeniu na stronie nie mamy na niej materiały HD, żeby obejrzeć HD użytkownik musi wyjść z naszej strony i przejść na stronę Vimeo.

YouTube:


Film jest dostępny bardzo szybko, niemal zaraz po zuploadowaniu, a z czasem dostępne są wersje w wyższej jakości :-)
Możemy osadzić wersję HD na stronie.

Ładniej wygląda "obrazek" w Vimeo, ale trakcie odtwarzania w HD moje oko profana nie widzi różnicy w jakości materiału między oboma serwisami ;-)
Wy coś widzicie? :-)


Podobne postybeta
Moc promptów
HD według TVN ;-)
Nintendo Switch - jednak nie...
Zła TV ;-)
Dzielenie się z Bloggeroida...

"Prezencik" :-)

Skończyłem właśnie czytać A War Of Gifts: An Ender Story.
Miła :-) Jak Orson Scott Card zasługuje na plakietkę "fanatyk religijny" to poza tym ma jeszcze talent pisarski ;-)
To taka krótka książeczka, mająca niecałe 200 stron, ale małych i to z dużymi literami ;-) [dość powiedzieć, że jakieś niecałe dwie godziny temu byłem na 36 stronie, a wtedy do końca miałem koło 160], taka "opowieść wigilijna" w świecie Endera :-)
Zresztą ta książka to taki prezencik, kupiłem ją chyba z rok temu jako wypełniacz i "znalazłem" dopiero parę dni temu gdy przeczytałem pierwsze 36 stron. Miło tak książkę "znaleźć".
Teraz chyba zacznę czytać Ender in Exile, które jak mi się wydaje ma pojawić się w polskim tłumaczeniu.... nie wiem jednak skąd mi się to o tłumaczeniu przyplątało ;-)
No więc miałem prezencik, a i jakby ktoś miał pretensje, to zawsze mogę twierdzić, że ćwiczę angielski ;-)


Podobne postybeta
Książki, książeczki, książunie ;-)
Ścisłowcy vs. humaniści
Imperialna Ziemia - dobra książka
Empik w Bonnarce ssie
Grudniowe ksiązki

sobota, sierpnia 14, 2010

Jak rozwiązać krzyżówkę? ;-)

Wiecie jak wg. mnie należy rozwiązać sprawę krzyża przed Pałacem Prezydenckim?

Po 15 sierpnia należy dopuścić "obrońców" znów do krzyża. Jak go tak lubią to proszę bardzo.
Wysłać też Straż Miejską z poleceniem by krzyż zdemontowali i jak chcą to niech go noszą, ale nie może być przymocowany. Jak tego nie zrobią, to znów użyć Policji do odsunięcia ich od krzyża, zdemontować, oprzeć ładnie o coś i znów dopuścić. Zasugerować też, że puki nie są manifestacją [a to chyba ustawa reguluje i zależy to od rozmiarów] to niech sobie łażą po okolicy z tym krzyżem.

Jednocześnie Prezydent i inni powinni powiedzieć, że NIE BĘDZIE ŻADNEGO POMNIKA w tym miejscu.
Jest tablica i NIE BĘDZIE w tym miejscu niczego innego.

Plusy są takie, że po pierwsze państwo dotrzyma swojej części umowy. Policja usuwając "obrońców" powiedziała im, że robi to na prośbę BOR w związku z imprezą na 15. Trzeba więc się z umowy wywiązać i dopuścić ich znów do ich zabawki.
Jednocześnie trzeba podkreślić, że oni z umowy się nie wywiązali. Jest tablica upamiętniająca katastrofę, a krzyż stoi [choć w tym momencie powinien już być noszony] nadal.

I koniec.

"Obrońcom" nie należy ustępować, ani tym bardziej czynić z nich męczenników.
Budowa pomnika to będzie ustępstwo, usunięcie siłowe ich i krzyża to będzie robienie z nich męczenników.
Moje rozwiązanie to po prostu zignorować. Wymusić stosowanie prawa, a to wymaga by mała architektura była budowana za zezwoleniem, zezwolenia nie ma, więc musi być zdemontowana, ale jak chcą ją nosić to proszę bardzo. Jednocześnie ich prawa obywatelskie będą uszanowane. Chcą robić za eksponaty w ZOO dla ludzi kursujących między imprezowniami? Ich wybór.

Podobne postybeta
Znów o rozwiązywaniu krzyżówki
Krzyżowcy
Błeee
Jak zamachuję się na wolność wiary....
Koordynacja

Choroba technologiczna

Spring, Tapestry, EJB, jQuery, JavaServer Faces, Java FX, Hibernate.......

Niektórzy słysząc te i podobne nazwy wchodzą w stany podejrzanej ekscytacji ;-)
Co drugie ogłoszenie o pracy zawiera co najmniej 2-3 takie hasła. Najlepsze, że zawiera je prawie zawsze całkowicie niepotrzebnie :-)
Głośne używanie Hibernate polega zwykle na tym, że ktoś tam coś napisał, ale i tak większość kodu używa zwykłego SQLa.
A i tak Hibernate jest chyba jedną z niewielu z tych "technologii", które są używane.

Problem tylko z tym, że większość "ekspertów" "znających" te technologie nie rozumie jak działają wątki, albo ma poważne problemy ze zrozumieniem która część kodu wykonuje się na serwerze, a która u klienta, albo tego jak w ogóle ten HTTP działa.

Stąd kochają "biblioteki" i uzasadniają to tym, że "nie będziemy wymyślać ponownie koła" ;-)

Kiedyś na GoldenLine była dyskusja o okienkach modalnych w JavaScript. Z kontekstu wynikało, że chodzi o 1 może 2 takie okienka w całej aplikacji webowej.
Zaproponowałem by po prostu napisać to samemu, bo sprawa do trudnych nie należy, a daje dodatkowo kontrolę nad całym rozwiązaniem.
I od razu oberwało mi się od masy "ekspertów", że ktoś na pewno lepiej ten kod napisał niż ja, że po co znów wymyślać koło i podobnych........
Trochę im zmiękła rura jak zapytałem ile zajmie nauczenie się biblioteki tak by mieć nad nią taką kontrolę jak w przypadku gdy zrobi się to samemu i część przyznała, że rzeczywiście w sytuacji gdy zrobienie czegoś samemu zajmie 2 godziny, a nauka nowej biblioteki zabierze 2 dni to sprawa użycia biblioteki nie jest warta wysiłku.

Większość bibliotek i technologii ułatwia rzeczy proste, a skomplikowane czyni jeszcze bardziej skomplikowanymi. Tylko niewielka z nich część osiąga poziom na którym pomaga zawsze.
Akurat z tych, które wymieniłem na początku większość osiągnęła ten poziom, z tym zastrzeżeniem, że większość ich użytkowników nie osiągnęła tego poziomu :-)

Programista webowy, który boi się używać sniffera/proxy jest po prostu złym programistą. Tak samo taki, który gubi się w debugerze.

Trzeba rozumieć problem i narzędzia, bo bez tego nic dobrego nie powstanie.
Bez talentu i ciężkiej pracy związanej z malowaniem mając nawet najlepsze narzędzia graficzne nie zbliżę się nawet o milimetr do Picassa ;-)

Dlatego Google, które pyta o to jaka jest złożoność obliczeniowa operacji put w HashMap'ie w Java'ie nie pyta o głupie rzeczy, a właśnie o takie, które powinien znać człowiek twierdzący, że zna Java'ę (pesymistycznie jest to O(n), optymistycznie O(1)).

I to by było na tyle ;-)


Podobne postybeta
User Interface... jak ja tego nie lubię...
Nazwy
Code review - najfajniejszy kawałek procesu ;-)
Czemu od 30 godzin nie piję Coli - Eksperyment ;-)
Modale nie takie dobre dla Androida ;-)