Eenvoud

Maandag, 17 januari 2000
Van Kever komt een stelling die ik u niet wil onthouden:
De complexiteit van een computerprogramma
is omgekeerd evenredig
met de kunde van de bouwers.
Tot m'n spijt ben ik het met deze stelling eens. Helaas, een pittige discussie over dit onderwerp smoort in gezapige eensgezindheid. Sterker nog: De stelling is ook van toepassing buiten het programmeurswereldje. The Design of Everyday Things
  • Een ingewikkelde, complexe database is vaak het resultaat van een knoeiende database-ontwerper.
  • Een hoop stenen en gruis ziet er een stuk ingewikkelder uit dan een beeldhouwwerk. Toch heb ik meer respect voor een beeldhouwer dan voor een vandaal.
  • Ingewikkelde huishoudelijke apparaten laat ik links liggen. Liever koop ik iets waar de ontwerper al over over nagedacht heeft, dan hoef ik er de kop niet meer over te breken.
Veel software is gemaakt door lieden die dol zijn op ingewikkelde puzzeltjes. Ze begrijpen niet dat hun software grote frustraties oplevert bij gebruikers. Niet de gebruiker is de kluns, maar de knoeier die de software ontworpen heeft. Een aantal voorbeeldjes, van moeilijk naar makkelijk.
Kies één kleur en niet meer dan één!!!
rood
groen
blauw
Dit ontwerp schept verwarring. Het ontwerp nodigt uit om meerdere kleuren te kiezen. Maar nee, slechts één kleur is toegestaan. Dat blijkt ook uit de instructie ter linker zijde, maar niemand die dat leest, ondanks alle schreeuwende uitroeptekens.

Pas op voor 'masters of disasters' die dit soort misbaksels wil gaan recht breien met uitgebreide instructies, error boodschappen of gedimde vinkjes. Zij maken makkelijke dingen moeilijk en moeten hun toevlucht nemen tot een of andere programmeertaal als ze er met HTML niet uitkomen.

Kleur
Dit alternatief is al veel beter. De gebruiker kan het niet fout doen. Wel heeft de gebruiker nog 2 kliks nodig. De eerste om de keuzen te zien en een tweede om te kiezen.
Kleur
rood
groen
blauw
Simpel en toch eenvoudig. Alle mogelijkheden staan in beeld. Met 1 klik kunt u een keuze maken.
Eenvoud is het kenmerk van het ware. Hoe complexer een ontwerp, des te grote de kans op fouten (.../a.html#airplane_rule). Yahoo (www.yahoo.com) heeft het afgelopen jaar z'n winst verveelvoudigd. Waarom? Omdat de Yahoo schermen eenvoudig en makkelijk zijn. Een moeilijke site jaagt klanten weg. Een makkelijke site trekt extra klanten aan. Eenvoud is goed voor de E-Commerce (.../computimes/...).

De site van Grandorado (www.grandorado.com/veiling.html) is een mooi voorbeeld van hoe het wel moet. U kunt met één enkele klik meedoen aan een veiling van bungalow arrangementen. Simpel en toch eenvoudig. Ik sluit af met een tegenstelling:

De complexiteit van een computertaal
is omgekeerd evenredig
met de kunde van programmeurs die er enthousiast over zijn.
Liefhebbers van zoiets nodeloos ingewikkelds als C++ vertrouw ik niet. Een JAVA krasser kan er mee door. Een enthousiaste Smalltalker wint acuut mijn vertrouwen. En iemand die echt raad weet met HTML is boven alle twijfel verheven.

Tot de volgende noot!
Henk Jan Nootenboom