Skip to content

Vol.380

Quality Is Systemic - Jacob Kaplan-Moss Jump to heading

品質は文化から生み出される Jump to heading

ソフトウェアの品質は、品質を生み出すように設計されたシステムの結果であり、個々のパフォーマンスの結果ではない。つまり、平凡なプログラマのグループであってもよくデザインされた構造で作業すれば優れたソフトウェアを生み出すことができる。それは、具体的にはどのようなデザインなのか:

  • テストハーネスとテストの作成を奨励し、そのための時間を提供するチーム、文化
  • 使いやすい開発環境とステージング環境
  • 文書化され、整理されたコードベース
  • 心理的安全性の高い職場
  • 失敗を避難せず、レビューされ、システムを改善する文化

How to Work With Design Constraints Jump to heading

デザイン制約を利点に変える考え方 Jump to heading

古いことわざに “When life gives you lemons, just make lemonade.” という言葉がある。これをデザインに当てはめると、デザイン制約をどう扱うかということになる。Appleはカメラとセンサーのパンチホールをダイナミックアイランドに変えた。また、iPod Shuffleは画面が無いことをランダムに再生するというデザインとしてアピールした。これは、デザイン制約から、それをどのように利点ににしていくかということを考える良い例となる。

Brainstorms suck. Jump to heading

ブレインストーミングを改善する Jump to heading

ブレインストーミングは1950年にAlex Osbornが考案したもので、グループでアイデアを出すための手法である。しかし、そこから数十年たった現在でもあまりルールは進化していない。この記事では、ブレインストーミングを改善するためのアイデアを紹介する。

  1. 会議を静かに進めアイディアの生成を促進する
  2. アイディアを書き留める
  3. スケッチする
  4. 90分程度の時間をかける
  5. 完全に批評禁止ではなく、判断を行うプロセスを組み込む
  6. 突飛なアイディアではなく、悪いアイディアを良いアイディアに変えていく

Dependency Injection in JS/TS Part 1 | The Miners Jump to heading

TypeScriptを用いて、DIの仕組みを丁寧に解説する。

Infinite Scrolling: When to Use It When to Avoid It Jump to heading

無限スクロールを使用する場合と使用しない場合をどのように判断すればよいか。利点と欠点を解説し、その判断を助けるアイディアを紹介していく。

In Brief Jump to heading