前に、
ソフトウェアなどは、実装する技能とモデリングする技術に分かれている
http://blog.goo.ne.jp/xmldtp/e/d05541c6abaf25fe97360636d2e62f91
ということで、ソフトウェア”内”で知識がどう分かれているかという話をした。
今回は、ソフトウエアと”他(外)”の学問を比べた時の話。
ある人が行っていたのだが、ソフトウェアやネットワークは
電気と違った勉強方法になるというのだ。
ソフトウェアを勉強する場合、
・要求仕様技術が分からないと、設計技術が分からないということはない
・そもそも、設計技術を学ばないで、プログラミングを学ぶ
さらに、プログラミングは、結構多くの人が、サンプルから見て、それを修正するという形で学んでいる。
(演繹的・論理的には学んでいない。
ちなみに、論理的に学ぶとは
まず、定数・変数を学ぶ
次に 定数・変数を組み合わせた式と演算子を学ぶ
次に、式と演算子を利用した文(とくに制御文)を学ぶ
次に、制御文をまとめた関数について学ぶ(ないしはクラスを学ぶ)・・・
と、前のものにプラスアルファしながら、話を進めていく方法
一般にプログラミング言語の本は、こう書かれる
ということで、ソフトウェアは、必要なところを学んでいくということができる
広さはあるけど、べつに積み重ねる必要がない。
(経済学もこんなかんじらしい)
-----
一方、電気は
・クーロンの法則
・オームの法則
:
:
など、勉強する順番がある程度固定されている。
オームの法則が分からないと、トランジスタ回路などはわかりにくい
積み重ねが重視される学問体系になっている
-------
ここで重要なのは、ソフトウェアは積み重ねのいらない学問で、どこから勉強してもいい
ということだ。ということは、必要なところから勉強される可能性が高い。
COBOLが必要な人はCOBOL,
Javaが必要な人はJavaから勉強する
その結果、おなじ「ソフトウェアを学んだ」という経験がありながら、
まったくちがった価値観を持つことがある。
(COBOLとJavaとScalaが同じ価値観かどうかは・・・疑問)
これが上司と部下(COBOLな上司にJavaな部下)だとこまるわけだ。
電気関係だと、共通的な理解が得やすいのかもしれない。
ソフトウェアなどは、実装する技能とモデリングする技術に分かれている
http://blog.goo.ne.jp/xmldtp/e/d05541c6abaf25fe97360636d2e62f91
ということで、ソフトウェア”内”で知識がどう分かれているかという話をした。
今回は、ソフトウエアと”他(外)”の学問を比べた時の話。
ある人が行っていたのだが、ソフトウェアやネットワークは
電気と違った勉強方法になるというのだ。
ソフトウェアを勉強する場合、
・要求仕様技術が分からないと、設計技術が分からないということはない
・そもそも、設計技術を学ばないで、プログラミングを学ぶ
さらに、プログラミングは、結構多くの人が、サンプルから見て、それを修正するという形で学んでいる。
(演繹的・論理的には学んでいない。
ちなみに、論理的に学ぶとは
まず、定数・変数を学ぶ
次に 定数・変数を組み合わせた式と演算子を学ぶ
次に、式と演算子を利用した文(とくに制御文)を学ぶ
次に、制御文をまとめた関数について学ぶ(ないしはクラスを学ぶ)・・・
と、前のものにプラスアルファしながら、話を進めていく方法
一般にプログラミング言語の本は、こう書かれる
ということで、ソフトウェアは、必要なところを学んでいくということができる
広さはあるけど、べつに積み重ねる必要がない。
(経済学もこんなかんじらしい)
-----
一方、電気は
・クーロンの法則
・オームの法則
:
:
など、勉強する順番がある程度固定されている。
オームの法則が分からないと、トランジスタ回路などはわかりにくい
積み重ねが重視される学問体系になっている
-------
ここで重要なのは、ソフトウェアは積み重ねのいらない学問で、どこから勉強してもいい
ということだ。ということは、必要なところから勉強される可能性が高い。
COBOLが必要な人はCOBOL,
Javaが必要な人はJavaから勉強する
その結果、おなじ「ソフトウェアを学んだ」という経験がありながら、
まったくちがった価値観を持つことがある。
(COBOLとJavaとScalaが同じ価値観かどうかは・・・疑問)
これが上司と部下(COBOLな上司にJavaな部下)だとこまるわけだ。
電気関係だと、共通的な理解が得やすいのかもしれない。