Från ett annat forum Arkivguidens forum skrivet av Jörgen Tollesson
"Vad innebär det egentligen att Anbytarforum har "flyttat till en ny plattform"? Jo, man har bytt forumprogram, alltså det program som är installerat på servern och driver forumet - och därmed är "plattform" egentligen fel uttryck i det här sammanhanget. Programmet för det gamla Anbytarforum är Discus (som alltså också används av Arkivguidens Forum), medan det nya Anbytarforum använder Simple Machines Forum (SMF).
Som motivering för Anbytarforums flytt till en "ny plattform" sägs alltså att Discus är ett så "föråldrat" program att det var risk att hela forumet skulle "krascha", och att det därför var nödvändigt med ett byte till ett "modernare" program.
Det är riktigt att det var många år sedan det kom en ny version av Discus; utvecklingen av programmet är helt enkelt nedlagd. Och företaget bakom programmet (Discusware) har inte ens kvar sin hemsida, och någon support går inte längre att få därifrån.
Ja, då är väl saken klar - inte kan man väl fortsätta att använda ett program som inte längre utvecklas och som det inte går att få support för? Men om programmet fungerar bra i sin existerande version, och man klarar sig utan support även om det skulle bli något strul, vad finns det då för skäl att byta? Jo, det var ju det här med risken för en "krasch" p.g.a. programmets ålder...
Allvarligt talat - hur kan någon som har minsta lilla hum om hur datorer fungerar påstå något sådant? Hårdvara (t.ex. serverns disk) slits ut med tiden, likaså dessvärre vi människor och alla andra levande varelser - men ett datorprogram är ju bara elektroniskt lagrade ettor och nollor i en eller flera filer, och kan naturligtvis inte krascha p.g.a. ålderdomssvaghet! :-)
Om det är något i själva programmet som gör att forumet riskerar att krascha, så är det i så fall ett konstruktionsfel (d.v.s. dålig programmering), och kraschen kan ju då lika gärna komma när det är nytt som när det är 10 år. Men hur många kända Discus-krascher (som beror på programmet) finns det?
I ett inlägg i och om det "Nya Anbytarforum" sägs att man vid Anbytarforums uppgradering från version 3 till 4 av Discus (alltså den senaste uppgraderingen år 2007) fick "hemska prestandaproblem som löstes efter lite handpåläggning".
Sanningen är att detta hade en enda orsak, som dessutom är ett välkänt problem med Discus-forum: När många samtidigt använder den populära sökningen efter "Nytt senaste dygn", så kan servern överbelastas. Men det finns en enkel och väl etablerad lösning på det problemet, en lösning som fanns beskriven i Discuswares supportforum och användes i Anbytarforum redan med Discus 3 - vilket man dock missade vid uppgraderingen till Discus 4, och det var alltså p.g.a. den missen som problemen uppstod i Anbytarforum. Men när man fått klart för sig hur det hela skulle lösas (= "handpåläggningen"), så fungerade forumet som vanligt igen. Några allmänna "hemska prestandaproblem" var det alltså inte frågan om.
Discus är dessutom varken ett primitivt program eller någon dagslända - tvärtom. Det utvecklades under många år, och var ett populärt program som användes av ett stort antal diskussionsforum världen runt. Och bland dessa forum fanns de som var minst lika stora som Anbytarforum; inte heller storleken (antalet inlägg) kan alltså vara orsaken till den påstådda kraschrisken.
Om programmet alltså tuffar på som det ska - och dessutom har funktioner som användarna inte vill vara utan - varför då byta till ett annat program? Ja, det är en bra fråga...
Låt oss se på några elementära fakta om hur programmet Discus fungerar:
Discus skapar HTML-sidor, en för varje diskussion (HTML är det kodspråk som vanliga websidor är skrivna med). Startar man en ny diskussion, så skapas det alltså en ny sida (som t.ex. när jag startade den här diskussionen, "Ny plattform" för Arkivguidens Forum?). Och när det sedan ändras något på en diskussionsida (ett nytt inlägg, eller redigering/flyttning/radering av ett inlägg), så uppdateras sidan, d.v.s. Discus skapar en ny version av diskussionssidan som ersätter den gamla.
Diskussionsidorna är m.a.o. vanliga websidor (som vilka hemsidor som helst), och med vanliga länkar mellan sidorna. Och när dessa sidor är skapade, så ligger de på servern, tillgängliga för alla besökare via deras webläsare.
Dessutom har Discus en databas (MySQL), där uppgifter sparas om både inlägg (tid, författare, text) och användarkonton, och det är i databasen som sökningar utförs.
Kort sagt: Discus används alltså bara för att skapa och uppdatera forumets diskussionsidor, men inte för att 'plocka fram' dem när de ska läsas. Det som skulle hända om man tog bort programfilerna från servern är att det inte skulle gå att ändra något i forumet och inte söka - men sidorna med alla inläggen skulle finnas kvar och kunna läsas, och alla länkar mellan sidorna fungera. Det är alltså omöjligt att hela forumet "kraschar", om man med det menar att alla inlägg försvinner för att själva programmet skulle haverera av någon orsak.
Och när det gäller själva programmet Discus, så består det av ett antal skriptfiler. Programmeringsspråket är Perl, vilket är i allra högsta grad levande och mycket använt också i dag (t.ex. är CPanel, den mycket populära kontrollpanelen för webhotell, skriven i Perl). Discus kommunicerar med server och webläsare via CGI-skript, som är en lika normal teknik i dag som när Discus skapades.
Allt prat om att Discus är "föråldrat" för att det var många år sedan det uppdaterades är bara dumheter. Det är fullkomligt ointressant hur gammalt ett program är, d.v.s. vilket år det släpptes (publicerades) - det viktiga är vilken teknik som används. Och som konstateras här ovan, så är det inte sant att Discus teknik är "föråldrad" - och därmed är det heller inga problem för Discus att fungera ihop med servern (varken hård- eller mjukvara).
Naturligtvis är det möjligt att någon av Discus programfiler kan bli korrupt av någon orsak, men sådant kan ju hända också med andra och splitter nya program (t.o.m. Microsofts program lär understundom råka ut för vissa problem, har jag hört ryktas... :-)). Men om något sådant skulle hända, så är det bara att via FTP ladda upp en ny version av den skadade filen till servern (eller alla programfiler, om man inte vet vilken av dem som krånglar) - och vips, så rullar det på som det ska igen; man behöver alltså inte gå igenom hela installationsproceduren på nytt. (Detta förutsätter naturligtvis att man har en oskadad kopia av Discus-filerna sparad på den egna datorn - och det har man ju... :-))
De flesta av Discus programfiler kan dessutom redigeras via programmets kontrollpanel, och alla (också de som inte går att komma åt via kontrollpanelen) kan öppnas och ändras i vilken enkel textredigerare som helst. Skaparna av Discus har upphovsrätt till programmet, så man kan inte sprida sina ändrade filer till andra, men för eget bruk har man sin fulla frihet att göra ändringar. Man kan alltså lägga till, ta bort eller ändra funktioner i Discus efter behag. Det är m.a.o. inte bara den ursprunglige skaparen av Discus som kan uppdatera programmet - det kan man göra själv, om man behärskar Perl och CGI!
Om Släktforskarförbundets styrelse anser att det saknas något i Discus eller att något i det programmet inte fungerar så bra som det borde, så framstår det av ovannämnda skäl som en minst sagt märklig lösning att man väljer att...
· först flytta över Anbytarforum till ett nytt och "modernt" program (SMF) som saknar flera verkligt viktiga och bra funktioner som finns i det gamla och "föråldrade" programmet (Discus)...
· och sedan låta en programmerare åtgärda vad man felaktigt kallar för "barnsjukdomar", d.v.s. ändra i det "moderna" programmets kod för att förbättra dåligt fungerande funktioner och lägga till sådana som helt saknas (och t.o.m. tvingas att "förstärka kansliet" för att "beta av problemen"), så att programmet åtminstone någorlunda ska motsvara det som användarna uppskattade i det "föråldrade" programmet...
...när man i stället skulle kunna...
· låta en programmerare göra ändringar i Discus, så att forumet i princip kunde se ut och fungera som tidigare, fast förbättrat enligt de egna önskemålen (vilket inte skulle vara några problem, eftersom det finns gott om programmerare som behärskar det populära skriptspråket Perl).
(Det är fel att kalla bristerna i det nya Anbytarforum för "barnsjukdomar", eftersom det faktiskt är så här som SMF:s skapare har avsett att programmet ska fungera - det har helt enkelt bara inte lika bra funktioner som Discus.)
En sak till - och en mycket viktig sådan - talar för att det hade varit bättre att förbättra Discus i stället för att bygga om ett program som fortfarande utvecklas av programmets skapare (som ju SMF gör): Egna ändringar i ett program (t.ex. "Nytt senaste dygn" i nya Anbytarforum) försvinner när man uppdaterar till en ny version av programmet (alltså en officiell uppdatering), om ändringarna är gjorda direkt i programkoden. Det gäller då att man har dokumenterat sina ändringar noga, så att man kan pilla dit dem alla också i det uppdaterade programmet - om de alls går att genomföra på samma sätt där. Och om man i stället gör sina ändringar i form av tillägg till programmet, så är det bara att hoppas att de är kompatibla med den nya programversionen.
Kan man då inte bara strunta i uppdateringar av programmet, så att de egna ändringarna inte 'saboteras'? Nej, fullt så enkelt är det inte. PHP är i dag det totalt dominerande skriptspråket bland både diskussionsforum (t.ex. SMF, men alltså inte Discus) och bloggprogram (t.ex. Wordpress) och därmed ett populärt mål för hackare. Titt som tätt kommer därför uppdateringar av PHP-program när man har tätat upptäckta säkerhetshål. Att avstå från dessa uppdateringar är alltså inget som kan rekommenderas. Det gäller också att se till så att man inte själv skapar några säkerhetshål med sina 'hemmabyggda' ändringar av programmet...
Tilläggas kan att om Släktforskarförbundet hade gjort ändringar i Discus i stället för att flytta till en "ny plattform", så hade man dessutom sluppit den katastrofala (och sannolikt inte billiga) konverteringan av de gamla inläggen till det nya formatet - en konvertering som har orsakat en informationsförlust i den stora faktabanken Anbytarforum som en "krasch" i Discus omöjligen skulle ha kunnat ställa till med...
Och vilken slutsats kan man då dra av allt detta? Jo, den självklara att Anbytarforums öde är ett praktfullt exempel på hur det kan gå om man ignorerar en välkänd och klok regel: "Om det inte är sönder, så laga det inte." Eller på engelska: "If it ain’t broken, don’t fix it."
Avslutningsvis tillåter jag mig en liten liknelse för att illustrera vad Släktforskarförbundet har gjort med Anbytarforum:
Man kallar sin fullt fungerande Saab för "föråldrad" bara för att det inte längre tillverkas några nya Saabar, och så skrotar man den. I stället skaffar man sig en "modern" Volvo - och lämnar in den på verkstad för att få den ombyggd, så att den blir så lik den "föråldrade" Saaben som möjligt... :-)"