1. JavaScript med nÀra C prestanda

    Version 3.1 av Firefox kommer antagligen att innehĂ„lla en JIT runtime för javascript som heter TraceMonkey. TraceMonkey hĂ„ller koll pĂ„ vad som skall kompileras pĂ„ fragment nivĂ„ istĂ€llet för SUN’s JIT som tittar pĂ„ metod nivĂ„. Hoppas att fixar sĂ„ att TraceMonkey fĂ„r stöd för fler script sprĂ„k Ă€n bara JavaScript.

    För att lÀsa mer om TraceMonkey sÄ titta hÀr och lite benchmarks hÀr. Det man kan fundera pÄ Àr hur lÄng tid det tar innan vi fÄr se Quake 1 eller 2 portat till JavaScript och exekverat i canvas komponenten.

  2. Overview of the Google App Engine Persistence framework

    The Google cloud computing environment, Google App Engine, currently provides a low cost (free) highly scalable runtime environment (python) for web applications. Along with App Engine specific APIs and support for their general service APIs, you have access to a distributed, scalable persistence engine, Datastore. A quick review of App Engine Datastore sets firm your impression that Google has again relied on the ”we build it better” framework approach. Not following a relational model or a webservice, Datastore started with goals of high availability, scalablity and performance. Because of quota limits on current free accounts, its hard to validate their success here; however, we can get a better understanding of the architecture of Datastore by checking out their internal ”Bigtable” implementation, which is the basis for Datastore.
    (LĂ€s mer…)

  3. Scandinavian Developer Conference

    NÀsta Är fÄr vi en helt ny utvecklarkonferens i Scandinavien, Scandinavian Developer Conference. Skall bli spÀnnande!

    sdc2009.gif

  4. clean code

    ”All you have to do is change a 5 to a 6, how hard can it be?!”

    Kunden verkar vara lite irriterad. Han blickar frustrerad runt salen dÀr jag och nÄgra andra hackers stirrar missnöjda pÄ vÄra skÀrmar. Ingen har kunnat fixa hans program inom den utsatta tiden pÄ 30 minuter. Som kunden ser det Àr det en enkel förÀndring. Det Àr en liten applet som spelar tic-tac-toe. Man behöver 5 i rad för att vinna, men det Àr för svÄr att besegra. Kunden vill att datorn ska behöva 6 i rad för att vinna medans han fortfarande behöver 5.

    NĂ€r man tittar pĂ„ koden Ă€r det allt annat Ă€n en enkelt förĂ€ndring. Det ryktas om att koden skrevs ursprungligen pĂ„ serbiska. Eller C. Eller bĂ„da tvĂ„. I alla fall Ă€r det nu en enda stor Java class med massor med global control flags, nested loops och hĂ„riga lĂ„nga metoder. Suck. Jag sjunker ner i stolen och tĂ€nker – det hĂ€r kan ta flera dagar att fixa.

    Lyckligtvis Ă€r det hĂ€r scenen inte hela sanningen. I verkligheten heter ”Kunden” Patrick Wilson-Welsh, som Ă€r sjĂ€lv en skicklig programmerare, och jag sitter i en ”Clean code clinic” pĂ„ agile2008. Nu ta Patrick fram en annan kodbas för oss att jobba med. Det Ă€r ocksĂ„ en applet som spelar tic-tac-toe, och om man bara titta pĂ„ UI:et ser det precis likadan som det första. Under huven Ă€r det helt annorlunda dock. Det finns Java packages som heter ”model”, ”view”, ”controller”. Klasserna Ă€r smĂ„a med bra namn som ”Board” och ”Move”. Det finns till och med omfattande enhetstester. Inom en halvtimme har de flesta i rummet klarat av att Ă€ndra koden efter kundens önskemĂ„l.

    (Vill du testa sjÀlv, tic-tac-toe koden finns att ladda ner hÀr)

    Alla programmerare som har jobbat ett tag förmodligen kĂ€nner igen sig. ”Clean code” Ă€r bra för bĂ„da kundens tidsplan och programmerarnas mental hĂ€lsa. Hur kan det uppnĂ„s? En bra början vore att lĂ€sa Bob Martins senaste bok. TĂ€nk efter, prata med kunden om ”technical debt”. Be a professional. Vi har inte rĂ„d att bygga flera produkt dĂ€r det tar flera dagar att Ă€ndra en 5 till en 6.

  5. Sommar och Popcorn

    Under sommarperioden ville jag inte hĂ„lla pĂ„ med datorer överhuvudtaget, hade jag bestĂ€md mig, men började efter ett tag kĂ€nna mig illamĂ„ende av det och hamnade till slut i en fĂ€lla dĂ€r jag köpte en media stream server som heter Popcorn Hour och fick jobba en del för att fĂ„ det att funka med min linux/ubuntu. Popcorn Ă€r egentligen ingen fĂ€rdig produkt för vanliga anvĂ€ndare. Det krĂ€ver en nĂ„gorlunda tekniker som kan en del för att fĂ„ det att fungera. Jag rekommenderar den varmt till den som gillar att jobba i kĂ€llaren med sitt hemmanĂ€tverk/hemmabio. Man kan spela upp olika medier (filmer, bilder och musik) frĂ„n en eller flera servrar i sin TV över nĂ€tverket. Den har till och med plats för att ha intern hĂ„rd disk, dĂ€r man kan direkt spara (lĂ€s LADDA NER)/spela upp sina filer. Med andra ord det Ă€r en dator utan skĂ€rm fast mycket enklare Ă€n dator dĂ„ det finns en massa funktioner som underlĂ€ttar media uppspelning direkt pĂ„ TV, utan att behöva konvertera formaten pĂ„ filerna med en massa extra mjukvara. Exempelvis, man kan direkt spela upp en *.iso fil pĂ„ TVn. Man kan dessutom direkt kolla pĂ„ YouTube och liknande broadcast portaler direkt i TVn. Nu skall jag börja fokusera mig igen pĂ„ Java och kolla WAZAP ”what is up” under tiden jag hade semestern. Har redan lĂ€st i CS om Brendan Eich som skapade den första versionen av JavaScript under tio dagar i maj 1995. Min första reaktion var: just det, det Ă€r dĂ€rför JavaScript Ă€r sĂ„ konstigt och svĂ„rt att jobba med, det har utvecklats pĂ„ bara 10 dagar! Det sĂ€ger en del. Stackare Web utvecklare som i Ă„rtal har lidit att skriva avancerade funktioner med det. Vi fĂ„r se om Ecmastandarden blir annorlunda och underlĂ€ttar Web utveckling fram över.

  6. JavaFX Preview SDK

    Ingen kan ha undgÄtt att JavaFX Preview SDK slÀpptes förra veckan. Jag hittade en video pÄ NetBeans.tv dÀr de visar hur man implementerar en enklare animation i JavaFX. Ser verkligen intressant ut och verkar inte alls som att det skulle vara sÄ svÄrt att göra mer avancerade saker. Ska onekligen bli kul att testa sÄ fort man fÄr tid!

    Nandini Ramani Introduces the JavaFX Preview SDK

  7. Junit + EasyMock

    Hittade en vÀlskriven engelsk guide om hur man arbetar med jUnit och EasyMock. Kan rekommendera den till er som inte tidigare jobbat med EasyMock tillsammans med jUnit.

    EasyMock + jUnit guide

  8. Bokrecensioner

    Om du vet inte vilka böcker om java och testdriven utveckling man ska lÀsa och inte sÄ ta en titt pÄ dessa böcker: http://www.techbookreader.com/

    Han lÀser mycket böcker sÄ det kommer nog trilla en ny recension med jÀmna mellanrum.