JavaOne – dag 2

JavaOne – dag 2
oktober 1, 2014 Rikard Thulin

20140930_200104 (1)Även dag två startat med en 2 timmars Hand on Lab, ”Devoxx4Kids for Parents”. Presentationen hålls av tre personer och en robot som håller inledningen av presentationen… kul. Devoxx4kid är en global ideell verksamhet, deras manifest finns här. Målet med devoxx4kids är ”Inspire teenagers to programming, robotics and engineering”.

Alla som vill kan genomföra ett event, allt material finns tillgängligt, labbar, train the trainer sessioner, mm. Materialet finns på github och licensieras under Creative Commons. Det finns massor av färdiga workshops, Scratch (5+ år), Minecraft modding, Lego Mind Storm och om man har $7990 över en workshop med en NAO Robot.

Presentationen finns tillgänglig på nätet och innehåller massor av konkreta tips en arrangör behöver tänka på om man skall genomföra ett event. Allt från att man bör ta en liten avgift (~100 sek), dela ut tröjor, pricka av och räkna barn (så att man inte tappar bort någon), mm. Viktigt är dock att alla som är engagerade gör det på frivillig basis utan ersättning. För att starta en egen grupp är det 4 steg:

  1. Samla ett par stycken passionerade IT människor
  2. Skicka ett mail till devoxx4kids (info@devoxx4kids.org)
  3. Håll minst ett event om året
  4. Välj en workshop som redan finns färdiga

Adopt-a-JSR for Java EE
Intressant presentation om hur man kan engagera sig i JCP. Genom ”Adopt a JSR program” kan man delta på ett enkelt sätt. Det andra alternativet är att bli en Expert Group medlem, men det är en ganska tidskrävande uppgift.
JCP skapades för 15 år och är nu öppnare än någonsin. All information finns tillgänglig och är öppen, läs/skriv wikis, öppna issue trackers, feedback möjligheter direkt till EG osv. Intressant statistik är att community deltagandet ökade med 600% mellan Java EE 6 till Java EE7.

API Design Checklist
Jaroslav Tulach grundaren av Netbeans delade med sig av sina erfarenheter med API design. En intressant aspekt eller definition av ett API är att det är ”någonting som någon annan beror på”. Ett annat tips är (naturligtvis) att man inte skall skriva JavaDoc för alla privata klasser. Ibland kan en ”arkitekt få för sig sådana saker.

Jaroslav började med att lista tio frågor man skall ställa sig när man skapar ett API:

  1. 1. What is my API?
  2. How does a good API look?
  3. Is my API correct?
  4. Is my API misleading it’s users?
  5. Am I egocentric?
  6. Am I sustainer or developer?
  7. Is my API easy to use?
  8. How do I accept patches?
  9. Do I hide my garbage?
  10. Am I ready for the future?

Baserat på dessa frågor kan man använda följande checklista:

  • API stability categories defined
  • Optimised for Time to Market
  • Future press release written
  • Criteria for accepting patches published
  • API elements have a single meaning
  • Ready to sacrifice myself not others
  • API evolution story defined
  • Implementation classes / packages written
  • Testing signature compatibility
  • EOL Policy

The Future of MVC in JAX-RS
Under keynoten dök det upp en ny JSR som fångade min uppmärksamhet, mvc 1.0 (JSR 371). Presentationen började med en genomgång av vad MVC är och vilka olika varianter det finns; action baserade (struts 2, spring mvc) och komponent baserade (jsf, wicket, tapestry). JSR 371 är action baserat. Eftersom Java EE 8 JSR:en precis blev godkänd så finns det inte några detaljer, Expert Gruppen (EG) håller precis på att formats. Det fanns med andra ord inte några implementations detaljer och ett tydligt exempel var att Safe Harbour Statement visades två gånger… nytt rekord 🙂 Safe Harbour Statement är den obligatoriska sliden Oracle alltid visar först. Vill man delta så är ”Adopt a JSR”-programmet ett bra sätt att delta. Java EE kommer lagom till JavaOne 2016.

Productive JavaFX 8
Eftersom jag inte har jobbat något med JavaFX så tänkte jag det var på tiden att få lite insikter. En mycket intressant verktyg som visades var Afterburner. Utvecklar man för JavaFX och använder Scene Builder så rekommenderar jag att man tar en titt på Afterburner. Scene Builder Builder är en WYSIWYG GUI editor som genererar kod och med Afterburner så injectas den genererade koden i din kod. Med andra ord så håller man den genererade koden ren vilket är något som jag länge har saknat vid dom tillfällen man varit utsatt för genererad kod. Dependency Injection + generated code = love.

Schema Migrations – the missing piece in Java EE
Kvällens höjdpunkt för min del var min egen presentation. Med tanke på att presentationen var 21:00 – 21:45 så var det oväntat mycket folk. Inte helt enkelt att konkurrera sent på natten med alla partyn som pågår. Presentationen flöt på riktigt bra och följdes med en bra och intressant diskussioner . Jag hade 45 minuter på mig men det slutade med att diskussion drog ut på tiden så det landade på nästan 80 minuter. Nytt rekord att dra över med 35 minuter 🙂

Java Champion och JUG leaders get to gether
Inte en session, men det var absolut kul att träffa andra passionerade JUG leaders. Tyvärr så kunde jag inte stanna speciellt länge då min presentation väntade.
20140930_192239 (1)

0 Kommentarer

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *

*

Denna webbplats använder Akismet för att minska skräppost. Lär dig hur din kommentardata bearbetas.