az apróságok miatt

                                                                                                                                                                                                                                                                                       


hát igen, minden az apróságokon múlik. de hogy hogyan is jutottam erre a következtetésre? az van, hogy egyik kolléga érzelmektől túlfőtötten számolt be arról hogy egy másik volt kolléga készített egy 256 byte-os demo-t, amiiről készült felvételt fel is tett a youtube-ra. ebben benne volt minden aminek benne kellett lennie. egyrészt 256 byte. igen, a mai világban. mert ennyi memóriája akár egy hangkártyának is van, meg még talán a hűtőnek is. kicsit elborzaszt a mai világ, hogy egy hello world programhoz több megabyte kódra van szükség. de erről már írtam korábban. másik dolog az assembly. bizony bizony, a mai világban is lehet assemblyvel programozni. nem túl gyorsan, az tény, viszont mindenképpen lehet, és leginkább olyan programokat lehet csinálni amire azt mondja az ember hogy wtf. és ez jó - szerintem. aztán benne van hogy demo. réges régen egyszer még ági, a pásztor ági vett rá, hogy ellátogassak egy demo partyra. nos, akit magával ragad a dolog az ott helyben neki akar állni kódolni, akit meg nem, azért kár a szó. egy szó mint száz, úgy határoztam most évekkel később, hogy én is készítek 256 byteos demo-t. elsőre egy kb 300 bytenyi szöveget+kitömörítőt+kiirót készitettem. ez annyit tett hogy szép lassan kiirta jó nagy betűkkel a benne felhalmozott betűket. második nekifutásra komolyabbat gondoltam. a képernyő közepén megjelenő ötágú csillag, ami elkezd forogni, majd radarképernyőszerűen a korábban bejárt területe elhalványul. elsőre nem is sikerült, nyomasztott hogy bele kell férnie a 256 byte-be. hát igen, a túl korai optimalizáció mindennek az átka. elsőre legyen jó, aztán lehet faragni. szóval második nekifutásra a méret nem volt szempont, csak a működés. így kb 600 byte-ba összeraktam a működő kódot. szép lett. viszont ránézve látom hogy a kód kb felét az egyenesrajzolás implementációja viszi el, ráadásul két példányban - x éy y növekményes változat. ezen kívül mire ment el sok byte? itt a felismerés, apróságokra. első kódnál például hogy a szavak elválasztása szóközzel történjen. nem is értem hogy anno az ascii tábla elkészítőinél miért nem volt szempont hogy a begépelt szöveg karakterei közel legyenek egymáshoz. a szóköz nagyon kilóg, pedig mindenhol használjuk. második kódnál ilyen apróság például hogy megfelelő legyen az egyenes végpontjainak koordinátája, ezért bizonyos esetekben meg kell őket cserélni. akárhogyan is, de ez 4 beolvasás, és 4 kiirás. mejd megvizsgálom hogy stringutasitásokkal csökken-e a méret, de ez mit sem változtat a dolgon, meg kell tenni. másik ilyen az elhalványulás esetén a negativ értékek kezelése. perzse önmagában nem sok egyik sem. pár byte itt, pár byte ott, pár óra fejlesztés erre a funkcióra, pár óra arra. eredményül azt kapjuk amit már írtam. attól lesz jó - és jó alatt értem a lehetőségekhez mérten szép, igényes, élvezhető - a kód, ha ezek az apróságok mind mind benne vannak. ezekhez pedig erőforrás kell.



Kód újratöltése
 
                                                                                                                                                                                                                                                                                        megvan a véleményem, nincs egyedi nevem, mit tegyek?, használati útmutató nőkhöz, ne vedd el a fókuszt, alternatív csirkehúsleves, metaüzenet, miért hazudott?, érintőkábel, hogy hívnak?, te cigány vagy?, Ezek menthetetlenek, két hónap, programozós ünnepek, a rövidítésekről, a programozás törvényei, az időutazás és az időzónák kapcsolata, Téged ma mivel húztak le?, Itt vannak az új villamosok, Nincs értelme az örök életnek., sztárvendég beharangozó, mobilalkalmazás menekülteknek, az igazság, nincs nincs, buzik, félreérthetetlen bizonyíték a globális felmelegedésre, rutyóka, a gépek lázadása, máv hó zrt, társkeresős logikai feladvány, ezt én meguntam, a vízválogató, 0da81467f1fe8ed61b9c42725e362653 - 11111011111, ux, GYK, az esőkabát a szárazság ellen, pártatlanul, megbeszélések, 70, terpesz, a két legnagyobb piaci rés az offline üzenetkézbesítés terén, mennyire borzasztóan sok idő tellik el két péntek között?, novenber, rossz ötlet, a világról alkotott indokolatlanul hibás elméletek közül az egyik
« <  > »