TIS ENGINEER NOTE

27才文系出身フリーランスエンジニアのブログ

エンジニア入門

プログラミング初心者に贈る挫折しない為の3つの心構え

更新日:

こんにちは、フリーエンジニアのてぃすです。

最近では未経験者からプログラマー・エンジニアへの転身を志しプログラミングを学習を始めている人が増えていますね。

しかし理解出来ない部分が出てきたり、モチベーションを保てずに学習途中で挫折していまうという話も多く耳に入ってきます。

そこで今回は文系出身から職業プログラマーへ進んだ僕が、挫折しないプログラミング学習の進め方・心構えについてお話していこうと思います。

目的が具体的にイメージできる教材を使用する

プログラミングの学習を始めて間もないときに、

  • 変数に値を代入
  • クラスを生成する
  • オブジェクト指向

などと言われてもピンとこないと思います。少なくとも僕はそうでした。

そのあたりの概念が理解できていない状態で、教材に言われるがままにコマンドプロンプトやターミナルの真っ黒背景の画面に呪文を打ち込んで、『Hello World!』などと表示されたところで「だから何?」となることでしょう。僕はそうでした。

にも関わらず世間に出回っている教材の多くが、このように初心者をおいてきぼりの状態で価値を想像できない作業を進めることを強要して来ます。

これじゃモチベーションの維持は難しいですし、達成感も皆無。そして何より楽しくありません。楽しくないものを続けるのは苦痛です。

じゃあどのように学習すればよいのか。

それは実際に役に立つ状況を想像できる機能を作成しながら学習を進めるタイプの教材です。

具体的にはWebサイトを作りながら進められていく教材がオススメです。

例え単純なものでも、日頃インターネットを通じて触れているWebサービス・Webアプリに類似した成果物の完成に向けて作業を進めることが出来れば、モチベーション達成感を得ながら継続していくことができます。

最初は指示されるがままにコードを書いたり環境の設定をすることになるとは思いますが、プログラミングという手段がWebサイトという結果に繋がるプロセスを体験することは、ジワジワと貴方の学習効率を上げてくれます。

本を使って学習する場合、実践形式で進められる教則本 + 辞書的に使える基本的な内容の教則本を組み合わせれば効率的に学んでいくことができるでしょう。

また現在はインターネット上に良質な学習ページ、記事が揃っていますのでそれらを利用するだけでもプログラミングの技術を身につけることが可能です。

参考までに以前書いたオススメ入門用プログラミング言語の記事を貼っておきます。

https://tisnote.com/programming-ruby/

100%理解しなければならないという考えを捨てる

テキストや学習サイトの1項目1項目、完璧に理解してからでないと次の項目に進まない、というスタイルで学習を進める人が結構います。

プログラミングの学習においてそういった考えは捨てましょう。

学習を進めていく中で、どうしても理解できない部分というのは出てくるものです。

しかしその躓きに執着し、理解できないことで自分には向いていないと感じてしまうことは学習意欲を著しく削いでしまいます。

『クラスとか名前空間とか何のことかよく分からなくて』『例外処理とか意味わからん』などという理由で学習を中断してしまった話はよく聞きます。

それは非常にもったいないことです。自分は仕事としてプログラミングに携わっていますが、理解できない機能や法則なんて未だに山ほどあります。

「今はあんまり理解できないけど、そのうち分かるようになるだろう」

くらいのスタンスで進めていくことが重要です。別の項目で学んだことが躓いていたところのヒントになることもよくあります。

プログラミングに詳しい人と話をするチャンスが巡ってきてその時に解決することもあるでしょう。

鉛筆の持ち方がわからなくても字は書けます。

几帳面な人には難しいかもしれませんが、分からないところは思い切って飛ばす勇気を持ちましょう。

3.インターネット上でとにかく調べる

学習を進める中で分からない用語や処理が出てきた時はガンガンGoogleで調べましょう。

教材の中では具体的に述べられていない項目について、インターネット上には有益な情報が転がっていることはよくあります。

同じく学習を進めている人のブログ記事や、現場で働いているプログラマの備忘録などが思わぬヒントとなることを今まで何度も経験してきました。

プログラマーとして仕事をしていく上で最も奪われると厳しい道具と言われれば、僕はブラウザであると答えます。

プログラミング開発を行っていく上で重要なことは調べることです。

よっぽどの上級プログラマーでもない限り、頭の中に入っていることだけで開発を進めることは難しいです。

そこで求められるのは上手に必要な情報を調べる能力です。

たかが検索、されど検索。検索条件に入力するワードによって求める情報に辿りつけるかどうかが左右されます。

学習の中で調べるスキルを洗練させていけば、いつか実際にプログラミングで何かを作るとき、業務でプログラミングを使用するときに必ず役に立ちます。

どうしても求める情報が見つからないときは質問掲示板、特にプログラミング特化のteratailなどで質問してみるのもアリです。

エンジニア特化型Q&Aサイト【teratail】

まとめ

いかがだったでしょうか。

ここまで述べた心構えはもちろん重要ではありますが、一番大事なのは『プログラミング技術を習得したい』という強い意思です。

何かしらプログラミングを学習しようと思うに至った理由があると思います。

その一番の動機とプログラミング技術を身に付けた後に得られるであろうメリットを、常に意識しながら学習を進めていきましょう。

今回の記事がプログラミングの学習を始めようと思っている人、挫折しかけている人の助けになれば幸いです。

閲覧いただき、ありがとうございました。

よく読まれている記事

エンジニア入門

2018/8/22

現役プログラマがオススメするプログラミングスクール3選

こんにちは、フリーエンジニアのてぃすです。 最近はエンジニアの人手不足による給与向上や、自由度の高い働き方に魅力を感じてエンジニア・プログラマを目指す人が増えてきました。 僕の周囲にもプログラミングを始めたいという人が増えてきて、プログラミングスクールとかたくさんあるけどどれがいいの?という質問を受けることがあります。 せっかくなので実際に現場でWeb開発に携わる立場からプログラミングスクールについて比較しながら調べてみました。 そして実際にエンジニアとして働くために最も充実したサービスを提供しているプロ ...

続きを読む

エンジニア独立

2018/1/2

稼げるエンジニアになるには

最近SNSやブログなどで『優秀なエンジニアとは?』みたいな議論で盛り上がっているのを良く見ます。どのようなことができれば優秀なエンジニアと言えるのか、みたいな。 正直言って僕はエンジニアとして優秀であるか否かについてはさほど興味を持てません。優秀であればその優秀さに伴った報酬を得られる職業であったのなら、僕も素直に優秀さを追い求めていたことでしょう。 しかしプログラマーとして未経験の言語に転身したにも関わらず、収入が2倍以上になった経験からそんな単純な職業ではないことを思い知ってしまいました。 優秀なエン ...

続きを読む

エンジニア独立

2018/8/19

エンジニアがリモートワークをして感動したお話

こんにちは。フリーランスエンジニアのてぃすです。 僕はエンジニアとして活動する中で、メインで参加しているプロジェクト以外にもフルリモートでもう1つのプロジェクトにも参加しています。 今日は実際にリモートワークってどんなもんなのかについてお話していこうと思います。 前置き リモートワークの話題については各種メディア、ブログやSNSでも度々盛り上がっています。 通勤時間の短縮になる 通勤で使う体力を仕事にまわすことができる 家庭の事情などで外で働けない人も活躍することができる などのポジティブな捉え方もあれば ...

続きを読む

エンジニア独立

2018/8/26

文系出身エンジニアが26才でフリーランスになった感想

こんにちは。フリーランスエンジニアのてぃすです。 フリーランスエンジニアということは、つまりエンジニアとして独立しているということになり、すごい敷居が高い印象を持っている人が多いです。 けど僕は文系大学出身かつ、プログラミングも社会人になって一年弱ほど経ってから初めて経験しました。 そんな経験の浅い僕が滞りなくフリーランスエンジニアとして活動して、報酬についてもある程度満足のいく額を得ることができています。 最近はフリーランスという働き方が脚光を浴びてきて、気にはなっている。けどなかなか踏み出す勇気が出な ...

続きを読む

エンジニア入門

2018/8/19

最も効率の良いプログラミング学習フロー

こんにちは、フリーエンジニアのてぃすです。 エンジニアの需要が拡大し、売り手市場となったことから、プログラミングを学習し始めた人、学習してみたいという人がかなり増えてきています。 これからの時代プログラミングを学習することは、豊かな人生を目指す上で非常に強力なスキルとなってきます。 今回はプログラミング初心者の方々に向けて、最も効率的なプログラミングの学習方法を解説していきます。 はじめに この学習フローでは、遊びのメカニズムを利用して進めていきます。 どういうことでしょうか。説明していきます。 遊ぶ感覚 ...

続きを読む

-エンジニア入門

Copyright© TIS ENGINEER NOTE , 2018 All Rights Reserved Powered by AFFINGER5.