例えば、API で抽象化されたレイヤーばかりを使っていると、例えば、Array List も Linked List も、ある一定のインターフェイスだけに注目している限りは、同じものに見えてしまいます。また、リテラルの部分文字列のマッチングで、リテラル検索(Java 言語でいえば indexOf )も、リテラルの正規表現によるマッチも同じものに見える、なんていう例もありますよね。下位の層を理解していれば、どういう場合に Array List を使えべきとか、indexOf を使えべきとかがわかるはずですが、理解していなければ、それもできません。
思いつかないのですが、もっぱら API ユーザーであることには、他にも懸念されるべき点がいくつかあるような気がしています。
求められる基本能力の高度化 (スコア:1)
国立情報学研究所の新井紀子教授が著書「 コンピュータが仕事を奪う [nikkeibp.co.jp]」で問題提起されているように、今まで機械化されていなかった「知的労働」も、あるマニュアル化できる定型的なものについては、積極的に機械化されていき本格的なOA化が進む時代が目前に迫っていることを考えると、今までのような能力では仕事を得るのも難しくなっていくと覚悟しないと。(人工知能にはフレーム問題のような根本的な問題があるので、オール・マイティな人工知能はむりだけど、特定業務に限れば実用にたる人工知能は実現目前だと思う)。
そう考えれば、機械に仕事を与える仕事と
Re: (スコア:1)
隣のスレッドにも書いたのですが、今のプログラミングの世界は、ひと昔前と違って、API の使い方さえ知っていればプログラムが書けますね。API の先の具体的な実装やそこで使われているノウハウを知らなくても良いですよね。
このことを、そろばん(計算)についても当てはめて考えると、計算の具体的なアルゴリズムは知らなくても、例えば足し算とはどういうものか、その性質だけ理解していれば、あとは電卓の叩き方さえ覚えていればよいってなりますよね。実際、私達 sin とか cos なんかの関数ではそうしています。
こんなふうに考えてみると、計算の必要性っていうのも、程度問題のような気もしてきませんか?…あ、これは、掘り下げるための思考実験的な議論で、私の個人的な意見っていうわけではありませんけど。 (゚∀゚)
Re: (スコア:1)
>その性質だけ理解していれば、あとは電卓の叩き方さえ覚えて
確かにマニュアル通りに仕事(研究でもいいけど)をしていて、マニュアルの想定内であれば、そのとおりといえるかもしれない。
ただ、ちょっと異常事態になってくると、計算の仕方を理解していないとダメなこともあるよ。
読み書きそろばんの「そろばん」というのは、単純な計算能力だけではないと思うんだよね。
計算している際に、結果を見て、その計算結果が正しいかどうかを見極める能力なんかが、経理や財務みたいな帳簿付けなんかでは必要になってくるし。数字のカンは、自分で計算を繰り返し
Re:求められる基本能力の高度化 (スコア:1)
あ、ありがとうごさます。
(読み書きソロバンの問題からは、離れてしまいますが…)実際のところ、私は、最近のプログラマーが 「API ユーザー」 に成り下がっていて、それらの下に潜んでいる部分を理解するよりも、それらをうまく使いこなす方に重心を置いている(…そうせざるを得ない環境にある)ことについて、危惧のしています。
例えば、API で抽象化されたレイヤーばかりを使っていると、例えば、Array List も Linked List も、ある一定のインターフェイスだけに注目している限りは、同じものに見えてしまいます。また、リテラルの部分文字列のマッチングで、リテラル検索(Java 言語でいえば indexOf )も、リテラルの正規表現によるマッチも同じものに見える、なんていう例もありますよね。下位の層を理解していれば、どういう場合に Array List を使えべきとか、indexOf を使えべきとかがわかるはずですが、理解していなければ、それもできません。
思いつかないのですが、もっぱら API ユーザーであることには、他にも懸念されるべき点がいくつかあるような気がしています。
論理的に説得力のある説明にはなりませんが、私も直感的に、プログラミングだけでなく、読み・書き・ソロバンも含めて、下位階層についてはある程度具体的に理解しておくべきだろうと思っています。
(゚ω^* )