webサービスを作れるようになるためのプログラミング学習方法まとめ

周囲で最近なんかまた(?)プログラミング出来るようになりたい!という声を聞くようになってきたため、今回は参考にしたweb上のいくつかの記事とともにより詳細な学習方法を紹介させていただきます。

1.参考書籍やweb上の学習ツールを探す

新人/若手エンジニアに読んでほしい推薦書籍・必読書30冊
http://d.hatena.ne.jp/elwoodblues/20100623/1277263009

引用”「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか
作者: 小森裕介
出版社/メーカー: 技術評論社
発売日: 2010/04/10
メディア: 大型本
購入: 57人 クリック: 1,242回
この商品を含むブログ (33件) を見る
やはりどの会社でもWeb開発が主流だと思いますが、使われる技術ってかなり多方面にわたっていて、勉強するのが大変だったりします。この本はWeb技術全般にわたって俯瞰することができます。”

→これは間違いありませんでした。この本は必読です。


プログラミング初心者でも安心!無料プログラミング学習サイト10選【EdTech】
http://media.looops.net/edtech/2012/11/06/programming-learning/

引用:” 1.ドットインストール

ドットインストールもはや説明の必要のないくらい有名なサイトですね。
「3分間でマスターする初心者向けプログラミング学習サイト」として展開しており、内容は全てYouTubeを使って学ぶことができます。

どこまで勉強したのかを記録する機能も充実しているため初心者にとっては学びやすい環境が整っています。
レッスン内容は、PHP、JavaScript、Ruby、Python、Javaなど幅広い言語がカバーされています。さらにスマホサイトを作るレッスンなど最新のトレンドも盛り込まれています。
まずはプログラミングがどういうものかを知りたいという人におすすめのサイトです。”

→ドットインストールのすごいのは「コードをそのまま写して使える」ところにあります。絶対うごくコードが保存されているので、最悪コピペで前に進むことがデキます。


2.学習自体の効率化関連

プログラミング出来ない奴ちょっと来い
http://anond.hatelabo.jp/20130322031333

引用”以下の点を意識してプログラミングすればよい。
・”何をしたい時” に “どう書けば正しく動くか” というデータベース(プログラミング言語のモデル)を自分の中に作ること
このままでは抽象的すぎるので、このような “データベース” や “考える習慣” を自分の中に作るための具体的な指針を以下に挙げる。
1. エラーをたくさん出す
2. デバックの仕方を覚える
3. 小さく動かして確かめる
4. Google を使い倒す
つまり、小さく動かして、エラーをいっぱい出し、デバッグを素早く行なって、分からないことは google などの検索エンジンで解決する。これが上達のコツである。”

→これも間違いなかったです。なんかエラーを出しては解決して・・・を繰り返しているうちに自然と書き方が身についた感じはあります。ただし、1週間とかそこらで解決できる問題ではないので気をつけてください。


プログラミング出来ない奴ちょっと来い
http://anond.hatelabo.jp/20130322031333

引用:”初心者はエラーを出さない様にと慎重にプログラミングしようとしがちだ。
はっきり言うと、それは間違ったプログラミングスタイルだ。

特に最初のうちは、エラーをなるべく多く出した方がよい。
なぜならば、エラーを出すごとに、その言語の新しいルールを1つずつ学んでいくことになるからだ。”

→これも間違いないっす。とにかく書いて直してを繰り返す!


プログラミング出来ない奴ちょっと来い
http://anond.hatelabo.jp/20130322031333

引用:”実際にエラーに遭遇した時に大事なのはエラーに遭遇した時にいかにその原因を突き止めるかだ。
期待しない動作をした時のデバッグという。
まずいちばん基本的で一番重要なデバック方法は printf デバックである。これをまず出来るようにする。
怪しい変数をとにかく printf で出力し、変な値が入っていないかを確かめる方法である”

→僕はver_dumpでやってたけど、バグ探しの効率化もかなり重要で、これができるようになると一気にプログラミング学習のストレスが感覚的には8割くらい軽減されます。


プログラミング出来ない奴ちょっと来い
http://anond.hatelabo.jp/20130322031333

引用:”最初の内は、基本的にプログラミングする時は小さな部品に別けてから1つずつ確かめながら作る習慣を付けるようにする。
その理由は簡単で、人間は正確無比に物事を進めるのは苦手な一方で、プログラミングでは正確無比に物事を進めることを要求されるからである。そのため、大きなプログラムを一度も実行せずに作成し、一気に確かめようとするとまず間違いなく正しく動作しない。”

→これも間違いない。というか最初っていろいろ不安でどっちにしろ細かくちょこちょこ確認していくようになる気がする。


プログラミング出来ない奴ちょっと来い
http://anond.hatelabo.jp/20130322031333

引用:”先ほどから何度も書いてあるように、プログラミングする上ではエラーとの付き合い方が非常に重要になってくる。
おそらく何らかの上手くいかない場合は何らかのエラーメッセージが出るはずだ。
原因がどうしても分からない場合は、エラーの文章をそのままコピーして検索してみる。そうすると、おそらくエラーの原因と対策方法などが表示されるので、それを足がかりに再度挑戦する。”

→これができるかどうかもめちゃくちゃ大事。エラーになったらとにかくそのまま検索窓にブチ込む!


3.総合的な注意点とか

プログラミングの勉強を始めて1年間で思ったこととか勉強方法とか
http://d.hatena.ne.jp/Akineko/20100221/1266765870

勉強する言語選び
始めるにあたってこれが一番悩みましたねー。有名な言語だけでもかなりありますし、どの言語にも良い所悪い所様々で結局どれがいいんだよ!って1ヶ月ぐらいこれを選ぶだけで悩んだかも知れません。
そんなこんなで選んだのがJavaです。選んだ理由としてはオブジェクト指向プログラミングを勉強するならこれが一番なのかなと思ったからです。個人的には選んで当たりだったなと思っています。当たりだと思う理由はAPIが豊富で、Webアプリ・デスクトップ・携帯など様々なものが作成できてそれらの勉強が出来ることや、Javaを使って書かれた技術書が多いからです。本に限らずやっぱ情報は多いですしね。

→僕もjavaは一瞬触ったのですが、なんかよく分からなくて結局phpに行きました。相性とかあると思うのですが、初心者はphpかrubyが良い、というのが最も良く聞く意見な気がしています。


プログラミングの勉強を始めて1年間で思ったこととか勉強方法とか
http://d.hatena.ne.jp/Akineko/20100221/1266765870

情報収集
とりあえず最低限の日課としては、はてなブックマークのコンピュータ・ITの人気エントリーをチェックして読むorブクマしてます。
あとは余裕があれば他情報サイトを巡回したりRSS読んだりと。RSSの登録ははてブでよく人気に上がるところとか、ついったーで知ったサイトだとかそういったものを。

→はてブでの検索は間違いないっす!普通に検索すると動かないこともよくあるのですが、はてブは比較的その確率が低かったです。

以上、ざっくりとしたまとめでしたが興味あるひとは中のwebサイトとかも見てみてください!