Hogyan kell programozni?
Elgondolkodtál azon, hogy hogyan kell programozni? Amikor kívülről nézünk egy új tudományterületre, el sem tudjuk képzelni, milyen lehet annak, aki benne dolgozik, legfeljebb feltételezéseink vannak róla. Ez fokozottan igaz a programozókra. Tapasztalatom szerint még mindig él a fejekben egy tiszteletteljes távolságtartás azokkal szemben, akik programozónak vallják magukat. Még ha néhány mondatban igyekeznek is megfogalmazni, mivel foglalkoznak, csak elismerő bólogatás a válasz, még a legegyszerűbb feladatok esetén is. Bár sokat javult a helyzet az utóbbi években, még mindig kissé földönkívülinek tűnik a közvélemény szemében az, aki olyan csodák elkészítésére képes, mint mozgó weboldalak, mobil játékok, beszélő robotok és önjáró autók, stb. Külső szemlélőként olyanok a programozók, mint valamiféle digitális varázslók, akik életre keltenek gépeket, ezáltal az egész szakma megbecsülése kifejezetten nagy. Azoknak, akiknek nincs programozó ismerősük, nincs különbség a backend és frontend között, nincs különbség a Java és a JavaScript között. A „programozó”, mint fogalom egyben létezik a köznyelvben.
Mi az árnyoldala?
Van ennek a nagy általános népszerűségnek egy árnyoldala is. Mégpedig az, hogy elijeszti az érdeklődőket attól, hogy megpróbáljanak megtanulni programozni. Hiszen aki azt sem tudja, hogyan vágjon bele, fejben ködös égi magasságokig emeli azt a tudást, amire szüksége van ahhoz, hogy ebben elkezdjen dolgozni. Az ismeretlentől pedig félünk. Arról nem beszélve, ha valaki nem 15 éves, fiatalos lendülettel vág bele a programozásba, hanem 30-40 felett, karrierváltóként, akár családdal a háta mögött.
Mai bejegyzésünkben nem másra vállalkozunk, mint hogy megnézzük, mire is van szükség ahhoz, hogy valaki megtanuljon programozni és ezt hogyan csinálja. Rántsuk le a leplet a csodáról, tegyük emészthetővé és ezáltal kevésbé félelmetessé! Vágjunk is bele!
Hogyan kell programozni? Mai kérdéseink:
- Milyen gépre van szükséged?
- Ha nem beszélek angolul, mit tegyek?
- Milyen munkakörnyezetre van szükség?
- Milyen időbeosztásra van szükség?
- Hogyan kell programozni pontosan?
- Tényleg képes lehetek én is arra, hogy megtanuljak programozni?
Milyen gépre van szükséged?
Értelemszerűen a kiindulási pont legyen egy stabil, megbízható gép, amin szívesen dolgozol és tanulsz majd a jövőben.
András az alábbi számítógép konfigurációt ajánlja:
- Processzor: minél újabb generációs (nagy típusszámú) Intel Core i5
- Memória: legalább 4 GB, de inkább 8 GB RAM
- Háttértár: SSD
- Felbontás: Full HD (1980 x 1080)
Amivel nem árt még, ha előre készülsz:
- egy erre szánt, de legalábbis gyakran használt Google-fiók, amivel különböző oldalakra regisztrálsz majd
- Chrome böngésző, hogy biztosan menjen, aminek mennie kell
- egy kis kávé a programozói hangulathoz 🙂
+1 tipp: Angol nyelvtudás
Igen, ez nélkülözhetetlen a programozás elsajátításához. Ennek 2 fő oka van:
- tananyagok jelentős részét angol forrásból fogod beszerezni egy bizonyos szint után
- és maga a Java programnyelv is angol alapokon működik
Nélkülözhetetlen az angol tudás, ha komolyan gondolkozol programozói karrierben.
Ha nem beszélek angolul, mit tegyek?
Vegyél egy mély levegőt és még ma vágj bele! A kifogások eddig sem vittek előre, ezután sem fognak. Ha programozni akarsz, angolul KELL tudnod és kész. Amint ezt tényként elfogadod és nem fektetsz az ellenállásba több energiát, hanem a megoldásokat keresed, meg is fogod találni. (Igen, tapasztalatom.)
Tanulj! Nem úgy, mint az iskolában, hogy előveszed a könyvet és magolsz. Azzal a hozzáállással vágj bele, hogy értened KELL, ami a szakmádhoz szükséges. Nem kell felesleges nyelvtanfolyamokon a lakásberendezéseket mantráznod, és folyamatos befejezett jövő időről szóló teszteket töltögetned ahhoz, hogy programozóként tudj dolgozni. Amire tényleg szükséged van az néhány alapvető igeidő pontos ismerete (legalább egy jelen-múlt-jövő) és használata, valamint egy stabil szakmai szókincs felépítése. (Annyit azért megjegyeznék, hogy mire ide eljutsz, jó eséllyel lendületbe jössz és nem szakmai anyagokat, például filmeket is szívesen nézel majd eredeti nyelven, onnan pedig épül az általános szókincsed is.)
Mi a megoldás?
Mit tegyél hát? Mondjuk végy pár órát olyantól, aki hajlandó elengedni az iskolás berögződéseit és megtanítja neked a nyelvtan alapjait. Ezt érdemes magyarul tanulnod, főleg az elején. Aztán dolgozz! Tanulj programozni, írd és gyűjtsd a kifejezéseket, használd őket a mindennapi kommunikációd során és ragadni fog. Amire szükségünk van, meg fog maradni a memóriánkban, hiszen ez a biológiai túlélésünk alapja is. Nem felejtheted el azt, hogy hol az élelem, a biztonságos menedék és kiben bízhatsz, mert elvesznél. Ha az „élelemszerzéshez”, ebben az esetben a munkádhoz, szükséges egy adott eszköz- és szókészlet, el fogod sajátítani. Elszántság kérdése. Szóval felejtsd el azt, hogy te nem tudsz megtanulni angolul és nincs nyelvérzéked, és hasonlók. Engedd el és csináld! Még ma!
Milyen munkakörnyezetre van szükség?
A programozókról szóló hiedelmek szerint szeretik a kávét és az energiaitalt és egész nap a gép előtt ülnek. Te mit gondolsz, mire van szükséged a megfelelő munkához?
Ahhoz, hogy beleférjen a tanulás, akár egyetem, akár fő állás és család mellett is az életedbe, egyértelműen jó időmenedzsmentre és szükség esetén a produktivitásod javítására van szükséged. Kemény kérdésekkel szembesülhetsz, ha megnézed: mivel-mennyi időt töltesz egy nap?
Amikor megnézzük ügyfeleimmel coaching beszélgetésekben, hogy milyen az időbeosztásuk, gyakran felmerül a kérdés, hogy:
Miért van ennyi teendőd egy nap?
Biztosan a te feladatod azt elvégezni?
Mennyi valójában a te feladatköröd és mikor dolgozol azért, hogy másnak ne kelljen?
Tudsz nemet mondani?
Tegyük fel, hogy egészséges határokat tartasz, a saját feladataidat jól listázod és egy fenntartható időbeosztást sikerült felépítened, amiben helye van a családnak, barátoknak, munkának, kikapcsolódásnak, és a tanulásnak is.
Mi mást tehetsz még a produktivitásod javítása érdekében?
Programozói karrier építése esetén munkakörnyezeted alapvető részét képezi az asztalod és a géped, és annak környezete. Fontos tehát, hogy olyan helyet alakíts ki a magad számára, ami stílusában neked tetsző, kényelmes, komfortosan mozogsz benne, minden kézre áll. Elképesztően fontos, hogy tisztaság és megfelelő megvilágítás legyen, az egészséged megőrzése a megfelelő munkavégzésed alapja.
Az asztalod a várad, tehát ne engedd, akkor sem, ha otthonról dolgozol, hogy mások átrendezzék, pakolásszanak rajta, módosítsák a körülményeidet. Minden alkalommal, amikor leülsz, újra meg kell szoknod az ott található dolgokat, ez is időt és figyelmet vesz el. Sokkal könnyebben bootolsz te magad is, ha pont ugyanott és ugyanúgy tudod folytatni a munkád, ahogy azt egy korábbi alkalommal ott hagytad.
Visszatérve a fényekre: a szemed lesz az elsődleges eszközöd a munkád során, akár a tanulási szakaszban, akár már a konkrét fejlesztésnél jársz. Nagyon fontos a rendszeres szemészeti kontroll, a szemüveged ellenőrzése, a sárgás fények fehérre cserélése, a megfelelő monitor beállítások és természetes fény jelenléte is.
Mi a helyzet az üléssel?
Sokan szeretnek ölben dolgozni a kanapéról, vagy igen menő erkélyen dolgozni, esetleg egy kávézó teraszán. Ha így vagy eredményes, ne hallgass rám, dolgozz vagy tanulj így! A többség számára azonban segítséget nyújt a fegyelmezett, eredményes munkavégzéshez, ha a munkát nem csak az eszközökkel, de a helyszínnel is összekötik. Érdemes határt húznod a magánélet, a szórakozás és a munkád között, mert gyorsan ott találod magad, hogy ideges szülőként laptoppal az öledben morogsz a gyerekekre, mert lehúzták a zoknidat játékból, és már egy órája nem írtál le egy értelmes sort sem, a folytonos megzavarás miatt, de velük sem vagy igazán, mert épp dolgozni próbálnál. (Igen, szintén személyes tapasztalat.)
A munkát tehát, amikor csak teheted, térben és időben is válaszd el más egyéb tevékenységektől. Így nem szaladsz bele abba, hogy nem válaszolsz a párod kérdéseire, mert másra figyelsz, nem kezdesz Facebookon vagy YouTube-on (vagy 9gag-en 😉 ) nézelődni, amikor munkaidőd van, és nem írsz kódsorokat „mindjárt, mindjárt” ismételgetésével akkor, amikor épp randi estéd van. A siker egyik kulcseleme az, hogy azzal foglalkozz, amivel épp foglalkozol, ne minden mással!
Hogyan kell programozni? Jó időbeosztással!
Erre sincsenek alapigazságok, számtalan szempontot figyelembe kell venned a számodra ideális időbeosztás kialakításakor. Különösen akkor, amikor összefüggő időt szeretnél találni a napodban önfejlesztésre, tanulásra.
Vannak fix kötelezettségeink, melyek adott időt és jelenlétet igényelnek és nem változtathatók meg. Ezeket érdemes beírni előre a naptáradba, akár színkódokkal is, hogy lásd, hol vannak valójában azok az órák, amikkel te rendelkezel. (Az már megint csak egy coaching kérdés, hogy biztosan fix az, amit annak látsz?)
A naptár fennmaradó részében pedig szabadon tervezhetsz. Érdemes ezt mindig szem előtt tartanod, hogy tudd, épp hol tartasz. Praktikus nem tollal jegyzetelned, hogy könnyebben változtathass rajta, ha szükséges. Azt is írd fel, hogy ha nem sikerül tartani a napirendedet, akkor mi történt, és legközelebb mit tehetsz azért, hogy a hirtelen változtatást elkerüld. Ennek önismeret szempontjából is jelentősége lehet.
Tényleg vészhelyzet volt, amiért nem tartottad, amit előre elterveztél, vagy csak kézenfekvő kifogás érkezett, és te kaptál az alkalmon?
A tanulásra szánt időt nyugodt körülmények közé érdemes tenni, nem a munkahelyi ebédszünetre, vagy a reggeli rohanás előttre félálomban. Egyszerre 1,5 – 2 óránál többet tanulni nem érdemes. Ha mégis „tanulós napot” tartasz, akkor is tanácsos megszakítani a tanulást és mozgással, sétával, kocogással, esetleg egy nagy fürdést beiktatva pihenni. Sokkal eredményesebb leszel így.
Érdekel egy tuti tipp?
Ami nálam nagy áttörést hozott produktivitás terén, és talán neked is segítséget nyújthat, az a rendszeresség és a szokások egymáshoz kötése. Nem is annyira percre pontosan az időzítés szempontjából (ami pl. gyerekek mellett már inkább csak álom, mint valóság), hanem a sorrendiség tekintetében. Ha tehát megtanítod magad, hogy hazaérkezve, ahogy leveszed a kabátodat, elmész kezet mosni, úgy összekötheted a tanulást akár más tevékenységek végével is. Mondjuk vacsora után zuhanyzol, és ezt követően ülsz le tanulni. Minden nap. Ha csak 10 percre vagy akár 30 percre, akkor is. Kialakul egy olyan rutinod, amely segít neked minden nap beiktatnod a tanulást. Keresd meg a helyét és az előtte levő tevékenység végét, és kapcsold össze őket! Lendületet ad, és akkor is megteszed, amikor mondjuk nincs meg a kellő motivációd. Engedd, hogy robotpilóta üzemmódba kapcsolj, és már mész is az asztalodhoz tanulni, dolgozni. Mire észbe kapsz, már meg is tetted!
Hogyan kell programozni pontosan?
A programozás rengeteg vonásában hasonlít a természetes idegen nyelvtanuláshoz. Senki nem tud megtanítani téged beszélni, ahhoz neked kell megszólalnod. Rengeteget kell hibáznod, utána kell nézned a hibák javításának, kezedbe kell venned a sorsod ezen a téren, és tenned érte! Remek oktatóanyagokat, mentorokat és csoportokat találhatsz szerte online és offline is. De a lényeg benned van. Akármilyen tutorialt nézel és akármilyen könyvet is olvasol, neked kell erőt és energiát beletenned, minden nap, hogy eredményt érj el! Meg kell találnod a saját fogódzóidat, fel kell építened az elméleti hátteret, amivel aztán gyakorlati lépéseket fogsz megtenni. Eleinte rosszul. Rémes formában és minőségben. De ennek ez az egyetlen módja. Hogyan kell programozni? Nos, válassz egy célt, mit akarsz alkotni? Ehhez válassz egy programozási nyelvet, tedd fel a fejlesztő környezetet, és csináld! Ne gondolkodj sokat, lépd meg az első lépést még ma!
Ha a lépések megtételéhez segítségre van szükséged, anyagokat nálunk is találsz hozzá: Programozási alapfogalmak, ezenkívül a fejlesztő környezet telepítését is megtalálod lépésről -lépésre monitorképekkel a blogban! Elméleti információk, tesztes ismétlések várnak, de ha kérdeznél, megteheted az info@ak-akademia.hu címen is.
Tényleg képes lehetek én is arra, hogy megtanuljak programozni?
Tényleg szeretnél hatékonyan tanulni és később fejlesztőként eredményes munkád végezni? Tudni, hogy hogyan kell programozni?
Néhány „Tényleg”-gel kezdődő kérdésre itt kaphatsz választ: Hogyan tanuljunk programozni