はてなブックマーク - Unexpected Run Check

2010年10月30日土曜日

【Vol1】プログラミングのど素人が手っ取り早くWebアプリ構築技術を身につけるための5ステップ

@sawada0903 ことさわっくすです。このブログ、出来る限り頻繁に書いてゆきたいものなんだけどもなんだかんだで複数お仕事抱えていると書けないですね。対策考え中です。

二個目の記事のような記事は会社でノウハウ公開ブログ(7-bites'Angle)を作ることにしたので(ウノウラボのような形です)そちらに譲ることにして、このブログのスタンスはやはりあくまで僕個人の知見・仕事に対する考え方が主になるんだろうな、と思います。

最近知り合いが Tech Hub Tokyo 2010 というプログラミング未経験からのiPhoneアプリ作成講座を企画していて(僕も講座に参加するんですが)、Twitterで告知を手伝ったらそれはそれは数時間で定員を遥かにオーバー!

やっぱりみんなプログラミング勉強したいんだなー!と強く感じたのでこれから5回分の記事は

「プログラミングのど素人が手っ取り早くWebアプリ構築技術を身につけるための5ステップ」

 と銘打って僕がプログラミング習得に大事だと思う5ステップを掲げてみたいと思います。

これが目次。

① そもそも何故プログラミングの勉強に挫折するのか?
0. 学習動機が弱い
1. 要素要素のつながりがわからなく、本を読めば読むほど頭が混乱
2. 本を読むが、なかなか目的のアプリケーションを作るところまで
  話が進まない。非常に退屈で嫌になって投げ出す。


② 手っ取り早くプログラミングを身につけるための5ステップ

0. 学習動機を明確にしろ!
1. データベースの概念を抑える
2. 言語の構造を抑える(オブジェクト指向的に)
3. 一先ず一冊文法の本を読みきれ!写経!
4. 師匠を見つけて、解説をしてもらいながら
  一つアプリケーションを作り切れ!(師匠に大いに頼れ!)

① そもそも何故プログラミングの勉強に挫折するのか?
0. 学習動機が弱い
よく言われることですが、何をやるにしても学習動機は重要です。特にプログラミングなんかは今まで触れたことのない分野な人が多いジャンルです。(普通の勉強とは結構違うし、僕の世代ではプログラミング本当に好きな人って大抵中学とかから書いてます。)「俺これまでたいしてPC興味なかったし」とか言う人は特に動機を明確にしたほうがいい。

単に趣味サイトを作りたいのか、
ITベンチャーを始めたいからなのか、
始めたいとして何故必要だと思っているのか、
というかそもそも将来どうしたいのか?

プログラマー?起業家?プログラミングも出来る営業?
自分のマーケティングツールも作れてしまうWebマーケター?

職業やスキルの組み合わせは多種多様ですが、まずここを固める必要性大アリ。
なんとなくやっておいたほうがいいとかいう人は結構挫折している、もしくは習得にやたら時間かかっているイメージがあります。

1. 要素要素のつながりがわからなく、本を読めば読むほど頭が混乱
プログラミングは特に最初のうちはテクニカルタームと今まで触れたことのないものを触れるという経験の宝庫。

入門書を読む
→よくわからない
→作りたいものと今やっていることの関係性がわからない
→ つまらない
→ そういえば他にもタスクある
→段々がんばれなくなる
→やめる

という最悪のスパイラル、時間だけが過ぎ去ってゆく

2. 本を読むが、なかなか目的のアプリケーションを作るところまで話が進まない。非常に退屈で嫌になって投げ出す。

1.でも書きましたが今やっていることと、頭の中の崇高なるアプリケーションのイメージとのギャップがあり、勉強していることが今後どう活かされるのかよくわからない。というケース。


で、ここからが上記パターンを克服しつつ手っ取り早くWebアプリ製作を身につける5ステップ。(のうちの1ステップw)


② 手っ取り早くプログラミングを身につけるための5ステップ
0. 学習動機を明確にしろ!
これを読んでいるタイプのみなさんはおそらく天性のプログラマーではないので(天性のタイプは大抵もう既に結構やりこんでいる)、「たのしそう!」ぐらいだと多分挫折します。

なので、ここは将来やりたいことからの逆算でトップダウンに考えてゆき、プログラミングの学習に必然性と確信を持たせたほうが俄然続きます。本当に本当に考えぬいて、必須スキルだと思うから身につけるのか、どれだけの時間を費やせるのか?真面目に検討すべきです。

やる前に。やる前からわかることって多いですし。

僕個人の意見を言うならばプログラミングは必須スキルだと思っています。ITベンチャーをやるならば尚更必要。仕事をするにあたって「なんで知らないんですか…」とかいうケースってざらにあります。プログラマーの力量を測るにも重宝します。というか

「閃いたら、自分でプロトタイプを開発出来る」

というのは最強に強みです。また、プログラミングの本質は「作業の自動化」。人力の作業を圧倒的効率でPCに任せられる。これは文字通り圧倒的。一度書いたら、最小労力で最大の成果を再現性を持って得られる。元手が限りなくゼロで、期待値はもの凄い額。やらない手は無いでしょう。


次回以降、みなさんが期待している、「今からできる、具体的方法」の考察に移ってゆきます。

0 件のコメント:

コメントを投稿