慣用表現に基づくデザインを取り戻そう

2026/04/12 21:21

慣用表現に基づくデザインを取り戻そう

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

現代の Web アプリケーションは、デスクトップ時代の統一的なインターフェース標準を捨てて、基本的なタスクを第一原理から再発明し、リアルタイムコラボレーションなどの機能に優先順位を置いている。この変化により、ユーザーはチェックボックスによるログイン永続化や標準的なクレジットカード入力フィールドといった馴染み深い「デザイン慣習」に頼るのではなく、新たな相互作用パターンを絶えず学ぶことを余儀なくされている。Figma や Linear などのツールは設計が良くても、共有アイコンやキーボードショートカットの欠如により断片的な体験をもたらしており、OS によって強制されたライブラリによる予測可能な動作を保証した Windows 時代の均質なインターフェースとは対照的である。この増大するユーザー摩擦に対処するためには、HTML と CSS で定義されるコアなブラウザ慣習に回帰すべきであり、開発者はあいまいなアイコンよりも一貫したアクション、信頼できるデフォルト値、明瞭なテキストラベルを優先することで、予測可能性を取り戻し、ユーザーの学習時間を短縮し、UI 標準の全面的な再発明なしにも Web エコシステムへの信頼を再構築できる。

本文

私はデスクトップソフトウェアの世代に育ちました。Windows 95 から Windows 7 まで、タブレットやスマートフォンが広まるはるか以前に、マウスとキーボードで操作されるコンピューター上で、ほぼオフライン環境となるソフトを主に使用して成長しました。最近になって私がその時代から特に懐かしむものは、デザインにおける一貫性です。私は、慣用的なデザイン(idiomatic design)について語り、均質なインターフェースの重要性を強調し、私たちが何か大切なものを失ったことを示唆したいと考えています。

ウェブサイトのログイン画面を想定してください。「ログイン状態を維持してもよろしいですか」と聞かれる場面があります。ウェブサイトがこの回答を求めるには多くの方法が考えられます:例えば、「はい」や「いいえ」と入力できるテキストフィールド、あるいは「 ログイン状態で残す」「ウィンドウを閉じたときにログアウトする」を選べるドロップダウンリストなどです。しかし現実には、これらに過ぎないのではなく、常にチェックボックスが使われます。なぜそうなのか?

それは「チェックボックス」というデザインの慣習(idiom)だからです。ユーザーにとって、これを意識せずとも使い方が分かっているほど普遍的なデザインであり、もしあなたがウェブサイトを作り、この質問をする立場であれば、考えることなくチェックボックスを選ぶはずです。構築者も利用者にとっても、誰もが信頼できる標準的なデザインパターンです。また、チェックボックスはインターフェースの一部でもあります。データを投入してシステムと対話するために使用します。インターフェースは、思考を必要とするほど少ないほど良いものです:ステアリングホイヤーかオンラインフォームであれ、その使い方を考えるのに時間をかける必要があればそれは望ましくありません。多くの事物と対話していく中で、一貫した体験をもたらす均質なインターフェースを望みます。Command+C がコピーのキーボードショートカットであることを覚えれば、それをどこでも機能することを願います。状況に応じて CTRL+Shift+C を使うか、あるいは右クリック→コピーを使うかなどを覚えるのは面倒です。

しかしそこで私たちは現在に至っています。ソフトウェアはインターネット上にあり、インターフェースは全く均質ではありません。日付を選ぶ、クレジットカード番号を入力する、あるいはあらゆる一般的なタスクを行うには、数百通りの方法が存在します。キーボードショートカットもアプリごとに異なります。相互作用する方法が多すぎるため、すべてを記憶したり学習することも不可能です。2023 年のウェブアプリケーションを使うとは、「自分がしたいことをどこで見つけようか」を繰り返す練習のようです。

クレジットカード情報を入力しているにもかかわらず、20 年以上経った今なお最適な入力方法について合意が得られていないことは奇妙に思えます。有効期限の日付にはテキストフィールドやドロップダウンリストを用いるのか?先日、私は新しいものを発見しました:各オプションごとにボタンを表示する方法です。

対照的に、デスクトップソフトウェア時代の強みは、デザイン慣習を用いてインターフェース全体に高い一貫性をもたらした点にあります。Windows 2000 のこの画像を見てみましょう。視覚的には少し醜く古めかしい感じがします:ブロック状であり、フォントも優れておらず、色合いも地味です。しかしインターフェースは数点において本当に正解に達しています:

  • ファイル、編集、表示といったメニュー構造が標準化されていました。Adobe Photoshop だとしても Microsoft Excel でも、「保存」は「ファイル」、「やり直し」は「編集」、フルスクリーンは「表示」の下にあることを知っていたためです。
  • メニューはキーボードで操作可能であり、各項目の下にアンダーライン(例:「File」の F や「New」の N)が表示されており、これがキーボードショートカットを示しています。ALT+F を押してファイルメニューを開き、その後 N を押して新しいファイルを開くことができます。これはパワーユーザー向けであると同時に、ショートカットを学ぶことも容易にします。
  • 下部の状態バーには、現在の状態に関するあらゆる情報が表示されます:ページ位置、列、単語数、変更追跡の有無、インサートモードかどうかなど。
  • メニュー項目は明確にラベル付けされており、アクションへの主要なインターフェースは文字でありアイコンではありません。アイコンは最も自明な場所でしか使用されていません。 Entire インターフェースは何も想像に委ねていません。上記の画像では「これは何をなさるのだろう?」といった疑問は一切ありません。たとえ以前に使ったことがなくても、使い方は分かっています。

重要なことは、これらのデザイン慣習が Microsoft Word だけでなく、Windows エコシステム全体で使用されていたということです。Windows XP のログアウト画面を見てみてください:それぞれのボタンは視覚的に明確に「ボタン」として認識でき、まさにその機能を記述しています。それぞれにはキーボードショートカットを示す小さなアンダーラインがあり、それは素敵ではありませんか?

デスクトップソフトウェア時代は、均質なインターフェースの時代でした。おそらくこれは、オペレーティングシステムとそれらの GUI ライブラリがデザインの広範な部分を規定し、その制約が開発者が準拠するパターンへと導いたためでしょう。

ブラウザソフトウェア時代は異質なインターフェースの時代です。私が最も気に入っている 2 つのウェブアプリケーションからのスクリーンショットを見てみてください:Figma と Linear です。これらは現在利用可能なエンタープライズソフトウェアの中でおそらく最高峰の 2 つでしょう。そして、チーム設定、抽象的なアイテム階層、協働コメントなど多くの共通機能を有しているにもかかわらず、互いに共通するアイコンは一つも共有していません。デザイン慣習は一切共有されておらず、キーボードショートカットも異なります。どちらも第一原則から非常に良く設計されていますが、ユーザーが既になじみのある他のインターフェースに準拠していません。私たちは個々には優れた設計と有用性を備えたウェブアプリケーションの時代におりますが、すべてはユニークです。同一企業が生み出した製品でも、体験は異質なものです:Gmail の使い方は Google Sheets とは全く違い、Google Docs とはまた違います。全体としてこれは非常に挫かせるものです。均質なインターフェースの欠如は、私がデジタル時間の大部分を生産的なフローの状態ではなく、画面のあちこちで「クリックしても良いのか?これは新しいタブで開くのか?ブラウザの戻るボタンで戻れるのか?」と探す状態で過ごすことを意味します。ひどい!

この一貫性の欠如には 2 つの理由があります:

  1. マウスとキーボードアプリケーション向けのあらゆるデザインパターンは、タッチスクリーンの登場に伴って再考されなければなりませんでした。ほとんどのウェブアプリケーションはモバイル環境とデスクトップ環境の両方をサポートする必要があり、それらの相互作用形式は非常に異なります。その結果、その後の多くのユーザー体験は不恰好な中途半端な状態に固定されてしまいました(例:モバイルアプリ向けに用意されたハンバーガーメニューがデスクトップアプリでも使用されている)。したがって、あらゆる場所に悪いデザインパターンが見られます。現代のフロントエンド開発には、モジュラーコンポーネントをコピーして再利用する文化があり、悪いデザインパターンをコピー&ペーストすることで問題を悪化させるのは容易です。10 年以上にわたるこの慣行は、UI/UX デザインの質に対する世代を超えた腐食効果を及ぼしました。誰もが同じデザイン慣習に従えば、インターフェースはかなり一貫性のあるものになります。
  2. インターネットの初期には強力なデザイン慣習がありました:他のページへのハイパーリンクは青色でアンダーライン付きに、既に訪問済みであれば紫色にするなど。素晴らしい!しかし今日では、各ウェブサイトが独自の方法でインターフェース要素をスタイル化するありえない方法を提案しています。あれはリンクでしょうか?もしかするかもしれない!

現代的なウェブデザインがこれほど非慣用的であることは驚くべきことです。HTML/CSS の標準は非常に指示的だからです。問題は、HTML を書くための標準が存在しても、誰も HTML は書かないということです。人々は TypeScript を用いた React や最新のフレームワークを書きます。無数の npm パッケージをインポートし、これらすべてが複雑なビルドプロセスを通じてブラウザで動作する何かを出力します。フロントエンド開発者が这样做ることに間違いはありません。今日のブラウザは非常に強力であり、創意工夫があればほぼ何でもできる一般用途の API を提供しています。例えば Figma は HTML デザイン慣習に従っていません:HTML がないからです;WebAssembly で書かれているため、ブラウザ内でデスクトップ型ソフトウェアを実現する最前線の技術を実装しています。当然ながら、これは「HTML ウェブページ=ドキュメント」というモデルを崩壊させます。ブラウザの戻るボタンやキーボードショートカットなどが脇に置かれながら、ヒューマンコンピュータインタラクションのパラダイムが再構築されています。

結論として、ウェブデザイン慣習が少ないのは、フロントエンド開発が速すぎるためです。エンジニアは、磨きの問題よりも「何が可能なか」に関心を持っており、当然と言えば當然です。マルチユーザーの実時共同作業はパワーユーザー向けのキーボードショートカットよりも価値があります。無数のフロントエンドパッケージとそれらをデプロイするための相互作用形式が存在するため、広い領域全体に「ワンサイズフィットオール」の慣習を設けるのは非常に困難です。最前線の技術が冷める時間が必要であり、最も成功したパターンが明らかになり、やがて慣習となるでしょう。

しかし、今日の最も成功している製品の組織の一部は、あえて独自のデザイン慣習を積極的になぎすすみ、そのインターフェースにおいて一定の一貫性を達成しています。Apple は良い例です。過去の Microsoft について話してきましたが、現在 Apple は非常に意見のあるデザインシステムを推進しています。Apple のフォントライブラリー、ボタン、色などの一般的なコレクションと、すべてのネイティブアプリケーションやデバイスにわたる一貫性は、サードパーティ製アプリケーションに対して強力な準拠効果を創出しました。iPhone でサードパーティ製アプリを使用する場合でも、キーボードによる入力、ピンチズームなどすべてが iOS によって制御されています。これは Apple の「何でも動く」効果の一部です。強く、味わい深く、慣熟的なデザインこそが Apple の成功の核にあります。

「何でも動く」効果について興味深いのは、それがユーザーをデフォルト値に信頼させ、カスタマイзацию から逃れさせることです。Substack のようなプラットフォームでも似た動的を見ることができます:著者として私はフォントを選ぶことも、テキストを太線にするさえもできません。しかし制限されたデフォルト値は味わい深く設定されており、効果的に機能します。Substack や Apple のデザイン原則は、それらの製品が成功するにつれて採用されるようになり、デザイナーらはそれらを成功した例として参考にしています。それらのデザインは最終的には(1)人々が優れたデザインであると認め合い合うことと(2)コミュニティにおける使用頻度によって慣習となります。

製品構築者としての私は、可能であればデザイン慣習を可能な限り忠実に従うことを望みます。それはソフトウェアを使いやすくし、デバイスやブラウザ間での互換性を最大化するからです。私は以下のような指針に従い、ごく稀にのみこれらを破ります:

  • 可能であれば HTML/CSS の慣習を研究し従ってください。例えば、リンクはアンダーライン付きで色があり、マウスオーバー時にポインタカーソルになり、
    <a>
    タグで記述されるべきです。
  • JavaScript を用いた HTML ベース機能の再実装を避けてください:React の Button コンポーネントを使う代わりに、スタイリングされた
    <button>
    要素を使用してください。
  • 可能であればブラウザの慣習を研究し従ってください。戻るボタンは常に機能するべきです。URL をコピー&ペーストすれば同じインターフェースに戻るべきです。ナビゲーション要素をクリックした場合は新しいタブで開かれるべきです。
  • 一般的な慣習から逸脱する場合、あなたのデザインが完全に内部一貫性を有しており、少なくとも組織内では「慣習的」であることを確認してください。
  • アイコンではなく文字を好んでください。普遍に理解されるアイコンのみを使用してください。
  • 不確かな場合は、視覚要素を明白に見えるようにしてください。「これはボタンなのかタブなのか?」という混乱は決して起きないべきです。
  • 易しく理解できるものを、視覚的に美しいものよりも優先してください。
  • 行き詰まりの場合には、判断を助けるために 2 種類のリソースに頼ってください:あなたが知っている最高に良く設計されたウェブサイトと、過去の年代におけるインターフェースデザインの書籍。今日の多くのインターフェースデザインの問題は新しいのではなく、歴史の繰り返しであり、過去の解決済みのアナロジーが存在します。

私が夢見るのは、インターネット上のすべての日付選択機能やクレジットカードフォームが完全に同じであるようになる那一天です:30 年間の反復的開発と何百万もの試みの後でやっと最高のものへの収束を遂げたときです。また、あらゆるウェブアプリにおいて CTRL-クリックで新しいタブに開かれるようになる未来も夢見ています。それが嬉しいですね…

この記事についての議論 さらに準備就绪ですか?

同じ日のほかのニュース

一覧に戻る →

2026/04/13 4:44

怠惰と失われた危機の罠

## Japanese Translation: テキストは、ラリー・ウォールのプログラミングにおける「怠け」、不満、そして大それた振る舞いの美徳が依然として不可欠であると論じつつ、特に未来の利用に最適化された単純かつ強力な抽象化を駆使する「怠け」においてはその重要性が高いと指摘しています。これに対して、大規模言語モデル(LLM)は危険に「徳ある怠け」を、「 Hustle Porn」と呼ばれる偽の勤勉で置き換えてしまいました。人間とは異なり、LLM は作業に対してコストを負担せず、時間制約も無視するため、自慢のためのメトリクスによってではなくエンジニアリングの厳密さによってではない、不要なコードの層を蓄積します。この転換は、「Camel Book」という歴史的智慧において、即時の出力量よりも使いやすさを重視する方針と対照付けられます。具体例として、LLM を用いて 1 日 37,000 行ものコードを書き上げたというブロプログラマの Garry Tan の自慢に対し、Gregorein の分析によって多数のテストハネスとゼロバイトのロゴが示されており、これは無制約な AI が肥大化したシステムを生成する様子を明らかにしています。もし無制約のままにされれば、LLM は「ゴミ」の層を積み重ねることで単純な設計ではなく技術的負債の形で未来の世代を脅かすことになります。しかし、業界の行方はエンジニアがこれらの AI モデルを徳ある怠けの方へ導けるかに依存しています。制約と Oxide ガイドラインに導かれ、LLM が複雑性を削減し、厳密な設計を促進して将来に向けてより単純かつ強力なソフトウェア抽象化をもたらすことを保証することが可能です。 ## Text to translate: The text argues that while Larry Wall's programming virtues of laziness, impatience, and hubris remain essential—especially laziness, which drives simple, powerful abstractions optimized for future use—Large Language Models (LLMs) have dangerously displaced "virtuous laziness" with a form of false industry called "hustle porn." Unlike humans, LLMs incur no cost for work and ignore time constraints, causing them to accumulate unnecessary code layers driven by vanity metrics rather than engineering rigor. The summary contrasts this shift with historical wisdom found in the "Camel Book," which prioritizes ease of use over immediate output volume. Examples include broprogrammer Garry Tan bragging about writing thirty-seven thousand lines of code per day with LLMs, while Gregorein's analysis revealed multiple test harnesses and a zero-byte logo, illustrating how unchecked AI generates bloated systems. If left unconstrained, LLMs will threaten future generations with technical debt by building up "garbage" layers rather than simpler designs. However, the industry's trajectory depends on whether engineers can steer these AI models back toward serving virtuous laziness; guided by constraints and Oxide guidelines, we can ensure LLMs reduce complexity and promote rigorous design to yield simpler and more powerful software abstractions for the future.

2026/04/13 1:38

# DIY ソフトドリンクの作り方 「DIY ソフトドリンク」というタイトルは適切ですが、コンテンツをさらに充実させるための構成案をご提案します。 ご自身の手に入れた素材や好みの味に合わせて自由にアレンジしてみてください。 --- ## 【必要なもの】 * 炭酸水(またはレモンサワーベースのシロップ) * シュガーシロップ(または蜂蜜、アガベシロップなど) * お好みの果実(レモン、ライム、オレンジなど) * 氷 * ガラス瓶またはペットボトル(中性洗剤で十分に洗浄したものですこと) ## 【基本レシピ】 1. **シロップの調製** 砂糖と水(甘さを抑えたい場合は 2:1 の割合、通常は 1:1)を鍋に入れて、弱火で溶かします。 お好みの果実を加えて香りを出したら、冷まします。 2. **果汁の絞り方** 新鮮な果実をよく洗い、果汁を搾ります。 必要であれば、果肉も一緒に漉すなどして、澄んだ液体に仕上げてください。 3. **混ぜ合わせ** シロップと果汁をお好みの比率で混合します(例:シロップ 2 :果汁 1)。 グラスや容器に移し替えて、冷蔵庫で保存してください。 4. **炭酸水とのミックス** 氷を入れたグラスに、少量の自家製果汁シロップを入れてから、炭酸水を注ぎます。 スパチュラなどで軽く混ぜ合わせれば完成です。 ## 【ポイント】 * 甘さは控えめが基本ですが、お好みで砂糖の量を調整してください。 * 新鮮な果実を使うことで、より自然な香りを堪能できます。 * 保存期間は冷蔵庫に置いても 2〜3 日が目安です。

## Japanese Translation: 本稿は、糖分・カフェインフリーで正確な自家製コーラレシピを開発する革新的なプロジェクトを記録しています。2020 年以降、著者は Open Cola や Cube Cola などのブランドに着想を得て、オレンジ、ライム、レモン、ナツメグ、シナモン(クサヤ)、コリアンダー、ラベンダーといったエッセンシャルオイルとアラビアゴム(天然の乳化剤)を主成分とする配合を開発しました。計測には 1 ml のインシュリンペン用シリンジを用い、科学的手法で精細な定量を実現しました。安全性も重視し、刺激性のあるエッセンシャルオイルを扱う際にはラテックス手袋を着用するなどの対策講行了されました。レシピは個人のかぶれやすさや感度に合わせて調整され、カフェインが省略され、クエン酸と人工甘味料(当初はナトリウムシклаマートとサッカリンで 1:8 の希釈比、後に「Syntez-Cola」バージョンではスクラロースとバニリン)を使用しています。一部のロットでは若干の苦みが残る事例もありました。さらに、血橙、ライム、アーモンド油によるアルモンド風味のドリンク(マザパンのようなニュアンスを持つものも)などの追加作品も作成されました。実用的な課題として、ハンドミキサー由来のプラスチックのカスを濾し取ることや、ガラス製または金属製の容器の利用が検討されました。著者は自家製コーラをデカフェ Coca-Cola より優れていると評価しており、「味が薄い」と述べています。レシピバージョンは記録されており(例:blinry orange 0.1.1、blinry almond 0.1.1 など)、2026 年には Open Soda のウェブサイトが閉鎖された後、プロジェクトは新ブログと Git リポジトリを通じた詳細な変更ログやバージョニングされた配合を公開する透明性の高いデジタルリソースへと進化しました。このイニシアチブは、趣味家のための再現性のあるレシピや、ダイエットに意識的な消費者のための高度な炭酸飲料(スーパーマーケットの標準品にはない独自の風味プロファイルを備えたもの)を提供します。

2026/04/13 1:24

HN に質問です:みなさんは今何に取り組んでいますか?(2026 年 4 月)

## Japanese Translation: # ステージ 4「改良された要約」 本テキストは、医療、教育、創造性という分野における具体的な実世界的ニーズに応える新たな実践的なソフトウェアプロジェクトの活発なエコシステムについて詳述しています。ハイライトには、カメラを使用せずに高齢者の転落検出を実現する mmWave モーションセンサー「Still Kicking」、Elo レーティング機能を備えたオープンソースの AGIL トレーニングスタック「SRS++」、タイマーによる制限だけでなくスクリーン時間を抑制するデジタルペット「Phreepet」が含まれます。教育ツールもまた、発音指導を用いた初期読み書き能力(LettersPractice)、ピアノ・フルートへの対抗的実験音楽開発(Flutor)、英国鉄道向けのオフラインクリエイティブルート計画(RailRaptor)を含むものとしてカバーされています。技術的革新には、FreeBSD のパケットロス問題を解決するため MMIO でのライトコンバインを無効化することや、Petrify を通じて ONNX モデルを効率のよい零依存 JVM バイトコードへコンパイルすることなどが含まれます。創造的な表現は引き続き、ユーザーアカウントを追加した受賞歴のあるパズルゲーム「Tiled Words」、ハードウェア音楽ハッキングのための JVM ベース言語「Audion」によって続けられています。最後に、このスイートには IRC クライアントを近代化する「TheLounge」と、メモリとフォレンジック責任を備えた人工的レテナーとして実装された長期的な AI エージェント「SpringDrift」が含まれます。これらすべてのツールは、ウェルビーイングの監視からオフライン創造性の醸成に至るまで、特定の専門的ソリューションを提供し、しばしば単一のプロバイダーに依存しない形でユーザーを支援します。