1ヶ月でWebデザイン・プログラミングスキルをオーダーメイドのカリキュラムで学べるスクール、それがWebCamp。

「数億規模スタートアップのCTO講師」と「エンジニアキャリア専門のポテパン」が贈る、実践型Rubyスクール。

プログラミングに向いている人、向いてない人

Pocket

プログラミングスクールで講師を勤めていた方の実体験に基づく話です。

「プログラミングに向いている人、いない人」について、考えてみましょう。向いている=長所、向いてない=短所として洗い出せば、単に自分がどちらなのかということだけでなく、「(自分は)向いていないと思ったけど、こういう点(短所)を改善すれば、プログラムが作れる人になれる!」と気づくことができるかも知れません。

プログラミングスクールの授業の実態

私は一時期、社内の教育でプログラミングを教える仕事をしていました。

それは、いわゆる「プログラミング実習」の授業で、とある電気メーカの工場のラインで、将来、監督する立場にある10代の若い人たちを中心に、教えるという仕事でした。具体的には、フローチャートの書き方やプログラムを作っていくコツについて一通り説明をするといった作業です。その説明が一通り終わると、そのままの流れで、「実習」になるのですが、大半の生徒は、固まってしまいます。

「分からないことがあったら、遠慮せずに、何でも聞いてください」

必ず最後に、そう付け加え、生徒たちの間をねりあるきます。でも、遠慮をしているという訳ではないらしいのですが、手が動き出す生徒というのは、ほとんどいません。先生業務を始めた頃は、「少しでも理解を深めてほしい」という一心で

「では、私に分からないところを教えてください」

そう問い合わせると、彼らの回答は、ほぼ、間違いなく「全部・・・」という答えが返ってきます。つまり、彼らにとって、「プログラミング」とは、「何が分からないか、分からない、分からないところが、どこだか、よく分からない」のです。なんだか哲学書みたいな話になってきましたが、よくよく、思い出すと、確かに自分も、始めた頃は、そうでした。

プログラミングの世界とは

プログラミングの世界は、学校の勉強と違います。それは「一つの問題」に対して、「一つの答え」が用意されている数学の公式のようなものではなく、たとえ、同じ答えに到達するとしても、沢山のルートがあります。もっとも、近年のプログラミング言語の進歩により、そういった「ばらつき」は抑えられる傾向にあります。これは、プログラムの生産性(可読性、再編、追加編集、デバッグなど)に大きく寄与する要素だからです。

それでも、やはり、個性が出ます。特に、私が教鞭をとっていたころは、最も原始的でシンプルな「アセンブラ」という完全に機械よりな言語でしたので、特にその差が著しかった…という記憶があります。現在は、そういった「個人的なばらつき」が出にくく、生産性の高い「オブジェクト指向」と言われる言語が主流です。

代表はJava、MSだとC#などが挙げられます(C++はオブジェクト指向の強い言語とも言われていますが、私はC言語をむりくり「オブジェクト指向」にしたもののように思えて、むしろ、複雑で、プログラミングの入門者には向かないかと考えています)。C言語もどちらかというと、OSなどのシステムを構築するために開発されたものなので、オブジェクト指向とは程遠く、同様にこれからプログラミングを始めたい人にはあまりお勧めでありません。

今までの学校教育ではそういった、「アルゴリズム」という考え方について学ぶという、ことはなかったように思います。だから、彼らも面食らってしまったのでしょう。もっとも最近では、これらを子供たちに学ばせようという動きがあるらしく、義務教育でも政府は「プログラミング」をコンピュータ教育の一環としてやっていく方針を固めたようです。

また、別の例を考えてみましょう。例えば、よく、人を「理系」「文系」で分けますが、「理系」は向いていて、「文系」は向いてないのでしょうか?

確かに、数学が得意な人だったら、その、プログラミング言語の仕様を理解して、「方程式を解く」ように、プログラムをすらすら書けるのかもしれません。これらを踏まえ、簡単に「プログラミングに向いている人、いない人」について、まとめてみましょう。

プログラミングに向いている人/向いていない人

プログラミングに向いてる人の特徴

  • 理系に限らず、様々な「もの」に対して興味を持つ人
  • 文書を書いたり、よんだりするのが好きな人

プログラミングに向いていない人の特徴

  • 論理的に考えるのが嫌いな人
  • 物事にたいして、粘り強さがない人

おわりに

いかがでしたか。
向いていない人の条件にはてはまった方もいるかもしれません。しかし、自分の短所を意識するようになれたことが、まずは大きな収穫です。「プログラミングに向いていない人」と思うあなた、そんな、「短所を」克服して、あなたも「プログラミング」に挑戦してみませんか?プロスタでは、プログラミング学習のおすすめ方法を紹介していますので、以下のページもあわせてご参考にしてみてください。

【おすすめ記事】

1人でのプログラミング学習。効率を良くする5つの方法とは?
【プログラミング学習法】QiitaやStudyplusを使って学習モチベーションを高める
初心者にオススメ!プログラミングを学習できるスマホアプリ7選

投稿者:プロスタ編集部

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

おすすめスクール

全国30校舎で展開されるヒューマンアカデミーのWeb講座は修了者数4万人超、講師とカリキュラムの満足度がどちらも9割を超えています。就職や転職に必要なレベルの実務スキルを身に付けられます。

初心者がプログラミングで挫折しない学習方法を無料動画で公開中。オンラインに特化したプログラミングスクール「TechAcademy(テックアカデミー)」が解説。

この記事が気に入ったら
いいね!しよう

プロスタの最新情報をお届けします

あわせて読みたい

関連記事

イチ押しランキング

1リナックスアカデミー

リナックスアカデミー

2システムアーキテクチュアナレッジ

システムアーキテクチュアナレッジ
ページ上部へ戻る