Denne artikel stammer fra det trykte Computerworlds arkiv. Artiklen blev publiceret den Computerworld d. 7. oktober 2005.
Ønsket om nogle generelle rutiner til at løse gentagende problemer gjorde Rasmus Lerdorf til ophavsmanden til PHP.
- Jeg havde brug for at løse nogle problemer.
Så kort kan historien om udviklingen af PHP fortælles. Udsagnet kommer fra dansk-canadieren Rasmus Lerdorf, der startede udviklingen af scriptsproget PHP, der ifølge Netcraft udgør mere end 40 procent af webscripting markedet.
Rasmus Lerdorf havde slet ikke planlagt at skrive et sprog, men ønskede blot at skrive nogle rutiner, som han kunne genbruge i sit konsulentarbejde.
- Jeg troede aldrig, at jeg skulle skrive et sprog; jeg ved ikke, hvordan man skriver et sprog, siger Rasmus Lerdorf til Computerworlds udsendte, da vi mødes på et London-hotel. Rasmus Lerdorf er et par timer tidligere ankommet til London fra Californien, men eventuel træthed fra den transatlantiske rejse kan man ikke spore hos dansk-canadieren, der skabte et sprog ved et tilfælde.
- Det er svært at sige, hvornår PHP startede, for jeg satte mig ikke ned og sagde: Nu vil jeg skrive et sprog. Hver gang jeg stødte på et problem i forbindelse med web-udvikling, skrev jeg et C-bibliotek, der kunne tage sig af det. I HTML-koden havde jeg så små makroer, der kaldte de forskellige C-rutiner. Det kunne eksempelvis være at få vist tiden. Så havde jeg en makro, der hed time. Så i starten var der ikke tale om et programmeringssprog; blot små makroer, fortæller Rasmus Lerdorf.
Rasmus Lerdorf fandt dog hurtigt ud af, at der var brug for deciderede sprogkonstruktioner:
- Der var behov for at lave if-sætninger som eksempelvis "if IE then ..." og "if Netscape then...". Det var svært at stoppe. Med en "if" skulle jeg også have variable og med en "if" kommer "else" selvfølgelig med; hvorfor så ikke else-if? Derfra er springet til en switch-case ikke så stor. Et while-loop er meget ligesom en if-betingelse, der blot "looper" tilbage. Dernæst kom behovet for subrutiner, siger Rasmus Lerdorf. Han smiler lidt af sin naive indstilling dengang:
- Da jeg begyndte, tænkte jeg, at det ikke kunne være så svært. Det blev dog svært meget hurtigt. Eksempelvis når man har udtryk som 2+2*3. Her kan man ikke bare læse fra venstre mod højre og løbende udregne resultatet på grund af operatorpræcedens i matematik. (2*3 skal udregnes inden der lægges 2 til, red.).
Erkendelsen af at det trods alt var kompliceret at skrive hvad, der efterhånden blev et scriptsprog til webudvikling, fik Rasmus Lerdorf til at læse bøger om compiler- og fortolker-konstruktion, så han kunne komme med en forbedret version 2. I dag er den nyeste version af PHP 5.0.5 og der er mange udviklere, der bidrager til PHP. Derfor vil Rasmus Lerdorf heller ikke betegne sig selv som skaberen af PHP.
- Det er ikke mig, der har skabt PHP. Det er de mange programmører, der løbende har ydet bidrag til PHP, forklarer Rasmus Lerdorf.
I dag er der en kernegruppe på ni personer, som står for den overordnede PHP-udvikling. Ofte er det på mailing-listen for PHP, at fremtiden for sproget diskuteres. Grundlæggende er der en meget pragmatisk holdning hos PHP-udviklerne; den samme pragmatiske holdning som Rasmus Lerdorf har.
- Hvis man har ideer til forbedringer eller udvidelser til PHP, skal man blot skrive koden. Hvis der er nogle, der ikke kan lide koden, kan de forsøge at gøre den bedre. Den fremgangsmåde betyder, at PHP måske ikke er så konsistent - det er ikke særligt kønt - men det kan løse problemer, siger Rasmus Lerdorf. En vigtig ting for Rasmus Lerdorf og resten af PHP-udviklerne er dokumentation.
- Vi har stor fokus på dokumentation. Hvis der bidrages med kode uden dokumentation er det ikke interessant, siger Rasmus Lerdorf.
Allerede fra første version, lagde Rasmus Lerdorf PHP ud som open source. Det var en ganske naturlig ting at gøre for den nu 36-årige dansk-canadier:
- Open source er en bedre måde at skrive software på, især for sådan en som mig. Jeg gider ikke skrive så meget selv. Hvis jeg kan tage, hvad andre folk har skrevet og få andre folk til at hjælpe med koden, så er det helt fint, siger Rasmus Lerdorf og fortsætter:
- Et lille hold programmører ville måske være 25 år om at skrive, hvad der er tilgængeligt i PHP i dag.
Rasmus Lerdorf er da også en stor fortaler for open source-udvikling.
- Jeg vil hellere have 10 open source-udviklere, der sidder og arbejder i deres fritid end 100 programmører, der betales for at arbejde fra ni til fire, siger Rasmus Lerdorf. Han mener, at open source-udviklerne ganske simpelt er mere entusiastiske og engagerede og derfor yder en bedre indsats.
Engagementet i open source-verdenen har også ført til, at Rasmus Lerdorf sammen med blandt andre Linus Torvalds og Michael Widenius fra MySQL i november sidste år rettede en appel til EU om at sige nej til softwarepatenter.
- Jeg har været med i nogle amerikanske retssager om softwarepatenter. Det er fuldstændigt vanvittigt, hvad der foregår i de patentretssager. Patenterne er så brede og generelle, at man i fremtiden ikke kan skrive software. Det vil ende med, at der vil være to eller tre store softwarefirmaer tilbage. Ingen små softwarefirmaer vil have en chance i det system, mener Rasmus Lerdorf.
For tiden arbejder Rasmus Lerdorf for Yahoo i Sunnyvale i Californien, hvor han arbejder med it-infrastruktur.
- Jeg står for Apache og PHP og hjælper med, hvis der er nogle problemer. Jeg er så heldig, at kunne gøre stort set hvad jeg har lyst til. Blandt andet har jeg skrevet noget scannings-software, der kan opdage eventuelle cross site scripting-problemer (Mulighed for at en web-applikation kan bruges til at franarre data fra web-brugere. red. ). Ellers holder jeg øje med, hvad der er cool for tiden.
Det sker meget på det programmerbare net. Ved hjælp af blandt andet webservices skal vi gøre det nemmere for almindelige brugere at sammensætte og remixe forskelligt indhold, siger Rasmus Lerdorf.
Billedtekst:
problemløseren - Jeg er ikke programmør, jeg hader at programmere. Programmering er kedeligt og besværligt. Jeg kan lide at løse problemer.
Boks:
Rasmus Lerdorf
Født på Grønland af danske forældre i 1968.
Boede i Frederikssund fra han var 3 år, til han var omkring 13 år.
Flyttede med sine forældre til Canada i 1980.
Har efterfølgende boet og arbejdet i Canada, USA og Brasilien.
PHP
Programmeringssprog. I 1995 udviklede Rasmus Lerdorf PHP/FI - Personal Home Page/Forms Interpreter. I 1997 blev PHP/FI omskrevet af Andi Gutmans og Zeev Gutski sammen med Rasmus Lerdorf. Der var tale om omfattende ændring, så produktet fik navnet PHP, der er en rekursiv forkortelse for PHP: Hypertext Preprocessor.