App app

Det är Android som gäller på jobbet för mig just nu. Sedan jag slutade på kunduppdraget för en månad sedan har jag suttit inne på huvudkontoret, vilket känns väldigt lyxigt! Det ligger centralt, vilket innebär kortare restid och bättre tillgång till restauranger och butiker. Skönt att kunna uträtta ärenden på lunchen! Och lite farligt att det är så lätt att äta ute…

Nu är jag alltså involverad i att utveckla en app, som ska göras till både Android och Iphone, men jag är alltså insyltad i Android-appen. Såklart. Det är ju Java. :)

Just nu kikar jag på att lägga in data från xml. Har även ägnat en god stund idag till att försöka få ordning på GitHub/Eclipse-strul. Lutar åt att inte använda Eclipse-integrationen… Jättekul att använda git och GitHub på jobbet i alla fall!

Liten presentation på jobbet

En relativt ny företeelse på jobbet är Java Jam Session, då javagruppen sitter runt ett bord och några turas om att koppla datorn till projektorn för att visa nåt de håller på med eller berätta om något häftigt de provat. Jobbrelaterat, alltså. :-) Trevligt!

På gårdagens Java Jam skulle jag berätta om ScanDev-konferensen som några av oss var på och jag valde att specifikt gå in på ett föredrag om AndEngine, en fysikmotor för Android. Jag visade bara kort en exempelapp jag lekt lite med och hur lite kod som faktiskt krävdes för att åstadkomma en ganska häftig effekt.

Lite skumt känns det ju att presentera något man egentligen inte riktigt kan för en massa folk som är så himla duktiga och generellt kunniga, men det är kul att kunna testa lite under helt informella former. Jag lockas lite av tanken på att presentera på konferenser, men känner att jag nog inte är där ännu…

Första dagen på Jfokus

Igår satte jag mig på tåget till Stockholm. Jag hade maximal tur med resan: jag åkte första klass eftersom det bara var obetydligt dyrare, jag fick ingen bredvid mig, jag fick te, tåget kom fram i tid och resan förflöt rätt snabbt tack vare att jag spelade The Sims 3 på mobilen nästan hela vägen. :-) Mindre lyckat var förstås att jag hade dunderont i halsen och kände mig allmänt risig…

Hotellrummet är till belåtenhet och som småbarnsförälder är det förstås oerhört tacksamt att få sova utan störningar. Men jag är väl för van att vakna stup i kvarten, så det gjorde jag första hotellnatten också. Varje gång helt övertygad om att jag sovit för länge, vilket inte alls var sant. Hoppas på lite bättre sömn inatt.

Idag har jag varit på två halvdagssessioner, en om Android-utveckling och en om Groovy. Skulle gärna vilja ha en liten laptop så att jag kunde koda lite nu! Orkade inte släpa med mig stora tunga jobbdatorn. Man blir så inspirerad av såna här tillfällen. Vill koda och nörda ner mig i nåt…

Nu på kvällen har jag varit ute och ätit sushi och sen tagit ett varmt bad på hotelllrummet. Det kändes väldigt dekadent… en massa varmvatten, bara för att jag tyckte det var skönt…

Egentligen hade jag gärna varit ute och gjort Stockholm och träffat folk mer, men jag är verkligen inte frisk och dessutom är det plågsamt kallt ute. Jag lade mig i sängen redo för natten redan klockan 8! Men jag ska nog surfa lite, spela lite Sims och ringa Jonas innan jag ska sova. Känner mig lite som en dålig fru som åker ifrån familjen för att kodapa mig när det är Alla hjärtans dag och allt…

Imorgon är den första av två konferensdagar med massor av kortare föreläsningar. Svårt att välja!

Sun Certified Web Component Developer!

Nu är jag inte bara Sun Certified Java Programmer, utan även Sun Certified Web Component Developer. Det känns jätteskönt!

Jag fick 85% och godkänt var 70%. Jag svarade rätt på 59 av 69 frågor. Så här fördelade sig resultatet enligt lappen jag fick:

The Servlet Technology Model 83%
The Structure and Deployment of Web Applications 75%
The Web Container Model 42%
Session Management 85%
Web Application Security 100%
The JavaServer Pages (JSP) Technology Model 100%
Building JSP Pages Using the Expression Language (EL) 80%
Building JSP Pages Using Standard Actions 100%
Building JSP Pages Using Tag Libraries 100%
Building a Custom Tag Library 80%
J2EE Patterns 100%

Är såklart väldigt nyfiken på vad jag hade rätt respektive fel på, men det får man tyvärr inte veta. Undrar dessutom vad som hände med The Web Container Model och vad det var för frågor egentligen… 42 är ju visserligen Svaret, men knappast ett vidare strålande resultat. :)

Jag är Sun Certified Java Programmer!

Nu är jag Sun Certified Java Programmer! Skrev provet på Cornerstone inne i stan idag vid klockan 13. Jag hade förmånen att få stanna hemma och plugga på förmiddagen, så jag har inte alls varit på jobbet idag. Riktigt skönt att kunna slutspurta på egna villkor och spara lite tid.

Det var svettigt att sitta på Cornerstone och klura. Programmet var riktigt uselt (till och med sämre än Whizlabs) och jag var ganska långsam, så jag blev lite stressad – men det jämnade ut sig eftersom vissa frågor gick väldigt snabbt att svara på sen också. Jag var klar när knappt en halvtimme av de 3½ timmarna återstod och kollade igenom en bit av början innan jag blev för otålig och lämnade in. :)

Det gick bra! Jag fick 83% och godkänt var ju 65%. Jag fick en utskrift med resultat per område också (men man får inte se vilka frågor man hade rätt och fel på):

Totalt 83%
API Contents 70%
Collections/Generics 80%
Fundamentals 90%
Declarations, Initialization and Scoping 83%
Flow control 81%
Concurrency 100%
OO Concepts 80%

Känns himla skönt att jag klarade det! Imorgon får jag ta ett snack med chefen om vad jag ska ägna mig åt nu. Jag har inte velat ta upp det tidigare, ifall jag inte skulle ta tentan… Mitt förslag är i alla fall att rikta in mig på ett annat Sun-cert, Sun Certified Web Component Developer. Jag är riktigt sugen!

Mer övningsresultat för SCJP

Nu har jag även gjort Practice Exam 3 och Final Exam i Whizlabs. Final Exam hade faktiskt mestadels frågor som var nya för mig och det kändes som att jag hade dålig koll! Därför blev jag positivt överraskad av resultatet – samma som på Practice Exam 3! Här är fortsättningen på tabellen från det tidigare inlägget (65% är godkänt).

Exam 1 Exam 2 Exam 3 Final
Totalt 71% 78% 76% 76%
API Contents 85% 83% 50% 71%
Coll/Gen 63% 80% 83% 73%
Fundamentals 79% 70% 75% 57%
Decl/Init/Scoping 55% 100% 60% 75%
Flow control 50% 56% 90% 92%
Concurrency 100% 86% 86% 88%
OO Concepts 75% 57% 100% 75%

Märks det att jag friskade upp Flow control-kunskaperna mellan Practice Exam 2 och 3? :)

Nu återstår bara att se hur det går på det riktiga provet…

SCJP-satsning

Nu börjar det närma sig ett försök att skriva SCJP-tentan. Jag har gjort två övningstentor med följande resultat (65% är godkänt):

  Exam 1 Exam 2
Totalt 71% 78%
API Contents 85% 83%
Collections/Generics 63% 80%
Fundamentals 79% 70%
Decl/Init/Scoping 55% 100%
Flow control 50% 56%
Concurrency 100% 86%
OO Concepts 75% 57%

Det börjar väl se hyfsat ut, men en stor nackdel med Whizlabs-programmet jag använder är att samma frågor återkommer i de olika testen. Ibland kommer man ihåg svaren från förra gången man fick frågan och det känns ju inte riktigt rätt. Jag trodde att det skulle vara nya frågor till de ”Practice Exams” som ser jätteseriösa ut och som jag sparade till sist, men det visade sig vara samma frågor jag övat med…

Värst vad jag är dålig på Flow control, förresten. Ska det vara så svårt? Det innefattar loopar, exceptions, assertions och lite sånt. Får nog öva lite mer där…

Märks det att jag läst om kapitlet om Declarations, Initializations and Scoping mellan testomgångarna..? :) När det är ny-läst sitter det rätt bra, men sen ska det ju sitta kvar också.

Java-plugg på jobbet

Jag sitter ju och pluggar till SCJP – Sun Certified Java Programmer på jobbet. Har ett program som heter Whizlabs (hjälpsamt men med många irriterande brister…) till min hjälp, se screenshot (klicka för större):

Whizlabs

Nu har det stått ”Pass” på alla delområden ett tag och det känns ju i alla fall bra. Dock vill jag upp i lite högre procenttal på allt och lite fler besvarade frågor inom vissa områden. Anledningen att jag har gjort så hemskt många testfrågor inom API Contents och Collections/Generics är att de var mina i särklass sämsta områden när jag började testa mig, så jag har hårdsatsat på de delarna.

Godkänt är 65% och det skulle kännas bra att ligga mellan 75-100% för alla områden när jag anmäler mig till provet.

Julia har redan klarat provet och fått ett fint diplom, jag hoppas att jag också gör det inom en överskådlig framtid.

Jag har fått jobb på Acando!

Idag har jag skrivit kontrakt med Acando, där jag börjar jobba som konsult inom Java-utveckling den 1 april.

Och vännen Julia börjar jobba där på måndag! Vi ska båda gå introduktionsprogrammet Young Professionals (ja, det är vi det!), som börjar 7 april. Sedan är bland det första som händer antagligen att jag ska plugga för att bli en Sun Certified Java Programmer. Någon gång kommer jag att sättas på mitt första uppdrag, men när/var/hur/varför är ännu okänt.

Det gick faktiskt mycket smidigare än jag vågade hoppas på att få det första jobbet. Det känns roligt och spännande och jag hoppas att det blir bra! Det känns som att jag gjort ett bra val (jo, jag hade fler erbjudanden) och det är egentligen bara en grej som känns trist med konsultjobb; att man ju kan hamna på jobb precis var som helst och kanske får ohemula restider. Men den som lever får se. Man lär ju få bra omväxling också.

Veckorna fram till nya jobbet är det exjobb som gäller. Snart ska jag skicka in första versionen av rapporten till min examinator och så får vi se vad han tycker.

Jubel! Lämnade precis in lab 2!

Åh, så härligt! Nu klarar min typechecker alla femtielva testfiler den ska klara, så jag har precis lämnat in den! Såå skönt eftersom jag avsatte ända fram till och med måndag för den och alltså har tre dagar tillgodo – jag planerar att dela tiden mellan tentapluggande och författande. Inte alls illa! Det är fortfarande en labb kvar (i denna kurs + mer i en annan fast med senare deadlines), men informationen har inte ens kommit ut ännu, så det är inte riktigt läge att börja.

Labben jag precis gjort är en type checker (se bilden ovan för en liiiten del av den) för en delmängd av C++. I lab 1 gjorde vi en parser för en något större delmängd C++, genom att beskriva grammatiken i BNF (eller LBNF, för att vara exakt).

Om du inte alls fattar vad jag pratar om:

  • En parser gör för programspråk vad grammatikkontrollen gör för ditt Word-dokument, ungefär. Det handlar om att kontrollera att man uttrycker sig rätt.
  • En type checker kontrollerar att det du gör är rimligt, t.ex. att du använder siffror i matematiska uttryck och inte till exempel försöker dividera 3 med ett päron eller något annat tokigt.

För typcheckaren kunde vi välja mellan Haskell och Java som implementationsspråk. Haskell är tydligen Chalmers älsklingsspråk, men jag har aldrig använt det (även om jag har haft en del skoj med Scheme, som är en variant av Lisp, som precis som Haskell är ett funktionellt programmeringsspråk). På sätt och vis hade det varit kul att testa lite Haskell, men samtidigt är det riktigt kul att testa sin Java-kompetens. Jag har verkligen fått bättre programmeringssjälvförtroende tack vare framför allt kursen Pragmatisk programmering, där jag skrev en egen browser, Anywhere. Således är det alltid roligt att ta sig an programmeringsprojekt i Java numera: det tar tid att sätta sig in i vad man ska göra, men sen går det. Jag ägnade flera dagar åt att sitta och peta i befintlig kod och testa diverse småpill innan jag plötsligt fick stenkoll på typecheckern (å, vad jag tycker om svengelska… men kan man prata om typkontrollerare? Eller vad heter det?). Med lite mer träning kanske inkörningsperioden till nya projekt blir kortare, men redan nu har jag känslan av att jag klarar av saker jag tar mig an. Jag har ganska bra känsla för java. Det känns som att jag har tagit mig en bit från att 1997 förundras över vad jag kan skapa med html-taggar efter att ha läst Annica Tigers HTML-guide (nej, den såg inte ut så 1997). Det är roligt!

Ikväll myser vi! Någonstans efter att jag länkade till Wikipedia (Java och Haskell) åt vi mumsig middag och delade en flaska Periquita och nu har jag dessutom fått i mig ett par drinkar med vodka och ginger ale, så nu är jag lullig och lycklig. :) Jag vet inte om man borde få skriva blogginlägg i det här tillståndet, men jag hoppas att det inte märks alltför mycket. :)

Jäääklar vad skönt det är att ha lämnat in labben! Nu ska jag dricka lite mer vodka + ginger ale (billig variant, såklart)…