プログラマーとしては非常に複雑な問題を解決できますが、ユーザーインターフェイスを設計する必要がある場合、それらを使いやすくすることに失敗する傾向があります。
小規模な企業では、デザイナーやUXの専門家を雇う余裕はなく、プログラマーはソフトウェアでほとんどすべてを行う必要があります。しかし、これらのインターフェイスはめったに直感的ではありません(古典的な例)。
何が問題ですか?開発者は、優れたユーザーエクスペリエンスを設計するスキルをどのように向上させることができますか?
プログラマーとしては非常に複雑な問題を解決できますが、ユーザーインターフェイスを設計する必要がある場合、それらを使いやすくすることに失敗する傾向があります。
小規模な企業では、デザイナーやUXの専門家を雇う余裕はなく、プログラマーはソフトウェアでほとんどすべてを行う必要があります。しかし、これらのインターフェイスはめったに直感的ではありません(古典的な例)。
何が問題ですか?開発者は、優れたユーザーエクスペリエンスを設計するスキルをどのように向上させることができますか?
回答:
私はこれまでキャリアで何度もこの問題に遭遇しました。まず、問題であることを認識し、それを認めることが秘trickです。一度それを行うと、過度に複雑なインターフェースの作成を簡単にやめることができます。
ユーザーインターフェイスもソフトウェアエンジニアリングの一部ですが、おそらく多くのソフトウェアエンジニアにとってはそれほど興味深いものではありません。しかし、これに関連する多くの興味深い課題があり、私の経験では、それらはおそらくより技術的な課題と同じくらい興味深いかもしれません。
ユーザビリティ、ユーザーエクスペリエンスデザイン(UX)、ヒューマンコンピュータインタラクション(HCI) -それは魔法ではありません、それがあるソフトウェア開発プロセスの一部。
私のヒントは:
これらの単純な原則を長年にわたって実践することで、ユーザーインターフェイスの構築方法、ソフトウェアとの対話方法、使用時の考え方に関する有用な情報を実際に蓄積してきました。私は決して専門家ではありませんが、おそらくあなたの平均的なプログラマーよりも少し知っているでしょう。
Tl; dr: KISS
生物学的です。
それらは異なる目的を持っています。
両方で良いことは非常にまれです。少なくとも同時に。
更新:最近、経験などの他の要因があることを学びました。いくつかの遺伝的要因に加えて、子供の頃にどのように誘発されるかに応じて精神的能力を発達させます。たとえば、虐待を受けた子供は、夢の中でひどい現実から切り離されることを学ぶため、平均してコントロールグループよりも創造的です。
プログラマーとデザイナーが異なる考え方や異なる性格を持っていることについて議論したり、左脳と右脳、創造的と論理的について議論したりできると思いますが、実際には3つの基本的な問題があります。
3番目の問題は、簡単な方法をとらないための十分な規律を持つことで解決できます。最初の2つの問題が解決できるかどうかはわかりません。仕事に近ければ近いほど、部外者のように見るのが難しくなります。そのため、ユーザビリティテスト(ホールで誰かをつかんでアプリの前に座らせるなどの単純で非公式なものであっても)が非常に重要です。