Programozás orientált dokumentumok – JupyterHub

Két évtizeddel ezelőtt indult egy projekt, amely célul tűzte ki a programozás-orientált közösség segítését tanulmányaik és munkájuk során egyaránt. Az évek során az IPython program egy teljes ökoszisztémává fejlődött, több alkalmazással és széles körű programozási nyelv támogatással Jupyter név alatt.

Manapság az informatika már az általános iskolákban jelen van, és egyre nehezebb munkát találni bizonyos szintű számítógépes ismeretek nélkül. Bár a diákok jobban ki vannak szolgáltatva az informatika hatásainak, mint a korábbi generációk, a programozás tanulása számos kihívást jelent a kezdők számára. Az erőfeszítések ellenére, hogy a programozás mindenki számára elérhető legyen, a téma a nehezebb tantárgyak közé tartozik. Még az első absztrakt fogalmak is kihívásokat okozhatnak. A tanulási folyamat megkönnyítése és javítása érdekében mindkét fél jó minőségű tananyagokat és jegyzeteket szeretne. A területen végzett kutatás segít a tanulási folyamat racionalizálásában és elmélyítésében a tanulási szokások elemzésével és az újonnan bevezetett platform használatának megfigyelésével.

Project Jupyter

A Jupyter projekt az IPython (interaktív Python) platform jegyzetfüzet felhasználói felület részeinek utódjaként indult. Az IPython-t eredetileg interaktív számítástechnikai környezet „magjaként” fejlesztették ki. Ahogy a projekt nagyobb figyelmet kapott az évek során, a fejlesztők úgy döntöttek, hogy néhány funkció új név alá kerül, ezzel egyértelműbben behatárolva az egyes megoldások feladatkörét. A jelenlegi kutatások alatt az IPython inkább egy háttérszolgáltatás, amely a Python shellt és kernelt biztosította Jupyter Notebook és JupyterLab számára.

JupyterLab

JupyterLab a klasszikus Jupyter Notebook újabb verziója. A hozzáadott funkciók, mint például a .csv fájlok jobb kezelése, több ablak és egyéb fejlesztések teszik kedvezőbbé az eredeti alkalmazáshoz képest.

JupyterHub

JupyterHub egy kiszolgálói megoldás a Jupyter notebookokhoz. Lehetővé teszi több felhasználó számára, hogy pontosan ugyanabban a programozási környezetben dolgozzanak, ugyanazokat a könyvtárakat használják, miközben a fogadó szervezet teljeskörű ellenőrzéssel rendelkezik, beleértve az elérhetőséget is.

Jupyter Notebook

Jupyter Notebook egy webalapú interaktív számítási környezet, és ahogy a neve is sugallja, programozásorientált dokumentumok létrehozására szolgál. Képes kódok futtatására, vizualizációk megjelenítésére és markdown szövegek kezelésére egy helyen. Ennek eléréséhez saját .ipynb fájltípust használnak, amelyet manapság számos népszerű IDE (integrált fejlesztői környezet) támogat. Az alkalmazás azonnal támogatja a Python, Julia, R nyelveket, de a funkcionalitás tovább bővíthető további kernelek (programozási nyelvek) telepítésével, amelyeket korábban célnak megfelelően elkészítettek és teszteltek. A JupyterLab tartalmazza a Jupyter Notebook összes funkcióját, moduláris felülettel bővíti azt és bővítmények telepítésének lehetőségét biztosítja az IDE-khez hasonló élmény létrehozásához. Ezenkívül a hozzáadott funkciók, például a .csv fájlok jobb kezelése és egyéb fejlesztések is kedvezővé teszik.

Voilá

Voilá egy eszköz webalkalmazások létrehozására notebookokból. Egyszerűbb és biztonságosabb módot kínál az eredmények közvetlen bemutatására a jegyzetfüzetekből, ha előre menti a kimeneteket, és szükség esetén elrejti a kódcellákat. Így az alkotó interaktív és testreszabható irányítópultot hozhat létre az online megosztáshoz.

Jupyter kernelek

A telepített kernelek határozzák meg, hogy milyen nyelvek érhetők el a létrehozott jegyzetfüzetekben. A Jupyter és JupyterHub kernelek listája folyamatosan növekszik, és lehetővé teszi, hogy egyre több nyelv legyen elérhető ebben a környezetben.

A felület és a funkciók

A JupyterLab tiszta, és egy fájlböngészővel indul, ahol a felhasználó új jegyzetfüzeteket hozhat létre a megadott helyen, vagy megnyithatja a már meglévő jegyzetfüzeteket. Az alapértelmezett támogatott programozási nyelv a Python és a hozzá szükséges fájlokat hivatalosan karbantartják. Új üres jegyzetfüzet létrehozásakor a szerkesztő inicializálódik, és egy új kifejezéssel ismerkedik meg a felhasználó. A jegyzetfüzetek cellákból állnak, amelyek szöveget vagy futtatható kódot tartalmazhatnak. A Python nyelv esetén a kódcellák egymásra támaszkodhatnak, pl.: egy felső cellában definiált változó használható, sőt tartalma módosítható a későbbi kódcellákban is. A fontos információk formázásához és kiemeléséhez a Jupyter fájlok Markdown nyelvet használnak. Ez a funkció segít a magyarázat vagy a releváns információ strukturált tárolásában az alapvető markdown szintaxis használatával. Ezenkívül a felhasználók hiperhivatkozásokat, képeket vagy akár gifeket is beilleszthetnek jegyzeteikbe.

Kapcsolódó cikkek

CONFERENCE PAPER: Notebook interfaces as teaching aids in programming education

M. Csóka: otebook interfaces as teaching aids in programming education. In EDULEARN21: 13th annual International Conference on Education and New Learning Technologies, Barcelona, pp. 9248-9252, 2021. ISSN 2340-1117 link Absztrakt: The [...]

CONFERENCE PAPER: Jupyterhub as a higher education teaching platform

D. Paksi, M. Csóka: Jupyterhub as a higher education teaching platform.In INTED2022 Conference Proceedings: 16th International Technology. Barcelona: IATED, pp.2157-2163, 2022. ISSN 2340-1079 link Absztrakt:  Two decades ago, a [...]

JOURNAL ARTICLE: Bolstering deep learning with methods and platforms for teaching programming

Márk Csóka, Dávid Paksi, Krisztina Czakóová: Bolstering deep learning with methods and platforms for teaching programming AD ALTA : journal of interdisciplinary research vol 12. issue 2 pp. 308-313, 2022 ISSN [...]