Frage

Als Programmierer können wir sehr komplexe Probleme lösen, aber wenn wir eine Benutzeroberfläche entwerfen müssen, können wir in der Regel nicht zu bedienen.

In kleinen Unternehmen, die sie sich nicht leisten können, Designer und UX -Experten zu haben, müssen Programmierer fast alles in der Software tun. Aber diese Schnittstellen sind selten intuitiv (Das klassische Beispiel).

Was ist das Problem? Wie können Entwickler ihre Fähigkeiten bei der Gestaltung guter Benutzererfahrungen verbessern?

War es hilfreich?

Lösung

Ich habe dieses Problem in meiner Karriere schon oft begegnet - der Trick ist, zunächst zu wissen, dass es ein Problem ist, und es anzuerkennen. Sobald Sie das getan haben, ist es einfacher, übermäßig komplexe Schnittstellen zu beenden.

Die Benutzeroberfläche ist auch Teil von Software Engineering, aber möglicherweise für viele Software -Ingenieure nicht so interessant. Es gibt jedoch viele interessante Herausforderungen damit, und sie können nach meiner Erfahrung wahrscheinlich genauso interessant sein wie technische Herausforderungen.

Usability, User Experience Design (UX), Human -Computer -Interaktion (HCI) - es ist nicht magisch und es ist Ein Teil des Softwareentwicklungsprozesses.

Mein Tipp ist::

  • Bestätigen Sie Ihre Grenzen
  • Fragen Sie und hören Sie Menschen, die behaupten, über diese Dinge zu wissen
  • Wenn Sie sich nicht sicher sind, googeln Sie es und suchen Sie nach autorativen Antworten

Durch die Befolgen dieser einfachen Prinzipien im Laufe der Jahre habe ich tatsächlich nützliche Informationen über die Erstellung von Benutzeroberflächen, die Interaktion mit Software und wie sie denken, wenn sie sie verwenden, angesammelt. Ich bin keineswegs ein Experte, aber ich weiß wahrscheinlich a wenig Ein bisschen mehr als ein durchschnittlicher Programmierer.

Tl; dr: KUSS

Andere Tipps

Es ist biologisch.

  • UI und alle anderen Designaufgaben betreffen die Richtiges Gehirn.
  • Programmieraufgabe betrifft die linke Gehirnhälfte.

Sie haben unterschiedliche Zwecke.

Es ist sehr selten, in beiden gut zu sein. Zumindest gleichzeitig.

brain

UPDATE: Ich lerne kürzlich, dass es andere Faktoren wie Erfahrung gibt. Zusätzlich zu einigen ererbten Faktoren entwickeln Sie mentale Kapazitäten, je nachdem, wie Sie in Ihrer Kindheit ausgelöst werden. Zum Beispiel sind missbrauchte Kinder im Durchschnitt kreativer als die Kontrollgruppe, weil sie lernen, die Verbindung von ihrer schrecklichen Realität in Träumen zu trennen.

Ich nehme an, Sie könnten darüber streiten, wie Programmierer und Designer unterschiedliche Denkweisen oder unterschiedliche Persönlichkeiten haben oder über das linke Gehirn im Vergleich zu rechts und kreativen und kreativen gegenüber logisch streiten, aber es gibt wirklich drei grundlegende Probleme:

  1. Die Arbeit der Programmierer ist ihre Software. Sie kümmern sich darum; Sie widmen ihre Aufmerksamkeit dafür; Sie können sich darüber freuen. Die Arbeit der Benutzer ist etwas anderes; Die Software ist nur ein Werkzeug, um etwas anderes zu tun, und sie möchten so wenig Zeit wie möglich verbringen, damit sie sich stattdessen auf das konzentrieren können, was sie tun Wert darauf legen. Solange Programmierer dies falsch verstehen, werden sie die falschen Kompromisse im UI -Design einlassen. (Weitere Informationen zu diesem Thema finden Sie unter Joel Spolskys "Kontrolle Ihrer Umgebung macht Sie glücklich" oder David S. Platts "Grundgesetze".)
  2. Programmierer kennen ihre Software eng. Sie sind mit seinem Detail und seiner Komplexität vertraut; Sie verstehen, warum es so wirkt, wie es tut, weil sie ein vollständiges mentales Modell davon haben. Benutzer haben nicht den Anlass (oder das Interesse; siehe Punkt 1), um jedes Detail zu lernen, und es ist für sie unmöglich, ein vollständiges mentales Modell zu haben, da sie keinen Zugriff auf den Quellcode haben oder verstehen. (Weitere Informationen zur Bedeutung mentaler Modelle könnten möglicherweise Donand Norman's lesen Das Design alltäglicher Dinge; Obwohl es nicht spezifisch für Computer ist, ist es ein gutes Buch über das Interface -Design.)
  3. Die Kompromisse der Programmierer unterscheiden sich von Benutzern. Ein Programmierer kann sich leicht entscheiden, eine Funktion übermäßig komplex oder nur halbautomatisch oder auf andere Weise weniger als nutzbar zu machen, da es für den Programmierer einfacher ist, mit der mangelnden Benutzerfreundlichkeit umzugehen, als sie ordnungsgemäß zu codieren. Der Benutzer kümmert sich nicht darum, wie viel Aufwand der Programmierer es erfordert, ihn richtig zu codieren, und würde es lieber vollständig verwendbar haben.

Das dritte Problem kann gelöst werden, indem genügend Disziplin vorhanden ist, um den einfachen Ausweg nicht zu nutzen. Ich bin mir nicht sicher, ob die ersten beiden Probleme lösbar sind. Je näher Sie Ihrer Arbeit sind, desto schwieriger ist es, es so zu sehen, wie es ein Außenseiter tut. Deshalb ist Usability -Tests - selbst einfache, informelle Dinge wie jemanden in der Halle und das Sitzen vor Ihrer App - so wichtig.

Lizenziert unter: CC-BY-SA mit Zuschreibung
scroll top