Excel-messenger: En helt forfærdelig idé

7. september 2016 kl. 14:338
Excel-messenger: En helt forfærdelig idé
Illustration: Screenshot af Microsoft-program.
På en sløv dag i en unavngiven virksomhed satte en praktikant sig for at finde en metode til diskret at sende beskeder mellem computere på det lokale netværk.
Artiklen er ældre end 30 dage
Manglende links i teksten kan sandsynligvis findes i bunden af artiklen.

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.

Artiklen fortsætter efter annoncen

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).

Artiklen fortsætter efter annoncen

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.

Artiklen fortsætter efter annoncen

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.

8 kommentarer.  Hop til debatten
Denne artikel er gratis...

...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.

Debatten
Log ind eller opret en bruger for at deltage i debatten.
settingsDebatindstillinger
8
8. september 2016 kl. 14:55

Speaking of pernittengryn: Prøv at se indad

6
8. september 2016 kl. 11:07

@Magnus Når du nu bruger citater, bør du vel for en god ordens skyld nævne kilden. Dit hammer/søm citat tilskrives normalt Abraham Maslow

5
8. september 2016 kl. 10:56

Mener at de kan overvåge alle, og forhindre terrorister i at kommunikere, eller aflytte dem ?

4
8. september 2016 kl. 10:28

Tænker om ikke det lidt det samme som Excel har haft i lang tid?

Man har mulighed for at dele sit workbook inde i Excel.

3
8. september 2016 kl. 10:01

Interessant, nu hvor Apple lige har meddelt at næste iWork har funktionalitet til multiplayer-editing. Det her er jo lidt af det samme, bare via flere filer.

2
8. september 2016 kl. 09:12

Hvis du kun har en Hammer i værktøjskassen så ligner alle problemer søm.

1
8. september 2016 kl. 09:09

Underholdende - altid sjovt at se hvad andre har gang i, selv der hvor slutresultatet er totalt ubrugeligt men læringsværdien er høj.