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.

Multimédia az oktatásban 2019

NJSZT-MMO logó

NJSZT-MMO logóA Neumann János Számítógép-tudományi Társaság (NJSZT) „Multimédia az oktatásban” Szakosztály által – évente – szervezett XXV. Multimédia az oktatásban című nemzetközi konferencia az Ericsson Magyarország Kft. K+F Központjában került megrendezésre 2019. június 6-7-én.

A konferencia célja

  • elősegítse az oktatás, a kutatás és a fejlesztés különböző területein dolgozó szakemberek tapasztalatcseréjét és találkozását,
  • bemutatkozási lehetőséget adjon az oktatóknak, kutatóknak és PhD hallgatóknak az új kutatási eredmények széleskörű szakmai megismertetésére és megvitatására előadások, kiállítások és kiadványok segítségével.

21 témakörben hirdették meg az előadóknak a jelentkezési lehetőséget, köztük néhány hozzánk kötődő

  • multimédia alkalmazása,
  • mLearning/eLearning és környezete,
  • felhőalapú szolgáltatások,
  • multimédia és a tudományos kutatás összefonódása,
  • multimédiafejlesztések, eredmények, alkalmazások.

Letölthető a konferencia programja.

A plenáris előadásokról

Ez a 25. jubileumi rendezvény áttekintette a szakosztály eddigi tevékenységeit például a plenáris ülésen Dr. Berke József alapító tag, első szakosztályelnök „Multimédia az oktatásban szakosztály története” fényképes előadásával. Dr. Magyar Miklós professzor alapító tag, alelnök „Egy Baby Boomer rendhagyó gondolatai a multimédiáról”, című Skype-on keresztül tartott előadásával képet adott arról, hogy a „kortárs szemtanú az egymást követő generációkkal, nemzedékekkel együttműködve tapasztalhatta meg a változásokat, a fejlődés átalakulási szakaszainak történéseit”. Majd az elmúlt év kutatásairól, a szakma irányvonalairól, gyakorlati eredményeiről szóló előadások következtek két napon két-két szekcióban. Kerekasztal beszélgetés keretében a közeljövőben megvalósítandó felnőttkori kötetlen, önálló tanulásra szolgáló (multimédia) tananyagok minősítésének kidolgozandó rendszeréről beszélgettünk Dr. Elsayed Hassan, Dr. Gerő Péter, Dr. Seres György és Sulyok Tamás moderálásával.

MMO2019 résztvevők

A szekció-előadásokról

Már számos alkalommal részt vettem előadóként a nyár eleji MMO konferenciákon szakmai előadással, magyar és/vagy angol nyelvű cikkel, poszterrel az oktatói csapat tagjaival, illetve mentorált hallgatóimmal együtt. Legutóbb tavaly is, lásd Multimédia az oktatásban 2018.

2019-ben „A magyarországi felsőoktatásban oktatók és hallgatók e-eszközhasználati attitűdje – Egy félig strukturált interjús mintakutatás eredményei” címmel tartottam előadást 20 percben, amely a konferencia „Multimédia-fejlesztések, eredmények, alkalmazások bemutatása / mLearning, eLearning és környezete” szekciójába került.

Ahogy absztraktomban írtam, „Az előadásban a tanár–hallgató interjúalanyok e-learning attitűdjébe kapunk bepillantást annak kapcsán, hogy mit jelent számukra az e-learning, hogyan értelmezik, mi tartozik az elearning kifejezés ernyője alá? Tanítási/tanulási munkájuk során milyen arányban használnak e-eszközöket? Milyen e-eszközöket és miért, hogyan használnak? Hogyan fejlesztik e-eszköztárukat? Az e-elemek tanításba bevonása hogyan hat a hallgatói motivációra és eredményekre a tanárok és a hallgatók szerint? Ha nem lennének e-eszközök, mi hiányozna számukra a leginkább? Melyik, miért és mennyire fontos a hallgatók és a tanárok számára a következők közül: tananyag, tanári magyarázat, tudományos alapok, trendiség? A kutatás alapja lehet egy széleskörű, nagy létszámú magyarországi és határon túli tanári–hallgatói populációkat vizsgáló kvantitatív kutatásnak.”

Mentorált hallgatóim/volt hallgatóim kiváló előadásokat tartottak. Öt díjat nyertek el a már második évben meghirdetett szakdolgozatok és TDK-dolgozatok versenyben, illetve szekcióikban tartott előadásukkal, a konferencia-kiadványban megjelent cikkükkel.

Vidovenyecz Zsolt, volt konzultáltam, barátom idén is elhozta „utazó kiállítás” keretében gyűjteménye egy részét, amelyhez kapcsolódva „A magyar számítástechnika hőskorának „leg”-jei” címmel tartott tárlatvezetést. Virtuális múzeuma a https://www.holdcomputers.com/-on tekinthető meg.

MMO2019 Régi magyar számítógépek kiállítás, Hungarian Old Computers kiállítás

Kaczur Sándor kolléga minden résztvevő számára érdekes multimédiás előadást tartott az MMO 2019 konferencián „Térképek dinamikus ábrázolása Google Charts, Java és JavaScript eszközökkel” címmel. Ez az előadás a „Multimédia és a tudományos kutatás összefonódása/ Multimédiafejlesztések, eredmények, alkalmazások bemutatása” szekcióba került.

„A Google Charts egy weblapokba beágyazható, JavaScript-re épülő keretrendszer/példatár, amely kiválóan használható az oktatásban úgy, hogy különféle adatforrásból származó – vagy dinamikusan előállított – adatokból egyszerű, látványos, weblapokon könnyen megjeleníthető grafikus objektumokat hozunk létre. A hozzá kapcsolódó felhő alapú szolgáltatások ingyenes és fizetős formában is rendelkezésre állnak. Az ismertetett esettanulmány 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.” – írja Sándor absztraktjában.

Sándor előadásának prezentációját ILIAS e-learning tananyagban tesszük elérhetővé tanfolyamaink résztvevői számára.

Sándor előadásának témája a Java EE szoftverfejlesztő tanfolyam 1–4. óra: Elosztott alkalmazások, webszolgáltatások és 13–16. óra: JSON feldolgozás alkalmaihoz kapcsolódik.

A fotópályázatról

Az MMO Szakosztály által meghirdetett fotópályázaton Táj kategóriában Szűcs Tibor különdíjban részesült Pirkadat című pályamunkájával:

Az MMO Szakosztály által meghirdetett fotópályázaton Táj kategóriában Szűcs Tibor különdíjban részesült Pirkadat című pályamunkájával

„A fotó 2018. július 2-án készült, Japán legmagasabb hegyén/vulkánján a Fujin. Július elején a napfelkelte nagyjából 4 órára esik, ám már fél órával korábban elkezd világosodni az égbolt alja, és a napfelkelte nagyjából egy órán át nyújt számunkra fényekben gazdag izgalmakat. A Fujiról fontos megemlíteni, hogy sok esetben mágnesként vonzza a felhőket. Nekünk mázlink volt. Nem is kicsi, ugyanis végig csillagos ég alatt másztunk, a napfelkelte felhőmentes volt, ám miután leértünk a hegy lábához, az egész vulkán felhőbe öltözött.

A terv az volt, hogy éjszaka felmászunk a vulkán peremére, majd a keleti oldalon megvárjuk a napfelkeltét, hiszen a felkelő nap országának legmagasabb pontjáról megnézni a felkelő napot meglehetősen vagányul hangzik. De ott fent lenni nem csak egy menő gondolat beteljesedése, hanem olyan élmény, melyet mindenkinek látnia kellene. Egyetlen baj van vele: elkezd a nap felkelni, aztán a következő pillanatban huss, már magasan jár. Természetesen ha nem is a szó szoros értelmében vett pillanatról van szó, de azért a kb. 10 percnyi páratlanul csodás élményért – amíg a nap felbukkan a horizonton – megéri hat órán keresztül hegyet mászni – a metsző szélben és közel zéró fokos hőmérsékletben fagyoskodni -, valamint kihagyni az éjszakai alvást, és másnap kókadozni.

Ebbe a kb. 10 percbe kell belezsúfolni mindent, az egyszerű emlékfotót, a pillanatról készült kiváló képeket, és természetesen a napfelkeltében elmerengeni. Nem egyszerű, mindenesetre mozgalmas, izgalmas, lenyűgöző, szívbe markoló és legfőképpen egy életre szóló élmény.” – írja a fényképről Tibor.

Időjárás Budapesten

Talált időjárás Widget

A Widgets constructor – OpenWeatherMap weblapon nézelődve megtetszett ez a Widget:

aktuális időjárás Budapest

Főleg az volt nagyon szimpatikus, hogy milyen egyszerűen beépíthető mindez egy webes/mobil felületre az alábbi JavaScript forráskóddal:

Mindössze egy regisztráció szükséges hozzá a Members OpenWeatherMap weboldalon a fenti forráskódba behelyettesítendő API kódért. Az egy sorba ömlesztve kapott forráskódot a Javascript Viewer, Beautifier and Formatter, Editor weblapon formáztam könnyen olvashatóvá.

Saját fejlesztés

Kedvet kaptam ezt a funkcionalitást összerakni úgy, hogy a hálózati kommunikációra helyeztem a hangsúlyt.
A nézet réteg ezért igen egyszerű, Java swing felületen, JFrame form-ként varázsolt az alábbiak szerint, mindössze JPanel és JLabel vizuális komponensekből áll. Egy JLabel osztályú komponens képes szöveg és/vagy kép megjelenítésére is.

aktuális időjárás Budapest

1. feladat

A modell rétegben tárolt település nevét és a szolgáltatás igénybevételéhez szükséges API kulcsot összerakva a Current weather data – OpenWeatherMap oldal specifikációját követve, megkapjuk az adatok lekérdezéséhez szükséges URL-t:

időjárás API URL

2. feladat

A hálózati kapcsolatot felépítve el kell kérni ( GET) az URL-ről kapott JSON formátumú adatot és tárolni kell azt a modellben ( jsonPuffer). A kivételkezelést nem részleteztem, mert most nem ezen van a hangsúly.

A jsonPuffer objektum ezt tartalmazza:

IdojarasJSON

A könnyen átlátható formátumot a JSON FORMATTER & VALIDATOR weblapon állítottam elő.

3. feladat

A JSON-t fel kell dolgozni és a különböző adatokat formázni/konvertálni kell, alkalmazkodva a megjelenítés igényeihez (például hőmérséklet Celsius fokban egész számra kerekítve, szélsebesség egytizedes pontossággal, hónap neve angolul, szükségesek a megfelelő mértékegységek). Külön gondoskodni kell arról, hogy az aktuális időjárást szimbolizáló ikonhoz (képként külön letöltve) is hozzájussunk, mert az API csupán az útvonalát jelentő URL-ből csak a fájl nevét (azonosítóját) adja meg. A kivételkezelést itt sem fejtettem ki.

4. feladat

Végül a modelltől elkért adatokkal frissíteni kell a nézetet.

Az eredmény

IdojarasBudapest


IdojarasLondon

IdojarasHouston

IdojarasTokyo

Aki kedvet kapott, annak többféle API is rendelkezésére áll, dokumentációval és példákkal együtt a https://openweathermap.org/api weboldalon. Kísérletezni bátran szabad, illetve érdemes megnézni és értelmezni azokat az adatokat, amiket JSON formátumban visszakapunk, de ehhez a feladathoz nem volt rájuk szükség.

A bejegyzéshez tartozó teljes forráskódot ILIAS e-learning tananyagban tesszük elérhetővé tanfolyamaink résztvevői számára.

A feladat a Java EE szoftverfejlesztő tanfolyam 9-12. óra: XML feldolgozás és 13-16. óra: JSON feldolgozás alkalmaihoz kapcsolódik.

Denevérek a barlangban

Évekkel ezelőtt hálózatos Java EE esettanulmányt akartunk készíteni Lengyel Borisz kollégával. Ötleteltünk: milyen technológiával és hogyan kommunikáljon egymással a szerver és a kliens(ek). A távoli metódushívás (Remote Method Invocation) mellett döntöttünk és elkészült a denevérek a barlangban projekt, amely evolúciós projektként azóta több változatot is megélt. A felhasználói felület (barlang) betölt néhány képet (denevér kliensek), amelyek a szerver segítségével mozognak.

Ismertetjük a tervezés folyamatát, a kliens és szerver funkcióit részletesen, végül ötleteket adunk a továbbfejlesztésre.

A főbb feladatokat így határoztuk meg:

  • az RMI kommunikációs módszer megismertetése,
  • az RMI szolgáltatás reprezentálása látványos grafikus/swinges klienssel,
  • alternatíva nyújtása a TCP protokoll közvetlenül csatlakozó socket-jére.

Elkészítettük az alábbi osztálydiagramot (persze ez nem az első változat):

Denevérek a barlangban - Osztálydiagram

A szerver és kliens funkcióit megvalósító osztályok/interfészek feladatait így határoztuk meg:

BarlangDenevérInterfész interfész:

  • véletlen 5 és 10 közötti a denevérek száma,
  • méretek a GUI-hoz.

Denevér osztály:

  • megvalósítja az RMI kliens funkciót,
  • JLabel leszármazott, külső képfájlt tölt be ( bat.jpg),
  • egyedi azonosítója van,
  • eldönti mozgásának irányát (4) és léptékét (3), mintha ultrahangot adna,
  • a szerver megadja neki, hogy az új helyre elmozdulhat-e,
  • saját magát képes mozgatni.

Pozíció interfész:

  • öröklődik a java.rmi.Remote interfészből,
  • két távolról hívható metódus fejét tartalmazza.

BarlangSzerver osztály:

  • megvalósítja az RMI szerver funkciót,
  • implementálja a Pozíció interfészt,
  • JFrame leszármazott,
  • figyel arra, hogy a denevérek ne mozogjanak ki a barlangból.

BarlangFelület osztály:

  • JFrame leszármazott,
  • GUI az RMI kliensek megjelenítéséhez.

BarlangSzerverTérkép osztály:

  • JPanel leszármazott,
  • GUI a szerveren a kliensek mozgásának követésére.

Ha futtatjuk az elkészült szerver és kliens programot, akkor ezt láthatjuk:

Denevérek a barlangban - animáció

A fejlesztés és tesztelés közben sok-sok továbbfejlesztési ötletet/javaslatot fogalmaztunk meg:

  • háttérkép a barlangról,
  • a háttérkép megvalósíthat labirintust, koordináta-rendszert,
  • átlátszó illetve egyedi képfájlok a denevéreknek,
  • a denevérek mozgásának tetszőleges iránya (360°),
  • a denevérek mozgásának egyedi léptéke,
  • a denevérek figyeljenek egymásra (ne ütközzenek össze),
  • a denevérek figyeljenek a környezetükre (ne ütközzenek bele sziklákba, cseppkövekbe),
  • a szerver követheti a denevérek útvonalát,
  • a szerver archiválhat, szerializálhat, készíthet statisztikát.

A bejegyzéshez tartozó – több lépésben továbbfejlesztett – forráskódot ILIAS e-learning tananyagban tesszük elérhetővé tanfolyamaink résztvevői számára.

A feladat a Java EE szoftverfejlesztő tanfolyam 21-24. óra: RMI alapú kommunikáció alkalmához kapcsolódik.