コードは読むより実行されることのほうが多い
(olano.dev)ソフトウェア開発の価値体系
- ソフトウェア開発の過程では、コードは書かれるより読まれることのほうが多く、これは保守しやすいコードを書くことが良い投資であることを意味する。
- コードは単に書かれるものではなく、ユーザーにサービスを提供する目的を持っており、ユーザー体験が重要である。
- ユーザー中心の開発のためには、ユーザーにプログラムを早い段階から頻繁に見せ、フィードバックを得ることが重要である。
コード運用の重要性
- コードが実行されるということは、プログラムを運用することも含み、デプロイ、アップグレード、モニタリングなどを含む。
- ソフトウェアが実際の運用環境で実行されるとき、KISS(Keep It Simple, Stupid)の原則はさらに重要になる。
- 実際の運用では、コードだけでなくシステムの各部分を理解し、障害時にも動作できるようにすることが重要である。
ビジネス観点の重要性
- ユーザー中心の開発は、ソフトウェアが組織に価値を提供するという前提のもとで有効である。
- ビジネス観点を開発プロセスに含めることは有益であり、予算、マーケティング、期限などを考慮する必要がある。
- 組織全体を考えたとき、ソフトウェア、チーム、またはユーザーにとって意味のある決定が、常に最善とは限らない。
ソフトウェア開発の一般的な問題点
- 保守が難しいコードは、作成者中心のアプローチから生じる。
- ユーザー体験を考慮しないソフトウェアは、開発者中心のアプローチによって生じる。
- 運用を考慮せずに設計されたソフトウェアは、開発者中心のアプローチによって生じる。
- ビジネス観点を考慮しないソフトウェアは、開発者中心のアプローチによって生じる。
- 実際には運用されないソフトウェアは、ビジネス中心のアプローチによって生じる可能性がある。
GN⁺の意見
この記事で最も重要なのは、ソフトウェア開発の過程でさまざまな要素の相対的な重要性を認識し、それに基づいて意思決定を行うことである。ユーザー、運用、開発者、ビジネスの関係を理解し、バランスを取ることが重要である。この記事はソフトウェア開発者に興味深いインサイトを提供し、開発プロセスで見落とされがちなビジネスと運用の重要性を強調することで、より効果的で責任ある開発文化の醸成に役立つ可能性がある。
1件のコメント
Hacker Newsの意見
言語設計者・標準ライブラリ開発者、モジュール開発者、一般開発者、最終ユーザーの間で増加する利用量
システムが使われる理由と中間管理職の役割
比較関係を表す数学記号 ≹ の発見
コード実行コストに対する開発者時間の価値
コード可読性の重要性
著者の理論に対する批判的視点
ビジネスの本質とユーザーの重要性
開発・運用・ビジネスの複雑な関係
ソフトウェア業界の倫理的問題をめぐる議論
開発・運用・ビジネスの相対的重要性に関する個人的見解