JavaOne 2013 – Sunnuntai

No niin, löydän itseni jälleen kerran San Franciscosta. Kaupunki alkaa tulla jo tutuksi – tietää mistä löytyy mitäkin, ja perille löytää ilman Google Mapsiäkin. San Francisco on aika ennallaan – yksi asia vain muuttunut viime kerrasta. Täällä on aina ajateltu ympäristöystävällisesti – mutta uusi ilmiö on Priusten maahannousu. Arviolta noin kolmannes takseistakin oli mallia Toyota Prius – hyvästi vanhat jenkkiraudat, tervetuloa Japanilainen tehokkuus.

Oracle Openworld ja JavaOne taas yhdistettynä

Jotkut asiat eivät muutu kuitenkaan – näemmä edelleen langattoman verkkoyhteyden tarjoaminen muutamalle kymmenelle tuhannelle ihmisille on ylitsepääsemätön haaste, vuodesta toiseen. Keynote-puheen aikana kaikki langattomat verkot kaatuivat pariksi tunniksi, se reaaliaikaisista päivityksistä. Ehkä vielä joskus.. 😉

Tämä päivä meni vielä jetlagisissä tunnelmissa, aivot eivät ole täysin radallaan vielä, ja muutenkin väsymys vaivaa. Tänään oli silti helpohko päivä – JavaOne Keynote sekä käyttäjäryhmien pienempiä aiheita. Tässä päävaikutelmat päivästä:

Pääteemana näyttää olevan ihan sama aihe mistä itse olen tauhkannut jo jonkin aikaa innoissani: Internet of Things. Ajatuksena on periaatteessa se että tietotekniikka levitäytyy yhä laajemmille alueille. Ei vain työasemat ja mobiililaitteet, se jako kahteen on vanhentunutta. Tabletit näyttivät tietä, mutta olemme jo matkalla jossa kaikki on älykästä, ja kaikki on yhteydessä. Ajatellaan esimerkiksi kahvinkeittimiä, autoja, uuneja, ja JavaOne tapauksessa tuoleja. Keynote esityksessä mainittiin Raspberry Pi laite monia monia kertoja, ja se on teemana myös monessa teknisessä esityksessä sekä kilpailussa täällä. Joku oli rakentanut sellaisesta tee-se-itse-tabletinkin, nimellä Duke Tab ;).

Jos kaikki on ohjelmoitavissa ja yhteyksissä, voidaan mennä kahteen suuntaan. Laitteet voivat olla keskenään yhteyksissä, tai ne voivat olla yhteyksissä serverin kautta. Keynote esityksissä Java EE 7 näytti kyntensä. Lyhyesti summaten: Java EE 7 kicks ass! Jo aiemmat editiot ovat ottaneet helppouden huomioon, mutta EE 7 uudet piirteet kuten Websocket, JSON API, HTML5, ja entistäkin parempi CDI tuki yhdistettynä tarjoavat mahtavan pohjan serverilogiikan rakentamiselle.

Yksi demoista koski myös shakkipeliä. Shakkipeli oli toteutettu serverille Java EE 7:llä, ja siihen otettiin yhteyttä HTML5 mobiili-clienteilla, joista yksi oli iPad. Siihen otettiin yhteyttä myös kannettavalla tietokoneella, itse rakennetulla JavaFX:ää pyörittävällä tabletilla, sekä Raspberry Pi-robotilla joka siirteli shakkinappuloille samat siirrot aidolla shakkipöydällä mitä tehtiin millä hyvänsä muulla clientilla. Kaikki pyörittivät Javaa. Kaikki olivat yhteyksissä toisiinsa. Robotti muutti juuri Java Demogrounds-alueelle jossa se majailee lopun seminaaria.

2013-09-22 15.03.48

Embedded image permalink

Java SE 8 monottaa myös takamuksia! Ensi vuonna julkaistava Java SE 8 perusversio sisältää huimasti mehukkaita piirteitä, mutta varmasti merkittävin niistä on Lambda Expression. Ennestään oli tuttua miten se lyhentää kovasti koodin määrää Java-ratkaisuissa lähes kaikkialla, eritoten kokoelmien kanssa. Uusina oivalluksina tuli että se saa myös koodin olemaan luettavampaa; Katselmoitaessa/koodatessa/muutettaessa huomio keskittyy siihen mitä koodi todella tekee eikä kaikkeen mitä on pakko tehdä jotta sen saa toimimaan. Mielenkiintoinen lisäpiirre oli myös Java 8 Micro Editionin henkiinherätys ja linjaaminen yhdessä SE 8:n kanssa. Molemmat ovat tällä hetkellä täysin ominaisuuksin Developer Preview versioina ladattavissa ja kokeiltavissa. Jahka tämä rullaa viralliseen versioon asti ensi vuonna, ja etenee käyttöönottoon, sillä tulee olemaan laajoja positiivisia vaikutuksia koodiin. Brian Goetz totesi esityksessään:  ”code should look like the problem statement you are trying to solve”

Normaali Java (7) versio

2013-09-23 00.05.49

 

Ja yllättäen myös Netbeans editori on aikalailla kova juttu. Netbeans 7.4 demossa näkyi miten hyvä tuki siinä on web teknologioiden kuten HTML5+JavaScript koodaukseen, kehittämiseen, debuggaukseen ja ennenkaikkea yhdessä Java koodin kera. Lisäbonuksena on kyky ajaa ja testata koodia esim. kytketyssä iPadissä sensijaan että testaa koneella. No, tämä on vasta beta-tasolla, ja esityksessä demoefektin myötä tietysti netbeans kaatui 😉

Project Avatar julkaistiin open sourceksi, osoitteessa https://avatar.java.net/

stack

Project Avatar on JavaScript palvelukerros joka helpottaa dynaamisten JavaScript+HTML5 sovellusten tekemistä – riippumatta siitä onko käytössä REST vai WebSocket. Project Avatar tarjoaa JSF tekniikalle standardi-vaihtoehdon joka perustuu Thin Server Architecture:iin (TSA) – eli thin server, extremely rich client. Tätähän moni tekee jo nykyäänkin – JavaScript sovelluksia RESTful palveluiden päälle – nyt olisi vain luvassa apua siihen.

Huomenna alkaa sitten varsinainen myllytys. Olen buukannut runsaasti esityksiä Lambda Expressioneistä, virtuaalikoneen optimoinnista, Java EE 7:stä, Scalasta, jne. Kuten aiemmista kerroista olen oppinut, Twitter on hyvä pitää auki. Siellä on sykettä, näkemyksiä, ja mielipiteitä. Itse jäin miettimään että Oracle tuntuu tänä vuonna kulkevan samoja polkuja Javan kanssa mitä Google on kulkenut jo pitkään. Onko sieltä suunnalta löydettävissä jotain uutta mehukasta? En tiedä, mutta sitä odotellessa tuoreet versiot Java SE 8 ja Java EE 7 viihdyttävät ihan noissa tavanomaisissakin ympäristöissä. Java ME 8 ja JavaFX 8… ehkä…

Taas kerran tuli näkemystä myös tulevaisuuteen muutamaksi vuodeksi: Java SE 9 ja Java EE 8.

Java SE 9 - vähän tärähtänyt kuva ;)2013-09-22 22.52.32

Päivä päättyi Taylor Streetin verkostoitumismestan avaukseen juhlien muodossa. Itsellä ei väsymys antanut periksi jäädä kauaksi aikaa katselemaan, mutta jo puolessa tunnissa tuli nähtyä sen verran uskomaton määrä katu-uskottavia devaajapartoja että luvassa lienee mielenkiintoisia keskusteluja tulevina päivinä. 😉

2013-09-22 19.20.03

http://www.oracle.com/technetwork/java/index.html

Mainokset

Java One / Oracle Develop – Tiistai #javaone10 #javaone

Ja uusi päivä pyörähti käyntiin. Edellinen ilta huipentui Oracle Technology Network tilaisuuteen jossa oli tarjolla musiikkia, evästä ja verkostoitumista. Kello oli herättämässä puoli seitsemältä, eli 17:30 suomen aikaa, ja kahdeksalta ensimmäinen luento parc55:ssa.

Tiistain ensimmäinen luento käsitteli JAX-RS restful web serviceiden käyttöä identiteettipalveluiden kehittämiseen. Esimerkkinä oli openpdk, joka vaikutti mielenkiintoiselta ja jopa itselle käyttökelpoiselta.

Osallistuin myös java ee 6 uudet piirteet luentoon, joka käsitteli lähinnä best practises tapaan miten ne sopivat yhteen. Alan oivaltamaan miten monta näennäisen pientä muutosta voi kasautua ja muuttaa isosti tapaa ja tuottavuutta sen suhteen miten palvelinsoftaa koodataan. Kaikki osat ovat olleet olemassa jo pitkään, mutta nyt ne vain kasautuvat miellyttävästi. Erityisen mielenkiintoista on web profile, ejb lite, uudet managed beanit, ja cdi. Nerokkaan yksinkertaista!

Mieleen juolahti vielä yksi asia: Kuolema Patterneille! Tämä muuttaa EE alustaa niin rajusti että hyvin harva J2EE design pattern on enää kurantti – jos yksikään. GoF patternit ovat tietysti edelleen kovaa kamaa, jopa enemmän nykyisin.

Kuuntelin myös esityksen Lift frameworkistä. Kehys on jo ennestäänkin kiinnostanut Scala pohjaisena ei-mvc web kehyksenä jossa tuottavuus on äärimmäistä. Usko lisääntyi taas kehykseen enemmän, ja päätin tähän paneutua vielä loppuvuoden aikana syvemmin. Scala on kaunis kieli, ja vähentää taas Javaan nähden turhaa ns boilerplate koodausta. Lift framework perustuu suoraan tagien ja Scalan yhdistelmään, jolloin perinteistä controlleria ei tarvita eikä käytetä.

Nyt kun jetlagista alkaa selviämään, on aikaa jopa havaita muutoksia aiempaan nähden. Alumni status ei merkitse enää käytännössä mitään, sillä sai vain kivan nauhan passiinsa. Aiemmin on sillä saanut prioriteetteja esityksissä, paremmat paikat, jne. Mitään show devicea ei ole. IBM, Apple ja Google jotakuinkin loistavat poissaolollaan. HP, Intel ja Oracle vetävät tätä showta.  Mielenkiintoista sinällään, näytää että noin puolella osallistujista on Applen ipadejä tai kannettavia käytössään, loput jakautuvat windowsin ja linuxin kesken. Jokatapauksessa uskomaton määrä apple laitteistoa liikenteessä.

Mielenkiintoista on tosiaan myös että edelleen puhutaan Java EE 6.sta vaikka se on jo vanha julkaistu juttu, versioon 7 ei edes viitata. Java 7 tosiaan ilmestynee rajusti karsittuna rajusti myöhässä, eli ensi vuonna vain muutaman uuden piirteen kera. Olkoonkin että piirteet ovat merkittäviä. Tämä ei sovelluskehittäjän vinkkelistä ole kuitenkaan välttämättä huono asia – onpa hetken verran aikaa tehdä nykyvarusteilla töitä. Lisäksi JavaFX scriptikielen kuolema on aika raju veto – joskin JavaFX alustana saa jopa lisää nostetta mutta sitä tullaan koodaamaan ihan Javalla. Ja Scalalla. Aika raju käännös siis. Ja varustepuolella Netbeans ja Glassfish tuntuvat voivan entistä paremmin. Ja mobiilialustan puolella pistetään tuulemaan, Mobile.Next on nyt seuraava kova sana – tiivistettynä smartphone tason käyttöliittymiä halvemmissakin puhelimissa tutulla ohjelmointimallilla.

No niin, eiköhän tähän ole taas hyvä katkaista, ja lisää sitten huomenissa.

JavaOne / Oracle Develop – Maanantai

No niin, nyt on sitten vähän statistiikkaakin selvillä: Osallistujia JavaOne, Oracle Develop, ja Oracle World seminaareilla on n. 42 000 – ei siis vallan pieni määrä. Suomesta vaikuttaisi olevan 50-100 ihmistä tuossa joukossa. Viime JavaOne seminaarissa oli kuuntelemassa 17 000 henkeä, eli tämä on tähän asti suurin yhteisseminaari – tosin osallistujat seuraavat toki pääosin oman aihealueensa ratoja – mutta avaahan tämä uusia mahdollisuuksia luoda uusia yhteyksiä.

Luin tuossa juuri vähän statistiikkaa.

– 3 miljardia puhelinta sisältää Java-tuen ja Java-sovelluksia – 3 miljardia on muuten aika paljon. Jos olisi niin monta penniä, se näyttäisi suunnilleen tältä, kolme kertaa: http://www.kokogiak.com/megapenny/nine.asp
– 5 miljardia älykorttia ajaa javaa
– 80 miljoonaa TV laitetta ajaa Javaa
– Java kehittäjiä on n. 9 miljoonaa – ja Java on edelleen kehittäjien ykköskieli ja halutuin osaamisprofiili ohjelmistoprojekteihin.

Kiertelin hieman näytteillepanijoiden kojuja, tarjolla on monenmoista ratkaisua Java järjestelmien tehokkaaseen kehitykseen ja skaalautuvuuden parantamiseen. Terracotta esitteli jo tutun ehcache tuotteensa ohella uutta BigMemory ratkaisua, ja jakeli osallistujien lätkiin tarraa jossa sanotaan ehdoton ei Java roskankeruulle. Mielenkiintoista oli myös nähdä suomalainen Java kehys Vaadin isolla kojullaan esillä. Kolmas mieleenpainuva ratkaisu oli xxx, joka mahdollisti sovelluksen käytön nauhoituksen ja virhetilanteissa tallenteiden ajamisen uudestaan. Käytänössä sovellusympäristö antaa mahdollisuuden toistaa testauksen aikana ilmenneet virheet automaattisesti jotta ne saadaan korjatuksi, ja näyttää dataa eri kulmista.

Suuri yllätys ei ole että selkeästi Java 7 kiinnostaa: Alkuperäisen aikataulun sijasta projekti tullaan julkaisemaan plan b kaavan mukaan, eli JDK 7 tulee ensi vuoden puolenvälin paikkeilla, ja JDK 8 tulee sisältämään suuren osan päivityksiä jotka alunperin oli suunnattu JDK 7:aan – suurena yllätyksenä JigSaw eli Java modulaarisuus on suunnattu versioon 8. Versio 7 tulee saamaan suuren osan Project Coin (Small changes) piirteistä jotka kumulativisoituvat ja tekevät taas koodauksesta kovin paljon helpompaa ja varmempaa samaan tapaan kuin Java 5 aikanaan.

Keynote oli tällä kertaa jotakuinkin päivän päätteeksi, ja mielenkiintoisia uutisia tuli paukkuen. JavaFX scriptikieli on käytännössä nitistetty – sen tulee siis korvaamaan silkka Java, uusilla parannuksilla höystettynä. Tämä on oikeastaan hyvä uutinen – JavaFX teknologia-alusta on rautainen, mutta tarve oppia uusi kieli vain käyttöliittymiä varten vähän hankala. Sääliksi käy kaikkia JavaFX kirjoja kuitekin 😉

JavaFX 2.0 on siis tulossa ja päämuutos on Java rajapinta. Siihen tulee myös lisää tukea rautaratkaisuille, taas demoiltiin sataakuntaa videota pyörimässä pallopinnalla, ja palloa pompoteltiin ympäriinsä. Näyttäisi että raakaa tehoa ja ilmaisuvoimaa piisaa, mutta aika näyttää tuleeko tekniikka yleistymään käyttöliitymissä. Mielenkiintoista oli kuulla miten JavaFX tulee nivoutumaan yhteen HTML 5 + JavaScriptin kera, eli pyrkii olemaan ykkösvalinta käyttöliittymiin sekä webissä että mobiilipuolella.

Muutakin kiinnostavaa tuli vastaan. Tietokonepelien muuttuminen isommaksi bisnekseksi on ollut pitkään puheenaiheena – ja keynotessa esiintyi tällä kertaa edustaja Biowarelta, joka kertoi miten heidän uudessa Star Wars pelissään käytetään Javaa – ja raskaamman kautta. Javaa käytetään mm. Glassfish klusterissa joka hoitaa autentikointipalvelut muutamalle sadalletuhannelle yhtäaikaiselle pelaajalle.

Rivien välistä oli kiinnostavaa havaita että keynotessa puhuttiin ja demottiin Netbeans ja Eclipse editoreita, mutta mitään ei vilahtanut Fusion tai JDeveloper-puolelta. Alunperin visiona oli että Netbeansistä tulee paras väline Java kehitykseen, ja JDeveloperista paras väline Oracle alustaratkaisujen tekemiseen. Mielenkiintoista kyllä näyttäisi pitävän kutinsa – Netbeansistä luvattiin parikin isompaa versiota ensi vuoden aikana, ja JavaFX alustakehitykseen se on pääväline.

Pitkä päivä on lopuillaan, ja huomenna lisää…

p.s. vaikka en Oracle Worldiin olekaan täällä osallistumassa niin Oracle julkisti eilen ihan uuden tuotteen, liittyen pilvipalveluihin. Tuotteen nimi on Exalogic Elastic Cloud, ja se edustaa ns ’private cloud’ typpistä ratkaisua. Paketissa on 30 serveriä, 360 prosessoriydintä, ja pystyy käsittelemään n. miljoona http pyyntöä sekunnissa. Ellisonin mukaan kaksi tällaista pystyy käsittelemään facebookin serverikuormituksen.

Java One / Oracle Develop – Sunnuntai

Mielenkiintoista kyllä Java One seminaari alkaa tällä kertaa jo sunnuntaista, joskin tahti kiihtyy tappavaksi vasta maanantaista torstaihin. Kun samanaikaisesti on käynnissä Java One, Oracle Develop, ja Oracle World, on koko San Francisco käytännössä sekaisin – tai ainakin Union Square.

Oracle World on valloittanut enimmäkseen Moscone Center konferenssikeskuksen, eli Java One ja Oracle Develop esitykset jakautuvat hotelleihin lähialueella. Virallisia osallistujatietoja ei ole vielä selvillä, mutta vaikuttaisi että Java One osallistujamäärät eivät olisi ainakaan vähenemään päin – tyypillinen määrä viime vuosina oli 10000 – 15000 Java asioista kiinnostunutta, aika vilskeeltä näyttäisi tänäkin vuonna. Hotellien käytön lisäksi Mason Street on katkaistu ja varustettu isolla korttelin pituisella teltalla.

Kun konferenssit ovat syysaikaan ei San Franciscokaan ole tavanomaisen aurinkoinen, vaan lämpötilat ovat 18 asteen hujakoilla, pilvistä kosteaa ja kalsaa on luvassa. Esitysten hajauttaminen eri paikkoihin on pieni logistinen haaste, kun tiivistahtisessa aikataulussa yrittää päästä aina varaamaansa esitykseen kuuntelemaan, saa etukäteen suunnitella reitit hotellien välillä aika tarkkaan. Osa esityksistä on vielä Moscone Centerissä – sinne matkaa kertyykin jo hiukan enempi.

Tämän vuoden esityksissä varmaan suurella mielenkiinnolla odotetaan uusia julkistuksia, painotuksia, ja suuntauksia. Esim. Java EE Roadmap kiinnostaa, samoin JavaFX rooli tulevaisuudessa, uudet EE 6 piirteet ja mitä on tulossa Java SE 7 ja EE 7 versioihin ja millä aikataululla. Lisäksi kiinnostaa mm. Netbeans ja Glassfish tulevaisuus – ehkä merkillepantavaa että niistä ei juurikaan luentoja ole. Sensijaan Oracle Fusion, Application Express, ja Eclipse Enterprise Tools paketteja piisaa. Sattuneesta syystä Google loistaa poissaolollaan, ja aika matalalla profiililla ovat myös IBM ja RedHat (JBOSS). Kun katsoo mitkä esitykset ovat jo täyttyneet, ihmisiä näyttäisi kiinnostavan yli kaiken muun Java EE 6 käyttö, edistyneet Web Servicet tietoturvan ja transaktioiden ja SOA:n kera, ja kaikki Javan suorituskykyyn ja optimointiin liittyvä. Yllättäen myös JavaFX luentoja on buukattu aikalailla täyteen.

No niin, aika kuitata konferenssipaketti ja avainkortti joka avaa ovat seminaaritiloihin. Tästä se käynnistyy. To be continued…