【週刊256times】 プログラミング学習に関する受講生からの質問
第二期の256timesもWeek 3に突入です。HTML/CSSと違ってJavaScriptはまた別の思考回路になるので苦戦している人もちらほら...頑張って欲しいところです。
↑ 今週の課題ではこういったものも作っていきます。
昨日は第三回目となる夜会だったのですが、「プログラミング学習に関する質問を思いつくだけ書いてください」という企画をしてみました。100問近く集まったのでなかなか回答が大変だったのですが汗、せっかくなのでよく聞かれた質問をいくつか紹介してみます。
Q. アルゴリズムとデータ構造の勉強はすべきですか?
A. アルゴリズム図鑑のアプリは秀逸ですよ!一度見ておくといいですね。
Q. PHPはもう終わりつつある…と言われたことがありますが本当ですか?
A. え、そうなの...?バリバリ現役ですよ。
Q. (Java|Ruby|PHP|TypeScript)は勉強したほうがいいですか?
A. 気になるならいろいろ手を出して見るといいです。なお、「どの順番で学ぶべきですか?」「これは学んだほうがいいですか?」とよく聞かれますが、とりあえず公式サイトをみて公式チュートリアルをかたっぱしからやってみるといいです。わからない単語が出てきたり、うまく動かないこともありますが、その場合はまた気になったときにもう一度チャレンジすればいいだけです。なお、そのように試してみた経験は決して無駄になりません。「これ使うのかわからないからなぁ...」と思って手を動かさないのが一番良くない...と個人的に思います。
Q. 何かを学習するときのゴール地点はどうやって定めていますか?
A. 作りたいものを作るのが一番ですが、何も思いつかないなら公式サイトのチュートリアルをやってみましょう。そのあとに「最近、このチュートリアルにチャレンジしてみたんだよね」と友達に伝えるまでがワンセット、のような気がします(友達に伝えることで自分が何を学んだかの整理がつくため)。
Q. 色々調べてもjQueryばかり出てくる。現場ではこっちを使うのですか?
A. 現場にもよりますが、むしろ使わない方向かと...。
Q. Ruby on Railsから学んではいけないとよく言われますが、どうしてでしょうか?
A. Ruby on Railsのようなフレームワークは「わかっている人が楽をするためのもの」なので、初学者にはブラックボックスすぎて理解に時間がかかる&応用がきかないから...ですかね。なお、最初に「フレームワークってこういう感じか!」ということを知るには良いので、体験しておくのはおすすめです。そのあとに地道に基礎文法などを勉強すると良いかな、と。
Q. いくつかの言語をさわりだけ勉強しましたが、これだけ多様な言語が存在するのはなぜでしょうか。
A. プログラミング言語をつくるときには中央集権的な組織があってそこに許可をとってから作り始める、みたいなことは必要ありません。「この言語のここがもうちょっとこうなっているといいんだけどなぁ」という感じで作り始めて、それに賛同する人がいれば人気がでる、という感じです。したがって、言語を作りたいと思った人の数だけ言語が存在することになります。
今週はそんなところですかね...引き続きがんばってほしいところです。