問題タブ [usability]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
usability - あなたの組織はユーザビリティにどのように取り組んでいますか?
私には仲の良い友人がいます (実際には私の古い大学のルームメイトです)、時々私の個人的なプロジェクトを批評してくれます。彼は大手銀行のユーザビリティ エンジニアで、彼がどんなことをキャッチ/提案しているかにはいつも驚かされます。大学生の頃、ユーザビリティがある程度重要であることは常に知っていましたが、それほど気にしていませんでした。最近、私は、優れたユーザビリティの専門家は金の重みに見合うだけの価値があることに気づきました。
私の質問には2つの部分があります:
- あなたの組織にはユーザビリティを専門とするチームがありますか? もしそうなら、それらはあなたの開発プロセスにどのように適合しますか?
- ユーザビリティの専門家にアクセスできないソフトウェア エンジニアが、UI を自分で開発するときに実行するユーザビリティの「チェックリスト」をお勧めできますか? 私はこの件名をグーグルで検索し、いくつかのガイドを見つけましたが、それらは非常に長かったです. オンラインブックを閲覧しなくても、タックボードに貼り付けて参照できる小さなものを探しています。
usability - スパムを阻止するために、recaptcha.net に代わるものはありますか?
私の会社で私より地位の高いメンバーが、自分の Web サイトで recaptcha.net を使用して、公開フォームからのスパムを阻止することを拒否しています。彼は、チューリング テストは「非常に読みにくい」ので、私たちのサイトに来る人が情報を入力するのは難しいだろうと考えています。
この方法を使用する代わりの方法はありますか? こういう読みにくい画像が入ってない?
(ばかげた質問です...私次第であれば、地球上の他の誰もがそうしているので、recaptchaを使用するでしょう...しかし、とにかくチェックすることにしました。)
また、Javascript によって設定され、後でサーバー上でチェックされる隠しフィールドを使用することは、本当にスパムを阻止する良い方法ですか?
私自身は、それがそうであるとは本当に思っていません...ブラウザでは実行されないが、Javascript(Rhinoなど...)を実行できるあらゆる種類のJavascriptエンジンがあり、JSを簡単に妨害するために使用できます/サーバー側のスパム対策方法。
usability - 応答時間が遅いチートシート
ユーザーインターフェイスの応答時間に関する現在および過去の論文へのリンクと信頼できるリンク(統計およびブログ投稿)を持っている人はいますか?
当然のことながら、信頼できるリンクは、人間とコンピューターの相互作用におけるヒューマンファクターの設計基準です。
いくつかの重要な引用は次のとおりです。
【に関して】次のページのリクエストへの対応。[…]1秒を超える遅延は、思考の継続性に影響を与えるように見えます。
と
あらゆる種類の問い合わせが行われたと想定します。ユーザー(および彼の注意)は、応答を受信するまで端末に拘束されます。彼が忙しい人である場合、彼にとって不可欠な情報であっても、15秒以上の拘束は煩わしさと混乱以上のものである可能性があります。それはすぐに意気消沈する可能性があります-つまり、仕事のペースと仕事へのモチベーションの低下です。
これらの引用は40年前のものですが、今日では非常に関連性があります。
ジェイコブ・ニールセンの権威ある抜粋もあります。
このコミュニティウィキの下に、この種の研究へのすべてのリンクを集めたいと思います。
次回、マネージャーから応答時間を無視するように言われたり、アプリケーションの速度を低下させる機能を構築したりする場合は、このページへのリンクを送信するだけです。
web - Web ユーザビリティ - BGM
私は個人的に、ウェブサイトの BGM が大嫌いです。私のクライアントは、この件に関して反対の感情を持っています。お客様は常に正しいので、音楽を追加しましたが、お客様と一緒に主題を再検討したいと思います。
ほとんどの人は、それが煩わしく貴重な帯域幅を浪費することに同意するでしょうが、バックグラウンド ミュージックに対して有効な議論を提供できるユーザビリティの研究や、専門家として尊敬されている人への推奨事項はありますか?
api - 明示的なAPIメソッドと一般化されたパラメーターベースのAPIメソッド
顧客がアクセス可能なAPIを定義する場合、次の中で推奨される業界慣行は何ですか。
a)それぞれが非常に狭く特定の目的を持つ一連の明示的なAPIメソッドを定義します。次に例を示します。
b)より一般化されたパラメータベースのAPIメソッドのセットを定義します。例:
私の意見:
(a)に賛成
ブールベースのメソッド(EnableFooなど)の場合、意図がはるかに明確であり、将来拡張が必要になる可能性が低く、コードが読みやすくなるため、オプション(a)を明確に優先します。
たとえば、EnableDisableFooと呼ばれるメソッドは、有効にするか無効にするかを示すブールパラメータを取りますが、あまり明確ではなく、まとまりのある目的もありません。
問題がより複雑になるのは、複数のオプションがある場所です。
(b)に賛成
オプション(b)は、APIに拡張性を提供する優れた方法ですが、使いやすさが犠牲になります。オプション(a)を使用すると、APIメソッド名自体が、それが何をしているかを示すのに十分な情報を提供します。オプション(b)を使用すると、ユーザーはメソッド名と使用する適切な列挙/パラメーターの両方を検索する必要があります。理論的には、これはユーザビリティの観点からオプション(b)を悪化させますが、メソッドを少なくすることは良いことなので、これでも完全には当てはまりません。
他の考え
使いやすさと拡張性のバランスをとる必要があり、それらはしばしば互いに対立しています。しかし、APIデザイナーの意見に頼るのではなく、これを分析するためのより客観的な方法があると思います。
誰かがこれについて何か考えを持っていますか?
web-applications - Web ユーザビリティ - データリストとデータ行の操作
データバインドされたアイテムのリストがあり、アイテムごとに、ユーザーに次の機能を提供したい場合があります (たとえば)。
- 消去
- ダウンロード
- 詳細を表示
- または何らかの方法で「マーク」する
いくつかのオプションがあります:
- 行アイテムの操作を完了するために、行自体にボタンまたはリンクを提供します
- 行内でチェックボックスを選択してから、選択したアイテムのグループの操作を実行する手段を提供します
- 上記の組み合わせ (「詳細の表示」などの一部の操作は、グループ化された選択方法では機能しません)
この種のインタラクションを提供するための最も使いやすいアプローチは何だと人々は考えていますか?
「使用可能な」リストの例へのリンクは良いでしょう。
text - ボタン上のテキストとアイコンの間の最良のトレードオフは何ですか?
今日の同僚との話し合いで、私はアイコンが何を意味するのか思い出せず、アイコンの上にカーソルを置いてツールチップを表示し、必要なボタンを見つける必要があることを嘆いていました。
彼らの側では、テキストを翻訳する必要がある場合、それが適合しない可能性があり (ドイツ語と英語など)、ツールチップを含むテキストがあるすべての場所で翻訳が必要であると述べていました。したがって、プレーンなアイコンの方が簡単です。
テキストの余分な作業と、アイコンに悩まされているユーザーのサブセットとの使いやすさの最良のトレードオフは何ですか?
linux - Enlightment 用の KDE systray エプレットはありますか?
Enlightenment DR16 は openSUSE 11.1 にパッケージ化されていますが、KDE アプリを必要とする KDE アプリ (ktorrent など) に systray を提供する明白な方法 (Enlightenment サイト、Google など) がないため、KDE アプリで使用するのは少し面倒です。
これを回避する方法を知っている人はいますか?
私は目を楽しませるために e を使用していません.2.6GHzのCeleronで実行しており、KDE(4.1)のパフォーマンスはそれほど優れていないため、いくつかの代替手段を試しています.
winforms - Winforms で一時的に役に立たないコントロールをどのように処理しますか (非表示と無効化)?
「Use foo」というチェックボックスの直後に、ユーザーが使用したい「foo 値」を入力できるテキストボックスが続くフォームを持つことは非常に一般的です。もちろん、このテキストボックスは「Use foo」がチェックされている場合にのみ役に立ちます
この状況に対処する最善の方法がわかりません:
- テキストボックスを無効にします (つまり、textboxfoo.Enabled=false;)。
- 非表示にする (つまり、textboxfoo.Visible=false;)
- ユーザーが必要に応じて foo 値を入力できるようにし、入力した値を無視します。
私が従うことができるベストプラクティスはありますか?