A gépi tanulásról közérthetően

Uncategorized
A számítástecnika mostanában talán legdivatosabb kifejezése a gépi tanulás, vagy ahogy sok helyen még magyar cikkekben is találkozni vele, a machine learning. Annak ellenére, hogy nagyon szakmai fogalom és bonyolult matematikai háttere van, nap mint nap olvasni róla a mainstream médiában. Legfőképp arról szólnak a cikkek, hogy jövőre már a gépi tanulás lesz a legnagyobb jelentőségű technológia, néhány éven belül ötszörösére emelkednek a belőle származó bevételek világszerte, a Google gyakorlatilag erre a technológiára épül, sőt vannak, akik szerint az internet feltalálása óta ez a legnagyobb áttörés. Mégis mi az a gépi tanulás és mi benne a pláne? Habár egyetemi turnusokat lehetne vele megtölteni, megkíséreljük elmagyarázni, hogy mi fán terem a gépi tanulás. A számítógépek abban a legjobbak, hogy egy előre megadott utasítássorozatot nagyon gyorsan és nagyon pontosan végrehajtsanak, ezzel azonban…
Read More

Ezoterikus nyelvek 4. rész – játék a játékban

Uncategorized
Néhányak hóbortja, hogy a programnyelvek határait feszegesse, és létrehozzon olyanokat, amik elméletben működnek ugyan, de a gyakorlatban teljesen használhatatlanok. Ezeket ezoterikus nyelveknek hívják. A legérdekesebb ezoterikus nyelveket bemutató cikksorozatunk negyedik része következik. (Az első, második és harmadik rész, ha lemaradtál volna.) Játék a játékban Talán az egyik legezoterikusabb egy nyelvben, ha igazából nem is programnyelvnek készült, de véletlenül olyan tulajdonságokkal rendelkezik, hogy annak is lehet használni. Korábban írtunk az Életjátékról. Ez egy olyan program, ahol egy négyzetrács pontjai villannak fel és halnak ki az idő előrehaladtával. Ugyan nem programnyelvnek készült, de később bebizonyították, egy kifacsart módon programok megírására is használható, vagyis megfelelő szabályokat követve minden számítógépprogram "megírható" benne. (Az ilyen nyelveket úgynevezett Turing teljes nyelvnek hívják. Ugyanarról a Turingról van elnevezve, akiről a Kódjátszma című film is szól.) Például maga…
Read More

“Na persze, ezt 5 évig tanulják az egyetemen!”

Uncategorized
Egyetem, vagy gyorstalpaló? Mit ér egy gyorstalpaló képzés, ha a szakmát 5 évig tanítják egyetemi szinten? Magyarországon (szerencsére) jobbnál jobb minőségű programozóképzések nőnek ki a földből, de hogyan lehet eligazodni ezek között? Gyakori kérdés, hogy ilyen képzések mellett érdemes-e az egyetemre fordítani az időt, vagy fordítva: érdemes-e kifizetni a tandíjat egy magániskola képzésére. Mi is megkaptuk már a 10x1,5 órás képzésünkre, hogy "na persze, ezt 5 évig tanulják az egyetemen, ti meg majd megtanítjátok ennyi idő alatt". Természetesen nem! Itt röviden megírjuk, hogy milyen jellegű helyen mit tanítanak, hátha segítünk a döntésben! Egyetem Mély tudást ad, de a 90%-át valószínűleg sosem fogod közvetlenül használni egy valódi munkahelyen. A programnyelvek működésének elméletét, a számítástechnikában fontos egész számok magas szintű matematikai hátterét, analízist is tanítanak, míg sok olyan módszertan kimarad, amit a…
Read More

Ezoterikus nyelvek 3. rész

Uncategorized
Néhányak hóbortja, hogy a programnyelvek határait feszegesse, és létrehozzon olyanokat, amik elméletben működnek ugyan, de a gyakorlatban teljesen használhatatlanok. Ezeket ezoterikus nyelveknek hívják. A legérdekesebb ezoterikus nyelveket bemutató cikksorozatunk harmadik része következik. (Az első, a második, és a negyedik rész, ha lemaradtál volna.) Brainfuck és a Pokol bugyrai Az egyik legismertebb ilyen példa a Brainfuck, aminek célja, hogy a lehető legkevesebb utasítást tartalmazza, cserébe extrém nehéz benne programozni, és gyakorlatilag olvashatatlanok benne a programok. Mindössze 8 utasítást használ, amik mind speciális írásjelek, de így is úgynevezett Turing-teljes nyelv, azaz bármilyen algoritmus megírható rajta. Ez a program például kiírja, hogy "Helló, world!": ++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++. <<+++++++++++++++.>.+++.------.--------.>+.>. Hasonló nyelv a Malbolge, azaz a Pokol Nyolcadik Köre, ami szánt szándékkal a legnehezebb ezoterikus nyelvnek készült. Vérizzasztó lehet programot írni a Whitespace nevű nyelven is, ami…
Read More

Bugos a program? De hol is van pontosan a bogár?

Uncategorized
Ma már mindenki ismeri a bug, azaz bogár szót a szoftverhibára, a magyarban is így kiáltunk fel: "bugos ez a..." (a többi nem ide tartozik). De minköze a programhibának a bogarakhoz? Honnan jön ez az átvitt értelmű kifejezés?Az elterjedt legenda szerint a kifejezés Grace Hopper számítógép-tudós/matematikustól származik, aki 1947-ben a Mark II nevű számítógép hibáját kutatva egy molylepkét talált a relék között. Ebben az időben a számítógépek szoba méretűek voltak, és sok mechanikus relé és a mainál nagyobb feszültségű vezeték volt bennük, így egy betévedt bogár az alkatrészek közt megsülve zárlatot, és ezzel szoftverhibát tudott okozni.Ez azonban bizonyítottan nem igaz, legalábbis ami a kifejezés eredetét illeti. Ellentmondásosak a történetek az időpontról, sőt arról is, hogy valóban Hopperrel történt-e, mindenesetre szerette mesélni a történetet.Az igazság az, hogy a "bug" szót már…
Read More

Ezoterikus nyelvek sorozat 2. rész – Festészet, zene, dráma és programozás

Uncategorized
Néhányak hóbortja, hogy a programnyelvek határait feszegesse, és létrehozzon olyanokat, amik elméletben működnek ugyan, de a gyakorlatban teljesen használhatatlanok. Ezeket ezoterikus nyelveknek hívják. A legérdekesebb ezoterikus nyelveket bemutató cikksorozatunk második része következik. (Az első rész, ha lemaradtál volna.) Festészet Meddig lehet feszegetni a programnyelvek határait? Voltak, akik odaáig jutottak, hogy elszakadtak az írott nyelvtől. A leglátványosabb, és talán legkülönlegesebb ezoterikus nyelv a Piet, ami képeket értelmez és futtat le. A Pietben megírt (pontosabban megrajzolt) programok Piet Mondrian holland festő műveihez hasonlítanak. Ez például egy Piet program, ami kiírja, hogy "Piet": Zene A gép lényegében bármilyen adatot tud futtatható programként értelmezni. Nem csak képet, zenét is! A Velato midi formátumban tárolt zenéket tud lefuttatni, ez például a "Hello world", ami zenelejátszóval lejátszva egy nem túl élvezetes művet ad, megfelelő Velato értelmezővel…
Read More

A játék, ami károsabb volt minden vírusnál

Uncategorized
Pedig ingyen kipróbálhatod! Nagyon kevesen hallottak minden idők egyik legnagyobb hatású számítógépes játékáról, ami a becslések szerint a 70-es években több millió dolláros kárt okozott. Ennek talán egyik oka, hogy igazából nem is lehet vele játszani. De mégis mi ez a rejtélyes játék? Az Életjáték, azaz Game of Life (nem összetévesztendő a Game of Life nevű társasjátékkal). Mivel nem mai darab, ne számítsunk látványos dolgokra. Igazából a játék maga egy négyzetrácson villódzó kockák megfigyelését jelenti. A négyzetrácsokat sejteknek nevezik, amik vagy élnek (mondjuk feketék), vagy halottak (mondjuk fehérek). A játék előrehaladása lépésekben történik, amik során bizonyos szabályok szerint a sejtek vagy meghalnak, vagy életre kelnek, vagy éppen úgy maradnak, ahogy voltak. Ennél több köze igazából nincs is az élethez. A részletes szabályokat megtalálod az Életjáték Wikipedia oldalán. Úgy lettek megalkotva,…
Read More

Miben jobb egy dobókocka, mint egy számítógép?

Uncategorized
A számítógépek életünk majdnem minden területét megkönnyítik, mégis vannak olyan egyszerűnek tűnő feladatok, amiket szimplán képtelenek elvégezni. Az egyik legproblémásabb ilyen feladat a pénzfeldobás, vagy kockadobás szimulálása, másnéven a véletlenszám generálás. A számítógépek arra jók, hogy előre jól meghatározott lépéseket gyorsan és pontosan végrehajtsanak. Ezek azonban mindig megjósolható eredményre jutnak: egyszerűen nem lehet olyan fix lépéssorozatot írni, aminek teljesen előreláthatatlan lenne az eredménye. A legjobb csúcsszámítógépek is egész egyszerűen alkalmatlanok véletlenszerű eredmények előállítására, szemben egy egyszerű dobókockával. Hogy lehet akkor, hogy az Excelben, és egy csomó másik programban is látszólag van lehetőség ilyesmire? Úgy, hogy ezek valójában matematikai trükkök, amik sokkal bonyolultabbak, mint azt elsőre gondolnánk. Összetett matematikai módszerekkel állítanak elő véletlenszerűnek tűnő, de matematikai értelemben megjósolható számokat. Ezeket álvéletlenszámnak, idegenül pszeudo véletlenszámnak hívják. Elég jól utánozzák a véletlenszerűséget ahhoz,…
Read More

Ezoterikus nyelvek sorozat 1. rész – Arnold Schwarzenegger, Pikachu

Uncategorized
A legtöbben ismeritek a népszerűbb programnyelveket, mint a Python, Java, C és C++, és biztos sok mást is. De mégis hányféle nyelv létezhet, és főleg hol a határ, mit kell ahhoz teljesítenie egy nyelvnek, hogy programnyelv lehessen? Néhányak hóbortja, hogy a programnyelvek határait feszegesse, és létrehozzon olyanokat, amik elméletben működnek ugyan, de a gyakorlatban teljesen használhatatlanok. Ezeket ezoterikus nyelveknek hívják. A legérdekesebb ezoterikus nyelveket bemutató cikksorozatunk első része. Az ArnoldC például Arnold Schwarzenegger filmes idézeteiből (Terminator, Ovizsaru, stb.) áll össze. A program vége például a YOU HAVE BEEN TERMINATED, a változóknak pedig a GET TO THE CHOPPER paranccsal adhatunk értéket. Több olyan nyelv is létezik, amik smiley-kból állnak, ilyen az Emojicode és az Emotikon. Létezik olyan is, ami lolcatek, Pikachuk beszélgetéseit idézik meg. Vannak olyan nyelvek is, amiknek nem csak…
Read More

A programozás kapudrogja

Uncategorized
Korábban az a megtiszteltetés ért, hogy meghívtak minket a Startup Safary budapesti rendezvényére. Itt bárki végigjárhatja a résztvevő startupok irodáit, és betekintést nyerhet a startup ökoszisztéma helyi folyásába. Április 21-én Ádám tartott bemutatkozó előadást a Cafe des Arts & Innovation coworking kávézóban. Mi nagyon élveztük! :) A résztvevőknek köszönjük, hogy eljöttek, aki pedig lemaradt volna, ebben a posztban pár szóban leírjuk, miről beszélt Ádám. Aki egy programozó iskola rendezvényére, vagy blogjára téved, talán már elcsépelt közhelyként hallotta százszor is, hogy Magyarországról 22000 informatikus hiányzik, és hogy milyen jól fizető állásokat lehet szerezni, ha valaki kitanulja a szakmát. De mit is jelent pontosan ez a hiány? Nem csak azt, hogy a szoftvereket gyártó cégek "szoftvergyáros" pozícióiból van egyre több. Senkinek nem kell elmagyarázni, hogy a telefonokhoz bárki fejleszthet appokat. De arra…
Read More