Movatterモバイル変換


[0]ホーム

URL:


はてラボはてな匿名ダイアリー
ようこそ ゲスト さんログインユーザー登録
< anond:20250318175325 |クソジャップス全滅し... >

2025-03-18

細かすぎて伝わらないOFF-ONスイッチ

これが話題になっていましたね、という話。

しかしたらWEBデザイナとかUIデザイナ、工学デザイナあたりに興味を持っている人には面白い話かも・・・

この手のUIを見るたび「どっちやねん」と心の中で叫んでる→オンオフ状態が分かりづらい「フリップフロップ問題回避のために規格統一して欲しい。

https://togetter.com/li/2526176

「言いたいことはわかる、言いたいことはわかるが・・・」と電気工学系が畑の方々はおそらく「設計する側の苦悩もわかるんだよなぁ」ってなってるんじゃないでしょうか?

だって「単路スイッチはOFF-ONだけじゃない!」ですもの

4種類ある単路スイッチ

OFF-ONスイッチ

これが多くの人がイメージする2方向のスイッチで、ON時になんらかの機能作動させるスイッチ

デフォルト状態はOFFで、スイッチ作動させるとONになるというスイッチモダンIT開発界隈ではよくオプトインとも称されますな。

ON-OFFスイッチ

OFF-ONスイッチとは反対でデフォルト状態ON作動させるとOFFになるスイッチオプトアウトですな。

ON-ONスイッチ

ここから素人理解が困難になってくる、機能作動させるONの逆は別の機能作動させるONというスイッチ

これを大衆理解させるユーザインターフェイス設計は困難を極める。

OFF-OFFスイッチ

ON-ONスイッチとは反対で機能を停止させるOFFの逆は別の機能を停止させるOFFというスイッチ

大衆へ「何故この様なスイッチ存在するのか?」を説明することすら困難になる。説明しても理解して貰えるのはほんのひと握りの人たちだけだ。

このスイッチング4パターンをどうやって大衆理解させられるか?がデザイナの腕の見せ所。

スイッチング時に初期化するか否か

義務教育レベル電気工学知識があり、電気工作とかやったことがあるのならば上記の4パターンは「知っていて常識」みたいな知識だろうけれど、大衆は「1階と2階の2箇所で点灯消灯できる階段の照明電気回路」すらパッとまともに回路図を書けない・組めない人が大半なので決してそれは常識ではない。書けない・組めない方が常識なのだ

そして、そんな初歩的な電気工作知識がある人でも躓きがちなのが「スイッチング時に初期化」という概念です。

小難しく説明しても理解しにくいので例え話にしますが、早い話が自動車マニュアルトランスミッションイメージすると理解やすいかな?と。

例えば4速マニュアルトランスミッションであればバックギア無視するとON-ON-ON-ONの4方向のスイッチ仮定できますが、マニュアルトランスミッションには「ニュートラルという状態存在する」んですよね。

まりONONの間にどっちつかずの状態があるわけで、マニュアルトランスミッションは必ずニュートラルを経由してONスイッチするわけです。

これはマニュアルトランスミッションだけでなく、スイッチングを伴う場合はすべての製品サービスにおいて考慮して置かなければならない概念です。

そう「スイッチング時に初期化を必ず行わなければならないモノ」と「スイッチング時に初期化絶対に行ってはならないモノ」が存在するということを。

即ち、誰がどう見ても単純なA-Bという2つの状態を切り替えるスイッチは、大まかに分類しても計8パターンものバリエーション存在することになるのです!!!

それって未定義だよね?

中にはこれまでの業務上の流れや都合、案件の内容によって「スイッチング時に初期化するヤツなんて居るんかぁ?」と思ってしまプログラマやデザイナなども居るかも知れません。

これは仕方のないこと。それまでの業務が「スイッチング時の初期化考慮しなくても良い仕事」ばかりだったわけですから、それがその人の常識でありルーチンであり、開発上の要件であったのですから

しかし敢えて言うのであれば、それはこれまで散々言われている「未定義バグ」を誘発する実装にほかならない。単純なA-Bという2つの状態を切り替えるスイッチング動作というシンプル機構にすら未定義バグは隠れているわけです。

そしてここに単純なA-Bという2つの状態を切り替えるスイッチングへ「スイッチング時に初期化を必ず行わなければならないモノ」と「スイッチング時に初期化絶対に行ってはならないモノ」のほかにスイッチング時の初期化考慮しなくても良いモノ」という新たなパターンが追加されバリエーション12パターンとなりました。

ユーザ責任はない

ユーザからしてみれば「いやその辺を何かうまい具合にするのがプロやろ」と言いたくなるのはわかります

しかし件のTogetterタイトルをよくみるとおかしなことがわかります。ここまでの説明をあらかた理解したのであれば気付くはずです「規格統一とは・・・?」と。

ていうか何なら大衆比較して工学リテラシーが高いと思われているはてなブックマークのコメントですらスイッチングについてゆるふわな方々のコメントが散見しているのは明白で、更に工学リテラシーが低いと思われる大衆12パターンものスイッチング動作を明示するユーザインターフェイス開発は非常に困難が伴うわけです。

だってはてなブックマークユーザは「1階と2階の2箇所で点灯消灯できる階段の照明電気回路」すらパッとまともに回路図を書けない・組めない人」が大半で、その理解度のままはてなブックマークコメントしますが、大衆は更にそれ以下の理解度です。この大衆理解して貰える統一ユーザインターフェイス規格とは一体・・・

そんな前提知識もないゆるふわ大衆が言うわけです「フリップフロップ問題回避のために規格統一して欲しい」と。

決して馬鹿にしているわけではなくコレは教育問題

実はこのスイッチング動作種別、当のプログラマやデザイナの中にも理解ゆるふわな方々が存在します。プロなのに。

大学専門学校高校情報学科でもちゃん講義・授業で触れるんですよ。触れるんですけれども他の知識に比べて扱いが小さすぎて記憶から抜け落ちるんです。

これが電気学科ならば違います。こんなのは基礎の基礎、単路スイッチが扱えなければ古き良きアナログICすらまともに扱えないわけですからしっかりとやります

情報学科でもCPUとかネットワークとかハードウェアやる人たちは結構しっかりと理解してるんですがソフト一辺倒のプログラマやデザイナには本当にゆるふわな方々が存在します。プロなのに。

まりコレ、電気系と情報系の専門性が高まりすぎて距離があり、そのため双方を理解できる人材稀少で、人材稀少であるが故にフリップフロップ問題が起きがちというのが現代開発の闇なんですね。

ソフト一辺倒で育ってしまい「単純なA-Bという2つの状態を切り替えるスイッチング」の理解ゆるふわで、そのゆるふわ状態のままユーザインターフェイス設計をチーム全体が行うため誰も気付かない。

決して馬鹿にしているわけではないのです。前述したように、中にはこれまでの業務上の流れや都合、案件の内容、要件によって各々個人仕事常識というのがあるという仕方のない事情があるわけです。

その常識フリップフロップ問題を生んでいるんです。だって(その人の中で固定化した)常識ですよ?常識から脱却するのは非常に困難です。

大衆プロモそれぞれの常識の中でコメントしており、それを擦り合わせられる人材というのは稀少人材と言わざるを得ないでしょう!

マジで細かすぎて伝わらない、万人が相互に伝え合うことが出来ない、それがスイッチなのです!

Permalink |記事への反応(1) | 18:00

このエントリーをはてなブックマークに追加ツイートシェア

記事への反応 -

記事への反応(ブックマークコメント)

全てのコメントを見る

人気エントリ

注目エントリ

ログインユーザー登録
ようこそ ゲスト さん
Copyright (C) 2001-2025 hatena. All Rights Reserved.

[8]ページ先頭

©2009-2025 Movatter.jp