彼らが嫌うソフトウェアを書く

あらゆるところに、顧客ロイヤルティ、ユーザー満足度、直感的なインターフェースなどに関する記事があります。 すでに十分です。 貧弱なソフトウェアの作成について詳しく説明しましょう。ユーザーは、ソフトウェアを操作した後、このソフトウェア自体、その開発者、キーボード付きマウスを同時に嫌います。







私は5年以上商用アプリケーションを開発しているソフトウェアエンジニアです。 時間が経つにつれて、私は不十分に設計されたアプリケーションがユーザーに非常に非常に否定的な感情を引き起こす可能性があることに気付き始めました。 技術的な観点から見たアプリケーションアーキテクチャの完成度は、まったく重要ではありません。 プログラムがユーザーのタスクの解決に役立たない場合、人生を単純化せず、期待に応えられない場合は、否定的な波を待ちます。 これがまさにあなたが達成しようとしているものである場合、ここで集められたヒントがあなたのユーザーを白熱させるのに役立つことを意味します。



しかし、真剣に、このコレクションの目的は、開発者によくある間違いに注意を引き、ソフトウェアプロジェクトの重要な要素を思い出し、ユーザーとの健全な関係の構築を支援することです。



ヒント番号1。 遅いほど良い



スピードは私たちの敵です。 アプリケーションは、5秒以内に何もダウンロードできません。 そしてさらに良い-少なくとも15秒にしてください。



いかなる形式でも、タスクのバックグラウンド処理を使用しないでください。 ユーザーに何が起こっているのか分からずに空の静止した画面を見て、すべてを呪いましょう。









ヒント番号2。 ユーザーの提案や希望を無視する



ユーザーは、プログラムに新しい機能を追加することを提案していますか? それが何であれ、リクエストを満たすために数行のコードを取り、次のように答えましょう:「これは不可能です」。 そのような提案を同僚と議論することさえ考えないでください。 ユーザーを分解します-そして、どのように問題が発生しても。



ユーザーが非常に執acrossに遭遇した場合、「これはアプリケーションの機能に対応していません」、または「私は何も助けられません。これらは別の従業員の義務です。」



ヒント番号3。 アプリケーションの稼働時間を心配しないでください



あらゆる種類の「サービスレベル契約」はナンセンスです。 システムが数分ごとにしっかりとハングアップする場合、それは完全に正常です。 さらに良いのは、たとえば顧客にサービスを提供するために使用されるプログラムについて話している場合です。 たとえば、チェックアウト時。



職場で障害が発生した場合、何らかの方法で他の人の注意を遮断します-これは一つのことです。 まったく別のことです-ユーザーがプログラムが凍結されていることを発表できる場合、10人が並んでいます。 これは、彼がこの「プログラム」について考えるすべてを公に表現する素晴らしい機会を彼に与えます。









ヒント番号4。 最新を目指して



大企業でプロジェクトを行っており、その代表者と常にミーティングを行わなければならない場合は、使用しているこの最新のXYZフレームワークの素晴らしさについて常に話してください。 クライアントが口を開く機会を持たないことが非常に重要です。その結果、彼の会社が新しいレポートを必要としているというナンセンスを言うことはできません。 6か月後、ランダムな理由で同じフレームワークをscり始めます。不健康な人気の結果、それを選択するのは間違いだったと言います。 繰り返しますが、これは非常に重要です-クライアントに話させないでください。彼はあなたが非常に長い間避けてきた報告について確かに尋ね始めるでしょう。



JavaScript環境でイベントをフォローするということは、私が話していることを理解しているということです。



ヒント番号5。 Webページ全体を更新する



インターフェイスはモノリスです。 個々の要素を非同期的にロードするようなものは、悪い習慣です。 たとえば、Webアプリケーションでユーザーが実行するすべてのアクションは、ページ全体のリロードにつながるはずです。 ユーザーが以前いた位置は覚えておく必要はありません。 その結果、彼は自分が何かをした場所にスクロールして、何が起こったのかを見る機会を持つことになります。



ヒント番号6。 ソフトウェアは簡単で、誰でも理解できます



問い合わせ、ユーザーをプログラムの主な機能にやさしく慣れさせるあらゆる種類の「入門ガイド」は過剰です。 プログラムは非常にシンプルで理解しやすいため、誰でも問題なく作業できます。









ヒント番号7。 フォームの確認はあなたの仕事ではありません。



フォームにデータを入力し、ちょっとした間違いをして、送信してページをリロードした後、空のフィールドで同じフォームをもう一度表示するのがどれほど素晴らしいか想像してみてください。 ユーザーが入力内容を誤解した場合、それはあなたの責任ではありません。



ヒント番号8。 重要なのはあなたの意見だけです



ユーザーがプログラムまたはその機能についてどう思うかを尋ねないでください。 これは非常に重要です。 決して。 あなたは天才であり、世界中の片手で数えることができます。 あなたはプログラミングの光です。 あなたの意見はあなたに関係するすべてです。









ヒント番号9。 ミステリーが多いほど良い



ソフトウェアのすべてを神秘的にしましょう。 たとえば、入力フィールドでプレースホルダーヒントを実行しないでください。 ユーザーにはプログラムが必要です-彼はすべてを推測します。 さらに、このアプローチには快適な副作用があります-時には、プロのように見えてどのようなユーザーが愚かであるかを友人に伝えることができます。



ヒント番号10。 リマインダー、自動更新、通知はありません



リマインダーメール、テキストメッセージ、プッシュ通知、Webからの新しいデータの自動ダウンロード-これは怠け者向けです。 ユーザーはすべて自分で検証する必要があります。 新しいメッセージを待っていますか? 自動化なし-私は自分で正しいページに行き、それを更新し、それからどれほど幸運でしたか。 彼がこれをしなければならない頻度は、私たちには関係ありません。











ヒント番号11。 もっと神秘的な言葉



あなたのプログラムはあなたのルールであり、それはとりわけあなたの語彙の反映です。 特定の平均的なユーザーが何かを理解していない場合、これは排他的に彼の問題です。 注目すべきいくつかの例を次に示します。「プロキシブラウザを介した非同期リクエスト」、「暗号ソルト」。



ヒント番号12。 直感的ではありません。



インターフェイスで何でもできます。 たとえば、フロッピーディスクアイコンを使用してエントリを削除し、アスタリスク-ログアウトボタンとして使用できます。 同時に、 HotJarのようなものを使用してシステムを操作するプロセスを記録することを忘れないでください(そして隠しカメラでユーザーを削除してください)。 面白いgif用の入力素材。



ヒント番号13。 ロード画面は常にどこにでもあるべきです



ローディング画面、そしてさらに良いこと-あなたの目の前に非常に長い間保持するもの-は、すべてのソフトウェアの不可欠な属性です。 単純な電卓でも必要です。 これにより、ユーザーは適切に調整してプログラムを操作し、その機能と利点を事前に評価できます。









まとめ



ここに記載されているヒントが、本当にうんざりするようなソフトウェアの作成に役立つことを願っています。 ご覧のとおり、これはそれほど難しくありません。 ただし、このような開発者が私たちの推奨事項に従わず、反対のことを行うことを決定する可能性はかなり高いでしょう。



親愛なる読者! また、ソフトウェア開発についてどのような「悪いヒント」を共有できますか?



All Articles