Üdvözlök mindenkit !
Hosszú nap volt, sok információval.
Szerintem ne helyettesítsük a Jim Robertson blogjára mutató linket, az én beszámolómat inkább fűzzük utána, mert ő az előadások alatt közvetlenül jegyzetelte a blogjába a hallottakat (az ő előadása éppen ezért hiányzik a blogból, de ezt én pótolom itt), ahogy látom részletesen, és tárgyilagosan, és még fényképekkel is fűszerezi.
11:00 Megnyitó,
Dave Wood a Cincom EMEA (Európa, Közel-Kelet és Afrika) területi igazgatója üdvözölte a résztvevőket.Statisztikai adatokkal kezdte: 65-70 résztvevő (a Jim által említett 100 a teljes létszám volt), 50 vállalattól, a világ legkülönbözőbb országaiból Németországtól Nigériáig.
"A kis dolgok sokat számítanak."
George Bossworth, egykor a Smalltalk/V VM egyik fejlesztő vezetője a Digitalk-nál, vitaindító előadásában kb. 35 éves tapasztalata alapján foglalta össze a szoftver ipar mai kihívásait.Igen szemléletes, konkrét ipari példákkal illusztrálta rövid mondatokban megfogalmazott tanulságait.
Azzal kezdte, hogy számít az, ahogy gondolkozunk (a dolgokról).Sokszor kis változások a nézőpontban, vagy kis belátások nagy hatással lehetnek arra nézve pl. ahogy szoftver rendszereket építünk.Megvizsgálta, mi az, ami miatt a Smalltalk lehetővé tette, hogy folyamatosan új nézőpontokból intézzen kihívást a saját berögzött minták, szokások megújításához.
"Túl sok részlet megakadályozhat az egész megértésében. "Ez volt az első tanulság, amit még a 80-as években levont a Smalltalk kód és a Pascal kód olvasása közben.
Egy példa:
Smalltalk:
+ aPoint
^ (x + aPoint x)@(y+ aPoint y)
C++:
addPoints(Point a, Point b)
{ return new Point (a x + b x, a y + b y)}
Melyik olvashatóbb?
A szoftver fejlesztésre érdekes megállapítása volt: Ahogy egy autó építése sem CSAK mérnöki feladat, hanem vezessük, érezzük, változtassuk a tapasztalatoknak megfelelően, hasonlóan a szoftver fejlesztésénél is célszerű minél koraibb szakaszban használni, kipróbálni, érezni a rendszert.
A különbség a kis és a nagy szoftver rendszer között: a nagy rendszerek fejlődnek, nem pedig egyszer összeépítik és leszállítják őket.És itt a Smalltalk előnye: könnyű átalakítás (Szinte minden mai Smalltalk rendszer beépített része a "refactoring browser").
Másik "megvilágosító" megállapítása volt: a rendszer a felhasználó szempontjából: A szoftver az, amivel együtt élünk, nem pedig "leszállítják".
Itt a régi paradigmák megváltozására gondolt: Mi van akkor, ha a környezet, a folyamat, amit támogat a rendszer, gyakran változik? A VerzióSzám rendszer jó (volt), de mi van, ha 6 hetenként kell módosítani, adaptálni, igazolni? 6 hetenkénti - sőt folyamatos - átalakításnál már nem gondolkodhatunk a "verziószám"-on alapuló fejlesztés fogalmaiban.
További változások, ahol a régi programfejlesztési paradigmákat újra kell gondolni: pl. a web. A web (hasonlóan a többi modern nagy rendszerhez) folyamatosan fut.A web-et nem "kapcsolják ki". Itt felmerül a "változtatás a rendszer futása közben", ami a Smalltalkban természetes, a módosítás-fordítás-szerkesztés ciklusú nyelveknél szinte elképzelhetetlen.
És utoljára, de nem utolsó sorban - az is fontos, hogy élvezzük, amit csinálunk.
"Cincom Smalltalk termék irány"
James Robertson, Cincom Smalltalk START team termékmenedzser
Inkább a közeljövő "taktikai" irányaiban gondolkozva: Az ügyfelek igényeire odafigyelve a konferencián is visszajelzést kértünk arról, hogy az egyes irányok mennyire fontosak az ügyfeleinknek. PL. más nyelvekhez való csatlakozás, vagy fordítva, csatlakozás a Smalltalkhoz más nyelvekből, a Smalltalk fejlesztés könnyítésére alkalmazás típus sablonok kínálata, és a klasszikus programozók számára megszokottabb típusú fejlesztési lehetőség beépítése.
"ObjectStudio 8"
Andreas Hiltner, Cincomm Smalltalk ObjectStudio vezető fejlesztő, Georg Heeg, a Georg Heeg eK elnöke
A Cincom Smalltalk több Smalltalk dialektust jelentett:
- VW (VisualWorks) legendás Palo Alto Smalltalk-80 utódja, 18 különböző platformon fut
- ObjectStudio (eredetileg Enfin), nagyvállalatoknak, Windows-ra kkihegyezett Smalltalk változat.
(és persze a VSE, a Viual Smalltalk enterprise (Digitalk), amelyet karbantartunk)
Az ObjectStudio és a VisualWorks egyesítése a közelmúlt és a jelen egyik fő feladata a Smalltalk fejlesztés számára.
A kiinduló gondolat az volt, hogy úgy egyesítsük a két Smalltalk dialektust, hogy mindegyiknek megmaradjanak az előnyei, és a "másik" Smalltalkból - azt mintegy kiegészítve - az "új" osztályok, kész keretek elérhetők, használhatók legyenek.
A Smalltalk, mint programozási nyelv, erős modellezési eszközökkel rendelkezik, kis túlzással: a Smalltalkban minden modellezhető.Így egy másik Smalltalk dialektus is.Persze célszerű jobban integrálni, már csak sebesség szempontból is.
A technikai részleteket nem érintve, az eredmény: Az ObjectStudio az egyesítés után a VisualWorks virtuális gépén fut, a VisualWorks "alrendszereként", megtartva a saját, windows-ra optimalizált előnyeit. A VisualWorks bármelyik Namespace-éből hívhatók az ObjectStudio elemek, és fordítva. Így mindkét rendszer előnyére válik: A VisualWorksben lehetséges lesz a native Windows elemek használata (a platformfüggetlenség miatt emulált elemekből állt össze a felhasználói felület), az ObjectStudióból pedig elérhetők a VW csomagjai (SeaSide, Jun stb).
"A Cincom Smalltalkjai együtt: VW ObjectStudio programozóknak és ObjectStudio 8 VW programozoknak"
Mark Grinnell, Cincomm Smalltalk ObjectStudio vezető fejlesztő,
James Roberston,
Először Mark bemutatta, milyen egyszerű egy VisualWorks alkalmazásba beilleszteni az ObjectStudio felhasználói felületet (GUI), és a kezelését, azután Jim bemutatta a fordított irányt: az ObjectStudio-ból (lényegében a Namepace-el minősített nevek használatára egyszerűsödve) VW osztályok használatát. Mindezt már élesben az egyesített VW-OS8 rendszerben. Ami az ObjectStudio fejlesztőknek új, hogy az ObjectStudioból is a VisualWorks Class browsere és Debuggere fut.
"Hogyan cseréljünk motort, miközben a GARÁZS mozgásban van"
Niall Ross, Konzultáns, eXtremeMetaProgrammers
A cím nem tévedés, Niall, a nagy metaprogramozó, két évvel ezelőtti előadása szólt arról, hogyan tehetjük könnyebbé a "motorcserét mozgó autóban", vagyis metaprogramozási eszközökkel hogyan biztosíthatjuk, hogy futó rendszert változtatunk folyamatosan és tömegesen a változó körülményekhez adaptálva anélkül, hogy közben le kelljen állítani a rendszert.(Gondoljunk az előnyeire pl. egy banki rendszernél: a tranzakciók élesben folynak tovább, miközben menet közben pl. új típusú műveleteket építünk be a rendszerbe, vagy éppen a változó adórendszabályokhoz igazítjuk a rendszert, stb. stb).
Most Niall eggyel nagyobb falatot választott, amire a cím is utal:
Egy rendszer áttevése (mondjuk egy másik programozási nyelvre) az ideális "fantázia világban" úgy történik, hogy a rendszert befagyasztják, elkezdik az áttevést, és szerencsés esetben néhány hónap, év múlva az áttett rendszer ugyanazokat az eredményeket adja a regressziós tesztekben, mint az eredeti. Nem szerencsés esetben csöndesen kimúlik a projekt.
A való élet azonban más. Úgy kell motort cserélni, hogy közben nemcsak az autó, hanem a garázs is mozog.Ami azt jelenti, hogy az áttevés elkezdése UTÁN a "régi" rendszerben TERMÉSZETESEN folytatódik a fejlesztés, és az is változik. Lehetséges ez?
Niall válasza: Ne harcoljunk a valóság ellen. Ússzunk vele.
Egy példán mutatta be, a VisualWorks 2.4-ről a 7.4.1 (legújabb) verziójára való áttevés úgy folyt, hogy közben a 2.4-es rendszert is folyamatosan fejlesztették (mert a környezet miatt nem állhatott le az alkalmazás fejlesztése).
A GLORP és a Store együttes használata lehetővé tette, hogy minden nap a régi rendszerből az aznapi változtatásokat áthozva, közben az átírás is folyamatosan menjen.
"Átállás ObjectSTudio 8-ra"
Andreas Hiltner,
Mark Grinnell
Ez inkább a "klasszikus" ObjectStudio alkalmazásokat fejlesztő ügyfeleket érdeklő előadás a technikai részleteket mutatta be, hogy a két Smalltalk dialektus egyesítésével - megpróbálva ugyan a minimumra szorítani, de mégis - milyen elkerülhetetlen változásokat kell az ObjectStudio alkalmazásokban figyelembe venni a globális változóktól kezdve a felhasználó által írt primitiv-ekig.
Üdvözlettel,
Kazsoki János,
( Cincom Systems )
----------------------------------------------
Report #3 ~ December 06, 2006
"Kereső modellezés - Egy csapat megközelítés az SAP-nál"
Heinz Ulrich Roggenkemper, Fejlesztési aligazgató, SAP Labs, USA/Németország,
Georg Heeg
Az üzleti folyamatok megújításáért felelős csoport vezetőjeként folyamatosan keresik az ügyfeleik igényeinek jobb összehangolását a potenciális szállítókkal.
Egy kísérleti projektet hajtottak végre a Smalltalk kipróbálására az SAP ERP rendszerében a Számladuplikátumok kiszűrésére. Tulajdonságok halmazának hasonlóságán alapuló szűréssel a rendszer kiszűri a lehetséges számladuplikátumokat.
A projekt 3 hétre lett tervezve, 2 munkatárs a Heeg-től, 2 az SAP-tól, és a legnagyobb meglepetésre alapvetően 2 hét alatt kész is lett (úgy, hogy közben az SAP munkatársak Smalltalk alaptanfolyamot is kaptak). Az eredmény: A "hasonlóság" rugalmas implementációja, és jobb megértése. Heinz szerint más rendszerrel nem lehetett volna így megoldani.
A folytatás: a szállítói (xCarrier) modul az SAP-ben, ahol a végfelhasználóknál hasonló rugalmasságot kell elérni, hiszen egy csomag szállítójának kiválasztási szempontjai minden ügyfélnél mások, és az optimális szállító a küldemény típusától is nagymértékben függ.
A "szabály gép" Smalltalkban, az optimálás ABAP-ban, a front-end gép Java Netweaver.
Ezután átadta Georgnak, aki röviden a Smalltalk rule engine-ről beszélt. A következtetés: A Smalltalk a legjobb prototyping technológia (ezt a bírálói is elismerik), igen alkalmas újszerű kísérleti eszköznek, mert a modellezési nyelv megegyezik a megvalósítási nyelvvel.
"Bevezetés a VisualWorks SAP NetWeaver Csatolójába"
Ralf Ehret, SAP, Németország
Taylan Kraus-Wippermann, Georg Heeg eK, Németország
Az előnyei: az SAP elérhetővé vált a VisualWorks fejlesztőinek, az SAP fejlesztői pedig profitálhatnak a Smalltalk modellezési erejéből.
a 3 technológiából most az RFC, illetve a WSDL/SOAP modulokon keresztüli kapcsolat valósult meg, az eXchange Infrastructure Adapter- en keresztüli kapcsolat fejlesztés alatt áll.
"A Store fejlesztési kérdései"
Alan Knight, Vezető fejlesztő, Cincom, Kanada
A Store Smalltalk objektumok relációs adatbázisokban (SQL) való tárolására szolgáló keretprogram, főleg a kód verzióinak tárolására használják. Az egyik fő fejlesztés az "árnyék fordítás": az adatbázisban tárolt összes definíciót először egy "árnyék" névtérbe fordítják, , és csak a sikeresen fordított kód kerül be az image-be.
"Számítógéppel segített menetrend készítés a Deutsche Bahn-nál"
Dr. Jochen Eckert, DB Systems, Németország
A többfelhasználós kliens-szerver alkalmazás lehetővé teszi a sínhálózat, váltók, jelzők, és minden vonat egyedi jellemzőinek figyelembe vételét, a futási idejét, és a várakozási időket segítséget adva a menetrendben a konfliktusok feloldásához 32000 vonat esetében.
A Web Services SSL kommunikáció (Martin Kobetic, Cincom) és a "Hatékony és karbantartható Teszt keretprogram (AMD) ki kellett hagynom az ügyfelekkel való közvetlen konzultáció miatt.
Délután négy ügyfél mutatta be röviden a fejlesztett felhasználói rendszert:
Andre Schnoor, Cognitone, "Összetett Multimedia alkalmazások"
Jan Lukes, Gehe, "Envy-hez hasonló Store"
Dr. Alfred Wullschleger, Schweizerische Natonalbank "Dinamikusan meghatározott Állapot Modell"
Uwe Danzenglocke, Steinmayr Net Intelligence, "Hálózatok konfigurációjának menedzselése és dokumentálása"
Este pedig - mint hétfőn is - kötetlenebb beszélgetések: Store, Runtime packager kérdései, Biztonság, ObjectStudio, Glorp stb. területekről vacsora után 21-től kb éjfélig. AZ érdeklődést mutatta, hogy 9 előtt 5 perccel egy csapásra kiürült az étterem, mert mindenki ment az üléstermekbe.
Üdvözlettel,
János
----------------------------------------------
Report #4 ~ December 07, 2006
OpenUP, Nyitott Egyesített Folyamat: Agile, Open Source és közvetlen"
Scott Amber, IBM Módszer Csoport, Kanada
Az intellektuálisan mindig kihívó Agile stílusban a következő pszeudo-Smalltalk kóddal mutatta be az előadását:
| előadó agileÁttekintés egyesítettFolyamat openUP |
előadó := Előadó new: "Scott Amber".
agileÁttekintés := AgileSzoftverFejlesztés new.
egyesítettFolyamat := UnifiedProcess new.
openUP := OpenUnifiedProcess new.
előadó butaViccetMond.
előadó bevezetés.
előadó kifejti: agileÁttekintés értékek.
előadó kifejti: agileÁttekintés elvek.
...
előadó kifejti: openUP holLehetLetölteni.
előadó demo: openUP.
előadó következtetés; zárómegjegyzések.
előadó tapsotKapott
ifTrue: [ előadó élveziAKonferenciaHátralevőRészét ]
ifFalse: [ előadó elsompolyogASzinről ]
Scott az OpenUP módszert mutatta be, amely több éve bevált, és teljesen, vagy részben alkalmas szoftver fejlesztési projektek sikeres végigvitelére.
"Web 2.0 SeaSide-al"
Michel Bany, Senior konzultáns, Cincom, Svájc
Michel különböző példákon keresztül bemutatta, hogy a Smalltalkból SeaSide-al hogyan használhatjuk az olyan technológiákat, mint XML, XHTML, CSS, RSS, JavaScript, Ajax és Comet.
"Web alkalmazás fejlesztés, telepítés és kezelés"
James Robertson, Cincom Smalltalk Termékmenedzser
James 4 évvel ezelőtt indította el a VisualWorks Web Services-ben megírt blog szerverét (ez az oldal is tartalmaz csatolást rá), és bemutatta, hogy azóta milyen kihívásokat kellett megoldani (hirtelen sok felhasználó, dinamikus keresés, spamkezelés, mentések stb.) az azóta folyamatosan futó rendszerben (ugye: Smalltalk, a négy év alatt összesen kétszer állt le: egyszer áramkimaradás volt, egyszer pedig külső hiba).
Ezzel az előadások befejeződtek, az ügyfelek visszajelzései következtek. A másfél órás fórum keretében sok észrevétel, javaslat, került részletesen terítékre.
És a délutáni kötetlen megbeszéléseken (mint esténként a konkrét területekről) még mindig tele voltak a termek.
A hangulatot mutatta, hogy több ügyféltől elhangzott: jó lenne, ha évenként rendeznénk meg a konferenciát a kétéves ritmus helyett.
Üdvözlettel,
János