abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 02:44 | IT novinky

    Microsoft Defender nově podporuje linuxové desktopy.

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | Komunita

    Oficiální Epic Games Launcher je v nové preview verzi poprvé dostupný i pro Linux (FAQ). Pracuje se na novém Easy Anti-Cheatu pro Linux (EAC Linux v2) a podpoře hry Fortnite na Linuxu.

    Ladislav Hagara | Komentářů: 4
    včera 13:44 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.8. Novinky zahrnují lepší podporu vzdálené plochy, sdílení a nahrávání obrazovky a řadu drobností napříč uživatelským rozhraním (úplný seznam změn, shrnutí ve wiki).

    ʚĭɞ 🍉 | Komentářů: 18
    včera 10:55 | IT novinky

    Apple představil 7palcový displej Apple HomeView s podporou Apple Intelligence a Siri AI pro ovládání chytré domácnosti, novou řadu vybavení chytré domácnosti Apple Home Collection, další generaci HomePodu mini a novou Apple TV 4K. Apple HomeView není v Evropské unii v prodeji, jelikož umělá inteligence Siri v rámci systému iOS v EU momentálně není k dispozici. Apple spolupracuje s EU a snaží se najít cestu, jak situaci vyřešit.

    Ladislav Hagara | Komentářů: 5
    včera 03:55 | Komunita

    KDE slaví 30 let. Přesně před 30 lety, 14. října 1996, poslal Matthias Ettrich do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu KDE. Důležité milníky jsou zobrazeny na časové ose.

    Ladislav Hagara | Komentářů: 3
    včera 03:22 | Nová verze

    Byl vydán Mozilla Firefox 158.0. Stejně jako Chrome 155 s podporou JPEG XL (test). Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 158 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 03:00 | Nová verze

    Svobodný kancelářský balík ONLYOFFICE (Wikipedie) byl vydán ve verzi 10.0. Jak online Docs, tak i offline Desktop Editors. Přehled novinek také na YouTube.

    Ladislav Hagara | Komentářů: 0
    13.10. 14:44 | IT novinky

    Mozilla představuje Firefox Enterprise určený jako podnikový prohlížeč pro organizace s přísnými požadavky na bezpečnost, správu a dodržování předpisů. S profesionální podporou. Dostupný je zatím ve Francii, Německu, Rakousku a Švýcarsku.

    Ladislav Hagara | Komentářů: 12
    13.10. 14:33 | Bezpečnostní upozornění

    Kybernetický útok zasáhl nejméně 150 supermarketů Intermarché a několik prodejen řetězců Leclerc a Coopérative U. Chladicí jednotky napadených obchodních domů byly nastaveny na nepřetržité odmrazování a teplota v nich mnohdy vystouala až nad 50°C. Škody napáchané na chlazeném a mraženém zboží budou patrně dosahovat miliónů eur.

    … více »
    ❗Červivý Hřib krade❗ | Komentářů: 4
    13.10. 04:00 | Komunita

    Stát Kalifornie zažaloval výrobce 3D tiskových filamentů Polymaker. Vrchní soud San Diego County tvrdí, že firma propagací svých výrobků mezi příznivci 3D tištěných zbraní podporovala výrobu takzvaných 'ghost guns' (DIY zbraní) a že její PLA filament pro 3D tiskárny lze za těchto okolností považovat za součást určenou k výrobě střelné zbraně. Žaloba požaduje mimo jiné finanční sankce a soudní zákaz činnosti, Polymaker se hájí tím, že filament je běžný a sám o sobě legální produkt. Celý text žaloby (PDF na Google Drive).

    ❗Červivý Hřib krade❗ | Komentářů: 29
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2846 hlasů
     Komentářů: 32, poslední 11.10. 17:02
    Rozcestník

    Milé malé WTF

    7.9.2006 11:04 | Přečteno: 1973× | sw | Výběrový blog

    Demence lidstva v kostce. Zvláštní věci mezi nebem a zemí se občas stávají. A to včetně situací mezi programátory, čili developery, jak se jim dnes říká. Vlastně má dnešní událost na svědomí nejspíše nějaký senior solution architect. Připravte si křupínky, zázvorové pivo a nechte se kolébat na vlnách stupidity.

    Většina z vás, milé čtenářstvo, jistě zná The Daily WTF, kde zoufalí lidé od počítačů hledají uklidnění, a kde se baví na učet jiných. Dnes, respektive včera v noci jsem objevil podobnou věc.

    Varování: podobnost kódu s tím, jaký jsi napsal právě ty, Karlíku (nebo Toníku), je čistě náhodná a v případě jakýchkoli problému vše zapřu, anebo budu tvrdit, že jsem si vše vymyslel. Klidně na počkání.

    Jména objektů, proměnných jsem změnil, formátování a komentáře zanechal. A nyní – náš dramatický příběh začíná…

    Za mlhou, která by se dala krájet, a ještě mnohem dále, než je rybníček Brčálník, leží království, nad nímž nekolik staletí slunce nezapadalo. Jedno z posledních království Evropské Unie. V něm jedna firma píše velice enterprise informační systémy za velice enterprice ceny.

    Shodou pekelných okolností se mi do rukou dostal kód, který napsal jeden ze zaměstnanců oné společnosti, a který teď musí udržovat jeden kamarád, jak už to tak ve smutných příbězích bývá. Tento kód dokazuje, že i mezi Oracle databázovými specialisty jsou polodementní individua, jaká známe ze zapovězených a temných oblastí tečka síť a káva.

    desc a_very_huge_one;
    Name      Null     Type
    --------- -------- ------------
    TRANID    NOT NULL NUMBER
    DTIME              DATE
    VAL01              VARCHAR2(30)
    VAL02              VARCHAR2(30)
    VAL03              VARCHAR2(30)
    VAL04              VARCHAR2(30)
    VAL05              VARCHAR2(30)
    ... vypuštěno dalších 62 sloupců. Hádejte jak s jmenují.
    
    69 rows selected
    

    Ponechme stranou zprasené pojmenování sloupců, to dnes není důležité, perla teprve přichází ve fragmentu PACKAGE:

    ...
        -- type for table A_VERY_HUGE_ONE row
        TABTYPE IS RECORD(
        TRANID NUMBER,
        DTIME DATE,
        VAL01 VARCHAR2(30),
        VAL02 VARCHAR2(30),
        VAL03 VARCHAR2(30),
        VAL04 VARCHAR2(30),
        ... opět vyhozené nějaké řádky ...
        VAL67 VARCHAR2(30));
    
    ...
    
        FUNCTION A_VERY_STRANGE_ONE(DATEFROM DATE) RETURN VARCHAR2 AS
            TABROW TABTYPE;
            PRAGMA AUTONOMOUS_TRANSACTION;
        BEGIN
            -- perform select from table
            SELECT *
            INTO TABROW
            FROM A_VERY_HUGE_ONE
            WHERE DTIME=DATEFROM AND
            ROWNUM=1
            ORDER BY TRANID DESC;
            -- return val02 value
            RETURN TABROW.VAL02;
            -- rollback the transaction
            ROLLBACK;
        EXCEPTION
            WHEN OTHERS THEN
            -- return an empty string
                ROLLBACK;
                RETURN '';
        END;
    ...
    

    I teď, přestože na tanto hnůj koukám na šestistý pokus, nevím, jestli mám plakat, smát se anebo blít, drahý Ivánku. Také nevím, co je v té arcimrdce nejsmutnější. Jestli to, že původní autor zřejmě znal pár věcí, uměl třeba nadefinovat RECORD a uměl napsat pragmu, ale zřejmě vůbec netušil, co to dělá. Nebo jestli to, že je ten selekt naprosto na hovno, protože zjevně nedělá to, co má. Nebo jestli ty pochybné ROLLBACKY. Anebo ignorace ROWTYPE – třeba byl placen za počet znaků které napsal. Nebo jak krásně okomentoval kód, což zřejmě kdesi zaslechl, že se to má dělat… Nemluvme o tom, že ta tabulka má asi 600MB a na sloupci DTIME není index, ani žádne partyšny – na druhou strani je pak výstup z explainu velmi prostý a přečte jej i retardované vemeno. Neříkám ale, že pochopí.

    Kontrolní otázka za 2 body: co se asi stane, když se daná tabulka musí rozšířit o jeden sloupec? Aneb ukázka kouzla "select * into" v celé své hrdé kráse.

    Odhoďme filozofické otázky "proč tu jsme? Jaký je účel našeho života?" Jsou zbytečné. Účelem života takových lidí je pouze zbůhdarma promrhat kyslík ostatním a sežrat tuny pizzy, kterou si musí nechat vozit do openspace, kde sedí do devíti večer, protože si hodiny ošoupávají prsty psaním RECORDů. Vý-teč-ně, už se mi znovu vaří krev a oči se podlévají krví. Vraždil bych. K smrti rád.

           

    Hodnocení: 87 %

            špatné • dobré        

    Anketa

    Kontrolní otázka za 2 body: co se asi stane, když se daná tabulka musí rozšířit o jeden sloupec?
     (16 %)
     (58 %)
     (26 %)
    Celkem 80 hlasů

    Anketa

    Kontrolní otázka za 2 body: co se asi stane, když se daná tabulka musí rozšířit o jeden sloupec?
     (0 %)
     (0 %)
     (0 %)
    Celkem 0 hlasů

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    7.9.2006 11:37 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Přidáš sloupeček a ... taková funkce co vrací NULL se vždycky hodi :-)

    No ta sranda s ROWNUM a ORDER BY ... existuje někdo kdo se na tomhle aspoň jendou nespálil?
    7.9.2006 11:44 s0 | skóre: 32 | blog: nejchytřejší kecy | prágl
    Rozbalit Rozbalit vše Re: Milé malé WTF
    hehehe, podle mne neexistuje. Se slzou v oku vzpomínám, jak jsme se na tom nechali nachytat ve třech lidech. Přepisovali jsme pak asi šest baliků, a to velice rychle a se studem.
    Kuolema Kaikille (Paitsi Meille).
    7.9.2006 12:04 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Třeba já, používám Firebird… :-p ;-)
    wake avatar 8.9.2006 00:50 wake | skóre: 30 | blog: wake | Praha
    Rozbalit Rozbalit vše Re: Milé malé WTF
    treba ja, pouzivam manual.
    Tento příspěvek má hlavičku i patičku!
    xvasek avatar 7.9.2006 13:35 xvasek | skóre: 21 | blog: | Zlín
    Rozbalit Rozbalit vše Re: Milé malé WTF
    V MSSQL ROWNUM radši ani není, musí se to složitě emulovat. (Nebo neumím hledat.)
    7.9.2006 13:45 s0 | skóre: 32 | blog: nejchytřejší kecy | prágl
    Rozbalit Rozbalit vše Re: Milé malé WTF
    neni tam TOP? anebo si to nejak tak pamatuju z dob mssql6
    Kuolema Kaikille (Paitsi Meille).
    7.9.2006 13:47 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: Milé malé WTF
    ... je, a překvapivě se vyhodnocuje až po ORDER BY :-) Ale to jde použít samozřejmě jen když má ROWNUM sloužit k omezení počtu řádků výsledku...
    7.9.2006 13:53 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Hmm, k čemu jinému by mělo sloužit? K pseudonáhodnému výběru záznamů, které se v dalším kroku úhledně seřadí? :-D
    7.9.2006 14:14 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Vy jste nikdy nepoužil ROWNUM k něčemu jinému? To bych měl někde vyhrabat jedno view, co jsem kdysi spáchal, a bylo opravdu ošklivé (šlo o něco jako že jsem potřeboval join mezi sudýma řádkama v jedné tabulce s lichýma ve druhé ... :-) ale neptejte se proč, to si teda vážně nepamatuju).
    7.9.2006 18:55 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Zaprvé nejsem oraclista, zadruhé, jak může (bez explicitního řazení) relační databáze zaručit, které řádky budou liché a které sudé?
    7.9.2006 19:41 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: Milé malé WTF
    samozřejmě, šlo o sudé a liché řádky v explicitním řazení
    xvasek avatar 7.9.2006 15:37 xvasek | skóre: 21 | blog: | Zlín
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Top je podle toho, co umí rownum, jenom dětské prdění do vody...
    wake avatar 8.9.2006 00:52 wake | skóre: 30 | blog: wake | Praha
    Rozbalit Rozbalit vše Re: Milé malé WTF
    select * from tabulka where rownum > 1;
    Tento příspěvek má hlavičku i patičku!
    9.9.2006 15:52 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Ano, to je opravdu konstrukce, bez které by se celý Oracle sesypal jako domeček z karet… :-D (Zdá se mi to, nebo jsou oraclisti podobně nepříjemná sekta, jako javisti? :-D)
    10.9.2006 12:42 s0 | skóre: 32 | blog: nejchytřejší kecy | prágl
    Rozbalit Rozbalit vše Re: Milé malé WTF
    ne, ne, ne! Oraclisti jsou krásní, chytří a všeobecně oblíbení, zatímco Javisti jsou zlí, bijí koťátka a dupou po karafiátech.
    Kuolema Kaikille (Paitsi Meille).
    10.9.2006 14:37 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Ach, děkuji za vysvětlení, švarný junáku, tápal jsem dosud v temnotách… :-D
    clayman avatar 7.9.2006 12:39 clayman | skóre: 13 | Praha 6
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Bohuzel nejsem databazista a SQL neznam, takze vtip mi utekl. :-(
    Josef Kufner avatar 7.9.2006 18:35 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Milé malé WTF
    To nevadí, patlat prasečinky lze v čemkoliv. V poslední době mě dostal kus php, kde vytáh všecky řádky z db a za tím následoval foreach, kde to prasátko víceméně emulovalo WHERE a možná i JOIN ...
    Hello world ! Segmentation fault (core dumped)
    Daniel Kvasnička ml. avatar 7.9.2006 13:50 Daniel Kvasnička ml. | skóre: 52 | blog: The Joys and Sorrows of Being an IT Freak | Ostrava
    Rozbalit Rozbalit vše Re: Milé malé WTF
    S db nepracuju tak casto, abych mel chut to cist do konce, ale za anketu jsem ti dal hodnoceni 3 ;-)
    FSF: “screw you for not wanting the stuff we produce”, People: “screw you for not producing the stuff we want."
    7.9.2006 21:39 xxxxxxxx | skóre: 16 | blog: mrtvy blog | v nebi
    Rozbalit Rozbalit vše Re: Milé malé WTF
    CHCEME VÍC NEJCHYTŘEJŠÍCH KECŮ!!!!! VÍC!!!! VÍC!!!!!!!
    wake avatar 8.9.2006 00:48 wake | skóre: 30 | blog: wake | Praha
    Rozbalit Rozbalit vše Re: Milé malé WTF
    to je jasny. job security. z tohohle _nikdo_ nepozna, co to vlastne ma delat. autor je nepostradatelny.
    Tento příspěvek má hlavičku i patičku!
    8.9.2006 11:10 podlesh | skóre: 38 | Freiburg im Breisgau
    Rozbalit Rozbalit vše Re: Milé malé WTF
    No, takové obvyklé WTF. I když je pravda že jako ne-Oraclista nepoznám, co jsou normální Oracle triky a co je jen blbost autora.

    Co je ale opravdu WTF, je onen odkaz na stránky "no Java", které asi původné byly zamýšlany jako veselé historky o středu kravaťáků a hackerů. Ovšem výsledek je odporný a trapný, zvláště ten první ICQ rozhovor je velmi ubohý (chápal bych v hospodě po pátém pivu, chápu i vtipkování po ICQ, ale veřejně to vystavovat na webu?).
    21.1.2010 19:26 vaclav
    Rozbalit Rozbalit vše Re: Milé malé WTF
    Tahle prihoda mi pripomina jeden chemickej vtip: H4SO3 :D:D:D(chemici vedi).

    Založit nové vlákno • Nahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.