主観入りまくりですが、技術というか知識とかノウハウには経験由来のものと理論由来のものがあって、この違いは意識した方がいいのではないか、と最近思っています。 私の主観に基づく分類 プラクティス、バッドノウハウ、アンチパターン デザインパターン アーキテクチャパターン オブジェクト指向 フレームワーク アジャイル・開発手法系 MVC 帰納的発想 人間らしい直感を重視する ふわふわ・もやもや ふわふわ・もやもやしているものを扱う 人間を扱う たまに精神論が混じる アルゴリズムとデータ構造 暗号、圧縮、人工知能、etc 関数型 SQL(リレーショナルデータベース) プログラミング言語そのもの コンピューターサイエンス 演繹的発想 直感より真理を重視する 対象範囲が明確に限定されている要素技術が多い 経験由来 理論由来 まあ実際はスッパリ別れるものではなく、「どちらかと言うと経験由来かな」「どちらか