Van het weblog

Nieuw telefoonnummer voor Smeding Concepts

Wil je bellen met Smeding Concepts, kies dan vanaf nu ons nieuwe telefoonnummer.

Eén loket voor webdesign, cms en online marketing

Facebook spreekt een andere taal dan zijn gebruikers

Afbeelding bij Facebook spreekt een andere taal dan zijn gebruikers

Door het gebruik van vrij nieuwe technieken als AJAX is het mogelijk om formulieren op websites steeds slimmer en intuïtiever te maken. Dat het er soms ook onnodig ingewikkeld van kan worden bewijst Facebook.

Geplaatst op dinsdag 15 februari 2011

Facebook laat gebruikers aangeven welke talen zij spreken. Een handige feature op een sociaal netwerk, niet alleen is het prettig om te kunnen pronken met je talenkennis, het maakt het ook makkelijker om te communiceren met mensen die je nog niet kent. Vraag is hoe je het gebruikers hun talen zo simpel mogelijk laat invoeren en toch zo veel mogelijk met deze input kunt doen.

Nadelen van een eenvoudig invoerveld

De meest voor de hand liggende optie om gebruikers om invoer te vragen, is het gebruik van één inputveld. Dat zou er zo uit kunnen zien:

Voorbeeld van eenvoudige tekstinvoer

Zoals je kunt zien kan een gebruiker in zo'n tekstveld zelf omschrijven welke talen hij beheerst. Bij een eenvoudig tekstveld als hier is het voor een gebruiker redelijk duidelijk wat er van hem wordt verwacht. Dit is prima als je op een profielpagina wilt weergeven welke talen iemand spreekt, maar veel meer kun je er niet mee. Wat als je gebruikers wilt laten zoeken naar andere gebruikers en als zoekoptie een taal wilt kunnen laten opgeven?

Je zou kunnen zoeken in de tekstinvoer van je gebruikers, maar erg betrouwbaar is dit niet. Sommige gebruikers zullen alleen hun moedertaal invullen, maar de meeste gebruikers zullen meerdere talen opgeven. Hoe zullen deze worden gescheiden? Met komma's lijkt het meest handig, maar niet iedereen zal de talen invullen als in bovenstaand voorbeeld. Ook kunnen talen/dialecten de naam van een ander taal/dialect bevatten (voorbeeld: Fries/Westfries), wat voor onverwachte zoekresultaten kan zorgen.

Een ander probleem is de taal waarin de talen worden ingevuld. Een Nederlandse gebruiker kan zijn talen in het Nederlands invullen, maar bijvoorbeeld ook in het Engels. Hoe verklaar je aan gebruikers die zoeken dat zoeken op 'Nederlands' en 'Dutch' verschillende resultaten voor dezelfde taal oplevert? En als je kennis over de vertalingen van taalnamen in je systeem zou stoppen, hoe haalt deze de individuele talen ingevoerd door gebruikers -inclusief spelfouten- uit een tekststring met meerdere talen?

Een alternatief is je gebruikers te laten kiezen uit een lijst met talen voorzien van invoervakjes. Zo zou je de talen die je beheert kunnen aanvinken. Met alleen al ongeveer 7300 hoofdtalen zou dit een onoverzichtelijke lijst worden, of je zou een groot aantal talen buiten je systeem moeten laten.

Gebruik van een dynamisch formulier

Deze problemen moeten de ontwikkelaars van Facebook ook gezien hebben. Van het grootste social network ter wereld verwacht je hiervoor een goede oplossing en dat is ze ook redelijk gelukt. Facebook laat gebruikers bij het bewerken van hun profiel hun talen invoeren in aparte invoervelden. Zo kunnen gebruikers elke mogelijke taal invoeren en komen deze gekozen talen toch als afzonderlijke 'records' in de database, wat het zoeken in de talen van gebruikers vereenvoudigd.

Om gebruikers te helpen bij het correct schrijven van de talen hebben ze een auto-aanvullen-functie toegevoegd en door na elke ingevoerde taal automatisch een nieuw invoerveld toe te voegen kan in theorie een oneindig aantal talen worden ingevuld.

Zelfs de mooiste oplossing werkt niet als de gebruiker het niet snapt

Tot zo ver ben ik enthousiast, dit is de oplossing die ik ook had gekozen. Zo'n systeem moet echter wel heel intuïtief werken en erg slim zijn als ruim 500 miljoen gebruikers hier allemaal goed mee kunnen werken. En op dat punt stort alles bij Facebook jammerlijk in elkaar.

Gebruikers snappen niet dat ze steeds één taal moeten invullen

Veel gebruikers typen alle talen die ze beheersen in één inputveld. Dat komt omdat er in eerste instantie maar één tekstveld in beeld zichtbaar is. Ook schept de autoaanvullen-optie voor verwarring, doordat hierin opties worden genoemd waarin meerdere talen worden opgesomd. Deze opties zijn waarschijnlijk gebaseerd op de eerdere invoer van andere gebruikers.

Invoer van talen bij Facebook

Een volgend tekstveld verschijnt pas na het aanklikken van één van de talen uit de lijst met suggesties. De kans is groot dat je dan al hebt gekozen voor 'Nederlands, Engels' of een andere optie. Als je namelijk niet een optie kiest, maar doorgaat naar een volgend invoerveld, verdwijnt de inhoud van het formulierveld en mag je het dus nog een keer proberen met als gevolg ergernis bij de gebruiker.

Meerdere varianten van dezelfde taal in omloop

In de screenshot hierboven zie je dat er vier verschillende suggesties verschijnen bij het invoeren van 'Nederlands', waarbij je bij twee van die suggesties gratis nog andere talen erbij krijgt. Typ je in plaats van 'Nederlands' het woordje 'Dutch' of 'Holland' in, dan blijken er nog meer varianten van de keuze Nederlands in de omloop te zijn. Dit komt vrijwel zeker doordat Facebook er voor gekozen heeft niet zelf te bepalen welke opties gekozen kunnen worden, maar dit heeft gebaseerd op eerdere invoer van gebruikers.

Had het Facebook-team wel gekozen voor een vaste lijst met (alle) wereldtalen, dan hadden ze de suggesties ook meteen kunnen aanbieden in de taal van de gebruiker en er voor kunnen zorgen dat bij het intypen van 'Dutch' als suggestie 'Nederlands' verschijnt.

Gevolg: wat mooi had kunnen zijn, loopt in de soep

In de praktijk heeft Facebook niet veel aan de invoer van gebruikers. Op een profielpagina zal het voor de weergave weinig verschil maken, maar de manier waarop de talen van gebruikers nu zijn opgeslagen is volkomen gesegmenteerd. Hierdoor is gebruikers zoeken/filteren op taal een vrijwel onmogelijke opgave.

Facebook zou vanwege de versnipperde invoer en gegevensopslag allerlei technische noodgrepen moeten uithalen om toch de juiste resultaten te tonen op basis van een simpele zoekopdracht. Geen wonder dat 'taal' momenteel niet als zoekoptie wordt aangeboden...

You are not the user

Als je technisch mooie oplossingen bedenkt, bijvoorbeeld voor de invoer van informatie, vergeet dan niet dat deze ideeën niet automatisch voor iedereen duidelijk zijn. Als je wilt dat alle gebruikers goed kunnen en zullen werken met wat je hebt bedacht, zorg er dan voor dat de werking ook voor iedereen duidelijk is.

In het voorbeeld van Facebook zijn niet alleen de ongelukkige keuzes van de ontwikkelaars van dit dynamische formulier de oorzaak voor de onbruikbare resultaten die het formulier oplevert. Met een stukje uitleg over de werking van dit deel van het formulier hadden de problemen nog voor een groot deel voorkomen kunnen worden. Ook had Facebook de komma's in de invoer van gebruikers kunnen gebruiken of hier foutafhandeling op kunnen toepassen.

Besef dat de eisen die een bezoeker aan een website of webapplicatie stelt niet per se overeenkomen met je eigen normen en wensen. Zelfs als je denkt dat je voldoende zorg hebt besteed aan gebruiksvriendelijkheid, is het verstandig om je applicatie regelmatig te laten testen en ervaringen uit de praktijk te gebruiken om deze te blijven verbeteren. Dit is het begin van mooie oplossingen die wél werken.

Update 28-9-2011: Lees ook deze recensie, waarin hetzelfde probleem wordt uitgelegd en te zien is dat het, ook al heeft Facebook wat details aangepast, nog steeds niet is opgelost.

Tags: Facebook, formulier, usability en webdesign.

Lees ook deze gerelateerde artikelen

Reacties bij dit artikel

t René op vrijdag 11 november 2011 om 05:00
"Gebruikers snappen niet dat ze steeds één taal moeten invullen"

Klopt, maar nu wel.
Dank!

Plaats je reactie bij dit artikel

Omdat dit artikel meer dan een jaar oud is, is het niet meer mogelijk om te reageren.