PROGRAMMING AND SOMETHING MORE...

Main page | Portfolio | Publications | PostgreSQL vs other DBMS | IT Humor | About me

IT companies reality

IT companies reality

Yeah - it's so fuckin' true. I'm the guy with a cup of coffee... :-D

IT management reality

IT management

Same as above... :-)

What a fuckin' genius: "Informatyka to jest 50% matematyki: logika, matematyka dyskretna, analiza numeryczna, etc. No chyba że ktoś chce pisać stronki w PHP + JS. Poczytajcie sobie prawdziwe książki informatyczne, np. "The Art of Computer Programming" Knutha, "Wprowadzenie do algorytmów" Cormena czy "Introduction to Automata Theory, Languages, and Computation" Hopcrofta." Ignorant #1
Another one: "zgadzam się z ponton: ktoś, kto nie potrafi zdać analizy matematycznej, algebry albo dyskretnej nie będzie dobrym programistą - co najwyżej klepaczem w php i mysql. pierwszy z brzegu przykład - opengl, gdzie mocno wykorzystuje się operacje na macierzach. dobry programista powinien umieć robić wszystko - od obliczeń numerycznych do programowania gier. a stronki w php to dno i trzy metry mułu w programistycznym kunszcie." Ignorant #2

Dear "true" programmers, you are so funny... Computer science is not information technology. Tell this to somebody who has gathered mechanical engineering degree for example. They don't have discrete math. What about somebody with philosophy degree? Damn - I heard something similar about me many years ago from a guy like you. I saw your messy code and ALWAYS I had to clean up your screwed up, crappy, buggy, low performance and unmaintainable code written without any knowledge about software engineering, architecture design, full of anti-patterns, etc. You can go away to calculate integrals at paper and don't touch any real, production code. Bye and never come back!

uithuizing koszmar kazdego programisty
kelthuzzar @uithuizing praca w Comarchu?
uithuizingtak ich programy z ktorymi mialam stycznosc (np epuap) wolaja o pomste do nieba, uzaleznili od siebie klienta - panstwo piszac im zamknietozrodlowe oprogramowanie (chociaz o zamknietym zrodle chyba ciezko tu mowic bo co chwile jakis ich gownokod wyplywa na powierzchnie internetow tyle ze bez ich zgody)
seba_rlz "Każdego specjalistę da się zastąpić skończoną liczbą stażystów" prezes Comarch

Potwierdzam - szczególnie godne uwagi są wysrywy mistszuf T-SQL, czyli mój "ulubiony" MS SQL Server i to co wyprawiają w nim "programiści" Comarch. Nie inaczej ma się sprawa z cudami w bazie WF-Mag. Tylko dla ludzi o mocnych nerwach. Radosna twórczość w T-SQL kwitnie - oczywiście wszystko oparte o mój "ulubiony" MS SQL Server. Jedno jest niezmienne - zawsze ten sam syf bazodanowy, o którym pisałem w zakładce "PostgreSQL vs other DBMS", tworzony przez certyfikowanych "specjalistuf" po dziennych studiach informatycznych drugiego stopnia ukończonych na czołowych, "renomowanych" państwowych uczelniach. Zarówno od strony oprogramowania logiki w bazie jak i struktury samej bazy. A jakże! Po tym wszystkim, gdy czytam na Golden Line brednie typu "STUDIA SĄ KONIECZNE DO PROFESIONALNEGO ZAJMOWANIE SIĘ IT (szczególnie IT) i one (studnia), nie mają uczyć, mają pozwolić spojrzeć na problem wielowymiarowo i pokazać jak się uczyć i szybko rozwiązywać problemy.", to nóż mi się w kieszeni otwiera... Natomiast jeśli ktoś do nauki czegokolwiek poza poziomem elementarnym potrzebuje pokazania wszystkiego palcem jak niedorozwojowi, to jest tumanem i nie zasługuje na miano człowieka rozumnego, a tym bardziej nie ma powodów do puszenia się swoim "wykształceniem" i wartościowania kogoś, kto nie posiada tego nic niewartego papierka zwanego "dyplomem". Takie zachowanie wykształciuchów jest po prostu niesmaczne i żałosne. To, że ktoś potrzebuje zapędzania batem do nauki w ramach sformalizowanego systemu edukacji nie oznacza, że inni tego potrzebują. Przestańcie określać innych swoją miarą i ograniczeniami mentalnymi. Zwłaszcza, że studia obecnie może ukończyć byle debil. Dyplom magistra jest mniej wart niż przedwojenna matura. Polecam zapoznać się z niemieckimi podręcznikami do mechatroniki i elektrotechniki dla szkół średnich i zawodowych. Wiedza w nich zawarta jest na dużo wyższym poziomie, niż ta uzyskana przez przeciętnych absolwentów uczelni wyższych wspomnianych kierunków. To chyba jest coś nie tak, prawda? Cała literatura, jaką do tej pory przyswoiłem, była moim własnym wyborem podyktowanym ciekawością, chęcią rozwoju w danej dziedzinie lub praktyczną potrzebą związaną z aktualnie wykonywaną pracą. Lista lektur sukcesywnie wydłuża się i nie jest to zasługa studiów tylko moja własna chęć samokształcenia i samorozwoju. Będę uczył się tylko tego co mi się podoba i to ja będę decydował jaką wiedzę przyswajać, zależnie od potrzeby praktycznej lub kaprysu poznawczego. Taką filozofią kierowałem się, kieruję i będę dalej kierował się w swoim życiu. Reszta mnie nie interesuje. Cenię poważnych i merytorycznych ludzi bez względu na wykształcenie, a nie czcicieli dyplomów i innych papierków.

Najlepszy administrator jakiego znam osobiście, jest absolwentem technikum mechanicznego i samoukiem. Podobnie z najlepszymi programistami jakich osobiście poznałem do tej pory - to absolwenci liceum ogólnokształcącego i samoucy. Nie inaczej wygląda sytuacja w przeglądanych przeze mnie dokumentach CV - najlepsze kwalifikacje mieli zazwyczaj samoucy z pasją nie mogący pochwalić się dyplomem magistra, a co najwyżej świadectwem maturalnym z LO. Tak więc nie życzę sobie pouczania przez nadętych bufonów, którzy uważają, że jedynie ich formalna ścieżka edukacji jest tą słuszną, bo w praktyce okazuje się, że przepływ wiedzy i doświadczenia jest w kierunku odwrotnym, niż wcześniej to sobie założyli, bazując na swoich przesądach odnośnie unikalności ich formalnego wykształcenia.

My fundamental coding rules in PHP ;-)

Fundamentalne zasady kodowania w PHP (i nie tylko) zebrane na podstawie osobistych obserwacji - trochę z przymróżeniem oka

  1. Komentarze to zbędna strata czasu i niepotrzebne zwiększanie objętości kodu. Jak ktoś nie rozumie Twojego kunsztownego kodu, to znaczy, że jest informatykiem.
  2. Spacje to fanaberia programistycznych purystów. Kolejna strata cennego miejsca na dysku i spowolnienie interpretacji kodu.
  3. Co działa w 10 linijkach kodu, będzie też działać w jednej. Im mniej znaków nowej linii tym lepiej. CR/LF z wozu, interpreterowi lżej!
  4. Pamiętaj o fundamentalnym wzorcu Copy-Paste – intensywna ekspansja kodu realizującego tą samą złożoną logikę w różnych miejscach aplikacji ułatwia późniejszą konserwację, znakomicie wpływając na szybkość znajdowania i usuwania usterek, co znacznie poprawia samopoczucie programistów i pozytywnie wpływa na rentowność firmy.
  5. Funkcje compact/extract to Twoi przyjaciele. Nie wahaj się prosić ich o pomoc.
  6. Składowanie kodu PHP w tabelach bazodanowych jest świetnym pomysłem. Warto rozważyć dynamiczne generowanie kodu PHP przez procedury składowane SQL. Denormalizacja struktury danych i składowanie kodu w metadanych jako nazwy kolumn uelastycznia projekt.
  7. Używaj funkcji eval maksymalnie często. Samomodyfikujący się kod uatrakcyjnia analizę nowej osobie.
  8. Zmienne zmiennych (zmiennych, ...) to bardzo fajna rzecz. Osoby modyfikujące Twój kod będą wprost zachwycone Twoją kreatywnością.
  9. Prawdziwi programiści nie boją się używać instrukcji goto. Jeśli masz opory - to jesteś informatykiem! goto 10
  10. Nie nadużywaj nawiasów klamrowych. To niepotrzebne marnowanie miejsca na dysku (patrz: pkt. 1., pkt. 2. i pkt. 3.)
  11. Im więcej poziomów abstrakcji tym lepiej – trzeba spożytkować nadmiarową moc procesorów serwera.
  12. Unikaj sterowania danymi – wszystko powinno być zakodowane w skrypcie (hardcoded) – wtedy przy zmianie drobnostki będzie można zabłysnąć wszechmocą i magiczną wiedzą programisty, których wykorzystanie będzie wymagało godziny ciężkiej pracy "fachowca".
  13. Używaj jak najwięcej własnych rozszerzeń w C. Idealny skrypt składa się z pojedynczego wywołania wkompilowanej w PHP funkcji C zawierającej całą logikę.
  14. Łącz dane binarne i kod HTML widoku ze skryptem PHP korzystając z dobrodziejstw funkcji halt_compiler(). Unikniesz nadmiaru plików w projekcie.

Uruchom w konsoli poniższy kod i zapamiętaj wynikającą z niego złotą myśl!

<?php
/**
 * Standardy kodowania dla bystrzaków.
 * Przykład wzorcowego kodu PHP.
 *
 * @author Artur Kozubski
 */
$t=array();$b='A';$a='b';$c=strtolower(${'b'});$$a=chr(ord($b)+0x16);
$$b.=chr(0162);$$$a=chr(ord($a)+7);
$l=base64_decode(file_get_contents(__FILE__,null,null,__COMPILER_HALT_OFFSET__));
$$$$a = '$$$a.=chr(ord($$$a)+0xb);$a=eval("return chr(ord($$c)+3);");$b.="$Wr$a
";${chr(ord($a)+0x13)}=array("f"=>$a,"g"=>$c);';
eval($i);extract($x);eval('$$f=chr(ord($g)+2);');$x='';$t[$b{1}]=$b{4};
$t[$b{2}]=$c;$t[$b{3}]='n';foreach(str_split($b)as$i=>$z)
{if($i>3)break;$z=='W'?$v='>>1)+65':$v='-ord($z)
+ord($t[$z]))';eval('$x.=chr((ord($z)'.$v.');');}$h=' '.$e.'o'.chr(ord($e)+1).
$x{1}.'!';
eval($b{4}.$e.'h'.$h{2}.' "$b$e$x$h\n\n";');eval($$b{4}.$e.'h'.$h{2}.' \''.
$l.'\'."\n\n";');__halt_compiler();
?>
ICBFRUVFICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICANCiBMRSAgR0UsRS4gRUxFRUUgRUUgRUVFRXRFRUVFRUVF
IEVFIEVFIEVFRSA7RSAgRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogTEVFLiAg
IEVFRUUgRUVFIEVFIEUgICB0RSAgRUVERSBFRSBFRCBFZkUgIEV0RUUgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIA0KICBFRUVFRyAgRUU7IEVFRWpFRSBFRUVMdEVFRUVFOkUgRUVmRS4g
RSBFZiBFRUUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgRUUgIERFICBF
RSBFRUUgRSAgIHRFIEVFICBFRWpmRUUgO0VFRUUgIEVFICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgDQogRUUuIEVFICBMRSAgRUUgRUVFIEUgICB0RSBmRSAgRUUgIEVFIEVFRUVFLiBF
RSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICBFRUVFLiAgTEUgIEVFICBFRSBF
RUVFdEUgIEVFIGpFICBFdCBFICAgRUUgRUUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA=
Poniższy tekst nie jest mojego autorstwa - znalezione w odmętach Internetu (sam lepiej bym tego nie ujął, więc wklejam jak jest, he, he).

Wesoły Czesław w projektach IT

Z pamiętnika informatyka:

  1. Zaczyna się projekt. Nawet jeśli jest to najbardziej hardkorowy wodospad to on też ma jakąś tam iterację.
  2. W trakcie tej pierwszej iteracji developer - nazwijmy go Czesiek - napierdala całkiem szybko działający kawałek funkcjonalności.
  3. Decydenci są wniebowzięci bo oto powstał pewien "produkt" ciągnący za sobą potencjalne zyski - Czesiek zdobywa plusy w oczach managementu.
  4. To czego nie wiedzą ludzie w garniturach to to, że Czesiu napisał ten kod kosztem wszelkich reguł czytelności - masę zagnieżdżonych pętli, ogromne klasy i inne cuda na kiju. Ci biedni ludzie tego nie rozumieją - działa? No działa!
  5. Projekt trzeba rozbudować - niech zajmie się tym jakiś junior developer, utrzymaniowiec czy coś w tym stylu - Czesiek jest za dobry - potrzebujemy go do naszych "miszyn kritikal."
  6. I teraz biedny zamiennik siada do tego gówna i płacze i próbuje coś napisać i męczy się i trwa to długo.
  7. I taki kierownik budowy sobie myśli "no tak jak przewidywałem - Czesiu jest zajebisty a ci to nawet nie umieją jednej rzeczy sprawnie dopisać. Ehhh trzeba znowu zadzwonić do Cześka".
  8. Wróć do punktu pierwszego.

Pokuszę się tylko o krótki komentarz:
Niby dział humor, bo tekst do żadnego innego na mojej stronce nie pasuje, ale tak po prawdzie nie ma tu nic śmiesznego. Nic, a nic... Kto sprzątał po takich Cześkach, doskonale zrozumie o co mi chodzi. Zaznaczę, że technologia, język, platforma czy wykształcenie lub jego brak nie mają tu absolutnie żadnego znaczenia. Albo ktoś potrafi programować i myśleć systemowo projektując architekturę aplikacji albo nie i napierdala bezmyślnie kod bez refleksji o jego ewentualnej rozbudowie, usuwaniu błędów, wydajności, skalowalności, stabilności i kosztach utrzymania, na które przekładają się wymienione wcześniej aspekty.

Main page | Portfolio | Publications | PostgreSQL vs other DBMS | IT Humor | About me