未経験プログラマーの雑記

元個別指導塾運営者、現プログラマーによるブログです。教育や自身の学びについて発信していきます。

プログラミング初心者が教えてもらうべきこと

前回の記事では、「新人プログラマーへのアドバイス3つ」について解説していきました。

 

bottea.hatenablog.com

 

今回は、自身が学習塾で働いていた経験と、プログラミングを独学した経験から、「プログラミング初心者が本当に他者から教わるべきこと」について書いていきます。

※ここで言うプログラミング初心者とは、これからプログラミングを基礎から学んでいく人のことです。

 

簡単な自己紹介

僕は高校、大学ともに文系で、プログラミングを学び始めたのは去年の2月です。(この記事を書いている時点でプログラミング歴1年4ヶ月)

プログラミング独学期間半年を経て、プログラマーとして就職し、現在は主に製造(設計書を読み、プログラムを書いていく工程)を担っています。

大学時代、アルバイトで塾講師をしていたので、プログラマーになる前はそのまま塾会社に入社して働いていました。

 

  1. 自分の目標と必要な教材

例えば受験勉強でも、「○○大学に合格したい」とか「医者になりたい」みたいな、最終目標って簡単に決められるんですよね。

ただ、そのために自分が何をすべきなのかが分からなければ、十分実力が付いているはずの数学ばかりに取り組んでしまったり、受験ではほとんど出ないような問題を一生懸命解こうとしたりと、努力の方向性を間違えがちです。

 

プログラミング学習を始めようと思い立った方の場合、「何をしたいかで勉強すべきことが変わるから、目標を決めた方が良い」と言われながらも、「そもそもプログラミングで何を作りたいか特に決めていない」「Webアプリ?Webサイト?デスクトップアプリ?何がどう違うのかわからない」というように、目標設定すらしづらいのではないかと思います。

実際に僕が一番困ったのがこの部分でした。

 

プログラミングスクールやプログラマー経験者に直接質問出来る機会があるのなら、プログラミングで自分がどんなものを作りたいのか漠然としたイメージを聞いてもらい、それがWebアプリなのかデスクトップアプリなのかなど分類してもらった上で、どのような教材を用いて学習すべきかを教わると良いと思います。

 

  1. 困った時の対処法

プログラミングをしていると、ベテランの人でも「これどうやるんだっけ?」と自分の記憶だけでは対応出来ないことが出てきます。また、ミスによりエラーが出てしまったり、不具合が出てしまうことも多々あります。

でもその時に、どうすれば対処出来るかを知っています。

やりたいことをどんな単語で調べればいち早く見つけられるか、エラーメッセージからどのあたりの文言を見ると原因がわかるか、不具合の原因がどのあたりなのかをどうやっていち早く発見するかなど、「困った時にどうすれば良いか」を知っているので、初心者よりもスムーズに問題を解決し、完成に至ることが出来るんです。

それらのノウハウを一つひとつ聞いているとキリが無いですが、「デバッグの仕方」「調べ方」などは一度ベテランの方から聞いて実践していくと、ほとんどのケースで対応出来るようになるのではないかと思います。

 

 

終わりに

「え?たった2つ?」と思われるかもしれませんが、僕は他の人から直接教わるべきことは本当にこの2つだけだと思っています。

それ以外のことは自力で調べるなり、試してみたほうが手っ取り早く伸びます。

こんなことを言うとプログラミングスクール・専門学校関係者や、通っている方に怒られそうですが、プログラミングスクールはカリキュラムが決まっていることと、モチベーション維持という意味で有意義だと思っています。なので、プログラミングスクール・専門学校を否定するつもりはありません。

そこにどれだけの価値を見出すかは人それぞれです。

 

要は僕が思う「他者から教えてもらうもの」は、「自分にある程度適した教材」と「答え合わせの方法」です。これらがあれば、自分で自学自習することは出来ます。

 

今回は「プログラミング初心者が教わるべきこと」を紹介しましたが、次回は「初心者こそ他者から教わらない方が良い理由」について説明していきます。

 

bottea.hatenablog.com

最後まで読んでいただきありがとうございました。

今後もプログラミング学習やプログラマーとしての仕事、副業に関することなどを中心に記事を書いていきますので、良ければ読んでいただけると嬉しいです。

Twitterもやっていますので、気軽にフォロー・リプライください。質問などもしっかりお答えします。

 クボ@新人プログラマー (@natsumemix2525) on Twitter