Interjú Révész Andrással

Révész András

Révész András alapvégzettsége biológus, ökológia szakiránnyal. Szakmai pályafutását tájökológiával kezdte, azon belül is élőhely térképezéssel, amihez kötődik a térinformatika. Négy évig kutatás-fejlesztéssel foglalkozott az MTA Ökológiai és Botanikai Intézetében, majd rövid ideig a Földművelésügyi és Vidékfejlesztési Minisztériumban dolgozott, ahol a projektmunkák csökkenésével úgy döntött, hogy „most valami nagyon mást kell csinálni, mert az alternatívák személyesen és szakmailag sem voltak jók”. Angliába két ok miatt költözött az EU csatlakozás után: nyelvtanulás és szakmai fejlődés. Úgy tervezte, hogy miután anyagilag rendbe szedi magát, visszaköltözik Magyarországra. Angliában egy helyi hatóságnál helyezkedett el és térinformatikával foglalkozik 2008 óta. A térinformatikán belül feladataihoz tartozik a térképi adatbázis-kezelés, web-térképezés, továbbá bármi, amit el tud végezni: különböző adatformátumok közötti konvertálás, rendszerintegráció, adatelemzés, stb. Napi feladataihoz kötődően sok mindent automatizált, így felszabadult munkaidejében folyamatosan fejlődik, foglalkozik adatbázis-kezeléssel, dokumentumkezelő rendszerek optimalizálásával.

Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője – készítette 2019. július 7-én.

Révész András

K. S.: Hogyan kerestél munkát külföldön?

R. A.: Már külföldön élő ismerősöktől tudtam, hogy az álláskeresés nem gond: aki akar és tud dolgozni, az el tud helyezkedni a szakmájában is. Tettem, amit sokan mondtak: jártam az ügynökségeket, az álláskereső portálokat, a szóba jöhető munkahelyeket.

Két év többnyire betanított munkák után 2008-ban kaptam meg Halifaxban az első rendes(ebb) állást, ahol hat évig dolgoztam. Több helyre is pályáztam és egyszer csak írtak, hogy várnak interjúra. Ez egy szakmai állásinterjú volt, így a kezdeti izgalom után hamar feloldódtam és még jól is éreztem magam. Hárman felvételiztettek: két leendő kollégám és egy HR-es, de a HR-es nem volt tól beszédes, szinte kizárólag szakmai kérdésekről beszélgettünk. Halifax nagyszerű hely, elég sok természethez közeli terület van, ahol szerettem lenni.

A következő váltást nem terveztem, de éltem a lehetőséggel 2014-ben. Informálisan ismertem kollégákat a környező hatóságoktól és megtudtam, hogy Barnsley-ban keresnek térinformatikust. Egyrészt a több fizetéséért váltottam, másrészt így ismerőseim nagyobbik része közelebb került hozzám. Kellemesen érzem itt magamat, és a következő néhány évben nem is tervezem, hogy munkahelyet/lakóhelyet váltok.

K. S.: Hogyan fejlődött az angol nyelvtudásod?

R. A.: Az egyetem óta folyamatosan. Nem csak az informatikában alapvető az angol nyelvtudás. Rengeteg könyvtári szakirodalom a biológiához kötődően is kizárólag angol nyelvű – egyszerűen nem fordítják le, mert a célközönség kicsi. A szakmai cikkek többsége is angolul van. Követelmény volt, hogy ismerjük az aktuális nemzetközi szakirodalmat, továbbá eleve a diplomához szükséges a nyelvvizsga/nyelvtudás, így erre mindig is készültem. A minisztériumi munkámhoz is szükséges volt az angol nyelvű anyagok olvasása.

„Angliába kiváló szövegértési/olvasási/írási angol nyelvi készségekkel mentem ki. A szóbeli dolgok kezdetben gyengébben mentek.”

Ráadásul sokféle ügyet telefonon lehet intézni – például telefon társaságoknak nincs is személyes ügyfélszolgálata –, így szóbeli kommunikációra kényszerültem, egyben ennek fejlesztésére is. Az első rendes(ebb) állás előtt is dolgoztam, aktívan beszélgettem sokféle kollégámmal, így az említett interjúra már rendelkeztem biztos szóbeli nyelvtudással. Az informatikus kollégákkal rendszerint félszavakból is megértjük egymást. Ha az anyanyelvi tudást 100%-nak vesszük, akkor az enyém kb. 30%-osnak tekinthető.

K. S.: Voltak markáns különbségek a 2008-as és 2014-es szóbeli interjúid között?

R. A.: A körülmények azonosak voltak: mindkét esetben két leendő kollégám/főnököm és egy HR-es vett részt a szóbeli interjún. A helyi hatóságoknál eléggé formálisak a felvételi eljárások. 2008-ban kezdőként főként azt kellett prezentálnom, hogy Magyarországról mit hoztam. Akkor még voltak nyelvi nehézségeim, így elég gyakran körül kellett írnom, magyaráznom dolgokat. 2014-ben már valamennyire már ismertek és tudták, mire vagyok képes. Akkor és ott sokkal konkrétabb igények voltak már. Ez egyszerűbbnek bizonyult, mert tudtam, hogy hová megyek és mit várnak el tőlem, így könnyebb volt felkészülni.

K. S.: Szükségesek Angliában álláskeresés során az ajánlások, referenciák?

R. A.: Halifaxban és Barnsley-ban is két-két referenciát kértek. Az egyik referenciát általában az előző munkáltatótól kérik. A referenciákat többnyire csak a nyertes pályázónál ellenőrzik le, miután visszajelzett, hogy elfogadja az állást. Amikor Halifaxba jelentkeztem, az ügynökségen, örültek is, hogy jó helyre kerültem. A második referencia általában szabadon választható, akár szakmai, akár személyes is lehet. Mindig könnyen be tudtam ezeket szerezni.

„Angliában fontosak a referenciák és le is ellenőrzik azokat.”

Az ellenőrzés kétféleképpen történik. Az egyik része formális: számszerűsíthető, munkaviszonyhoz kötődő adatokból áll, például mennyit volt betegállományban munkaviszonya alatt a munkavállaló. A másik része inkább informális, és a soft skillekre vonatkozik.

K. S.: Milyen munkakörülmények és -szervezés jellemzi a munkádat?

R. A.: Megvan a szervezeti hierarchia, de még a Head of IT-val egy nagy légterű irodában vagyunk. Ha valaki újként kerül be a rendszerbe, akkor például rögtön nem derül ki, hogy az egyes területeknek ki a vezetője (azaz nincs dedikált külön irodája, ahol mindig megtalálható). Továbbá Hot Desking rendszerben működünk: nincs saját asztal, csak egy terület, ahol bármelyik szabad asztalhoz le lehet ülni dolgozni. Így sokkal kötetlenebb a kapcsolat a munkatársak és közvetlen vezetők között.

A teljesítmény az, amit a vezetés elvár. A munkaidőnk flexibilis. 7 és 19 óra között akkor járunk be, amikor csak akarunk. Az előírt óraszámnak meg kell lennie minden héten, de egyébként teljesen magunk osztjuk be az időnket. Sosem kaptam még olyan visszajelzést, hogy bármi gond lenne azzal, hogy mikor érek be dolgozni.

A versenyszférához viszonyítva a közigazgatásban – Angliában is – alacsonyabbak a bérek. Saját főnökömtől tudom, hogy a bérrel versenyezni nem tudnak és nem is akarnak. Ehelyett inkább más jellegű támogatásokra helyezik a hangsúlyt. Investing in People – azaz megkérdezik, hogy mire van szükségem a hatékony munkavégzéshez, hogyan szeretnék fejlődni és ehhez ők mit tudnak hozzátenni. Támogatják a munkavégzéshez szorosan nem kötődő hobbi projekteket. Adott a lehetőség az otthoni munkavégzésre is. Családos kollégák főként azért szeretnek helyi vagy központi hatóságnál dolgozni, mert munka- és szabadidejüket rugalmasabban be tudják osztani.

Révész András

K. S.: Van-e kötelezően előírt képzési, továbbképzési kötelezettséged?

R. A.: Formális követelmény ugyan nincsen, de elvárják a fejlődés iránti elkötelezettséget. Egy angol álláshirdetésben például sokszor előfordul, hogy a pozíció betöltéséhez megadott végzettség vagy adott idejű szakmai gyakorlat szükséges. Főleg arra kíváncsiak, hogy mit tud elvégezni az illető, mire tudják felhasználni (a versenyszférában nyilván még az is számít, hogy az illető mennyi pénzt hoz). Az igazából másodlagos, hogy mindez a tapasztalat honnan jött.

Jellemző egy Personal Development Framework (PDF) rendszer. Évente kétszer a közvetlen főnökkel való megbeszélés során szoktunk egy elég flexibilis tervet készíteni. Mi az, amit el szeretnék érni? Mi az, amire ehhez szükségem van (amiben ő segíteni tud)? Milyen vizsgákat szeretnék teljesíteni? Van egy oktatási keret, amely felhasználó például vizsgadíjak kifizetésére. Képzés esetén adható munkaidő kedvezmény is. A helyi hatóságok ezekkel az eszközökkel elég sikeresen képesek a munkaerő megtartására. A rendszer formalizált: egy online formanyomtatvány kitöltését jelenti. Ez többnyire önkéntes vállalásokat tartalmaz, de mindenképpen közös megegyezésen alapul. Ha valami nem jön össze (időre), akkor nincsenek retorziók és inkább a tanulságok levonása a lényeg. Nem kényszerekkel élnek, hanem sokkal inkább motiválnak.

Néhány kollégámat bumeráng embernek hívják. Korábban itt dolgoztak, elmentek, majd visszajöttek. Közben kipróbáltak mást. Egyébként kilépéskor mindig elmondják a munkavállalóknak, hogy szívesen visszafogadják őket, hiszen ha már korábban egyszer beilleszkedtek a rendszerbe, akkor jóval kevesebb ráfordítással képesek produktív munkavégzésre, mint egy újonc, akit be kell tanítani, hogy képes legyen az adott feladat elvégzésére, adott munkakör betöltésére.

K. S.: Minek köszönhető, hogy a helyi hatóságoknál átrendeződtek a csoportmunkával kapcsolatos elvárások?

R. A.: A 2008-as gazdasági világválságot megérezték az angol helyi hatóságok is. Ezek bevétele két részből tevődik össze: a helyi adókat kiegészítik a központi költségvetésből. Utóbbi jelentősen megcsappant, körülbelül a felére esett vissza. Emiatt a helyi hatóságoknál egyrészt jelentős létszámleépítés történt, másrészt megjelent egy nagyon erős vezetői szándék a folyamatok optimalizálására. Utóbbi jórészt folyamatok automatizálását, digitalizálását jelentette, valamint a személyes ügyintézést fokozatosan felváltja a telefonos és online ügyintézés. Mindez eléggé kreatív hozzáállást és munkavégzést igényel, főként a csapatmunka területén. Én főleg a BackOffice-ban dolgozom (többnyire adatokkal), de ha valamit meg kell valósítani, akkor együttműködünk a Frontend-del és a Web-designerekkel. Sosem volt gondom azzal, hogy unalmas a munka és nincs kedvem csinálni.

K. S.: A térinformatika feladata a klasszikus definíció szerint „a földrajzi helyhez kötött adatok számítógépes megjelenítése, tárolása és analízise”. Hogyan jelenik meg ez a szakterület a hétköznapokban? Hogyan találkoznak ezzel az emberek? Pl.: ügyintézés, web, mobil… Milyen változást/átrendeződést tapasztalsz, amióta ezzel foglalkozol?

R. A.: Az önkormányzat feladatköre elég széles. A mi felelősségünk az ingatlan nyilvántartás, építési engedélyezés, úthálózat egy része, bérlakások, szociális szolgáltatások, szemétszállítás, választási rendszer, meg még néhány. A feladatok ellátásához rengeteg térbeli adatra támaszkodunk.

Elsődleges térbeli adatot viszonylag keveset állítunk elő, viszont rengeteg alapadat áll rendelkezésünkre. Használjuk a világ egyik legfejlettebb kataszteri térképét, néhány évente friss 30 cm felbontású légifotót, közigazgatási térképeket, beleértve az irányítószám határokat (ez utóbbi elég részletes, a házszám, vagy név és az irányítószám egyértelműen azonosítja az épületet), továbbá rengeteg – bárki által ingyenesen – hozzáférhető állami adatot.

Egyik feladatunk mindazon térbeli adatok könnyen hozzáférhetően rendelkezésre bocsátása, ami bármelyik szervezeti egység munkájához szükséges. Egyrészt a minél hatékonyabb és gyorsabb ügyintézéshez, illetve döntéshez, például építési engedélyek minél gyorsabb elbírálásához. Másrészt ha valaki felhívja a Call Centre-t, elvárás és követelmény, hogy az 1. hívás során minél több minden elintéződjön. Például ha valaki bejelent egy közvilágítás hibát, akkor az ügyintéző lássa a térképet, hogy egyértelműen rögzítse, pontosan melyikről is van szó, ne kelljen később pontosítani. A térinformatika ebben a formában akkor működik jól, ha a lakosságnak ez fel sem tűnik.

Amivel találkozhatnak – és szeretnénk is, hogy találkozzanak –, azok az online szolgáltatások. Elvárás az emberek részéről kényelem, idő megtakarítás és kiszámíthatóság miatt is, de számunkra is előnyös, mert munkaidőt és egyéb költséget takarít meg, nem utolsó sorban jobban illeszthetők automatizált folyamatokba. Elég egyértelmű példa az úthibák, illetve az illegális szemétlerakás bejelentése, ahol térképen jelölhetik meg a helyszínt. Nem ennyire egyértelmű, de a háttérben térbeli lekérdezések zajlanak, amikor valaki a szemétszállításról kér információt.

K. S.: A térinformatikához kötődően milyen szoftverkörnyezetben dolgozol?

R. A.: A vektoros adatokat nagyrészt SQL Server clusterben tároljuk, raszteres adatoknál (légifotók) viszont maradt a fájl alapú tárolás. Megjelenítéshez és egyszerű elemzésekhez WebGIS rendszert használunk (StatMap).

Létezik még néhány Deskop GIS (MapInfo) és egyenlőre elkerülhetetlen a fájl alapú tárolástól teljesen megszabadulni, de törekszünk rá.

A különböző szervezeti egységekben sok helyen használnak még térinformatikát saját szoftverek moduljaként, pl.: építkezési engedélyeztetés (új épületek létesítés, illetve meglévő épületek átalakítása), fejlesztési tervek, védett területek (fák) nyilvántartása, országos úthálózat fenntartása.

Adatelemzésre ETL (Extract, Transform, Load) rendszert használunk (FME). Ez többnyire adat átalakítást és rendszerintegrációt takar.

Azokat a funkciókat, amiket a fenti három szoftverrel nem tudunk megvalósítani, nyílt forráskódú szoftverekkel valósítjuk meg, ilyenek például a Quantum GIS és a GeoServer.

K. S.: Adott verseny a közigazgatási szoftverek angol piacán?

R. A.: A helyi hatóságok nagyságrendileg 40-féle szoftvert használnak. Több cég foglalkozik ezen szoftverek fejlesztésével, szóval van verseny. Előfordul, hogy egy szoftverfejlesztő cégtől több szoftver is származik: például a lakcím- és választási nyilvántartások. A helyi hatóságok igyekeznek több szoftvert is ugyanattól a cégtől megvásárolni. Amikor szeretnénk lecserélni egy-egy szoftvert – mert például nehézkesen lehet benne hozzáférni az adatokat, esetleg nem támogatja, hogy saját adatbázisban tároljuk adatainkat – akkor erre adott a lehetőség. Az ingatlan nyilvántartás például a helyi hatóságok felelőssége. Megvannak a törvényi szabályok továbbá standard formátumok, amelyek a központi nyilvántartáshoz szükségesek. Ezeknek a követelményeknek megfelelően több cég is fejleszt rendszert, amivel ellátható a feladat és időnként elküldi a helyi adatokat a központi nyilvántartásba a standard formátumokon keresztül.

K. S.: Milyen egyéb szoftvereket használsz a munkád során például munkaidő nyilvántartásra, levelezésre, szervezésre, folyamat- és projektmenedzsmenthez?

R. A.: Az önkormányzat elég nagy Microsoft fogyasztó. Mindenkinek rendelkezésre áll a Microsoft Office, a levelezés Outlookban megy és aktívan használjuk a Skype for Businesst. A munkaidő nyilvántartása nem annyira komoly – külön szoftverünk sincs erre –, mindössze egy Excel fájlt töltünk ki. A dokumentum menedzsment – kvázi intranet, de inkább fájlszerver – SharePoint alapú és például egy új szoftver beszerzésének folyamata is ebben követhető. IT support szoftvert használunk, hiszen alapkövetelmény, ha bármit kérnek tőlünk, akkor annak ticketing rendszerben legyen nyoma. Van még SAP rendszerünk, ami főleg a HR-t szolgálja ki, de néhány case management (illegális szemétlerakás, úthibák) szolgáltatást is kezel.

K. S.: Milyen a fluktuáció az angol munkaerőpiacon?

R. A.: Teljesen más a munkaviszonyhoz való hozzáállás. Az, hogy az ember az aktív élete során karriert épít teljesen elfogadott.

„Sokkal mobilisabb az angol munkaerő a magyarnál és erre a munkáltatók számítanak és próbálnak felkészülni: például része a Contingency Plan, illetve Business Continuity Plan.”

K. S.: Ha a szakmai pályafutásod hossza 100 egység, akkor jelenlegi tapasztalataid alapján hol tartasz, és milyen mérföldköveket fogalmaznál meg ehhez kötődően?

R. A.: A labdát kicsit visszadobnám, mert amikor elindultam 2000-ben, akkor azt gondoltam, hogy biológus leszek, és ha akkor tartottam 10 egységnél, akkor ez most teljesen más irány. Reset. Desktop térinformatikával és műholdkép elemzéssel kezdtem. Indultam kb. 15-ről és jó térinformatikusként elértem volna a 100-at valamikor. Áttértem főként a szerver és web alapú rendszerekre. Snapshotként: az informatikában 40-et elértem és még sok mindent el szeretnék érni. 40 éves vagyok.

„Angliában általában 70 éves korukig dolgoznak az emberek és látom az ismerősökön, hogy élvezik a munkájukat.”

Ezek alapján a karrierem hosszát tekintve 30-40-nél járok, és nem lehet tudni, hogy 80-90-ig eljutok-e. Hiszen lehet, hogy újra szakterületet fogok váltani. Jönnek az új irányok: mesterséges intelligencia, Big Data. Az még nem látszik, hogy ezek az új technológiák mekkorát fognak kiharapni a térinformatikából. Elérhető a 100, sőt adott technológiától függően akár a 120 is.

K. S.: Hogyan működsz csoportban? Milyen módszereitek vannak?

R. A.: Eddig ketten dolgoztunk szorosabban együtt. Mindkettőnket térinformatikára vettek fel, de sok más dologgal is foglalkozunk. Én inkább a szakmai vonalat képviselem, míg a kollégám inkább a projektmenedzsmentet viszi és a többnyire ő tartja a kapcsolatot a többi csoport/osztály illetékeseivel. Az egymás közötti munkakapcsolatunk főleg informatív, nem igazán formális. Egyszerűen megbeszéljük egymás között, hogy ki és mit csinál.

A „vállalati kultúrára” az Agile módszer a jellemző. Gyakran előfordul, hogy ténylegesen végignézzük a kollégákat, hogy ki, mit és hogyan csinál. Ha ezután megfogalmazza, hogy mit szeretne másképpen, akkor azt mi lefordítjuk technológiai specifikációvá, majd igyekszünk megvalósítani.

„Szeretnénk megérteni, hogy ki mit csinál. Mindannyiunk megközelítése az, hogy az informatika eszköz. Nem az informatika a helyi hatóság, hanem a helyi hatóságnak vannak feladatai és a kérdés az, hogyan tudunk mi ehhez hozzájárulni.”

Próbálunk minél jobban megfelelni már az első körben, de szükség esetén jönnek az iterációk. Ha már dolgozunk valamivel, akkor jó, ha azt használják is, hiszen így hatékony a munkánk és persze csak így van értelme. Informatikával kiváltható feladatok esetén nagyon megkönnyítjük a kollégák munkáját.

Révész András

K. S.: Elképzelhető, hogy néhány év múlva vezető leszel?

R. A.: Szakmailag igyekszem fejlődni és a tudásommal másokat lenyűgözni. Kevésbé vannak vezetői ambícióim. Egy konkrét csapat vezetése helyett jobban el tudom képzelni azt, hogy egy-egy feladat/projekt megoldását koordinálom. Minimális vezetői készségeket elvárnak. Eddig kerültem ezeket a szituációkat. A vezetői skilljeim megléte/ismerete a csapatnak is és egyébként személy szerint nekem is fontos lehet. A legutóbbi PDF-ben most vezetői skillek fejlesztésére is vállalást tettem.

K. S.: Hogyan látod a soft skilljeid fejlődését, mióta külföldön dolgozol?

R. A.: Öt dolgot emelnék ki:

  • A problémamegoldó képességem mindenképpen javult. A kommunikációs készségem is nőtt, de azt tudni kell, hogy az angolok nagyon türelmesek, ami megkönnyítette a helyzetemet.
  • A nyelvi készségeim nem annyira fejlődnek, mert az IT-ban félszavakból is értjük egymást. Említettem a Skype for Businesst, ahol a chat ablakban rövid és tömör üzenet, képernyőkép, válasz formájában meg is valósul a tényleges kommunikáció. Sok magyarral tartom a kapcsolatot. A munkán kívül kb. fele-fele arányban beszélek angolul illetve magyarul.
  • A vezetői készségek tekintetében – ahogy már említettem – mostanában próbálok kilépni a komfortzónámból.
  • Az időmenedzsmentet tekintve nem tapasztalok magamon változást, bár hasznos, hogy saját magam priorizálhatom a feladataimat.
  • A „mások gondolatainak átlátása”-ként megfogalmazható skilljeim jelentősen fejlődtek, és erre nagy szükségem is van, hiszen így – támogató informatikusként – jobban meg tudom könnyíteni mások munkáját. Ezt minél jobban tenni, igazi belső kényszer számomra.

K. S.: Mi a legfontosabb néhány olyan hasznos tanácsod, amit érdemes megfogadnia annak, aki most – vagy rövid időn belül – úgy dönt, hogy külföldre (akár Angliába vagy máshová) költözik?

R. A.: Fontossági sorrendben ezeket említeném:

  1. Járjon utána, hogy hová megy! Például hely- és emberismeret egyaránt. Nézzen szét online, olvasson blogokat! Legyen egy előzetes benyomása arról, hogyan gondolkodnak ott az emberek!
  2. Döntse el, hogy mennyi időt szán a folyamatra! Nagyon nem mindegy, hogy ez két hónap vagy akár egy év. Készüljön fel arra, hogy az átmeneti időszakban meg tudjon ott élni! Tartalék és türelem. Kell B terv is: például tudnia kell, milyen egyéb munkákat hajlandó vállalni, ha pénzre lesz szüksége.
  3. Socializing, azaz kapcsolatokat kell teremteni! Nem csak szakmai, hanem egyéb területeken is. Külföldön sok mindent másképpen kell csinálni, másképpen szerveződik az élet és a helyi tudás, tapasztalat adott esetben nagy segítséget jelenthet. Triviális példák: hol vásárolj be, a közelgő ünnep miatt előre vásárolj be…
  4. Kell kitartás és némi konokság: „igenis meg akarom csinálni”! Enélkül a mentalitás nélkül sokan elvéreznek.
  5. Az előzőekben is benne van, de külön kiemelném: alapvetően befogadónak, nyitottnak kell lenni! A nyitottság alatt egyrészt toleranciát értek, másrészt a kíváncsiságot. Tudni fogják, hogy magyarok vagyunk. A külföldiek akármennyire is az embert nézik, azért az intuíciók és benyomások jelen vannak. Fontos, hogy külföldön egyfajta nagykövetként képviseljük hazánkat, hiszen külföldön mi vendégek vagyunk. Erről sokan elfeledkeznek.

K. S.: Mi az aktuális hobbi projekted és hogyan kapcsolódik a programozáshoz?

R. A.: Nem esik messze az alma a fájától: egy környezeti kibocsátás csökkentő projektet találtam ki. Az épületekben számos tárgyaló van, amiket foglalás ellenében használhatunk. Az aznapi foglalások minden tárgyalónál egy A4-es papíron láthatók. Ez elég sok papírral jár, tárgyalónkét átlag 2 csomag/év és van majd 100 tárgyaló. Nem beszélve arról, hogy a papírokat minden nap nyomtatni és cserélni kell.

A projektem lényege, hogy a papírtartókat eInk kijelzőkre cseréljük amiket távolról, a foglalási rendszer alapján lehet frissíteni. Ezzel mind a papírt, mind a nyomtatást, mind pedig a cserével járó munkaidőt megtakarítjuk. További előnye, hogy a kijelző gyakrabban, jelenleg fél óránként frissíthető, szemben a 24 órás papír cserével.

Az eInk kijelző (ilyenek vannak az elektronikus könyv olvasókban) csak akkor fogyaszt energiát, amikor frissül, akkor is nagyon keveset. A kijelző frissítését egy szintén alacsony energiafogyasztású (ESP32 alapú) mikrokontroller végzi, ezért az egész hardver hónapokig üzemeltethető elemről.

A kijelzővel szemben követelmény, hogy minimális karbantartást igényeljen és azt is minél egyszerűbben. Kollégám olyan burkolat tervezésén dolgozik, amiben könnyű elemet cserélni.

A teszt kijelző frissítése egyenlőre egy egyszerű fél óránkénti frissítés. A kijelzőre küldendő kép előállítását és web tárhelyre feltöltését alapvetően a már korábban említett ETL rendszerben fejlesztettem. A háttérben azonban meg kellett oldani néhány dolgot:

  • A tárgyaló foglalását kezelő rendszernek nincs nyilvános API-ja. Szerencsére adatbázis alapú a nyilvántartás, amihez van hozzáférésünk. A dokumentáció hiányának ellenére az adatbázist nem volt nehéz kiismerni, ezek után a szükséges adatok kinyerése egy SQL query felépítése. Az ETL rendszerben lehetséges SQL lekérdezés az adatbázisból.
  • A kijelző adott felbontású (800*480 px). A tartalom megtervezése és generálására legkézenfekvőbb megoldás a HTML+CSS, annál is inkább, mert tervezésben támaszkodhatok a Web-designer kollégákra. Miután megvan a HTML sablon, a tartalmat az ETL már bele tudja helyezni.
  • Miután az ETL Python kódot is tud futtatni, kódból meg lehet hívni egy böngészőt és generáltani vele HTML fájlt, majd a kész dokumentum bármelyik elemét el lehet érni, például egy canvas-t amire JavaScript segítségével rá lehet helyezni a kívánt dokumentumot.
  • Végül az eInk kijelzőre a képet egy speciális formátumban lehet feltölteni. A canvas képet szintén Python kód konvertálja a kijelző formátumára, ami azután felkerül a webtárhelyre.
  • Végül a kijelző mikrokontrollerének csak le kell töltenie a kész képet és feltölteni a kijelzőre.

Természetesen újabb igények mindig jönnek. Legutóbbi például, ha bármely résztvevő megérkezik, akkor a belépőkártyájával ezt jelezhesse és ez kerüljön rögzítésre is. Probléma ugyanis, hogy elég sokszor nem használják a lefoglalt tárgyalót, amiről egyelőre panasz van, de számok nincsenek. Ez könnyen megvalósítható, mert a kijelzőn keresztül is működik az NFC érzékelés, így most ezen dolgozom.

K. S.: Milyen gyakran látogatsz haza Magyarországra?

R. A.: Az utóbbi időben beállt, hogy évente háromszor vagy négyszer. Karácsonyra mindig, ezenkívül egyszer tavasszal és egyszer ősszel. Nyáron nem szeretek hazamenni, mert akkor a klíma itt jobb számomra. Ritka családi/baráti események miatt általában előfordul további egy látogatás is.

K. S.: Nagy világutazó vagy. Miért vagy ennyire mobilis?

R. A.: Mindig is élveztem az utazást, ha valahova el lehetett menni. Gyerekkoromban rengeteget kirándultam belföldön és ahogy lehetséges volt, családdal majd minden környező országba eljutottunk nyaralások alkalmával. Testvéremmel még mindig találkozunk évente „Valahol Európában”.

Miután itt sikerült berendezkednem, a lehetőségek nagyok kitágultak. Többször jártam Kínában. Ez annyival kezdődött, hogy láttam egy utazási iroda reklámján, hogy mennyibe kerülne egy 2 hetes kínai utazás, a következő sarkon pedig a repülőjegy árakat. Ismerősök elbeszéléseivel összevetve felmerült bennem, hogy azért az utazási irodánál jóval olcsóbban ki lehet ezt hozni. Gondoltam, utánajárok. Az utánajárásnak az lett az eredménye, hogy ha már fele annyiból kijön, meg már majdnem mindennek utánanéztem, akkor most miért ne menjek is el. Ez történt 2011-ben, de ahányszor Kínában voltam, mindig úgy jöttem el, hogy vissza kellene menni, mert ez is kimaradt, az is kimaradt. Nem beszélve arról, hogy a nagysebességű vasúthálózattal sok olyan helyre el lehet jutni, amiről korábban csak álmodtak a nagyon Kína elhivatottak is.

A mobilitásnak úgy érzem, egyre nagyobb szerepe lesz a munkavállalásban is. A helyzet mindenhol egyre bizonytalanabb, most már sok minden elképzelhető. Alapvetően nem tartok attól, hogy itt forró lenne a talaj a lábam alatt, de néhány éve például még senki sem gondolt arra, hogy Anglia kiléphet az EU-ból. Ugyanígy az amerikai választások eredménye is sokakat meglepett.

„Jobb, ha az ember felkészült arra, hogy mobilis legyen.”

Hosszabb távon Európában gondolkodom, de ha adódna egy rövidebb (pl.: félévre) lehetőség, akkor Kínába, Kanadába, Malajziába, Japánba és még néhány helyre is szívesen mennék. Természetesen barátaimhoz is szívesen csatlakozom, mint például a Céline Dion koncerthez kötött kirándulás Japánba.

K. S.: Mik a jelen és szerinted mik lesznek a jövő sikerszakmái?

R. A.: A jövőre való becsléssel nagyon óvatosan fogalmaznék. Volt ugye rengeteg jóslat, ami nem jött be, ezekről rendszeresen vannak hírek, mémek. Másrészt eredeti szakmámból kiindulva, a géntechnológia és a molekuláris biológia is hozott kisebb áttöréseket – akkorát, amekkorát vártak tőle. Hasonlóan a nanotechnológia is csak minimálisan van jelen a mindennapi életben.

Adatot gyűjteni egyre olcsóbb, így véleményem szerint az átrendeződést az adatelemzés és információnyerés fogja jelenteni középtávon. Nem tartok tőle, hogy a szakmák jó részét átveszi a robotizáció és az MI, viszont azok a szakemberek, akik szakmájukban fel tudják használni a Big Data és az MI lehetőséget, jóval keresettebbek lesznek, mint a szakmát csak hagyományosan megközelítők. Például az a szigeteléssel foglalkozó kereskedő/elemző cég, aki távérzékelt adatokból meg tudja állapítani, hogy egy adott ház szigetelésében hol van a hiba és így csak azon a részen kijavítva olcsóbb ajánlatot tud adni, mint aki a fél tetőt újra szigetelné, jóval keresettebb lesz, mint aki erre nem képes.

K. S.: Van kedvenc IT-s idézeted, mémed?

R. A.: Nem IT idézet – terepi ökológusok között forog közszájon –, de IT-ben is tartom magam ehhez:

„Járt utat járatlanra ha csak lehet cserélj fel, hogy más oldalról is lásd a dolgokat!”


Blog bejegyzéseink IT karrier témakörben

Bobály Gábor

Interjú Bobály Gáborral

Bobály Gábor logisztikával foglalkozott korábban tíz évig, különböző munkahelyeken, különböző munkaköröket betöltve. Három éve tudatosan közelít az IT felé. Sikeresen elvégezte az alapozó Java SE szoftverfejlesztő, majd ezt követően a ...
Révész András

Interjú Révész Andrással

Révész András alapvégzettsége biológus, ökológia szakiránnyal. Szakmai pályafutását tájökológiával kezdte, azon belül is élőhely térképezéssel, amihez kötődik a térinformatika. Négy évig kutatás-fejlesztéssel foglalkozott az MTA Ökológiai és Botanikai Intézetében, majd ...
Schmidt Attila

Interjú Schmidt Attilával

Schmidt Attila három éves szoftverfejlesztői gyakorlattal (főként Android platformhoz kötődően) és két éves szoftvertesztelői tapasztalattal rendelkező mérnök-informatikus. Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője ...
Takács Roland

Interjú Takács Rolanddal

Takács Roland egyéves automatizálási teszt mérnöki és ötéves professzionális adatbázis-kezelés (MSSQL, Oracle) tapasztalattal rendelkező mérnök-informatikus. Jól érzi magát multikulturális környezetben. 2017 nyara óta külföldön él és dolgozik. 2018 őszétől PL ...
Lovas Bertalan

Interjú Lovas Bertalannal

Lovas Bertalan 22 éves pályakezdő szoftverfejlesztő. A kütyük mindig érdekelték. Hivatásként és hobbiként is gondol a programozásra. Sportos, korábban dzsúdózott, tornázott és a műugrást is kipróbálta. Korábban részt vett a ...

Interjú Görög Ibolyával

Görög Ibolya protokollszakértőt mindenki ismeri, bemutatni nem szükséges. De mégis illik, legalább röviden: 1987-től 1999-ig a Miniszterelnöki Hivatal protokollosa, majd protokollfőnöke volt, illetve 1999-től felnőttképzésben oktat. Érdeklődési körébe tartoznak: viselkedéstörténet, ...
Nádai Gábor

Interjú Nádai Gáborral

„Nádai Gábor vagyok, de sokan leginkább Mefiként ismernek, a legtöbb felületen a @mefiblogger nicknév alatt vagyok elérhető. Eredetileg mérnökinformatikusként végeztem, a kétezres évek közepén a fősuli mellett saját vállalkozásba kezdtünk ...
Szűcs Tibor

Interjú Szűcs Tiborral

Szűcs Tibor mérnök-informatikus. Jelenleg a Corvinus Egyetem Koordinációs Irodáján dolgozik órarendszerkesztőként. Ez a feladat a létesítménygazdálkodáshoz kötődik és ő osztja be – sok-sok szempont alapján – az előadásokat, szemináriumokat, számítógépes ...
Markovics Győző

Interjú Markovics Győzővel

Markovics Győző nem­zet­kö­zi kap­cso­la­tok sza­kos köz­gaz­dász, va­la­mint po­li­to­ló­gi­át is ta­nult a Bu­da­pes­ti Cor­vi­nus Egye­te­men. Az egye­tem­től fő­ként időt ka­pott – fel­nő­ni a kép­zés alatt. Gya­kor­la­ti is­me­re­te­it min­dig mun­ká­val sze­rez­te. Csa­lá­di ...

Kutatók éjszakája 2019

Kutatók éjszakája logó

Kutatók éjszakája logóA Kutatók éjszakája nemzetközi rendezvénysorozat 2005-ben indult. Magyarország 2006-ban csatlakozott. Azóta évről-évre egyre több intézmény nyitja meg hazánkban kapuit, szervez érdekes programokat, sok-sok településen, több száz helyszínen, több ezer eseményt meghirdetve sok tízezer érdeklődő/résztvevő látogatónak biztosít tartalmas estét.

Bár a kezdeményezés elsősorban a kutatói pálya népszerűsítését szolgálja, ezért leginkább a tizen- és huszonévesekre számít, az események vonzók és elég érdekesek ahhoz, hogy a kisgyerekektől a legidősebbekig mindenki megtalálja a számára izgalmas programokat. Korábban nagyobb felsőoktatási intézmények és kutatóintézetek szerepeltek döntően, de az utóbbi néhány évben egyre több kisebb intézmény, tehetséggondozással foglalkozó középiskola, cég, egyesület is csatlakozott a rendezvényhez. A Kutatók éjszakája rendezvény minden meghirdetett programja ingyenes.

Rendezvényünk plakátja

Kutatók éjszakája 2019 plakát

 

Az it-tanfolyam.hu 2019-ben sem marad ki a sorból. (2018-ban is szerveztünk programokat.) Meghirdettünk öt programot a kutatokejszakaja.hu weblapon. Az eseményekre regisztrálni kell a weblapon, ami talán szervezőként ránk keresve bizonyul legegyszerűbbnek. A regisztrációs időszak szeptember 14-26-ig tart és a programjainkra szeptember 27-én 17:40-20:50 óráig kerül sor.

Bízunk abban, hogy idei programjaink is népszerűek lesznek, sok-sok kérdés is elhangzik és kellemes hangulatú szakmai párbeszéd alakul ki.

Az előadások prezentációit tanfolyamaink hallgatói számára – a témához kapcsolódó témakörökhöz, ILIAS-ra feltöltve – tesszük elérhetővé.

17:40-18:10 – Milyen eséllyel és hány találatos szelvénnyel nyerhetünk, ha sok lottószelvénnyel fogadunk?
Véletlenszám-generátorral lottószelvényeket állítunk elő. Különbözőeket. Sokat: ezret, tízezret, százezret. Azután szimulálunk egy lottósorsolást. Megnézzük az eredményeket: hány darab két-, három-, négy- és telitalálatos szelvényt kaptunk. Átgondoljuk, hogy milyen eltérések adód(ná)nak ötös-, hatos- és heteslottó esetén. Közösen áttekintjük a Java nyelven implementált szoftver lépéseit és testre szabásának lehetőségeit. A program a Java SE szoftverfejlesztő tanfolyamunk tematikájához kapcsolódik.

18:20-18:50 – Tervezzünk hálózatos programokat! – Denevérek a barlangban
Adott a szerver és kliensek. Előbbi a barlang, utóbbiak a denevérek. Átgondoljuk, hogyan kommunikálnak egymással és ennek milyen elvi és gyakorlati megvalósítási lehetőségei adódnak. Ismertetjük a Java RMI technológiáját. Mit érdemes megmutatni a két program működése közben? Közösen áttekintjük az osztálydiagramot és a Java forráskódokat. Ötletelünk és megfogalmazunk sok-sok ötletet a továbbfejlesztésre. A program a Java EE szoftverfejlesztő tanfolyamunk tematikájához kapcsolódik.

19:00-19:30 – Jelenítsük meg webes térképeken Céline Dion koncertturnéjának helyszíneit!
A híres énekesnő idén szeptemberben világ körüli turnéba kezd (Courage World Tour) és ennek állomásait kb. fél évre előre meghirdették már áprilisban. Ismertetünk egy esettanulmányt. Ez egy hálózatos Java projekt, amely webről összegyűjtött adatok alapján, többféle Google Charts objektumot állít elő. A termék JavaScript-re épülő weboldalak sokasága, amely tipikus felhasználói igényeket/követelményeket kielégíthet. A megvalósítás kivételkezelést alkalmaz, HTML és JSON tartalmat olvas és generál, valamint elvégzi/elvégezteti az adatok térképen való megjelenítéséhez szükséges geokódolást. Az előadás ismerteti a specifikáció és a tervezés lépéseit, az implementációt, a tesztelést, valamint továbbfejlesztési javaslatokat is ad.
A program a Java EE szoftverfejlesztő tanfolyamunk tematikájához kapcsolódik.

19:40-20:10 – Írjunk hatékony adatbázis-lekérdezéseket!
Az Oracle HR sémában, először tipikus, hétköznapi szavakkal megfogalmazunk néhány lekérdezést, majd SQL nyelven megvalósítjuk és elemezzük, hogy helyesek-e, hatékonyak-e, mit adnak vissza. Szükség esetén optimalizáljuk, testre szabjuk ezeket. Kategóriák: egyszerű, összetett, aggregáló, soktáblás, hierarchikus/rekurzív lekérdezések. Ha lehet, grafikusan is megjelenítjük a lekérdezések eredményeit Java swing felületen, beépített JTable és JTree komponensekkel, illetve JFreeChart grafikonnal is. A Java adatbázis-kezelő tanfolyamunk tematikájához kötődik a program.

20:20-20:50 – Gondolkodjunk logikusan!
Az előadás során áttekintjük az intelligencia, a kreatív problémamegoldó és logikus gondolkodás összefüggéseit és izgalmas feladatokból válogatva közösen megoldunk néhány fejtörő feladatot.

Programozási nyelvek népszerűsége

programming-language-java-logo

programming-language-java-logoIgen érdekli a programozást most tanulni kezdőket, a magukat átképzőket és a cégeket is, hogy aktuálisan melyek a legkurrensebb programozási nyelvek, illetve melyeket használják rendszereik fejlesztéséhez.

Az alábbiakban felhasználási területet és egyéb szempontokat figyelembe véve tekintjük át a programozási nyelvek népszerűségének mérését, illetve azok között azt, hogy a Java jelenleg hol helyezkedik el, hogyan változott az elmúlt néhány évben népszerűsége. Mindez a kezdő programozóknak iránymutatás, a haladóknak megerősítés lehet. Láthatják a Java használatának trendjét, és hogy „jó nyelvre tettek”, hosszú távon is megtérül befektetésük magas szintű elsajátításába. A blogbejegyzés végén napjainkban a webprogramozáshoz használt legkedveltebb nyelveket tekintjük át és a profi webfejlesztővé válás javasolt hét lépését.

Tartalom

A programozási nyelvek iránti érdeklődés

A Google szerint a legkeresettebb programozási nyelvekre angolul keresve a találatok száma 2019 augusztusának közepén – amikor a többség nyaral és lassan a fű sem nő –, az alábbi volt:

  • programming languages toplist: 586 * 103;
  • top programming languages: 159 * 106.

A Google Trends segítségével azt is vizualizálhatjuk, hogy a Föld és Magyarország mely részein kiugróan magas például a „programming” szövegre keresés, illetve hogy ahhoz milyen kapcsolódó témakörökre keresések kiugróak. Például: https://trends.google.com/trends/explore?q=programming vagy https://trends.google.hu/trends/explore?geo=HU&q=programming. A témakörök között világviszonylatban a nyelvek közül 4-5. helyen megjelent a C, illetve a Python. Magyarországon 5. helyen áll a Kotlin.

google-trends

A „programming” kifejezésre világszerte (balra) és Magyarországon (jobbra),
az elmúlt egy évben, minden kategóriában,
internetes keresővel végzett keresések a Google Trends szerint
(2019. augusztus 18.)

A legszélesebb körben használt programozási nyelvek a legfelkapottabbak a kezdő programozók körében, hiszen nagy az ezeket ismerők iránti kereslet. De nem egyszerű meghatározni, hogy mely programozási nyelveket használják a legszélesebb körben, illetve a nyelvek közötti választás attól is függ, hogy milyen felhasználási terület vagy egyéb szempont szerint választanak a megbízók, mit igényel fejlesztési projektünk.

Felhasználási területüket nézve a nyelveknek, futnak ma is vállalati adatközpontokban, nagygépeken 30-40 éve Cobolban írt banki rendszerek. A Fortran használata erős a számítástechnikában és a mérnöki munkában. C-t érdemes használni beágyazott alkalmazások és operációs rendszerek írásához. És vannak programozási nyelvek, amelyek sokféle területen használhatók. További szempont lehet a programozási nyelvek elterjedtségének vizsgálatára a befektetendő programozói óra, szükséges kódsor, CPU-felhasználási igény stb.

A programozási nyelvek jellemzői és a közülük való választás

A programozási nyelvet, vagyis olyan jelölésrendszert, amely segít az algoritmusként azonosított programok megírásában, már a számítógépek feltalálása előtt is alkottak, azóta pedig több ezer született, illetve folyamatosan hoznak létre újakat.

A nyelvek több szempont szerint csoportosíthatók, például általános célú és specifikus nyelvek; számítási modell szerinti (Neumann-elvű, automata elvű, funkcionális, logikai) nyelvek; alacsony és magas szintű nyelvek. A különböző csoportokon, a különböző célokra írt nyelvek között is eltérő tulajdonságokkal és erősségekkel rendelkeznek a nyelvek. Például batch nyelv helyett nem fogunk XML-alapút választani, gépközeli programozáshoz sem objektumorientáltat, vagy szóelemző nyelv helyett szkriptkezelőt.

A mai hardver-/szoftverfejlesztők lényegesen több programozási nyelvvel dolgoznak, mint elődeik. Az informatikai cégek is számos nyelvet alkalmaznak, hogy a különféle típusú alkalmazásaikat elkészíthessék. A választható nyelvek sokfélesége miatt esetenként nem kis feladat megtalálniuk a megfelelő nyelveket ismerő programozókat.

A programozási nyelvek jellemzőire tulajdonságaikkal hivatkozhatunk, amelyek közül a legfontosabb három az absztrakciók, a funkció és cél, valamint a kifejezőerő [forrás: Martin, 2015].

  • Absztrakciók. A programozási nyelvek rendelkeznek szabályokkal – például az adatszerkezetek megadásához/jelöléséhez, a parancsok végrehajtásához –, amelyeket absztrakcióknak nevezünk. Az absztrakció elve bizonyos esetekben az absztrakciók felhasználására adott ajánlásokból származik.
  • Funkció és cél. A programozási nyelv teljes meghatározásába beleértjük azt a dokumentációt vagy hardveregységet is, amelyet az adott nyelvre optimalizáltak. Ez is oka annak, hogy a programozási nyelvek eltérnek az emberi interakció nyelveitől.
  • Kifejező erő. A nyelveket többnyire az általuk kifejezhető számítások alapján osztályozzák.

A programozási nyelvek változatossága miatt a fejlesztőknek nehézséget okozhat a használandó(k) kiválasztása. Az alábbiakban a választást segítő tényezőket tekintjük át: célplatform, nyelvtartomány-egyezés, hatékonyság, rugalmasság és teljesítmény, könyvtárak elérhetősége, projekt mérete, kifejezőképesség és gyártási idő, eszköztámogatás [forrás: Martin, 2015].

  • Célplatform. Először is azt kell meghatározni, hogy milyen PC-s és/vagy mobilplatformon, beágyazott rendszerben stb. kell futnia a készítendő programnak. Ha változatos platformokon, akkor fordítókat, interpretereket is kell futtatni.
  • Nyelvtartomány-egyezés. A nyelvet a meglévő problématartomány alapján kell kiválasztani. Ehhez megvizsgálhatjuk azt a nyelvet, amelyet az adott szakterületen, iparágban mások használnak, vagy megpróbálhatunk a problémánkat megoldandó kódot is keresni.
  • Hatékonyság. Hogy a nyelvi platform gyors legyen, a nyelvvel együtt futó compilernek is hatékonynak kell lennie.
  • Rugalmasság és teljesítmény. A választott nyelvnek elég rugalmasnak kell lennie további programok vagy funkciók implementálásához. Ezen kívül általános teljesítményének meg kell felelnie igényeinknek.
  • Könyvtárak elérhetősége. A programozási nyelvnek rendelkeznie kell olyan könyvtárakkal, amelyek meg tudják oldani például a webfejlesztéshez kiválasztott nyelvvel kapcsolatos összes problémánkat.
  • Projekt mérete. Olyan nyelvet kell választani, amely támogat a kis vagy nagy projektünk magvalósításában.
  • Kifejezőképesség és gyártási idő. Kifejező nyelvet válasszunk, és a programok/kódok elkészítéséhez szükséges idő ne érintsen hátrányosan.
  • Eszköztámogatás. Eszközorientált nyelvet válasszunk, amely segít a szerkesztésben, vezérlésben, illetve a munkában.

A következőkben a felhasználási területtől független és egyéb szempontokat nem figyelembe véve tekintjük át a programozási nyelvek népszerűségének mérését, illetve azok között azt, hogy a Java jelenleg hol helyezkedik el, hogyan változott az elmúlt években népszerűsége. Mindez a kezdő programozóknak iránymutatás, a haladóknak megerősítés lehet. Láthatják a Java használatának trendjét, és hogy „jó nyelvre tettek”, hosszú távon is megtérül befektetésük magas szintű elsajátításába.

A programozási nyelvek népszerűségének mérése

A programozási nyelvek népszerűségének mérésére több, más-más szempont szerinti (elfogódottságú) módszert javasoltak. Ezek közül rangsoraik készítéséhez a https://en.wikipedia.org/wiki/Measuring_programming_language_popularity forrásaik megjelölésével az alábbi módszereket gyűjtötte össze az egyes programozási nyelvek esetén:

  • nevükre keresés internetes keresőmotorral;
  • internetes keresésekben említésük (például Google Trends);
  • nevüket tartalmazó álláshirdetések száma;
  • tanító/bemutató eladott könyvek száma;
  • rajtuk írt kódsorok számának becslése – alábecsülheti a nyilvános keresésekkel ritkán talált nyelveket;
  • a felhasználó projektek száma a SourceForge-on és a GitHubon;
  • az egyes programozási nyelv Usenet hírcsoportjaiban a hozzászólások száma;
  • az Open Hubon nyílt forrású projektekben előforduló vagy módosított forrássoraiknak a száma;
  • a bootcamp-ek eladott tanfolyamainak száma;
  • képzésekre a világon beiratkozottak száma;
  • hozzájuk megjelenő videók száma a YouTube-on;
  • hozzászólásaik száma a Redditen vagy a Stack Overflow-n.

Ezek mellett gyakran találunk az interneten például blogbejegyzéseket, amelyeket programozás-szakmabeliek készítenek saját tapasztalataik és véleményeik alapján.

A TIOBE és a PYPL programozási nyelvek ranglistája

A Google szerint 2019 augusztusának közepén a széles körben hivatkozott két ranglistára keresve az alábbi számú találat volt:

  • TIOBE programming languages: 157 * 103;
  • PYPL programming language: 160 * 103.

A TIOBE (The Importance of Being Earnest) programozási közösségi indexet, amely a nyelvek népszerűségének közismert mutatója, havonta aktualizálja a hollandiabeli TIOBE Company. Az egyes nyelveket használó mérnökök, tanfolyamok és harmadik fél gyártók számán alapul. Számításaihoz figyelembe veszi a népszerű keresőmotorok használatát (Google, Bing, Yahoo!), valamint a Wikipedia-n, az Amazonon, a YouTube-on és a Baidu-n kereséseket. A TIOBE listából tehát azt tudhatjuk meg, hogy programozási készségeink naprakészek-e; stratégiai döntést hozhatunk új szoftverrendszer fejlesztésekor programozási nyelv alkalmazásáról. A TIOBE a Turing-teljes nyelvekre összpontosít, ezért nem nyújt információt például a HTML népszerűségéről. A TIOBE-n 2019 augusztusában is vezetett a Java.

A TIOBE listájával szemben leggyakrabban a PYPL (PopularitY of Programming Language) indexszel találkozhatunk, amelyet Pierre Carbonnelle készít 2004 óta. A Google-n elemzi Föld- és öt ország (US, India, Németország, Egyesült Királyság, Franciaország) szintjén, hogy milyen gyakori a programnyelv tutoriáljaira keresés. (Ugyanezzel a módszerrel a legnépszerűbb integrált fejlesztői környezeteket, online fejlesztői környezeteket és adatbázisokat is listázza.) Nyers adatai a Google Trends-ből származnak. A PYPL index szerint a Java elől van, de 2018 elejétől második helyre csúszott.

tiobe-pypl

A TIOBE (fent) és a PYPL (lent) index szerinti első öt legnépszerűbb programozási nyelv
(2019. augusztus 18.)

Az alábbi diagramon megfigyelhető, hogy a legkedveltebb tíz nyelv közül a TIOBE index szerint 2002 és 2018 augusztusa között még mindig a Java az első.

tiobe

A legkedveltebb tíz nyelv a TIOBE index szerint 2002 és 2018 augusztusa között
(2019. augusztus 18.)

Ingyenes közösségi platformok, szakmai oldalak ranglistái

A GitHub a kódkezelés és -megosztás legnépszerűbb platformja, több mint 31 millió felhasználó dolgozott már rajta, összesen 337 programozási nyelven. Ezért ideális hely annak vizsgálatára, hogy mely programozási nyelvek a legnépszerűbbek a projektek számát tekintve. Ezek közül Martins D. Okoi 2019 áprilisának végén a nyelvhasználat aktvitását tekintve a hét legnépszerűbb nyelvet emelte ki. Ezek rangsor szerint: JavaScript, Java, Python, PHP, C++, C#, TypeScript.

A Black Duck Open Hub ingyenes közösség és nyilvános könyvtár a szabad és a nyílt forráskódú szoftverek (FOSS) számára. Elemzési és keresési szolgáltatásokat nyújt a nyílt forráskódokhoz és projektekhez. A BlackDuck OpenHub az általunk kiválasztott programozási nyelveken végzett kódsormódosításokat mutatja. A legutóbbi hónap adatait nem ábrázolják, hiszen még nem állnak rendelkezésükre az adatok. Ezen közösség szerint is, mint más indexek szerint meredeken emelkedik a Python használata, és fej-fej mellett van a Java és JavaScript.

black-duck-open-hub

Havi commitek (a teljes százalékában) az Open Hub szerint
(2019. augusztus 18.)

Programozási nyelvek hozzászólásainak száma a szakmai oldalakon

Az elmúlt évtizedben a vezető programozási nyelvek esetén a velük dolgozók munkájának megkönnyítésére összpontosítottak. Ha a programozási szakmát művelők nyelvek iránti vonzalmát vizsgáljuk, nem járhatunk rossz úton, ha a szakmai-közösségi oldalaikat vizsgáljuk. Az érdeklődési kör egyértelműen megjelenik a témákban, hozzászólásokban. A GitHub és a Stack Overflow méretük miatt és az elemzéshez szükséges adatok nyilvános megjelenése miatt érdemel külön figyelmet.

A Stack Exchange Inc. tulajdonában levő Stack Overflow tudáspiac széles körben tartalmaz programozással kapcsolatos kérdéseket és válaszokat. A weblap szlogenje: Where Developers Learn, Share, & Build Careers. A felhasználók kérdéseket tehetnek fel, amelyekre tagtársaik segítőkészen válaszolnak. A kérdések-válaszok wikistílusban szerkeszthetők, valamint pozitív/negatív értékeléssel láthatók el. A felhasználók további elismeréseket is szerezhetnek (hírnév pontokat [Reputation points], majd kitüntetéseket [Badges]). A növekvő elismertségi szinttel új jogosultságok érhetők el (szavazhatnak, kommentálhatnak, más hozzászólásait szerkeszthetik).

Egyre több programozó cég teszi „kötelezővé” a Stack Overflow aktív használatát programozói számára munkájuk támogatásához Magyarországon is. 2019 januárjától a Stack Overflow regisztrált felhasználóinak száma 10 millió fölött van, lekérdezéseinek száma pedig 2018 közepén meghaladta a 16 millió kérdést. A kérdésekhez rendelt címkék típusa alapján a webhely nyolc legélénkebb témája: JavaScript, Java, C#, PHP, Android, Python, jQuery és HTML – többnyire a webprogramozáshoz kötődva.

A felhasználókat kb. 20 perces kérdőív kitöltésére kérik meg, amelyek segítségével változatos szempontok szerint mérik fel a programozás világát. Tudják, hogy vannak rendszerszintű mintavételi problémáik, és azokat korrigálják is súlyozással (például ha a kitöltők között alulreprezentáltak a nők, vagy felülreprezentáltak az USA-beliek).

stack-overflow1

2019 augusztus havi Stack Overflow látogatások

Ahol releváns, rákérdeznek a leginkább kedvelt, megtanulni kívánt, keresett eszközökre, technológiákra, stb. A legnépszerűbb technológiák között (programozás, szkriptelés, jelölőnyelvek terén) minden válaszadó és a professzionális fejlesztők között is megegyezik az első nyolc sorrendje, amelyben a Java az 5. helyen van.

stack-overflow2

A legnépszerűbb technológiák arányai (programozás, szkriptelés, jelölőnyelvek terén)
2019-ben a Stack Overflow szerin

A Stack Overflow a munkavállalók és a munkaadó számára több eszközt is biztosít, hogy egymásra találhassanak. Havonta kb. 50 millió tanulni, tudást megosztani, karriert építeni látogatója van. Közülük kb. 21 millió profi fejlesztő vagy egyetemi hallgató.

A 2019-es év legfontosabb eredményeiből szemezgetve a Stack Overflow kiemelte például, hogy a Python a leggyorsabban terjedő fő programozási nyelv. 2019-ben megelőzte a Java-t és a második legkedveltebb nyelv. A fejlesztők a Stack Overflow-t használva heti 30-90 percet takarítanak meg.

Stack Overflow 2019-es felmérésének anonimizált eredményei letölthetők az Open Database License (ODbL) alatt.

A Reddit közösségi weboldal 2005-ben alapított vállalkozás. Jelmondata: The front page of the internet (az internet kezdőlapja). Az Alexa Internet szerint 2019 júliusától a Reddit az USA 5. leglátogatottabb és világszerte a 13. leglátogatottabb webhelye. A regisztrált felhasználók megoszthatják híreiket, képeiket és cikkeiket az ún. „alredditeken”, illetve értékelhetik a már meglevőeket „fel” és „le” nyilakkal.

A Reddit bejegyzései alapján a nyolc legaktívabban használt nyelv helyezési sorrenben: Python, Java, C++, C#, Rubby, Javascript, PHP, Go.

reddit

A legnépszerűbb programnyelvek a Reddit szerint 2019-ben

A RedMonk szoftverfejlesztőkre koncentráló iparági elemző cég USA-beli székhellyel, figyelembe veszi a kereskedelmi szoftverek változó szerepét. A szoftveripar trendeket tekintettel állítja elő programozási nyelvi rangsorát a GitHub használatának és a Stack Overflow-n folyó beszélgetéseknek a korrelációjából származtatva. Elemzése GitHub részéhez használt adatforrása a GitHub Archive. A RedMonk hasonló lekérdezést használ, mint a GitHub a nyelvek 2016 októberi állapotának összeállításához, továbbá a RedMonk lekérdezéseit összehasonlíthatóvá teszi. Rangsorai nem a programozási nyelvek általános felhasználását mutatják, hanem két olyan populáció közötti korrelációt vizsgálnak, amelyekről úgy gondolja, hogy előrejelzik a nyelvek jövőbeli felhasználását, ezért értéküket.

2019 harmadik negyedévében első helyen a RedMonknál is a JavaScript áll, az élbolyban követi a Java, Python, PHP, C++, C# és CSS.

redmonk

A RedMonk programozási nyelvek ranglistája 2019 3. negyedévére

A Krihelinator nyílt forráskódú projekt rangsorolása alternatíva a GitHubhoz. Az egyes adattárak kriheliméterét az elmúlt heti szerzők száma, kérések, problémák és commitek alapján számítja: Krihelimeter = 20 * authors + 8 * merged and proposed pull requests + 8 * new and closed issues + 1 * commits.

A szerző szerint a GitHubot biztonsági mentési szolgáltatásként használják, hetente több száz commitot automatizálva. Ezen projektek kiszűrése érdekében csak egynél több szerzővel rendelkező projektek lépnek be a Krihelinator adatbázisba. Tehát számítása azon alapul, hogy milyen arányú a fejlesztők saját hozzájárulásának aránya a programozási nyelvek használatához a GitHubon. Itt a Java a 4. leginkább használt nyelv.

Álláskereső portálokon készített ranglisták

Az Indeed 2004 novemberétől működik. Az egész világon elérhető keresőmotor álláskereséshez, több mint 60 országban, 28 nyelven. Portálján a legkeresettebb a Java programozó volt 2019 januárjában is.

indeed

A legkeresettebb programozási nyelvek
az Indeed álláskereső portálon 2017-2019 között

A Trendy Skills a népszerű hirdetési webhelyekről a munkáltatók által keresett készségekről és technológiákról végez kutatásokat és készít kivonatot. Kategóriáit osztályozza, amelyek közül az egyik a programozási nyelvek. Ez lehetővé teszi a felhasználó számára, hogy a meghatározott időtartományokban megfigyelhessék egy vagy több készség vagy kategória trendjeit. Az adatok nyilvános API-n keresztül is elérhetők, így bárki elkészítheti saját statisztikáit. Trendy Skills szerint a legkedveltebb programozási nyelv 2019. január 1 – augusztus 18 közötti időszakban messze a Java volt.

trendy-skills

A Trendy Skills listája az első tíz legkedveltebb programozási nyelvről
2019. január 1 – augusztus 18 közötti időszakra

Ahogy a fenti képernyőkép bal oldalán látható, az első fülön több szűrési lehetőség adható meg a programozási nyelvek rangsorolásához: időszak, kulcsszó/kategória, ország. A második fülön állásokra kereshetünk.

Az IEEE Spectrum rangsora

Az IEEE Spectrum az év legjobb programozási nyelveinek rangsorolásához 10 forrásból 12 mutatót szintetizál. A különféle mutatókat a GitHub, a Google Search and Trends, a Twitter, a Stack Overflow, a Reddit, a Hacker News, a Career Builder, a Dice.com és az IEEE Xplore Digital Library alapján gyűjti. Az interaktív rangsoroló alkalmazás lehetővé teszi a mutatók súlyának beállítását, a nyelvek szűrését típus (web, mobil, enterprise, beágyazott) szerint. Rangsorát évente készíti, alább a 2018-as első 10 helyezettje látható a teljes IEEE spektrumra. A Java itt 2. helyen van.

ieee-spectrum

Az IEEE Spectrum interaktív rangsoroló alkalmazásában
a 2018. évi első legjobb 10 programozási nyelve

Iparbeli események

A programozási nyelvek, például a Java kedveltségi, felhasználási rangsorbeli helyezésére események is hatnak. Például 2004 áprilisában a Google igyekezett megszabadulni bizonyos weboldalaktól, amely eredményeként a TIOBE indexben a Java és a C++ nyelvek óriásit zuhantak vissza. Az ilyen nagy ingadozások kivédésére az MSN és Yahoo! keresőmotort is elkezdték használni néhány hónap múlva a TIOBE index készítéséhez.

A Groovy, amely Java-kompatibilis, először 2016-ban került be az első 20 programozási nyelv közé, mert a Jenkins folyamatos integrációs eszközt főként Groovy-ban írták. 2019 augusztusára a 13. helyig lépett elő, mert az egyre népszerűbb Gradle build automatizációs rendszer is Groovy-t használ szkripteléséhez.

A webprogramozáshoz használt legkedveltebb nyelvek

Az internet egyre intenzívebb használatának eredményeként gyorsan fejlődik a webhelyek és a webes alkalmazások fejlesztése. A vállalatok folyamatosan foglalkoznak webfejlesztési szolgáltatásokkal, azzal, hogy weboldalaik és webes alkalmazásaik a lehető legszélesebb célközönséget vonzzák be.

A webfejlesztéshez programozási nyelvek, adatbázisok és kommunikációs hálózatok széles skálája tartozik. A webprogramozással foglalkozóknak nem elegendő csak egy nyelvben és az ahhoz szorosan kapcsolódó például fejlesztői környezet(ek)ben profinak lenni, minden általában használt és feltörekvő nyelvben otthonosan kell mozogniuk. Az alábbi röviden jellemzett nyelvek mellett mindenekelőtt ezeket a nyelveket, keretrendszereket, futtatási környezetet, adatbázist stb. kell ismerniük napjainkban: HTML és CSS, jQuery, Bootstrap, React.js, MySQL, Node.js.

A Stone River eLearning szerint a webprogramozáshoz használt nyelvek 2017 végén gyakoriságuk sorrendjében: HTML5, Javascript, PHP, Java, Python, .NET, Ruby volt. 2018-ban a FreelancingGig szerint a 100 milliónyi felhasználót kiszolgáló webszájt készítéséhez legmegfelelőbb programnyelvek: PHP, Java, Python, Final Verdict. A Webby Giants szerint 2019-ben a nyolc legmegfelelőbb nyelv: Python, Rust, Java, Go, JavaScript, TypeScript, C#, PHP.

Ahogy láttuk, a Python jelenleg, és növekedési ütemét tekintve még jó ideig biztosan az egyik legszélesebb körben használt magas szintű programozási nyelv. Ez a nyílt forráskódú nyelv az elemzők és a fejlesztők számára is a legjobb választás szabványos könyvtárával, megvalósítási funkcióival, beépített API-jaival, illetve háttérszolgáltatásaival a biztonság és az URL megbízhatóságának mérésére. Támogatja sikerét számos webfejlesztési keretrendszer is, például a Django, a Pyramid, a Turbo Gear és a Flash. Használják ipari alkalmazások, webes alkalmazások, webhelyek, asztali alkalmazások, gépi tanulás, adatelemzés, hálózatépítés és még sok más területen.

A 2018-ban a Stackoverflow Developers felmérésen keresztül bevezetett Rust forradalmasíthatja a szoftveripart. Alacsony szintű programozási nyelv, teljesítménykritikus feladatok megvalósításához való. Fejlesztése során cél volt, hogy elkerüljék a függő mutatókat, a puffertúlcsordulásokat, a szintaxis- és memóriahibákat.

Évtizedek óta a Java-t tartják a legnépszerűbb objektumorientált programozási nyelvnek. Bár a rangsorokban nem mindenütt az első, csak az első közötti, értékét és megbízhatóságát alátámasztja, hogy platformfüggetlen – write once tun anywhere, vagyis írd meg egyszer, és fut bárhol (ahol fut a Java Virtual Machine).

A nyílt forráskódú Go-t a Python ihlette, nyelve is hasonló ahhoz, egyszerűbb szintaxisú, a C/C ++-hoz hasonló hatékony erőforrásokkal. A Go-t többmagos alkalmazásokhoz, konkurens programok készítéséhez javasolják funkciói és továbbfejlesztett forrásai miatt. A nyelv egyesíti a funkcionális és az objektumorientált alapú programozási nyelvek legjobb aspektusait többek között beépített fejlesztési eszközökkel.

A JavaScript magas szintű, interpreter típusú, objektumorientált programozási nyelv, amely viselkedést vált ki a weboldalakon. A nyelv fontos szerepet játszik a front-end fejlesztésében. Leginkább a közösségi média platformjai számoltak be arról, hogy a JavaScript intuitív módon nyújt statikus és dinamikus weboldalakat zökkenőmentesen.

A JavaScript több böngészővel kompatibilis, felépítése logikus. Mivel front-end fejlesztési nyelv, számos népszerű keretrendszerben is használják, például AngularJS, Node.js és React.js keretrendszerekben. A 2018-as statisztikák szerint a JavaScript az egyik legnépszerűbb programozási nyelv, amely előrelép a játékfejlesztés, a dolgok internete és a robotika területén.

A JavaScript által ihletett TypeScript nyílt forráskódú programozási nyelv. Elsősorban nagyszabású alkalmazásfejlesztéshez használják. Nemcsak a front-end fejlesztésben elterjedt, hanem manapság hibrid mobil alkalmazások, mesterséges neurális hálózatok és mesterséges intelligencia alapú robotok programozásában is használt.

A C# domináns alkalmazásprogramozási nyelv Windows-ra, webalapú és mobil alkalmazásokhoz, illetve a Microsoft platform egyéb tagjaira. A C# szintaxisstruktúrája a C/C++-éból származik, de azoknál könnyebb használata azok számára, akik ismerik a C/C++ családot.

A C# tartalmazza az általában webhelyek és webalapú alkalmazások készítéséhez használt ASP.NET-keretrendszert, amely gyors alkalmazásfejlesztést tesz lehetővé. Virtuális valóság alkalmazások esetén is érdemes a C# tanulásába fektetni, továbbá 2D és a 3D videojátékok fejlesztéséhez a Unity 3D platform választása esetén is ez az ajánlott nyelv.

Az egész világon a PHP a legnépszerűbb szerveroldali szkriptnyelv. Folyamatosan fejlesztik, frissíthetjük verziónkat, ha a soros kódrészleteket statikus HTML fájlokban valósítottuk meg. A PHP ideális a professzionális webfejlesztők és a hatékonyan programozni kívánók számára azért is, mert számos keretrendszerrel együttműködik, például Laravel, Code Igniter és Symphony keretrendszerrel.

De ennyi nyelvet hogyan sajátítson el a kezdő programozó? Jean-Baptiste Jung (2019 július) az alábbi hét lépést javasolja a professzionális webfejlesztést megcélzóknak:

  1. Specializálódás. Szakosodhat a front-end vagy a back-end webfejlesztésre. A full stack fejlesztést megcélzóknak a front-enddel kell kezdeniük.
  2. Programozási nyelvtudás megszerzése. A szakosodásból következik, hogy mely programozási nyelveket kell megtanulni.
  3. Kis projektekben részvétel, saját online portfólió létrehozása. Kis projektekkel kezdve egyre nagyobbakat kell végigvinni. A nagy és összetett webhelyek egyszerű elveken alapulnak, kis projektek során felépíthetők. A kis projektekben létrehozott eredmények beépítve a saját weboldalba bemutatják a fejlesztő készségeit, tapasztatait. A közösségi média, illetve szakmai közösségekben jelenlét is ajánlott a programozási tudás megmutatására, a többi kódolóval találkozáshoz és a projektek kidolgozásához.
  4. Türelmes tesztelés és hibakeresés. A kódokat alaposan ellenőrizni kell, és ha türelemesek vagyunk a hibakeresés során, a jövőben a nagyobb projektekben kisebb eséllyel ismételjük meg hibáinkat.
  5. Webfejlesztői fórumhoz csatlakozás. Ezeken a fórumokon tanulhatunk mások hibáiból, megítélhetjük mások munkáit, tájékozódhatunk a fontos frissítésekről és hírekről, kérhetünk szakmai segítséget.
  6. Webhelyekről tanulás. Számos webhely nyújt újrafelhasználható kódokat is, amelyek beépíthetők a saját projektbe, segítve a gyorsabb tanulást.
  7. Gyakorlás. A sikeres weboldalak mögött hatalmas mennyiségű képzésben részvétel és gyakorlat rejlik. Ez csak önálló gyakorlással érhető el.

Összegzés

A Java compiler típusú, általános célú, magas szintű, objektumorientált programozási nyelv. Világszerte minimum 15 milliárd eszközt irányít, és több mint 10 millió fejlesztő dolgozik vele. Az SE fejlődése töretlen. Hatékonyan készíthetők vele platformfüggetlen szoftverek, amelyek bárhol futtathatók, ahol van telepítve Java virtuális gép („compile once, run anywhere”). Használják Android- és asztali alkalmazások, adatbázisok fejlesztésére, és gyakorlatilag az elsődleges nyelv az ügyviteli, vállalati rendszerekhez, a szerver-architektúrákhoz és a felhőben történő fejlesztéshez. A legnépszerűbb weboldalak többségénél használják a Java-t (is) szerveroldalon.

Első programozási nyelvnek kiváló a Java. Azért is, mert a tanulás kezdetén online is lehet tanulni a kódolást. Később az EE fejlesztői környezet kialakítása már komolyabb tervezést és fejlesztést igényel.

A fent bemutatott rangsorok alapján is látható, hogy a Java tanulásába előnyös fektetni. Nem minden feladathoz legjobb választás a Java, illetve minden nyelvnek megvannak az előnyei és a hátrányai. Mindig a feladat igényeire kell összpontosítani, hiszen a népszerűségen kívül sok más tényező is meghatározza a szoftverek fejlesztéséhez legmegfelelőbb programozási nyelve(ke)t.

Beszámoló a Nikola Tesla – Mind from the Future kiállításról

Tesla-logo

Tesla-logoA kiállítást a nyár végével, 2019 augusztusának utolsó hetében néztem meg. Budapesten, a Kazinczy utca 21. szám alatt, az Elektrotechnikai Múzeum épületében található Tesla Loft adott helyet a rendezvénynek. Multimédiás kiállításról lévén szó, már a megérkezés pillanatában kijelzőkkel találkoztam, ahol lehetőségem nyílt közös képet készíteni a híres feltalálóval, Nikola Teslával – természetesen a fejlett informatikai technológia segítségével.

Tesla kiállításon készült kép

Minden látogató kapott egy tabletet, amelyről két órányi hanganyagot lehetett meghallgatni az egyes állomásokhoz érkezve. A hangos bemutató nagyobb részben narráció stílusú volt, de egy-egy állomáshoz érve a tudós gondolatait is meghallgathattam egyes szám első személyben. Néha-néha a hanganyagot filmes bemutató követte.

Már az első pillanatban meglepődtem a kiállítás látványvilágán. Úgy gondoltam, hogy elsősorban technikai eszközökkel fogok találkozni, ezzel szemben sokkal inkább művészi, egy kicsit mesebeli megjelenés fogadott. Természetesen nem maradtak el az egyes találmányok rekonstrukciói sem.

A bemutató Tesla életkora szerint haladt, kezdve a falutól, ahol született, gyermekkorától, iskolás éveitől végig kísérve életét. A hanganyagot hallgatva rá kellett jönnöm, hogy a készítők igen alapos kutató munkát végeztek, mert még a három éves kisgyerek Tesláról is sikerült megtudnom, hogy már akkor is különösen vonzódott a természethez, a természetben lezajló változások megfigyeléséhez. Ebben társa volt Macsak, a kedvenc macskája. Ez az érdeklődés iskolás korában csak továbbfokozódott, így alapozva meg későbbi találmányait.

Ahogyan haladtam előre a kiállítás helységein, különböző élethelyzeteket és találmányokat ismerhettem meg. Kissé szomorú volt hallani, hogy az Egyesült Államok, a lehetőségek országa bár valóban hasznos táptalaja volt Teslának, mégis sok olyan ember vette körül, akik csak a kihasználható embert és a saját bevételük növelésének eszközét látták benne. Minden egyes elért eredményért keményen meg kellett küzdenie. Mégis, sokféle területen tudott újat alkotni, a teljesség igénye nélkül: elektromosság, elektromágnesesség, távközlés, motorok és generátorok, valamint mozgófilm vetítő gépek.

Azt mondhatom, hogy igen átfogó, részletgazdag, tematikáját tekintve inkább életút jellegű, művészi megjelenésű élménnyel lettem gazdagabb.

Az utazó kiállítás Budapesten 2019. május 31-től szeptember 1-ig volt megtekinthető. Olyan városokba látogat el, amelyekben Nikola Tesla munkásságával mély nyomot hagyott.

Interjú Schmidt Attilával

Schmidt Attila

Schmidt Attila három éves szoftverfejlesztői gyakorlattal (főként Android platformhoz kötődően) és két éves szoftvertesztelői tapasztalattal rendelkező mérnök-informatikus.

Schmidt Attila

Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője – készítette 2019. augusztus 22-én.

K. S.: Már főiskolai tanulmányaid alatt is dolgoztál. Hogyan kerestél és találtál akkor munkát?

S. A.: Akkoriban még nem volt szakmai gyakorlatom és egy olyan helyen szerettem volna ezt abszolválni, ahol esetleg később teljes munkaidőben tudom folytatni a munkát. Hivatalos álláskereső oldalakon nézelődtem, nyitott szemmel jártam és a csoporttársaim tapasztalataira hagyatkoztam. Így sikerült bekerülnöm az első céghez ahol dolgoztam mobilfejlesztőként, ahol a főiskoláról egy csoporttársam volt a mobilos csapatnak a vezetője. Itt szereztem alaptudást a munka kapcsán és tapasztalatot gyűjtöttem, hogy hogyan megy mindez a gyakorlatban.

K. S.: Miről szólt a Tallymarks projekted?

S. A.: A Tallymarks egy számomra kedves mobilalkalmazás, amely ugyan egyszerű, mint a faék, a program működése viszont némileg bonyolultabb logika mentén megy végbe. 5 strigulát kell húznunk a kijelzőn: négyet függőlegesen az utolsót keresztben, mindezt úgy, hogy a program csak érvényes strigulát fogadjon el, így növekszik a számláló és tartja számon (azt, amit előtte beállítottunk például, hogy egy sorozatban hol tartunk). Sok hasonló alkalmazás létezik ezen a területen, de a kijelzőn történő rajzolás és ehhez tartozó funkció egyedülálló volt akkoriban, amikor ezt a programot fejlesztettem.

K. S.: Milyen szakterületei vannak a szoftverfejlesztésnek mobil platformhoz kötődően? Megfogalmaznád a kezdők és a rutinosak szintjén kétféleképpen ezeket?

S. A.: Kezdetben ezekre kell fókuszálni leginkább: UI összeállítása (XML), hálózatkezelés, funkciók implementálása. Ehhez jön később az adatbázis írás/olvasás, push notification/notification kezelés, verziókezelés (Git), hálózati kommunikáció és minden egyéb.

K. S.: Megpróbálnád kategorizálni – tudom, hogy nagyon nehéz – a szoftvertesztelés során előforduló tipikus hibákat? „Mire gondolt a költő”, amikor erről beszélünk…

S. A.: Tipikus hiba talán nem is létezik, ha csak nem nagyon hasonló programokat tesztelünk, amik egy kaptafa alá tartoznak, és mindig rögtön kitaláljuk, hogy hol van hiba a programban. Inkább a funkciók kombinációiban szoktunk hibára gyanakodni, de ezek nem tekinthetőek tipikusnak.

K. S.: Hogyan zajlott fejlesztőként egy tipikus munkanapod? Hogyan zajlik tesztelőként egy tipikus munkanapod?

S. A.: Az én esetemben minden nap azzal kezdődött fejlesztőként, hogy átgondoltam mi az, amit előző nap csináltam, és mi az, amit ma el szeretnék érni. Ez tesztelőként sincsen másképp, annyiban változott, hogy különböző feladataim vannak, fejlesztőként eldönthettem, hogy mi következik: például a szerver kommunikáció vagy a program funkcionalitása. Tesztelőként különféle feladatok vannak – amik függnek a program állapotától – és ez határozza meg a tesztelendő területet illetve a feladat típusát is, hogy most éppen tesztelnem kell-e, teszttervet készíteni, egy már meglévő és a rendszerben szereplő hibajegyet ellenőrizni. Persze

„a programozás lényegesen több gondolkodást igényel, mint a tesztelés”

hacsak nem automatizálásáról beszélünk – amivel én ezt a szakmát kezdtem –, és ilyen esetben is

„lényeges az, hogy mi a cél és milyen szerepet töltünk be a fejlesztés során”.

Schmidt Attila

K. S.: Jelenlegi munkád szakmai részében milyen szoftvereket használsz? Melyiket mire?

S. A.: Helix Alm (testtrack) – hibajegykezelés, Microsoft Teams – kapcsolattartás, Notepad++ – forráskód olvasás/írás.

K. S.: A munkád szervezéséhez kötődően (projektmenedzsment, időgazdálkodás, SCRUM, kommunikáció, verziókezelés) milyen szoftverekkel találkoztál eddig?

S. A.: SourceTree – verziókezelés, Trello – projektmenedzsment, Slack vagy MSTeams – kommunikáció.

K. S.: Általában atipikus, hogy fejlesztői pozíció után valaki tesztelőként folytatja. Mi motivált a váltásra?

S. A.: 2016-ban mobilfejlesztőként dolgoztam és a főnököm megkérdezte, hogy szeretnék-e tesztelő lenni, mert az egy halom pénzbe kerül a cégnek. Boldogan mondtam, hogy persze miért is ne, hiszen érdekelt ez a terület, valamint fejlesztőként is tesztelek ugyan, de kicsit mélyebben is szívesen beleásnám magam.

Fejlesztőként TDD-vel kezdtem, ami az automatizálás része. Kis idő múlva a cég elnyert 2-3 nagyobb projektet is és ezeknek én lehettem a tesztelője, így a manuális tesztelői világ is kinyílt előttem, ráadásul az akkori kollégáimmal – akik a fejlesztésben voltak jelen – remekül tudtam együttműködni.

Azt gondolom, hogy

„a fejlesztésben akkor lehetünk sikeresek, ha már elegendő rutinunk van egy projektet végigvinni az elejétől a végéig és ehhez sok-sok munkatapasztalatra és tudásra van szükség”.

A tesztelésben inkább a jártasság és a tapasztalat számít például, hogyan álljunk neki egy program tesztelésének.

K. S.: Mennyire csapatjátékosok a fejlesztők és a tesztelők? Milyen soft skillek hasznosak ezekben a munkakörökben?

S. A.: A fejlesztő és a tesztelő közötti kapcsolat nagyon fontos, elsősorban úgy gondolom, hogy a tesztelőnek kell azt éreztetni, hogy a fejlesztő munkáját szeretné segíteni és nem hátráltatja azt. Alapszabály, hogy nem szabad sokat kérdezni. Inkább egy adott problémát körültekintően körbe kell járni és meg kell érteni a probléma okát. Így meghatározó információval tudunk szolgálni, amikor a fejlesztő elé állunk, vagy ha csupán hibajegyet rögzítünk, ezzel (is) könnyítve a fejlesztő munkáját is a hiba kijavításában.

Ha csapatjátékos és segítőkész hozzáállást tanúsítunk, az sokat segíthet mind a két szakterületen, ezzel elősegítve azt, hogy hasznos információkhoz jussunk, amelyek segítenek a projekt előre haladásában.

K. S.: Ha a szakmai pályafutásod hossza 100 egység, akkor jelenlegi tapasztalataid alapján hol tartasz, és milyen mérföldköveket fogalmaznál meg ehhez kötődően?

S. A.: Ez kimondottan nehéz kérdés, de azért nem megválaszolhatatlan. Úgy gondolom, hogy az elmúlt 5 évben találkoztam pár dologgal ezen a két területen. A fejlesztést tekintve: az egy komoly mérföldkő, amikor a fejlesztő állítja elő a backendet is magának és erre írja meg a frontendet. Létrehozza a szervert, az adatbázist majd a végterméket. Ha években szeretnénk felállítani mérföldköveket magunknak, akkor a standard 1-3, 3-5, 5+ amivel számolni lehet, de ez nem mutat rá a munkavállaló tudására.

A tesztelést akkor kezdtem el, amikor a fejlesztésben úgy 15-25 között voltam és ez azóta nem is mozgott tovább, bőven lenne még mit tanulnom ezen a területen. A tesztelésben a tapasztalatok alapján egy kicsivel előrébb tartok, de ebben a szakmában is van hova tovább. Inkább az automata tesztelés felé szeretnék specializálódni.

K. S.: Hogyan tovább, mivel fogsz foglalkozni 5-10 év múlva?

S. A.: Célom, hogy tesztmenedzserré váljak és egy tesztelői csapatot koordinálhassak. Így képzelem el a jövőt 5 év múlva. Addig pedig minél több területen szeretnék tapasztalatot gyűjteni és kiegészíteni meglévő tudásomat. Érdeklődöm afelől is, hogyan zajlik a fejlesztés máshol, akár kisebb vagy nagyobb méretű cégről legyen szó.

Schmidt Attila

K. S.: Véleményed szerint mitől függ egy szoftverfejlesztő, szoftvertesztelő fizetése?

S. A.: Elsősorban a cég méretétől: startup, 10-15 éve működő vagy multinacionális. Másodsorban a munkavállaló években mérhető tapasztalatától. Ennek a kettőnek a függvénye adja meg a fizetést.

K. S.: Milyen tapasztalatod van bootcamp-es kollégával? Mit gondolsz, az idősebb (30+, 40+) karrierváltókat mi motiválja, hogy szoftverfejlesztők legyenek?

S. A.: Szerintem elsősorban a fizetés, mert sokat hallani, hogy kiemelkedően lehet keresni ezen a területen és érdeklődnek a szakma iránt, illetve érdekes is annak, aki lát benne perspektívát és elhivatott.

K. S.: Kipróbálnád magadat külföldön fejlesztői vagy tesztelői munkakörben?

S. A.: Mindig úgy voltam vele, hogy én itthon szeretnék dolgozni. Bőven van munka IT területen itthon, sőt egyre több. Egyelőre nem gondolkodom külföldi munkavállaláson, de sose tudni: biztosan átgondolnám, ha lenne rá lehetőség.

K. S.: A Java EE szoftverfejlesztő tanfolyamunk részletes tematikájához tartozik a hálózatkezelés, XML és JSON feldolgozás, valamint különböző hálózati kommunikáció megvalósítása is (Socket, RMI). Mennyire hasznosak ezek a témakörök, esettanulmányok azoknak, akik mobil irányba szeretnének specializálódni?

S. A.: A XML és JSON mindenképpen már kezdetben is hasznosak, a Socket, RMI szintén és gondolom, időben később játszanak szerepet és mindenképpen jó, ha a tanfolyam során ezekkel is megismerkedünk.

K. S.: Véleményed szerint a mesterséges intelligencia különböző szakterületei milyen hatással lesznek a szoftverfejlesztéssel és teszteléssel foglalkozó szakemberek hétköznapi tevékenységeire a közeli jövőben? És hosszabb távon?

S. A.: „Már saját magát tanítja programozni a mesterséges intelligencia.” Azt hiszem ezzel a mondattal válaszoltam is egyben arra, hogy milyen hatással lesz idővel a szoftverfejlesztésre. A tesztelésben szerintem kiváltja a konkrét tesztelőt, mint ahogyan egy gyár csomagoló részlegén a gép leváltotta már az embert, és még sokkal hatékonyabb is.

K. S.: Van kedvenc IT-s idézeted?

S. A.: “Quality is never an accident, it is always the result of intelligent effort.” – John Ruskin
Ha magyarul szeretném ezt megfogalmazni: a minőség sosem véletlenszerű, hanem a szakszerű erőfeszítés eredménye.


Blog bejegyzéseink IT karrier témakörben

Bobály Gábor

Interjú Bobály Gáborral

Bobály Gábor logisztikával foglalkozott korábban tíz évig, különböző munkahelyeken, különböző munkaköröket betöltve. Három éve tudatosan közelít az IT felé. Sikeresen elvégezte az alapozó Java SE szoftverfejlesztő, majd ezt követően a ...
Révész András

Interjú Révész Andrással

Révész András alapvégzettsége biológus, ökológia szakiránnyal. Szakmai pályafutását tájökológiával kezdte, azon belül is élőhely térképezéssel, amihez kötődik a térinformatika. Négy évig kutatás-fejlesztéssel foglalkozott az MTA Ökológiai és Botanikai Intézetében, majd ...
Schmidt Attila

Interjú Schmidt Attilával

Schmidt Attila három éves szoftverfejlesztői gyakorlattal (főként Android platformhoz kötődően) és két éves szoftvertesztelői tapasztalattal rendelkező mérnök-informatikus. Az interjút Kaczur Sándor – az it-tanfolyam.hu alapítója és oktatói csapatának szakmai vezetője ...
Takács Roland

Interjú Takács Rolanddal

Takács Roland egyéves automatizálási teszt mérnöki és ötéves professzionális adatbázis-kezelés (MSSQL, Oracle) tapasztalattal rendelkező mérnök-informatikus. Jól érzi magát multikulturális környezetben. 2017 nyara óta külföldön él és dolgozik. 2018 őszétől PL ...
Lovas Bertalan

Interjú Lovas Bertalannal

Lovas Bertalan 22 éves pályakezdő szoftverfejlesztő. A kütyük mindig érdekelték. Hivatásként és hobbiként is gondol a programozásra. Sportos, korábban dzsúdózott, tornázott és a műugrást is kipróbálta. Korábban részt vett a ...

Interjú Görög Ibolyával

Görög Ibolya protokollszakértőt mindenki ismeri, bemutatni nem szükséges. De mégis illik, legalább röviden: 1987-től 1999-ig a Miniszterelnöki Hivatal protokollosa, majd protokollfőnöke volt, illetve 1999-től felnőttképzésben oktat. Érdeklődési körébe tartoznak: viselkedéstörténet, ...
Nádai Gábor

Interjú Nádai Gáborral

„Nádai Gábor vagyok, de sokan leginkább Mefiként ismernek, a legtöbb felületen a @mefiblogger nicknév alatt vagyok elérhető. Eredetileg mérnökinformatikusként végeztem, a kétezres évek közepén a fősuli mellett saját vállalkozásba kezdtünk ...
Szűcs Tibor

Interjú Szűcs Tiborral

Szűcs Tibor mérnök-informatikus. Jelenleg a Corvinus Egyetem Koordinációs Irodáján dolgozik órarendszerkesztőként. Ez a feladat a létesítménygazdálkodáshoz kötődik és ő osztja be – sok-sok szempont alapján – az előadásokat, szemináriumokat, számítógépes ...
Markovics Győző

Interjú Markovics Győzővel

Markovics Győző nem­zet­kö­zi kap­cso­la­tok sza­kos köz­gaz­dász, va­la­mint po­li­to­ló­gi­át is ta­nult a Bu­da­pes­ti Cor­vi­nus Egye­te­men. Az egye­tem­től fő­ként időt ka­pott – fel­nő­ni a kép­zés alatt. Gya­kor­la­ti is­me­re­te­it min­dig mun­ká­val sze­rez­te. Csa­lá­di ...