2009-01-22

JUM 09.01.21

Ismét konf. beszámolót írok, de azért nem cél a témára való teljes rácuppanás. Nézzük csak: a tegnapi Java User Meeting a Számalk épületében kapott helyet, ami a hazai számítástechnika 20-30 évvel ezelőtti temploma. Az épület emiatt inkább hasonlít egy ódon főiskolára mint egy modern irodaházra.

OSGi

Az első előadás az OSGi-ról szólt, ami egy dinamikus modularizációs keretrendszer (óeszdzsíáj, ezt mindig le akartam így írni, hát most tessék). Talán legközismertebb működő példa az Eclipse, ami ilyen alapokon fut, ugyanis a benne használt Equinox is egy OSGI implementáció.

Volt rövid elméleti bevezető aztán gyakorlatiasabb demó. Egy Eclipse-ben láthattuk először egy HelloWorld bundle (így nevezik az alapegységet) létrehozását nullából, aztán némileg összetettebb példák működését. Kb. úgy lehet létrehozni mint egy plugin-t, tehát new project, ... és ki kell választani hogy nem Eclipse hanem standard OSGi környezetben akarjuk futtatni. Ha jól sejtem nem árt ha benn van az IDE-ben a Plugin Development Environment installálva. A rendszer classloader filozófiája elég kifinomult, emiatt lehetőség van verziózott modulfüggőségek megadására a megfelelő helyeken - azt hiszem a manifest fájlban. Meg lehet adni verzió intervallumokat, egy környezetben működhet többféle verzió is egy adott egységből, satöbbi. Nekem úgy tűnt, hogy ez hasonlít a .net Assembly kezelésére. Felmerült egy kérdés, hogy ez vajon kiküszöböli-e a "bundle-hell"-t, a bundle függőségek összekuszálódását, hogy pl. a log4j-t beteszem a saját bundle-mba hogy ne váljon külső függőséggé. Ha értelmesen használják akkor kiküszöböli. Megemlítették, hogy van Maven plugin vagy bundle vagy mi, ami magától lehozza a szükséges függőségeket. (Van valakinek linkje, tapasztalata erről?)

A bundle-eket lehet futtatni, próbálgatni az IDE-n belül. Kapunk egy OSGi konzolt, amin különböző parancsokat bepötyögve tudjuk elindítgatni, leállítgatni és monitorozgatni a különböző bundle-okat. Hasonlít egyébként a Windows service-ekre első ránézésre: ott figyelnek a bundle-ek, vannak állapotaik miszerint el vannak indítva, installálva vannak de nincsenek elindítva, illetve az installálásuk nem sikerült teljesen. Némi infó még itt.

Volt szó eseménykezelésről, ami első látásra hasonlít a JMS-re, viszont lényegesen lightweightebbnek tűnik.

Az előadók elmondása szerint jobban bejön nekik mint alkalmazásszerverek és J2EE/EJB-k használata, mert egy ilyen OSGi konténer nagyon hamar - a másodperc törtrésze alatt - újraindul, kevés gond van vele. (Hát én azért vállalati alkalmazásoknál eléggé meg vagyok elégedve az EJB3-mal, szóval ezek után még nem váltanék. Megbecsülöm az EJB appszerver admin konzolokat, realm és resource konfigurációs szolgáltatásokat amiket egy-egy appszerver ad.) Szó volt még Spring integrációról, de ez enyhén szólva nem hangzott jól. A bundle-n belül van applicationContext vagy a bundle-k vannak egy nagy applicationContext-ben benne, vagy a kettő egyszerre? Kínzó kérdés.

Adobe Flex

Cornel Creanga az Adobe bukaresti irodájából jött el evangelizálni. Az elején megijedtem, hogy a mainframe-ektől indul az előadás, de szerencsére hamar eljutottunk a Flash-ig és annak jelentőségéig. A demók mindenképpen meggyőzőek voltak, de nagy bánatom hogy nincsenek Flash és az erre épülő Flex fejlesztéshez ingyenesen használható eszközök, csak az Eclipse alapú Flex Builder. Említésre került az AIR, ami egy desktopos flash futtatásra alkalmas platform Webkit alapokon.

A számunkra legérdekesebb dolgok az előadás végén hangzottak el a java integráció kapcsán. Alapvetően a Flash HTTP, SOAP és mindenféle socket alapokon tud kommunikálni a szerveroldallal, de van lehetőség olyan elérésre, ami a JavaScript JSON mechanizmusához hasonlóan automatikusan elvégzi a távoli metódushívásokat és az eredmények továbbítását a szerverről a kliensre. Van hibernate integrációs szerveroldali komponens, ami gondoskodik a kliensről leküldött objektumok megfelelő perzisztálásáról.

Demózásra kerültek olyan használati esetek, amikor a szerver push-olja az adatokat a kliensre, vagy amikor egy A kliensen átírt adatok rögtön megjelentek a B kliensen reload nélkül (kliens = web böngésző). Láttunk példát Flash pdf dokumentumba való beépítésére is. Talán a legfontosabb, hogy van egy Tour de Flex példaalkalmazás amit érdemes lehet nézegetni. Elvileg sok érdekes példát tartalmaz.

Kaptunk egy mini O'Reilly könyvet Getting Started With Flex 3 címmel. Villamoson való olvasgatáshoz tökéletes.

Előadások után elmentünk páran a Bajor Sörözőbe a Móriczra, ahol egyszer ki kell próbálni a sztrapacskát. Megbeszéltük a nagy nemzetközi helyzetet Cornel-lel. Náluk is Microsoft-ot használnak az állami szektorban, a bundáskenyeret bundáskenyérnek hívják és így tovább.

A legközelebbi JUM alkalom márciusban lesz, ahol jó lenne behajtani a most elmaradt JPA 2.0-t. Többször is elhangzott az a szó, hogy Groovy és hogy többeket is érdekelne egy ezzel kapcsolatos eszmefuttatás.

2009-01-08

Bp Newtech Meetup

Elég dinamikusan alakult a januári Bp. Newtech Meetup programja. A blog szerint az volt az alapfelállás, hogy megismerkedhetek majd végre a l3onardo-val (a.k.a 3dForAll) és a Google App Engine-nel, amit az OpenSocial fejlesztésekhez használhatnak szerveroldalnak azok, akiknek nincs saját szerverük vagy környezetük. (Ha jól tudom Python-ban kell programozni.) A l3onardo lemondódott, helyette viszont bejött egy Microsoft-os hardver -a Surface- bemutatása (interaktív asztal), ami szintén hamar lemondódott. Mindegy, maradt még a TurulMeme, ami érdekelt valamennyire, meg a többi előadás is "szőrmentén". Egyébként is régen voltam már.

Velvárt András (Response) - Zoomery - Anything Zooms!

Microsoft Silverlight technológiára épülő, DeepZoom technológiát használó, weboldalba is ágyazható alkalmazás. Vannak dokumentumaink amiket képpé konvertál és a Google Earth-hoz hasonló módon jól belenagyíthatunk a felületen szétszórt esetenként több száz oldalba. Lehet rendezgetni, keresgélni benne. Képalbumok készítéséhez is jó. Lényegretörő előadás jó demóval gond nélkül a szervezői Macintoshon, ami a MS-es technológia miatt nagy szó hogy pöccre működött. Apropó, a notebook képe a vetítővászonra volt kirakva, ami elég jól nézett ki a Bem moziban. Szóval jó képet csinál egy ilyen Mac. Csak sajnos elég kicsi volt ez a mozi és állítólag sokan nem fértek be a terembe, kinn ragadtak. Kb. 130-an regisztráltak, kb voltak is annyian. Kifelé jövet a pultnál sem lehetett egykönnyen forralt borhoz jutni. Node visszakanyar az előadásokra:

Bíró Tamás (SenseNet) - Hibrid open source - azaz nyílt forráskód Microsoft alapon

Ahogy a címből nem derült ki ők ECMS (Enterprise Content Management System) fejlesztéssel foglalkoznak. A cég immár több mint 10 éve megvan, 40 fős, 400 milliós az éves forgalmuk ami főleg a bemutatott termékre épül. C#-ben írják a szoftvert, eddig nem volt nyílt forrású mostantól pedig az lesz. Pár viszonylag nagyobb hal használja a terméket, pl. tv2. Valamennyire konkurenciájuk a SharePoint és ha nem kötött a platform, az Alfresco (java). Érdemes tudni róla, hogy van egy ilyen alternatíva.

Hodicska Gergely - Ustream Watershed API

Az UStream egy szilícium-völgyi cég akik saját elmondásuk szerint nagyjából egyeduralkodóak a live video streaming területen. Ezek szerint van magyar vonatkozásuk is. Gyakorlatias előadás volt ahol megmutatták, hogyan lehet egy mobiltelefon kamerájáról élőképet sugározni a weben. Ez látványos volt: a mobilról 3G-n bement a kép az internetre, egyenesen USA-ba, valamelyik szerverükre (használhattak volna Magyarországon lévő tesztszervert is, de valamiért nem így jött ki). A böngészőbe az URL-t beírva az élőkép megjelent a mozivásznon. Kicsit szaggatott és keveset késett, de egy mobilról ennyi belefér. Az üzlet a dologban, hogy (pézért) bárki használhatja a szolgáltatást, felteheti a saját logóját a sarokba, lehet mindenfélét konfigurálni, max hányan nézhessék egyszerre, beágyazható saját weboldalba, stb. Kíváncsi lettem volna a technológiákra és hogy mi a magyar csapat szerepe - nemrég valami fejlesztőket is kerestek ha jól emlékszem. Legfeljebb majd emailben megkérdezem.

Séra László - TurulMeme

Ahhoz képest hogy a baráti társaságom nagy része magasan képzett informatikus, a mai napig szeretnek "FW: király", "vicces!" című egylinkes leveleket küldözgetni kézzel összerakott címlistára vagy levelezési listára. Amellett hogy nem vagyok lusta nyomogatni a delete gombot, bizonyos linkekre kíváncsi lennék néha attól függően hogy ki küldte és milyen témában. Van erre már kismillió megoldás a digg-től a delicious-on keresztül az furl-ig. Annyira érdekel a téma, hogy még én is elgondolkodtam egy ilyen rendszer fejlesztésén -ami a meglévőek hiányosságait pótolja, sőt valami kis prototípust össze is dobtam magamnak. (Lehet hogy egyszer majd írok róla.) A TurulMeme-re visszakanyarodva kíváncsi lettem volna rá 5 percben, hogy miben jobb ez az említett rendszereknél és miért lesz nekem nagyon jó ha csatlakozom. Sajnos ezekre a dolgokra nem kaptam választ. Az előadó inkább csak azokkal a témákkal foglalkozott egy prezentáció pontjaiban amiket ő tart érdekesnek. Az idő is gyorsan elszaladt, úgyhogy csak egy kérdésre maradt idő. "Miért?" Ami mégiscsak nekem is érdekes volt: szintén MS technológia, MSSql, C#, Lucene (azt hittem ez java-s!), 2 nap alatt fejlesztették ki, legalábbis az alapjait. Közben rápillantottam a turulmeme.com-ra és első ránézésre úgy néz ki mint egy sima híraggregátor szájt, amiket általában nem szeretek. Azon kéne dolgoznia valakinek, hogy ez a véleményem megváltozzon. Végül a névről: szerintem elég röhejes még akkor is ha Turulmém-nem kell ejteni.

Megemlítették még a szervezők hogy a rendezvényt a Virgo Systems szponzorálta, ha jól hallottam. Ja igen, osztogatásra került még egy kis könyecske: Startup Guide, vagy Üzleti Tanácsok Kisvállalkozók részére a pressonline támogatásával. Innen is letölthető egyébként, még nem olvastam bele.

+1, ami nem előadás volt, hanem csak úgy hallottam: AutoHotkey. Érdekes script-eket lehet csinálgatni mindennapi használatra, állítólag hasznos / jópofa. Open Source.

Sajnos alig volt ismerősöm az eseményen, úgyhogy nem tűnt annyira jó bulinak ottmaradni toporogni a tömegben. Na majd legközelebb, a 2 éves szülinapon.