Regjeringen har i disse dager sluppet en løsning for elektronisk reiseregning på nettet. De har at på til sluppet den som fri programvare, noe som egentlig bare skulle mangle med tanke på at det er skattepengene som har blitt brukt.
Den er, ved første øyekast, ganske grei å bruke. Det er ikke alt jeg er like enig i, men med tanke på det grusomme programmet vi bruker på jobben er dette en kjempeforbedring.
Men ved nærmere ettersyn er det en del ting som ikke er som de burde vært. De tekniske løsningene er ikke så bra som de burde vært. Mange har referert til disse og jeg skal ikke gjenta de her, men det er én ting som virkelig plager meg (utenom sikkerhetsproblemet).
All forretningslogikk ligger i Adobe Flex klienten, den klienten som lastes ned og kjøres på klienten. De har noen web services som kjører men det ser ut til at de ikke gjør noe mer enn å lagre informasjon og å lage PDF-er. Hvorfor kunne ikke logikken vært lagt på webserveren, eksponert gjennom en web service? Da kunne de laget et standard XML Schema for å representere en reiseregning, tatt det i mot, gjort de nødvendige beregningene og returnert det ferdige resultatet. Logikken for å regne ut en reiseregning har ikke noe behov for å endre seg fra klient til klient. Ved å sentralisere dette gjør man det mulig å lage mange forskjellige klienter som tar i mot data fra ett eller annet sted, gir det til reiseregningen.no for å få det regnet ut etter de til enhver tid gjeldene regler og få tilbake et resultat for så å gjøre hva man vil med det.
Det hadde gjort det mye, mye enklere å lage alternative UI-er eller å integrere en reiseregning i et annet produkt eller arbeidsflyt.
Om ikke annet så hadde logikken vært implementert i C# og ikke i ActionScript, et språk med mye mindre utbredelse enn C#...