Donnerstag, 24. Mai 2012


News

Dienstag, 8. Dezember 2009 | News

Vergessene Pflichten eines Entwicklers

(Link zum Artikel: http://www.entwickler.de/php//052846)
  • Teilen
  • kommentieren
  • empfehlen
  • Bookmark and Share

Brandon Savage hat sich einer düsteren Seite der Programmierung angenommen: Den vergessenen oder aus Faulheit vernachlässigten Pflichten eines Entwicklers. In diesem speziellen Fall der Formatierung von Daten.

Beinahe jedem dürfte dieses Problem bekannt vorkommen: Ein mühevoll ausgefülltes Formular, jede Eingabe mehrfach überprüft, den Kampf mit dem CAPTCHA gewonnen. Ein Lächeln schleicht sich unversehens in die Mundwinkel, siegessicher schickt man die Daten des Formulars auf die Reise. Doch das dicke Ende kommt meist zum Schluss – die Kreditkartennummer wurde mit Leerzeichen eingegeben. Ja, wer macht denn so was? Oder wer bildet sich ein, eine Telefonnummer wegen der besseren Lesbarkeit mit einem Trennstrich zwischen Vorwahl und eigentlicher Telefonnummer einzgeben?

Genau das moniert Brandon Savage in seinem Artikel Data Formatting: It IS Our Job. Wieso wird die Formatierung der Daten dem Anwender überlassen? Wieso setzen einige Entwickler voraus, dass der Anwender weiß, wie genau das Skript die Daten erwartet? Und das gelte nicht nur für die oben genannten Beispiele. Auch für die Datumsformatierung bietet PHP Funktionen, mit denen man viel Ärger über vermaledeite Formulare abwenden kann.

The bottom line here is that data formatting is our job as developers. We have an obligation to make the forms we create as easy to use as we can; it is not the job of the end user to send us data that matches the format of what we want. We should be prepared to format the data ourselves, and ask the user for help only when the data they submit is incompatible with what we’re trying to accomplish.Brandon Savage, 2009

Anhand einer simplen Funktion zur Formatierung von Telefonnummern versucht er, einen Denkanstoß zu geben. Die Quintessenz des Artikels: Entwickler, überwindet euren inneren Schweinehund und nehmt euch die Zeit, dem User arbeit abzunehmen. This is the point of feedback; use it wisely.

(tw)

Kommentare

Gravatar Tom 08.12.2009
um 11:50 Uhr
Das liegt gar nicht so sehr am "Vergessen" des Entwicklers.

Wenn wir in den Projekten Zeit für Dinge wie Usability einplanen dürften, würden wir das tun. Aber solange die klassische Deadline heißt "fertig bis gestern" und die Kunden die Budgets knapper kalkulieren als einen Tanga im Hochsommer, kann - nein MUSS - man solche "Pflichten" vergessen.

Es ist in den meisten Fällen weder Zeit noch Geld vorhanden für Dinge welche "nice-to-have" sind. Die meisten Projekte haben ja nicht einmal ein Budget für eine brauchbare Doku, saubere Anforderungen, oder eine Minimum an Qualitätssicherung.
#zitieren
Gravatar Cem Derin 08.12.2009
um 11:55 Uhr
Ich kann Tom's Einstellung nicht im entferntesten Teilen. Benutzereinnahmen unvalidiert annehmen ist nicht Faulheit sondern Fahrlässigkeit. Zu behaupten, dass man so etwas vergessen muss halte ich im Übrigen für eine sehr gefährliche Aussage in Anbetracht der Tatsache, dass hier evtl. auch Anfänger lesen, die den Umfang und das Ausmaß einer solchen Pflichtverletzung nicht oder noch nicht abschätzen können. #zitieren
Gravatar Dennis Becker 08.12.2009
um 14:37 Uhr
Filter für "LocalizeToNormalize" und andersrum halte ich für absolut notwendig. Das ist gerade beim Datum eines der größten barrieren im Netz: AMerikaner tippen MM/DD/YYYY und wir Deutschen tragen das Datum als DD.MM.YYYY ein. Wenn ich emine Website international anbieten will. muss ich beide Formate gleich behandeln können.

Das Beispiel ist allerdings nicht gut gewählt, denn gerade Rufnummern sind sehr komplexe Konstrukte in der Lokalisierung!
#zitieren
Gravatar Clemens 08.12.2009
um 22:43 Uhr
Cem, von Validierung war nicht die Rede, sondern von Formatierung.
Über Validierung und deren Notwendigkeit brauchen wir auch gar nicht zu diskutieren.
Aber Formatierung ist nunmal nice-to-have. Wenn der Kunde in seiner Anwendung eingegebene Telefonnummern im schönen Format haben will, muss er das natürlich auch bezahlen..
#zitieren
Gravatar Cem Derin 08.12.2009
um 22:46 Uhr
Für mich gehört das zusammen, wenn:
- Die Applikation die Daten in einem anderen Format als erwartet erhält
- Die Applikation mit diesen Daten nicht (mehr) arbeiten kann

Und da eine Applikation Daten nun einmal nur in einem Format entgegen nimmt oder nehmen sollte trifft das eigentlich so gut wie immer zu!
#zitieren

Folgende Links könnten Sie auch interessieren

  • Go Enterprise  [04.03.2003]
    [http://entwickler.de/zonen/portale/psecom,id,101,online,323,.html]
  • Klebstoff für das Web 2.0  [06.12.2006]
    [http://entwickler.de/zonen/portale/psecom,id,101,online,1045,.html]
  • Vierter Aufzug, vierte Szene  [12.04.2006]
    [http://entwickler.de/zonen/portale/psecom,id,101,online,816,.html]
  • Besser finden lassen  [13.02.2008]
    [http://entwickler.de/zonen/portale/psecom,id,101,online,1525,.html]
  • Kuchen backen!  [13.09.2007]
    [http://entwickler.de/zonen/portale/psecom,id,101,online,1294,.html]