∑考=人 〜プロメテウス〜

そして今日も考える。

一挙両得のプログラミング学習サイト

プログラミングが面白い理由の一つとして、実用性が挙げられます。どうも近年は、面白いアプリを開発することを動機に、プログラミングの勉強をする人が多いようですが、実生活の役に立つ即効性のある学問であることは間違いありません。

 

でも、プログラミングって難しそう、そう思う人も多いでしょう。私も大学時代はプログラミングのワケがわからず、単位を捨てたくらいです。少なくとも当時は、私には無理だと考えていました。

 

自分の経験から、プログラミングが難しいと感じてしまう理由として、いきなり難しい言語に手を出そうとしていることが挙げられます。例えば、大学の工学系や情報系の学部ではC言語というプログラミング言語を最初に学ぶことになります。そのため、多くの学生は、C言語こそがプログラミングの基礎なんだと認識します。

 

初めのうちはすごく簡単なんです。ところが、少し後半になって「ポインタ」という概念が登場したぐらいから格段と難しくなります。ちなみに初学者の半分以上がこのポインタの使い方に苦戦します。そして、自分には無理だ、と挫折してしまうわけです。私もそうでした。

 

しかし、気にする必要はありません。そもそもの誤解として、C言語は全く簡単ではないのです。抽象度の高い、応用が効きやすい高級言語というジャンルに分類されます。C言語は他の言語で実現できることを全て実現できるとも言われるくらいです。汎用的であるが故に、全てを理解するのは大学の教科書を丸暗記するぐらい難しいのです。

 

そのため初学者が挫折するのは普通で、むしろいきなり理解できるならば、かなりの才覚があると言えます。ちなみにネット上では、JavascriptRubyPythonなどのスクリプト言語と呼ばれるものが簡単だと言われています。独学だけでプログラミングをマスターした人の多くは、こういった比較的簡単な言語から勉強していることが多いです。ちなみにスクリプト言語が何なのかについては説明しないので、わからない人は適当に調べてみてください。たぶん何言ってるかわかんないような説明しか書いてませんけど。。。

 

というわけで、独学でプログラミングを最初に学ぶならスクリプト言語が良いと思います(と言えるほど私はスクリプト言語に詳しくはないですが笑)。では、スクリプト言語なら誰でも簡単に始められるのかというと、残念ながらそうでもありません。

 

その理由は、実際のプログラミング、すなわちコードを書く以前の段階でハマってしまうからです。(ちなみに情報系の間では「熱中してしまう」とは異なる意味で、問題解決の糸が見つからない時に、よく「ハマる」という表現を使います。)

 

ネット上にはあらゆる言語の構文ルールなどを無償で解説しているホームページが無数にあります。しかし、構文自体が理解できても、そのコードを一体どこに書いたらいいのか?そのコードを実行するためにはどうすればいいのか?という説明をしているサイトはあまり多くないんですね。その上、運良く見つけたとしてもコードを動かすためのアプリのバージョン自体が変わってしていると、あるはずのコマンドがなかったりと色んなトラブルに巻き込まれます。

 

そのため、本質的なプログラミングを始める前に多くの人が挫折してしまうのです。否、プログラミングを熟知している人でも、本当に困るのがプログラムを動かすための環境設定なのです。初学者が、結局プログラミングってつまらないなーとスタート地点に立つ前に見切りをつけてしまうのも無理ありません。

 

理想は、何の下準備もせずに、いきなりコードが書く場所が用意されており、コードが実行できることでしょう。というわけで見つけてきました。→コードの書き方を学ぼう | Codecademy プログラミング学習サイトです。ツイッターやフェイスブックのアカウントで無料で始めることができます。

 

日本語で表示されるのは初めだけであり、その後の演習問題の指示等は全て英語という難点はありますが、英語の勉強にもなると考えれば一挙両得です。このサイトの良いところはやはり、今すぐにコードを書く事ができる点。ブログに文章を書くように、与えられたスペースに指示に従ってコードを入力すればよいのです。

 

そして、ボタンのクリック一つでプログラムの実行結果が表示されます。そして、正解すれば次の問題へ、と少しずつ前に進んでいくことができます。スクリプト言語を中心にいくつかの種類を選ぶことができるのも魅力です。プログラミング経験者には物足りないかもしれませんが、プログラムがどういうものなのか?とかプログラムを実際に動かすということを手軽に実感するにはとても良いサービスだと思います。

 

私も暇なときに英語とスクリプト言語の習得を目指して暇つぶしがてら取り組んで行く予定です。興味のある方はぜひお試しあれ。