Jesper Tverskov, 3. januar 2003
Mange websites har en funktion, der på dansk hedder "Tip en ven", det vil sige: "Send denne webside som et link i en email til en ven". Funktionen kan laves enten med den såkaldte "mailto"-metode eller som formular. Artiklen diskuterer fordele og ulemper ved de to metoder.
Ideen med "tip en ven" er god. Du surfer på Internettet og falder over en spændende webside, som du vil anbefale til en ven. For at gøre det let for dig, er der på websiden et link, der hedder "tip en ven", som du klikker på. Er funktionen lavet rigtigt indsættes alle nødvendige oplysninger automatisk i en email. Emne-feltet (subject) er udfyldt, og linket, dvs. en URL til websiden, er sat ind i emailens tekstfelt (body). Kun emailadresserne er det nødvendigt at indtaste.
Det er et åbent spørgsmål, hvor nyttig "Tip en ven" er. Erfarne brugere vil næsten lige så hurtig selv kunne kopiere URL'en i en websides adresselinje over i et emailprogram og sende det til en ven. Men selv for den erfarne bruger vil "Tip en ven" kunne inspirere til at gøre det. "Tip en ven" er mere relevant for det store flertal af brugere, der kun med besvær kan finde ud af selv at linke til en webside i en email.
"Tip en ven" er et interessant case set ud fra brugervenlighed. Hver eneste website, der her en "Tip en ven"-funktion, har lavet den på egen måde, og det reducerer nytteværdien, fordi brugerne hver gang skal spilde tid med at få en ny "Tip en ven" til at fungere. "Tip en ven" demonstrerer, at selv enkel funktionalitet kræver mange overvejelser, eksperimenter og tests, før brugervenligheden er tilfredsstillende.
Det er tankevækkende, at optimal brugervenlighed ofte er umulig. En brugervenlig "Tip en ven"-løsning skal også fungere i en stor procentandel af de anvendte browsere, og der skal også tages hensyn til faren for misbrug, behoved for at kunne lave statistik, med mere.
De nødvendige oplysninger og indtastningsfelter, der skal med i en "Tip en ven"-email, er ikke så indlysende, som man skulle tro. Det er, som vi senere skal se, meget få websites, der har en god "Tip en ven"-funktion, når den kigges efter i detaljerne. Lad os gennmemgå de nødvendige oplysninger og indtastningsfelter punkt for punkt.
Modtagerens emailadresse er selvfølgelig nødvendig; men hvad med afsenderens emailadresse, dvs. brugerens emailadresse? Mange websites anvender ikke brugerens emailadresse, men anvender i stedet websitets emailadresse som afsender. Det sker måske for at spare brugeren for én indtastning; men det kompromittere emailen, der i stedet fremstår som SPAM eller en reklame. Hele ideen og reklameværdien med "Tip en ven" er, at en bruger af et website, anbefaler det til en ven. Vennen, der modtager emailen med linket, skal kunne returnere mailen til afsenderen for at takke for tippet, eller for måske at kommentere den webside som begge nu har været inde og kigge på.
Det ligger i ideen med "tip en ven", at det skal være hurtigt og uformelt, blandt andet for at lokke brugeren af websitet til at anvende funktionen. Derfor er det unødvendigt med indtastningsfelter til navne på modtager og aftager, når der allerede er anvendt emailadresser. Indtastning af navne skal ikke være obligatorisk; men det er okay, at brugere, der har tid og lyst, kan indtaste informationer udover det nødvendige.
Linket, som det hele drejer sig om, er til en bestemt webside. Websiden har en "page title", der gerne skulle være dækkende for websiden. Denne "page title" bør automatisk indsættes i mailens emne-felt (subject). Udover "page title" bør emne-feltet indeholde et eller et par ord, der indikerer, at der er tale om et tip til en webside. Indled f.eks. emne-feltet med "Tip:" eller "(tip)", osv., så modtageren hurtigt fatter, hvad emailen handler om. På Klapmusen.dk, anvender jeg "(tjek artikel)" som indledning i emne-feltet. Et let identificérbart emne et ikke mindst nyttigt, når mailen senere skal slettes.
Grundideen er som sagt "et hurtigt tip". Hvis ovenstående anbefalinger er fulgt, er det rigeligt, at teksten i emailen kun omfatter linkets URL, dvs. adressen der skal klikkes på i de mailprogrammer, der understøtter det, eller som modtageren i andre emailprogrammer skal kopiere og indsætte i browserens adresselinje. Derudover bør der yderligere være et par ord, der tydeliggør, Hvad det handler om, f.eks. "Følg link til interessant artikel".
Brugere af "Tip en ven", der har tid og lyst, skal selvfølgelig have mulighed for at tilføje længere kommentarer i emailens tekst-felt. Tippet kan jo være en god anledning til at genopfriske en kontakt eller et gammelt venskab eller til at indlede en diskussion om noget på den webside som linket peger på. Men automatikken i "Tip en ven" skal være så god, at den typiske bruger kun behøver at indtaste emailadresserne.
Selv om de fleste websites i dag anvender en formular til "Tip en ven", er den såkaldte "mailto"-metode på mange måder bedre. Klapmusen.dk og Microsoft, f.eks. på websitet der markedsfører "Content Mangement Server", anvender "mailto"-metoden. Formular-metoden anvendes af f.eks. cnn.com, divine.com, bbc.com og computerworld.dk. De to metoder har fordele og ulemper.
I HTML laves et link med et anker-tag, hvor attributten "href" sættes lig URL'en, der er det "tekniske" link til en webside. Hvis denne URL indledes med "mailto:" efterfulgt af en amailadresse, aktiveres brugerens emailprogram med emailadressen indsat i modtager-feltet. Koden kunne se således ud:
<a href="mailto:jesper@domainname.dk">Send en email til Jesper</a>
Det er mailto-metoden i sin basale form, der anvendes på så godt som alle websites. Det er på mange måder fantastisk, at man på denne måde fra en webside aktiverer brugerens emailprogram med en emailadresse indlæst. Det kan i dag ikke lade sig gøre med programmering server-side, fordi det kræver, at softwareproducenterne først bliver enige om metoder, der med én og samme kode virker på tværs af browsere og emailprogrammer. "Mailto"-metoden er derfor lidt af et mirakel, som vi må værne om.
"Mailto"-metoden er en del af standarden for URL'er formuleret i The Mailto URL scheme i midten af 1990'erne. Den basale mailto-metode anvedes af stort set alle websites, men det er relativt sjældent, at den udvidede del af metoden anvendes. "Mailto"-metoden omfatter "cc"-feltet (cabon copy), "bcc"-feltet (blind cabon copy), "emne"-feltet (subject) og tekst-feltet (body).
Årsagen til at det næsten kun er den basale "mailto"-metode, der anvendes, skyldes dels, at formular-metoden for tiden er mere populær, dels uvidenhed om hvor bredt "mailto"-metoden faktisk understøttes. Stort set alle kommercielle browsere, f.eks. IE, Netscape og Opera, har sluttet op om "The Mailto URL scheme". Men én ting er som bekendt at understøtte en standard i ord. Det tager tid at komme frem til den samme fortolkning af standarden i praksis, og at implementere standarden uden fejl. Senere i artiklen vil vi prøve at uddybe, hvor godt udvidede "mailto URL'er" understøttes på tværs af browsere og emailprogrammer.
Lad os starte med et eksempel, hvor email-programmet åbner med modtageradresse og emne-feltet udfyldt:
<a href="mailto:jesper@domainname.dk?subject=Dette er en test">Email til Jesper</a>
Bemærk at kun modtagerens emailadresse er nødvendig, fordi dit emailprogram automatisk anvender din egen emailadresse som afsender. Bemærk også, at der efter emailadressen skal stå et spørgsmålstegn foran det efterfølgende felt. Skal der være mere end ét felt i URL'en, skal de øvrige felter indledes med "&". Alle, der laver webprogrammering kender disse skrivemåder i URL'er til bevidstløshed, da de ofte indgår i f.eks. programmering af web-formularer. Det anbefales, og det er ofte nødvendigt, at skrive "&" som såkaldt "entitet", dvs.: "&".
Næste eksempel viser brugen af de vigtigste af ovennævnte muligheder på én gang:
<a href="mailto:jesper@domainname.dk?subject=Dette er en test.&body=Hej Jesper%0D%0ADette er en test for lige at demonstrere brugen af mailto-metoden">Email til Jesper</a>
Ovenstående mailto-URL åbner dit emailprogram og indsætter min emailadresse. Emne-feltet (subject) er udfyldt og emailteksten (body) er udfyldt. Læg mærke til %0D%0A (det er et nul), der står i body-feltet. Det er metoden til at lave linjeskift. Ifølge "The Mailto URL scheme" skal der strengt taget være "%20" (et såkaldt escapet mellemrum) mellem alle ord. Ovenstående burde altså se således ud hvad angår emne-feltet:
<a href="mailto:jesper@domainname.dk?subject=Dette%20er%20en%20test.">Email til Jesper</a>
På samme måde skal der indsættes "%20" mellem alle ord i tekst-feltet (body). De fleste browsere og emailprogrammer, der anvendes i dag, understøtter, at man undlader at anvende "%20" som mellemrum mellem ord. Jeg anvender ikke "%20" i min løsning på klapmusen.dk, og Microsoft anvender heller ikke "%20" på ovennævnte website.
Jeg har ikke ressourcer til at teste, hvor godt den udvidede anvendelse af "mailto-URL'er" er understøttet. Det er meget vanskeligt at teste uden et test-lab, fordi du udover browserfabrikater i flere versioner til flere platforme (PC, MAC og WebTV), også skal teste styresystemer og emailprogrammer i flere versioner. Forskellige fabrikater og versioner af browsere og emailprogrammer kan ofte ikke sameksistere på en computer uden en masse bøvl.
Det er et kvalificeret gæt, at den grundlæggende "mailto"-metode understøttes af 99 procent af de i dag (2003) anvendte browsere og emailprogrammer, og at metoden i sin udvidede form, hvor "subject" og "body" anvendes, understøttes af over 90 procent. I de resterende browsere og emailprogrammer er der større eller mindre skønhedspletter, som brugeren er nødt til at rette før emailen afsendes.
Jeg har testet min egen implementering i de nyeste udgaver af IE med Outlook 2000, Netscape og Opera med interne emailprogrammer, og med Windows XP Professionel som styresystem. IE og Outlook 2000 viser de danske bogstaver forkert. Det skyldes sandsynligvis, at mit website anvender Unicode. Jeg kan leve med dette minus, fordi teksten i body ikke anvender æøå. De danske bogstaver indgår dog i overskriften i måske hver tiende artikel, der indsættes i emailens emne-linje.
Netscape klarer æøå rigtigt, men af en eller anden grund fungerer linjeskiftet i "body" (emailens tekst) ikke i min test, selv om Netscape er kendt for at understøtte linjeskift i "mailto" siden tidernes morgen. Det manglende linjeskift er dog ligegyldigt for funktionaliteten i min implementering af "Tip en ven", der er lige god både med og uden linjeskift.
I Opera 7 er der af endnu ikke klarlagte årsager store problemer i min test, selv om Opera længe har understøttet "mailto-url'er". Æøå vises rigtigt, men Opera indsætter synlige "%20" mellem ordene. "%20" er jo et "escapet mellemrum", som der strengt taget bør være i løsningen, men som selvfølgelig skal vises som mellemrum ikke som "%20". Denne fejl i Opera er dog til at leve med, fordi Opera anvendes af under en halv procent af brugerne.
Brugeren behøver kun at indsætte modtagerens emailadresse.
"Ny email"-dialogboksen, der ses ovenover, viser Klapmusens implementering af "Tip en ven" med anvendelse af "mailto"-metoden. Koden (pseudo), der åbner emailprogrammet med de relevante oplysninger, er vist i næste afsnit.
<a href="mailto:?subject=(tjek artikel) PAGE_TITLE&body=Et link til en interessant artikel:%0D%0ALINK_URL">Tip en ven - email webside</a>
Læg mærke til, at emailadressen mellem mailto og spørgsmålstegnet er fjernet. Den skal brugeren jo selv indsætte i sit emailprogram. Læg også mærke til, at der i emne-feltet (subject) står PAGE_TITLE, og at der i body-feltet står LINK_URL. Det er to variabelnavne, som selvfølgelig på en eller anden måde automatisk skal udfyldes med navnet og url'en på den webside, hvor brugeren har klikket på "Tip en ven"-linket. Der er anvendt XSLT og ASP.NET server-side til at indsætte "page title" og websidens URL i variablerne.
Til glæde for programmeringskyndige er den ægte kode, der anvendes på Klapmusen, vist i næste afsnit. Det mest bemærkelsesværdige er hvor lidt kode, der er nødvendig.
<a class="blueonly" accesskey="t"><xsl:attribute name="href">mailto:?subject=(tjek artiklel) <xsl:value-of select="$Sprog/overskrift"/>&body=Et link til en interessant artikel:%0D%0Ahttp://www.klapmusen.dk/<xsl:value-of select="$Sprog/filename"/></xsl:attribute>Tip en ven - email webside</a>
Det er ikke godt at bruge fast tekst til emne.
Microsofts website for Content Management Server, Content Management Server , anvender "mailto"-løsningen men ikke optimalt implementeret. I emne (subject) indsættes automatisk teksten "A link from Microsoft". Brugerens ven har mere glæde af "page title", f.eks. "Tip: Top 10 Reasons to Deploy Content Management Server 2002". Microsoft anvender JavaScript client-side til at lægge websidens URL ind i "mailto-URL'ens" variabel.
I emailens tekst (body) er indsat: "This link is from the Microsoft...", osv." Det er mindre dækkende. Der skal i stedet stå noget i retning af "Følg dette link til ...". Klapmusens og i mindre grad Microsofts løsning er så gode, at de fungerer også selv om brugeren kun indsætter modtagerens emailadresse.
Det er ikke nødvendigt at gå i tekniske detaljer med "formular"-metoden, da den virker som enhver anden formular. Det største problem med formular-metoden er, at den er indirekte. Der skal udfyldes og afsendes en email, men brugeren ser ikke emailen, der i stedet skal udfyldes indirekte i formularfelter. Fomularen bør derfor laves således, at den mest muligt ligner emailen: modtagerens emailadresse, emnefelt, tekstfelt. Emnefelt bør være automatisk udfyldt med websidens overskrift (typisk "page title"), og linket bør være indsat i tekstfeltet. Der skal også være et felt til at indtaste afsenderens emailadresse.
Det kan diskuteres om linket bør være indsat i tekstfeltet, eller om det først bør indsættes, når formularen genereres til email. Ideelt bør linket være indsat for overblikkets skyld, så brugeren kan se, om det er nødvendigt at tilføje tekst over eller under linket, f.eks. et "venlig hilsen". Brugertests med det konkrete websites målgruppe kan evt. afgøre, om det er nødvendigt med en mere idiotsikker fremgangsmåde.
Navne-felter er overflødige.
Afsender ser ikke emailen.
Www.divine.com er hjemmeside for et CMS med næsten 20.000 implementeringer. Divine's "Tip en ven" har ikke indtastningsfelt til emne (subject) men i stedet to unødvendige felter til indtastning af navn. Det er et dårligt valg, fordi formularen ikke længere har mindste lighed med en email.
Den fremsendte email adskiller sig da også fra det forventede på flere punkter. Selv om der er indtastningsfelt til brugerens emailadresse, bruger Divine i stedet Divine's webmasters emailadresse som afsender! Brugerens indtastede navn indleder emne-feltet, f.eks.: "Jesper has sent you content from divine.com".
I emailens tekst står modtagerens navn øverst, derefter den kommentar, brugeren har indtastet, efterfulgt af ordet "Divine" og linket. Brugeren skal ikke ryste ret meget på hånden under indtastningen, og den genererede email fremstår med store skønhedsfejl. Læg f.eks. mærke til at der står Peter to gange i emailens tekst, fordi jeg dummede mig under indtastningen. Brugeren ser aldrig emailen og vil derfor ikke lære af sine indtastningsfejl.
Hele ideen med at sende en personlig anbefaling af en webside går fløjten, når Divine ikke anvender afsenderens emailadresse, og når emne-feltet skriger til alverden, at det er Divine selv, der har lavet det meste af mailen. Hvis modtageren synes om linket kan han ikke returnere emailen til afsenderen for at takke eller for at diskutere linket.
Ond vilje kan lave fup og fidus med Divine's "Tip en ven"-løsning. Mailen sendes med Divine's emailadresse som afsender, og hvis fidusmageren vælger en kryptisk nyhed, kan emailen tilpasses, så den kan lokke modtageren på glat is til skade for Divine's renommé.
"Page title" bør være sat ind i "subject" og link i "message".
Bemærk BBC's lange smøre for at sikre sig imod misbrug.
BBC bruger den indtastede afsender-email, og afsenderen bestemmer indholdet i emne-feltet bortset fra, at BBC tilføjer "[BBC]" som indledning. Emailens tekst indledes med linket, derefter kommer den indtastede kommentar, og som afslutning en fem linjers lang smøre om, at BBC fraskriver sig ethvert ansvar for emailens indhold. Der er også en klagevejledning!
BBC bør undlade at sætte "[BBC]" ind i emne-feltet (subject), men bør i stedet indsætte overskriften på nyhedshistorien og nogle ord, der indikerer, at der er tale om et tip. Da BBC korrekt anvender brugerens emailadresse som afsender, er BBC nødt til at gardere sig imod misbrug ved nederst i emailen at indsætte en tekst med forbehold og endog en klagevejledning!
Overkill hvad angår "Tip en ven".
Bemærk advarsel om afsenders emailadresse.
CNN's løsning er en udvidet udgave af BBC's. Emne-feltet (subject) mangler i stedet er det indtasningsfelt for Blind Cabon Copy! Det må næsten være en fejl, da mere end 9 ud af 10 brugere ikke aner, hvad "BCC"-feltet i en email er for noget. Der er mulighed for at oprette en adressebog til emailadresser, der kan anvendes med kodeord. Der er mulighed for at gemme en "Tip en ven"-knap i sin browser (!) med mere, og der er oplyst udløbsdato for nyheden, der linkes til.
Emailen er i flot HTML-format, hvor linket, som det hele drejer sig om, næsten drukner. Da der korrekt anvendes brugerindtastet afsenderadresse, garderer CNN sig ved i emailen at inkludere formuleringen: "* Please note, the sender's email address has not been verified". Mailen fremtræder som en reklame fra CNN snarere end som et tip fra en ven.
Uden afsenders emailadresse får "Tip en ven" karakter af SPAM.
I indbakken fremtræder denne email så mystisk, at den bør slettes uden varsel!
Computerworlds løsning virker fiks, men det fungerer ikke. Da der ikke bedes om afsenderadresse, anvender Computerworld sin egen, og lader emailen fremstå, som om den kommer fra Computerworld. Mange vil opfatte emailen som SPAM og straks slette den. Om modtageren overhovedet får nys om, at det er en bekendt, der har afsendt emailen afhænger helt af, om brugeren identificerer sig med navn i kommentarfeltet.
Websidens navn, her overskriften på en artikel, er indsat i emne-feltet uden hint om, at det er et tip fra en ven. Artiklens navn gentages i emailen, hvor der også er resumé og link til artiklen. Modtageren kan ikke returnere emailen til afsenderen for at takke for tippet eller for at diskutere artiklen som linket peger på. Emailen fremtræder ikke som et tip fra en ven men som en reklame fra Computerworld.
Selv om formular-løsningen understøttes af næsten 100 pct. af browserne, og "mailto"-løsningen måske kun er optimal i 90 pct. af browserne og har skønhedspletter i resten, så er "mailto"-løsningen efter min vurdering alligevel den mest brugervenlige til IT-kyndige brugergrupper. "Mailto"-løsningen vil med større sandsynlighed blive brugt i praksis.
Vi ved fra os selv og fra brugertests, at den typiske bruger stejler, når der skal opgives emailadresser. Personligt har jeg svært ved at forestille mig, at jeg nogen sinde vil anvende en "Tip en ven"-funktion på et website, hvis jeg skal indtaste eget og en vens emailadresse i formularfelter. Tænk hvis jeg blev årsag til, at vennen blev oversvømmet med SPAM! Så hellere selv kopiere URL'en over i mit emailprogram og sende en privat email for at være på den sikre side.
På IT-orienterede websites som klapmusen.dk har jeg ingen problemer med at anvende "mailto"-løsningen trods skavanker i nogle browsere. Jeg er sikker på, at de brugere, der anvender den, og hvor den fungerer, vil bruge den igen og igen, fordi løsningen er optimal for den erfarne bruger, hvad angår brugervenlighed. De få brugere, hvor løsningen ikke er optimal, skal nok bære over med Klapmusen. Eventuelt kan begge metoder anvendes, og detektion af browser kan så bestemme, hvilken løsning der skal være tilrådighed.
Til mere folkelige websites er formular-metoden måske at foretrække, selv om den er meget klodset, hvad angår brugervenlighed. Det er et stort minus, at websitet er nødt til indirekte at stå frem som oprindelsessted for "tippet", for at reducere faren for misbrug. En formular-løsning ender hurtigt med at minde mere om en reklamesag fra et website, end om en tip fra en ven. Disse ulemper kan dog opvejes af, at løsningen virker hele vejen rundt, og fordi der kan laves statistik.
Copyright © 2003 Klapmusen.dk
The document is made to be a resource. Use it. Link to it. The document will be maintained, the URL is stable.
Opdateret: 05-01-2003 12:34
Status:
Revision:
Debatten er lukket. Send mig en mail.