Stacktrace

Sida 7/23:1...567891020...23

Det allra roligaste som hänt i veckan är annars att vi har anställt Mikael Ek som kompetensmässigt ligger nära vår frontendare Lasse Hendahl. Vi har de senaste åren letat med ljus och lykta efter en till riktigt vass gränssnittsutvecklare/klientarkitekt och nu har vi funnit honom. Lasse och Micke jobbade ihop på Ericsson.com och det känns riktigt bra att vi nu har två av Stockholms bästa snubbar inom detta gebit som kollegor. Om ni någonsin har något problem med ett hårigt javascript så är Micke your man.

Det har varit en intressant vecka. Sen i tisdags har vi haft sällskap av Niklas på kontoret, då hans session på SmartTrust tagit slut. Han har haft händerna fulla med Metrojobb- och Zenicor-fixande sen dess. I onsdags var Veronica, Rebecka och Rhoda på Geek Girl Meetup, och Veronica presenterade på ämnet ”REST-stöd i Spring 3″. Jag var ju inte där, men alla kanaler jag lyssnat på säger att det var en succé!

Veronica på Geek Girl Meetup

Nästa konsultmöte går av stapeln den 6:e maj. Då kommer ett efterfrågat föredrag: Lasse Hendahl ska berätta om sin process för informationsdesign, -arkitektur och frontend-webbutveckling. Den process som han själv kallar för ”Lasses pytt-i-panna”!

Hittade en bra artikel om RESTful URI:s på http://redrata.com/restful-uri-design/

Där beskrivs alltifrån REST-basics till en mängd best practices gällande REST, URI-design och resurstänk.

Några exempel är:

  • Vad är en RESTful URI?
  • Tips för att skapa bra URI:er
  • Saker att undvika vid REST-design
  • Personliga URI:s såsom http://somedomain.com/calendar/my-calendar
  • Suffix (ex file.xml) vs Accept Header
  • Flera URI:s mot samma resurs
  • Praktiska tips om hur URI:n kan designas (plural vs singular etc)
  • …plus mycket mer

Värt att läsa tycker jag!

I torsdags så hade vi konsultmöte med två stycken kodkator och många fler pizzor. Rudolf visade hur man med hjälp av Grails kan bygga en applikation som kan visa på en karta var klienterna befinner sig. Jonas byggde en kompetensinsamlingsapplikation med hjälp av Stripes. Om jag tolkar Jonas (och även Emil B) rätt så är Stripes ett bra och behagligt ramverk att jobba med men Spring MVC är bättre – eller så kanske jag missförstod alltihop…

På onsdag är det Geek Girl Meetup där Veronica ska hålla föredrag om REST men det får vi höra mer om under nästa vecka.

Läste på InfoQ att en första publik version av EGit har releasats. EGit är en Eclipse-plugin för Git som vi tidigare diskuterat här på Stacktrace.

Se våra tidigare inlägg om Git-tricks eller en mer utförlig artikel om Distribuerad versionshantering med Git.

Jag har testat EGit och den funkar bra. Dock föredrar jag personligen att använda prompten/shellet för push, pull, branch och commit men EGit medför dock att det blir väl synligt i Eclipse vilka filer som inte är versionshanterade, vilka filer som är modifierade etc.

Tänkte tipsa om ett trevligt verktyg vid namn Ack som jag hittade häromdagen. Det är en ”bättre version” av det gamla klassiska grep-kommandot.

Ponera följande, om du vill hitta alla förekomster av strängen ”Test” i dina javafiler men hoppa över alla filer i dina dolda subversion-kataloger kan du köra följande grep-kommando:

grep Test $(find . -name '*.java' | grep -v .svn)

Med verktyget ack ser kommandot ut så här:

ack-grep --java Test

Lite trevligare tycker jag. Ack stöder en rad filtyper såsom perl, java, C# etc och installationen är smidig – i alla fall om du kör Ubuntu. Dessutom är output:en från kommandot lite lättare att tolka…

Kolla in Ack vetja!

Nu när Spring Security 3 precis har släppts så gav jag mig på att uppgradera mitt projekt till den nya releasen.

Utan att läsa på så uppdaterade jag min pom.xml och belönades med ett trasigt bygge.

Ovanligt nog så har Spring släppt en release som inte är bakåtkompatibel, man har nämligen flyttat på de flesta klasser du använder, t ex Userdetails och GrantedAuthority.

I de flesta fall rör det sig om att bara ändra dina importer men det är ju inte en drop-in uppgradering.

Använder ni dessutom Spring Web Flow bör ni vänta med uppgraderingen eftersom Web Flow 2 har ett beroende på en flyttad Spring Security klass. Googlar man på det så ser man att folk har löst problemet genom att skriva en egen Web Flow patch, så det går att komma vidare om man vill.

Men som sagt, att uppgradera till Spring Sercurity 3 är lite krångligare än vad du kanske tror.

Rena kommandoradsapplikationer i Java kanske inte hör till vanligheterna nu mera, men det finns tillämpningar. Jag håller för tillfället på med ett sådant program. Det är en slags (av prestandaskäl) multitrådad övervakningsapplikation. Varje tråd ligger och pollar en databas efter något att arbeta med i ganska täta (några sekunders) intervall. När tråden hittar något att processa, så pratar den bl.a. JDBC med en stordatorapplikation.

Denna typ av beteende skulle vara ganska svårt att få till inom ramen för en appserver. Att starta trådar är ju inte aktuellt. Att använda Quartz eller ha ett cron-jobb som anropar en EJB via wget eller liknande skulle vara möjligt men verkar lite krystat, speciellt då den pollar så pass ofta.

En vanlig Java-applikation fick det bli, således. Vad bör man tänka på när man skriver en sådan applikation? Den är ju nästan som en slags server, som skall köra kontinuerligt. Den får inte gå ner så lättvindigt och den kommer sannolikt köra på en Linuxburk i ett serverrum någonstans utan något egentligt användargränssnitt. Här kommer således några tips för den standalone-inriktade.
Läs mer >>

Efter det att jag uppgraderat till Ubuntu 9.10 så uppstod det lite problem med min Eclipse 3.5 installation, vissa knappar i olika dialoger slutade att fungera. Efter en snabb googling så visade det sig att det är en bug i Eclipse som är fixad i Eclipse 3.6 M2. För att få Eclipse 3.5 att fungera i Ubuntu 9.10 så kan man starta Eclipse med följande lilla skript:

#!/bin/sh
export GDK_NATIVE_WINDOWS=1
/path/to/your/eclipse/installation/dir/eclipse

Sida 7/23:1...567891020...23