ぼくはまちちゃん!(Hatena)

  • ライブドアリーダーで読む → Subscribe with livedoor Reader
ぼくはまちちゃん!のRSSフィード

2009/07/21

プログラミング言語を身につける唯一の方法

こんにちはこんにちは!!

プログラミング言語とかマスターしてると、なんかかっこいい感じですよね!
就職とか転職にもバッチリ有利そうだし…!

だけど難しいよね、言語とか…。
入門書とかどれだけ買ってみても毎回 Hello world どまりだし…。

なんでなんだろう?
なんでうまく覚えることができないんだろうね。
世の中には、ちゃんとプログラミングできる人がたくさんいるのに…!

うーん。

たぶんこれかな…

なにか作りたいものがある

または

なにかを作る必要がある

なんて状況以外で、マトモにプログラミング言語を習得してる人って
ぼくほとんど見たことないんだけど、みなさんはどうでしょう…!

たしかに、コンピュータを教えてくれる学校に通って、ちゃんと教えてもらえればJavaだってなんだってしっかりと、その時だけは身に付くんだけど、
でもそういうのって、ほんとに「その時だけ」なんだよね…。ほとんどの人は…。

逆に「xxなんて言語つかったことない」なんて人でも
会社の命令とかで「じゃあ2ヶ月でこれつくって」とか言われて
覚えた(というより無理矢理つくった)なんて人はよくみかけるよ。

あと、じぶんのホームページに、掲示板みたいなものをくっつけたくて、
それか自分好みに改造したくて PerlとかPHP覚えたって人も、すごい多いんじゃないかな。

ぼくもそんな感じかも?
いやぼく場合は、いまだに、ひとつも言語だとかマトモにわかっていなくて、
たとえばこの前の timerurl.com をつくった時も、
Googleで「php mysql」って検索するところからはじめたんだよ。(これ本当…!)

え、前にもなにか作ってたじゃん、って?
ぼく記憶力が恐ろしく悪いから、特にプログラムの書き方なんて2ヶ月も触ってないと忘れちゃう感じだよ…!
何を作ったか、どんなやり方で作ったかっていうのは覚えていても、詳しい作り方は覚えていない。
そんなだから何を使ってなにを作るにしても、毎回すっごい基本的なところをググるところからはじめてるよ。
そのかわり「勉強」なんてことはしたことがないかな。一度も。

そんなわけで少なくともぼくの場合は、
xx言語習得したいから勉強」なんてやり方はぜんぜん成功しない。 成功したことがないよ。

かわりに、 「yyみたいなのつくりたいからxx言語つかう」っていう時だけはわりとうまくいくから
これが(ぼくにとっての)唯一のプログラミング言語を習得する方法かな…。

なんだか、作りたいものが主で、言語の習得は結果になっちゃってるね…。
だけど、たぶん前者のやり方(考え方)だと、ぼくには一生かかっても習得できない気がするよ…!

※以下、基本をキッチリ学んでいない奴のコードは云々といった批判コメントへ続く…! ↓


sisimaru_440sisimaru_440 2009/07/21 21:10 一応職業プログラマですが正にそんな気がしますねー
文系だった僕より専門卒のがひどく感じる時とか!

nneewwssnneewwss 2009/07/21 21:53 私もそうですね。少学生の時に「ゲームを作りたい!」って思って、ゲームを作るためにプログラミングを学びました。先生もちゃんとした本も泣くても、図書館の本を見よう見まねで写してノウハウを勉強していったような気がします。
今も医療関係の仕事をしていますが、必要だから、仕事が楽になるからプログラム言語を勉強して身につけています。

kutekenkuteken 2009/07/21 22:17 いやー正にそうだと思いますよ!
プログラムは「何かをつくるため」のツールだと思ってます。

と、プログラムとかちょこっとしかできない自分が言ってみる。

deusxdeusx 2009/07/22 02:33 前者の人は,手段のための目的.後者の人は,目的のための手段.

私も後者のほうが好きですね.共感します.

yoirayoira 2009/07/22 05:57 だって 身につく = なんか作れる なんだもん、と思います。

phonohawkphonohawk 2009/07/22 12:07 私もプログラマですが言語の勉強なんかしたこと無いです。Haskellを除いて…

faith_and_bravefaith_and_brave 2009/07/22 13:13 > なんて状況以外で、マトモにプログラミング言語を習得してる人って
> ぼくほとんど見たことないんだけど、みなさんはどうでしょう…!

ここにいたりします。
考え方を学びたかったり、言語で遊ぶことが楽しかったり。

guicuimixguicuimix 2009/07/22 13:58 基本をキッチリ学んでいない奴のコードは自由に羽ばたく鳥のように輝いて見えます。

ugaya40ugaya40 2009/07/22 14:35 作れる≠乗りこなす な世界ではあると思います^^

ko1kunko1kun 2009/07/22 15:00 そうですね。
新人研修でプログラミングを教えていますが、
業務で直近に必要になるわけでもなく、何か作りたいわけでもなくて、
言われるままにテキストのソースコードを打ち込んでいる子達は、
ぜんぜん上達しません。
しかも、プログラミングの面白みがわからないので、
苦痛を感じていてまるで修行のようです。

assertassert 2009/07/22 16:20 自分自身はコンピュータの仕組みを理解したり思い通りに制御するのが楽しくてBASIC・機械語・C言語を覚えていった結果、そういうベースがあると大抵の言語はつらくなく習得できる・・・という感覚ですなぁ。 えぇえぇ、古い人間といわれてもかまいませんw 確かにugaya40さんの「作れる≠乗りこなす」にはすごく同意できますね。

youghsoroyoughsoro 2009/07/22 20:51 はじめまして。脳科学の池谷裕二さんが、公式を覚えることはせず数学の問題を解くときに毎回自力で導き出す、と糸井さんとの対談で言っていたのを思い出しました。本質が理解できれば同じ結果が得られる、ということですね。

NameThrownAwayNameThrownAway 2009/07/23 02:44 基礎をキッチリ学んで綺麗なプログラムを書くのも手段ではないでしょうか。
たぶん、目的じゃありません。
そうしないと達成できない案件というのはあるものです。
 
スポーツや音楽でもそうでしょう?
ツマンナイ基礎が一番重要になりますし、
綺麗なフォームを維持しようとするでしょう。
その大切さを誤魔化すプロは短期的にしか結果を残せないものです。

trshugutrshugu 2009/07/30 14:53 細かい関数とかは忘れて当然と思う。
だから「php mysql」とか「java if文」とかで検索するわけで。
そんなことよりもアーキテクトをしっかりすることができれば言語なんてどうでもいいですよね。

lifewindmilllifewindmill 2009/08/13 05:42 >自分好みに改造したくて PerlとかPHP覚えたって人も、すごい多いんじゃないかな。

まさに自分・・