paiza times

paizaがお届けする、テック・キャリア・マネジメント領域における「今必要な情報」を届けるWebメディア

logo

paizaがお届けする、テック・キャリア・マネジメント領域の「今必要な情報」を届けるWebメディア

初心者がプログラミングの勉強を始めたとき意外とつまずく7つのこと


Photo by Christina Hendricks

こんにちは。谷口です。

プログラミング初心者の皆さん、勉強ははかどっていますか?

最近は「プログラミングを学びたい!」という人が増えていますが、プログラミングを習得するにはさまざまなハードルがあります。教材が増えて学びやすくなった一方で「途中でつまずいて諦めてしまった」「過去に挫折した経験がある…」といった人も少なくありません。

先日、paizaでは「paizaラーニング学校フリーパス」をご利用いただいている学校の先生に活用事例などをお話しいただくウェビナーを開催しました。

paiza.hatenablog.com

こちらのウェビナーで、プログラミングを学び始めたばかりの中学生の生徒さんたちがつまずきやすいポイントなどのお話を聞いて大変興味深かったと同時に、「プログラミング初心者の大人でも同じようなことでつまずいている人はいるな…」と思ったので、そのお話もまじえて書きたいと思います。

初心者がプログラミングの勉強でつまずきやすい意外なポイント


Photo by Andrew Otto

わからないことはまず検索して調べてみる

例えば現役でRubyを使ってWebサービスを開発しているエンジニアたちも、Rubyのメソッドを全部暗記してコードを書いているわけではありません。「こんなときどうすればいいんだっけ?」と思ったら、みんな検索したりドキュメントで調べたりしながらプログラミングをしています。

情報系の授業でも、処理の方法などを質問してくる生徒さんには、まずは検索の仕方を教えているそうです。

考えてもわからないことを考え続ける

繰り返しになりますが、勉強中にわからないことはまず検索する、調べるという癖をつけたほうがよいでしょう。

プログラミングにおいて、自分の中にまったく知識がない課題は考え続けるだけ時間の無駄です。さっさと調べる→試してみるという段階を踏んでいきましょう。

勉強を始めたばかりだと、こういった「プログラミングに関する情報はWeb上にたくさん転がっている」のも「どう調べたらそういったページを見つけられるのか」も知らないので、意外と「調べる」という行為にたどり着けない人もいます。

なかなか試さない

ウェビナーでも、実行していいかどうかを先生に質問する生徒さんの話が出てきました。

正誤は先生が出すものであるという認識なのもそうですが、生徒さんに限らず何か問題を解くにあたって「とにかく間違ってはいけない」と考えてしまっている人も多いのではないでしょうか。

プログラミングは、どんどん書いてどんどん試していく中でしか知識を身につけることができません。そしてすべての課題に対して明確な正解があるわけではありません。現役のエンジニアも、どんどんコードを書く、実行する、書いたコードを直すということを繰り返して、その中で「あーこう書いたらこういう動きになるのね」という発見を繰り返しながら業務や勉強を進めています。

本やサイトを読むだけで勉強したつもりになる


Photo by GoToVan


もちろん本を読んだり教材として利用したりするのはよいことなのですが、プログラミングは「本を眺めていればできるようになる」ものではありません。

自分で手を動かしてコードを書かないと、いつまでたっても身につけることはできません。本を使って勉強するにしても、「読みながら手を動かしてやってみる」実践が必要です。

なんとなくコードを書いてみるけど説明はできない

前の項目にもつながりますが、例えば簡単な問題を解くためのコードを書いて、クリアできたとして、「ここで何をして、そのあとここでこういう処理をして…」といった説明やコメントができないと、その内容が身についているとは言えませんよね。

理解はできないけどとりあえずコードを書く、写経するといった行為もまったく無駄なわけではありませんが、簡単な処理の段階から、自分で書いたコードを自分で説明できるようにしておいたほうが、より早く複雑なコードや処理を書けるようになるでしょう。

細かいところまできっちり理解しようとする

前の項目で自分で書いたコードを説明できるように…と言ったばかりで矛盾だろと思うかもしれませんが、これは細かい作法的な、「この言語ではこう書くとこういう処理になるんだよ」という部分の話です。

例えば「=」で右から左に代入するとか、「*」を付けるとポインタになるとか、あらゆる型とか、言語ごとに変わる処理の書き方とか……。「なんで?」と思うかもしれませんが、そこの理解に時間を使う必要はありません。「そのプログラミング言語がどう設計されて作られているのか」というレベルの話になってきてしまうので、ある程度「これはこういうものなんだな」という認識でいないと、すべてに引っかかっていては先に進めません。

難しい環境設定などに手を出して行き詰まる

やってはいけない…というわけではありませんが、プログラミングに取り組む以前の段階で挫折してしまうと、スタートラインに立つこともできません。

エンジニアを目指すのであれば、環境設定などはいずれはできるようにならないといけませんが、そこで詰まって諦めてしまったり、先に進めなくなったりしてしまうぐらいなら、ブラウザでプログラミングを学べるオンライン学習サービスなどを使ってみるのもひとつの手です。

たとえば、paizaラーニングは一回3分程度の動画を見ながらブラウザ上で演習問題を解き、すぐに実行して結果を見ることができます。未経験者でもブラウザさえあれば、環境構築不要で手を動かしながらプログラミングの基礎を習得できます。

プログラミング中の疑問を解決するには

初心者がプログラミングの勉強をしていて、わからないことにぶつかると、どう解決したらよいかがわからず、そのまま挫折してしまうこともあるかと思います。

しかし前述の通りエンジニアたちは、プログラミング中に疑問を感じたら「調べる・試す」ことでさっさと解決して先へ進んでいます。

初心者がプログラミング学習中の疑問を解決する方法については、こちらの記事でも解説していますのでご興味のある方はぜひごらんください。

paiza.hatenablog.com

また、調べ方・試し方などについては、paizaラーニングの「エンジニアの小話編 :paiza.IOとGoogleで疑問解決」(全編無料)でも解説しています。

エンジニアの小話編 :paiza.IOとGoogleで疑問解決」について、詳しくはこちら

まとめ

プログラミングの勉強をしていると、わからないこと、思い出せないことにしょっちゅうぶつかります。だからスキルを身につけるには、そこで挫折してしまわない習慣づけが必要です。

特に最初は、初心者でもとっつきやすい学習サービスなどをうまく利用すると、スムーズに勉強を進めやすくなるかと思います。

初心者でもプログラミングが動画で学べるpaizaラーニングこちら
paizaラーニング





paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

paizaラーニング

そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

詳しくはこちら

paizaのスキルチェック

paizaのおすすめコンテンツ

Webセキュリティ入門 ハッカー入門 Webセキュリティ講座がスタート!CVは内田真礼さん! Python✕AI 機械学習入門講座 CVに上坂すみれさんを起用!人気の機械学習講座を公開中!
paiza転職 paiza新卒 EN:TRY paizaラーニング 記事内に記載している情報は、記事公開時点でのものとなります。 Copyright Paiza, Inc, All rights reserved.