Opensource, ideologi eller egoisme?

Mange mennesker tror, at Open Source er et ideologisk socialt eksperiment, og det er der da også nogen, der mener, men hvorfor skal du og din virksomhed blande sig i det? Er det ikke meget bedre at købe noget professionelt software fra en anerkendt international virksomhed?

Det er klart, at den sociale del er en fordel, og den lave pris er bestemt heller ikke at fornægte.  Den virkelige styrke ved Open Source, eller åben software, er inidlertid, at vi får magten tilbage over vore egne systemer. Hvis vi opdager en fejl, eller ønsker en bestemt feature, så kan vi selv tage arbejdshandskerne på og implementere en.

Hvis du får en mistanke om, at der foregår noget suspekt, så sætter du dig ned en aften med en kande stærk kaffe og læser kildekoden igennem. Hvis ikke du er i stand til det selv, kan du betale dig fradet, ved at få en anden til at læse koden igennem. Den mulighed har du ikke en med lukket software. Nogle traditionelle virksomheder truer endda med retssager, hvis du forsøger at finde eller rette fejl i deres software.

Situationen idag er den, at Open Source produkterne generelt har en højere kvalitet, de koster mindre, og du får mere for pengene. Open Source projekter har en interesse i at åbne platformen så vidt som muligt, sådan at så mange brugere som muligt kan hjælpe til med udvikling og test. Men ligeså snart der skal sælges support-timer og software-licenser, så har virksomhederne interesse  i at holde kortene ind til kroppen.

For mig er valget ikke svært: det handler om fravalg af lukket software. Jeg køber gerne software, men jeg vil ikke betale for software, hvor jeg ikke selv beholder kontrollen. Det er ligegyldigt, om det handler om et WordPress-template, eller om det er et stykke software til vores virtualiserings-cluster. Hvis det er vigtigt for virksomheden, så skal det være tilgængeligt sådan at jeg selv kan se, hvad der sker og gribe ind om nødvendigt.

Hvad skal  din virksomhed gøre, hvis din software leverandør forsvinder fra jordens overflade imorgen? Kan en ny virksomhed tage over? Kan dine data flyttes til en ny platform? Skal du starte helt forfra, eller kan den platform, du har investeret dyrt i fortsat vedligeholdes?

Hvis du baserer dig på Open Source Software er svaret et rungende ja, altid!

Posted in Forretning, Open source | Leave a comment

Planlæg worst case scenario!

100% oppetidsgaranti findes ikke! Jeg har selv haft services, der kørte uden stop i 7-8 år ad gangen. Der findes forskellige metoder og tekniske løsninger man kan benytte sig af, men uanset hvad, kan du ikke forudsige det uforudsigelige, og hvis du bygger en forretning på den antagelse, at dine servere aldrig går ned, så begår du en stor fejl.

Vi skal selvfølgelig bestræbe os på at komme så tæt på som muligt, men vi er stadig nødt til at have en plan for, hvad der skal ske, når og ikke, hvis det går galt.

Jeg havde engang en kunde, som kørte en virkelig stor portal, vi snakker flere hundrede tusinde samtidige brugere. Af og til sker det, at en bruger rammer en side, der ikke findes, og så skal brugeren have en fejlbesked.

Det havde kundens egen programmør valgt at håndtere ved at lave en generel fejlhåndteringsside, denne side fungerer således, at den først kontakter databasen og spørger om nogle data, der skulle bruges for at vise fejlsiden. Derefter indsatte den fejlbeskeden, og slutbrugeren ville så få en pæn og letlæselig fejlbesked.

Det fungerede rigtig godt i princippet, ihvertfald så længe, at fejlbeskeden handlede om ikke-eksisterende sider. Hvis fejlen derimod skyldtes en databasefejl. Ja lad os antage, at databasen er gået ned, eller belastet så meget,at den ikke når at svare. Resultatet er så, at brugeren får en fejl med beskeden “Kan ikke kommunikere med databasen.” Mén før fejlen vises, skal vi lige kontakte databasen, så vi kan vise fejlbeskeden i en pæn og letlæselig version.

Denne kontakt til databasen vil selvsagt også producere en fejl, denne nye fejl vil påny forbinde til databasen, som igen vil forårsage en ny fejl … og ja, jeg behøver vidst ikke skære det mere ud i pap?

I det førnævnt tilfælde var resultatet, at på ganske få sekunder ville alle 8 webservere, blive belastet af flere tusinde processer og holde op med at svare. En kortvarig spidsbelastning på en lille del af databasen ville altså lægge samtlige 12 servere (8 webservere og 4 databaseservere) ned på ganske få sekunder.

Kundens udvikler brugte 3-4 måneder på at finde fejlen, men på trods af, at han var en re dygtig udvikler, kunne han slet ikke forstå problemet. Vi fandt faktisk først selv fejlen efter en intens undersøgelse af processeen, men da var den også åbenlys, for os.

Læresætningen her må altså være, at selvom man er dygtig til at lave hjemmesider, er man ikke nødvendigvis god til at bygge driftsikre løsninger der skallerer. Så hvis ikke din udvikler har planlagt, hvad der skal ske, når det går galt, så var det måske en ide at få et par friske øjne på projektet? 😉

Posted in Driftsikkerhed, Kundehistorier, Webudvikling | Leave a comment

Outsourcing med omtanke

I 2009 blev jeg kontaktet af en kunde, som ville have lavet en stor portal-løsning. Jeg blev inviteret til at afgive et tilbud sammen med et par andre leverandører . Kravspecifikationen var enormt dårlig, man kunne se, at de havde gjort sig umage med den, men ligesom så mange andre ikke-fagfolk, havde de ikke rigtig begreb om, hvordan man udformer en kravspecifikation.

Jeg var derfor nødt til at gå ind og tolke på deres dokument, forstå, hvad det var, de ville lave, og selv udfylde hullerne i specifikationen, før jeg kunne give et brugbart og realistisk tilbud. Prisen endte på 120.000 kr for udvikling og 30.000 kr mere for grafisk design.

Der kom et meget kort svar tilbage om, at der var nogen, der havde tilbudt at lave det hele i Kina for 80.000 kroner, og de ville høre, om jeg kunne gå ned på det beløb. Hertil svarede jeg med et mod-spørgsmål om, hvilke features, jeg skulle skære væk, eller hvilke dele af sitet, der skulle laves halvhjertet.

Den slags forespørgsler kommer der masser af. Hvis jeg var gået ned på 80.000 kroner, ville kunden have taget den pris med til den anden leverandør og have presset dem endnu længere ned, så jeg holdt fast på, at jeg leverede kvalitet, og at prisen var fast.

Der kunne historien godt være sluttet, og det gjorde den umiddelbart også, for da jeg, næsten et år senere, blev kontaktet af en kollega i branchen, som bad mig om at fejlrette en portal, han havde fået udviklet i Kina til en kunde, skænkede jeg ikke det her projekt nogen tanker – overhovedet.

Slutkunden truede med retssag, opgaven var forsinket flere måneder, og jeg blev derfor bedt om at smide alt, hvad jeg havde i hænderne og komme igang. Det gjorde jeg, og vi fik leveret første og anden del-levering. Ved tredie del-levering modtog jeg nogle dokumenter, der havde dannet grundlag for udviklingen, og her iblandt de dokumenter lå sørme mit eget tilbud og den kravspecifikation, jeg havde lavet 12 måneder tidligere.

Først var jeg lidt fortørnet, jeg brugte tid på at udarbejde en kravspecifikation gratis – og så sender kunden den bare til en anden leverandør – på den anden side set var kundens projekt jo kuldsejlet – og jeg havde faktisk tjent langt mere end de første 150.000 kr.

Umiddelbart kan det virke voldsomt at skulle bruge mange penge og timer på at lave en kravspecifikation og den øvrige projektspecificering, men de penge er hurtigt tjent hjem igen, for i mine øjne er lektien klar: uanset om du bruger en dansk eller en kinesisk udvikler, så slipper du ikke for at hyre en dygtig projektleder, og uanset hvordan du vælger at gøre det, skal regningen betales … Om du vil tage den i opløbet og gøre det rigtigt første gang, eller betale for at få lappet hullerne bagefter, det er helt  op til dig selv.

 

Posted in Kundehistorier, Outsourcing | Leave a comment