以前から思っていることなんだけど、開発者側にレイヤーが多ければ多いほど開発って失敗しやすくなると思う。
レイヤーが多ければ多いほど、意思決定が遅くなるし、情報が正しく伝わらない度合いが悪化する。
なんとなくこんな言葉が、僕のイメージに近いのかなと思って書いてみた。プログラムを作る人がお客様と話をして、欲しいものをデザインする。
XPでいうところのオンサイト顧客で開発するプログラマーのこと?
開発者とユーザとの心理的、物理的距離が近ければ近いほど、開発はうまくいく。優れたソフトウェアには、開発者が自分自身で使うために開発したものが多い。エディタ、言語、ブラウザ、メーラなどには、優れたソフトウェアが多いが、これらの多くは開発者自身が使いたいから開発したものである。