Excel-messenger: En helt forfærdelig idé
Ud af praktikantens arbejde er der kommet dette underholdende eksperiment. Nedenfor er forløbet beskrevet slavisk, ligesom det er på Tristan Calderbanks blog.
Første del: Peer-to-peer
Den første idé var at skabe to projektmapper i Excel på det lokale drev.
Hver projektmappe skulle indeholde en celle med sendte beskeder og en indbakkecelle.
Herefter skulle den ene persons indbakkecelle referere til den anden persons celle med sendte beskeder og vice versa.
Vupti, så var projektet egentlig færdigt!
Meeeen … der opstod et mindre problem.
Hvis afsenderen ændrede sin besked, blev vedkommende nødt til at gemme Excel-filen, ellers blev referencen ikke opdateret.
Og herefter begyndte det at blive alvorligt. For at løse problemet blev de nødt til at benytte sig af VBA-programmering (Visual Basic for Applications).
Først lavede de en regel om, at der skulle gemmes automatisk hvert 20. sekund. Dette gik dog forholdsvis langsomt på deres maskiner.
Herefter smed de en ny regel ind om at starte den første regel, når projektmappen blev åbnet.
Færdig. De havde nu deres første p2p-beskedapplikation i Excel.
Del 2: Klient-server-vanviddet begynder
Det virkede, men det levede ikke op til de urimelige virksomhedskrav, der er ude på markedet. Der manglede noget skalerbart, noget mere dynamisk, noget, der kunne imødekomme kundernes behov. For at løse det lavede de en klient-server-infrastruktur.
Det forløb således:
I stedet for, at de to projektmapper refererede til hinanden, udviklede de i stedet en server-projektmappe og et antal klient-projektmapper.
Klienterne var nu i stand til at oprette et øgenavn og sende en besked.
'Serveren' navigerede herefter gennem alle klienterne i mappen, opfangede øgenavne samt beskeder og skabte et master-chat-vindue ved at flytte alt op og ignorere dubletter.
Det var mere eller mindre det. Nu skulle de bare have alle projektmapperne til at gemme automatisk hvert 20. sekund for at synkronisere. Alle klienterne refererer til serverarket.
Her kan det endelige resultat ses. Som en bonus er ’skindet’ blevet pillet af, så det ligner et regulært Excel-ark.
Se kildekoden og Excel-filer her.

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.
Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.
Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.
Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.