Vissza a blogra

Szoftverfejlesztő lennél? Ezek a programozási nyelvek jelentenek biztos karriert – 3. rész

A 21. század legszexibb karrierjében gondolkodsz? Nézzük azokat a nyelveket, amelyekkel minden adattudósnak érdemes megismerkednie! Sorozatunk utolsó részében az adatszelídítés két nélkülözhetetlen nyelvét, a Pythont és az SQL-t vizsgáljuk meg közelebbről.

A nagy adat nagy barátja: Python

Igen, arról a programnyelvről beszélünk, amire Amerikában tavaly többen gugliztak rá, mint Kim Kardashianra, de ennél azért nagyobb érdemei is vannak. Manapság legalábbis. A Python nyelvet Guido van Rossum Holland programozó dobta össze 1989 karácsonyán, afféle hobbiprojektként. A nevét sem a félelmetes hüllőről kapta, hanem a brit komédiasorozatról, a Monty Pythonról (ki gondolta volna valaha, hogy Br(l)ian a programozási nyelvek területén is egyszer otthon lesz). Ennek megfelelően sokáig valóban inkább csak megmosolyogták a szakmabeliek. Még 1999-ben, tíz évvel a születése után sem jegyezték a fontosabb programozási nyelvek között, a legtöbben inkább elkönyvelték valamiféle fura rétegnyelvnek. Azóta viszont fordult a világ: a Stack Overflow szerint a Python jelenleg a világ leggyorsabban terjedő programozási nyelve, és az elmúlt öt évben nagyobbat ment, mint bármelyik vetélytársa. A legfrissebb adatokból az is kiderül, hogy a profi programozók majdnem 40%-a használja. A következő generációból pedig úgy tűnik, még többen fogják: egy nemrégiben készült felmérés során megkérdezett brit szülők kétharmada egyértelműen úgy nyilatkozott, hogy inkább Python-órára járatja általános iskolás gyermekét, mint mondjuk franciára. Az talán kevésbé meglepő, hogy a gyerekek háromnegyede is szívesebben tanulja a robotok nyelvét, mint bárki másét (minderre pedig csodákat tud tenni egy jó programozó képzés).

Ha egy szóban össze kellene foglalnunk, minek köszönhető ez az átütő siker, akkor az az adattudomány lenne. Ha kettőben, akkor az adattudomány és az ML (machine learning), azaz a gépi tanulás. A Python ezen a két, szorosan összefüggő területen a programozási nyelvek között gyakorlatilag egyeduralmat élvez, hiszen egy rendkívül kényelmes és megbízható programnyelv, amivel nagyon könnyen igen komoly algoritmusokat lehet létrehozni. Hódító útja tulajdonképpen a big data berobbanásával vette kezdetét, és ha az adattermelési előrejelzéseket nézzük, egyhamar nem fog véget érni: 2015-ben például kétnaponta annyi adatot termeltünk, mint 2003 előtt az emberiség története során összesen. Ebben a tempóban 2020-ra várhatóan nagy adatból még nagyobb adat lesz: a becslések szerint 4,4 zetabájtról 44 zetabájtra nő majd a bolygón tárolt információmennyiség. Az ehhez kapcsolódó eszközök és szolgáltatások piaca ugyanezt a trendet követi majd: ha az előrejelzések nem tévednek, az értéke 2027-re a tavalyi 42 milliárd dollár helyett a 103 milliárdhoz közelít majd. Ez persze annak is köszönhető, hogy a techóriások, köztük a Microsoft, a Google, a Tesla és a Facebook, kivétel nélkül mind ezt a nyelvet használják az adatelemzési, gépi tanulási és neurális hálózatokkal kapcsolatos projektjeikhez. fejlesztési nyelv

Pythonban íródott mindenki kedvenc macskásvideó- és mémaggregátora, a Reddit, de Python-alapú algoritmus keres nekünk új sorozatot a Netflixen és kapcsolódó videót a YouTube-on is. A Python rendkívül felhasználóbarát és könnyen tanulható, nem csoda, hogy sok egyetemen és programozóiskolában – például a Codecoolban is – az első általános programozási nyelvként szokás tanítani. A legnagyobb rajongója kétségkívül a Google, nem hiába az alapítók közismert mottója: „Python where we can, C++ where we must”. Egyrészt olyan legendás alkalmazásokhoz használja, mint a Google Translate, a Google Maps vagy a Google Streetview, másrészt 2017-ben nyilvánossá és nyílt forráskódúvá tette a saját gépi tanulási könyvtárát is, a TensorFlow-t, amivel bárki jóval könnyebben fejleszthet gépi tanuláson alapuló mesterséges intelligenciát, mint eddig. Más nagyvállalatok scripting és tooling célra használják a nyelvet, ahol szintén nem okoz csalódást. A világ egyik legnagyobb pénzügyi szolgáltatója, a Morgan Stanley például több mint negyven országban 16.000 tanácsadó segítségével menedzseli ügyfelei vagyonát és befektetéseit. És ezek között egyre több a robot, akik ugyan még csak tavaly kerültek állományba, mára sok száz milliárd dollár sorsáról döntenek. A robotanácsadók 2020-ra előreláthatóan 1 trillió dollárt fognak kezelni, 2022-ben pedig olyan 4,6 trilliárdot. Mindezt mi mással, mint Pythonnal?

Lekérdezni tudni kell: SQL

És ha már adat, következzen egy másik megkerülhetetlen adatbányásznyelv, az SQL (Structured Query Language). Akkor is, ha tulajdonképpen kakukktojás, hiszen nem egy programnyelvről, hanem ahogy a neve is elárulja, strukturált lekérdezőnyelvről van szó. Miért beszélünk róla mégis? „Mert jelenleg az SQL a legnépszerűbb lekérdező nyelv. Legtöbbször ezt használjuk arra, hogy adatot vigyünk fel, kérdezzünk le vagy módosítsunk egy adatbázisban” – magyarázza Forián Szabó Mátyás. Vagyis, a világ fejlesztőinek nagyjából fele számára elengedhetetlen. És hogy mire használják pontosan? A szerveroldali applikációknak két kulcsfontosságú része van: az egyik maga az applikáció, ami többnyire olyan programozási nyelveken íródik, mint a Java vagy a C#, a másik pedig az adatbázis, amiben eltárolódik mindaz az információ, amit az alkalmazás a feladat végrehajtása közben használ. Az utóbbi felel mindenért, ami adatfeldolgozás: ha kell tárol, összegyűjt, rendszerez, osztályoz, kombinál, módosít vagy töröl, legyen szó száz darab tételről vagy százmillióról. Például a webshopok is ilyen adatbázisokban tárolják a felhasználók adatait, az elérhető termékek listáját és azok tulajdonságait.

Az SQL Edgar Frank Coddnak, az IBM munkatársának köszönhetően már az 1970-es évek óta velünk van, bár népszerűsége nem volt mindig töretlen. A 2000-es évek felé úgy tűnt, hogy megdől a dominanciája, és sorban jelentek meg a nem-SQL (NoSQL) adatbázisok. De nem így történt: ahelyett, hogy az új programozási nyelvek kitúrták volna az SQL-t, inkább megtalálták a saját helyüket. „Így mára létrejött egy egyensúly, ami úgy néz ki, hogy az adatbázisok döntő többsége SQL-t futtat, de van egy olyan 10-20%, ahol valami specializált dologra van szükség. Például valami egzotikus vagy hatalmas mennyiségű vagy strukturálatlan adatot kell tárolni. Itt van létjogosultsága a nem-SQL adatbázisoknak” foglalja össze Faragó Balázs. „De az esetek többségében, amikor például írunk egy webshopot vagy egy Androidos játékot, és abban tárolni akarjuk a vásárlók vagy játékosok adatait, akkor SQL-t használunk. Ez egy olyan technológia, ami kiállta az idő próbáját. Próbálták megdönteni az egyeduralmát, de nem nagyon sikerült, és szinte borítékolható, hogy 20 év múlva ugyanúgy velünk lesz” – teszi hozzá a szakértő.

***

Érdekel a programozás? Vágj bele nálunk! Jelentkezz a Codecool kéthetente induló programozóképzésére és szerezz piacképes, biztos tudást egy év alatt!

szerző:
Forián Szabó Mátyás
Forián Szabó MátyásEgy jó iskola nem csak a szakmai tudás átadásárol szól: Legalább ilyen fontos maga a munkakörnyezet, hogy mindenki szeressen ide bejárni. Arra törekszem, hogy mindkettő megvalósuljon a Codecoolban.
Megosztás