プログラミングを勉強してエンジニアになりたいと思うものの、それとは相反して、
「作りたいものが何もない…」
といった悩みを抱えている人は結構多いですよね。僕自身も全く同じで、最初は作りたいものが分からず勉強のモチベーションを保つことに苦労しました。
プログラミングは手を動かして覚えるものなので、ゴールが見えないと進み続けるのは難しいもの。
今回の記事では作りたいものが無いけどプログラミングを学びたい人に向けて、手を動かしつつけるための解決策を共有していこうと思います。
目次
【前提】プログラミングは「作ること」がとっても大事
まず多くの現役エンジニアやプログラマーが声を揃えて言うように、プログラミングを学ぶ上で実際に作ることはとっても大事です。
逆に、入門レベルの教材や本を何度も繰り返したところでなかなか上達には繋がらない上に、多くの人が挫折しがち。それはなぜかと言うと、ただ教材を繰り返しているだけだとただ「暗記」しているだけだからです。
プログラミングの学習は学校でやってきたテスト勉強と異質なもので、意識を変えなければいけません。
もし以下のような学習方法でプログラミンを勉強しているなら一旦ストップ!
✅本やProgateを完璧に覚えようとしている
✅学んだことを見やすくノートにまとめている
✅調べて書くコードではまだまだだと思う
プログラミングは暗記しなくていいんです。カンニングしていいんです。
だから、実装したい機能をネットで調べつつカンニングながらでも成果物を「作る」ことがとっても大切になってきます。いくら暗記したところで実際に白紙のエディターを前にすると何も書けないのがオチです。
プログラミングにおける知識の定着は、
問題にぶち当たる → 調べる → 解決 → 問題にぶち当たる → 調べる → ・・・
ひたすらこのループを繰り返すことでのみ身に付きます。暗記だけではそもそも問題にぶち当たらないので進まないというわけですね。
なのでひたすた手を動かして、アプリなりWebサービスなどを作りながた身体に染み込ませていくことが最も効率よくスキルを身に付けることができるというわけです。
作りながら学ぶことにはメリットがたくさんある
プログラミングの学習を暗記ではなく作りながら学ぶことで得られる恩恵・メリットは非常にたくさんあります。
(1)効率よく学べる(寄り道をしない)
作りながらプログラミングを学ぶことにより、暗記よりも圧倒的に技術を身に付けることができます。
というのも、作るものが決まっていると無駄な寄り道せず作ることに必要な知識だけを吸収していけるからです。習得に時間がかかるプログラミングにおいて、これは非常に大事なこと。
上達に無駄な時間を費やすことなく最短で技術を身に付けるためにも、作りながら学ぶことは必須と言えます。
(2)一度作ったものは応用で幅が広がる
プログラミングで何か成果物を完成させた場合そのコードは自分で持ち続けることができるので、次の作品を作る際に似た機能を実装したい場合に応用を利かせることが可能です。
一度作った機能であればコードをコピペするだけで済んでしまう場合もあります。
つまり、成果物を作れば作るほどその後に作るものが簡単に速く作れるということ。
ただ本を読んだり、Progateなどの教材を繰り返しているだけだとこういった積み上がりがありませんのでいつまでも苦労することになってしまいます。
プログラミングがカンニングOKなので、未来の自分へカンニングペーパーを残す意味でも実際に作り始めてしまうことをおすすめします。
(3)勉強のモチベーションが高まる
手を動かしコードを書けば、書いた分だけ自分の作品が形になっていきます。当たり前のことです。
ですが、この当たり前がプログラミング学習のモチベーション維持に非常に大切で、手を動かした分だけ進歩していることを目で見て確認できることがプログラミングの楽しさを実感させる鍵となります。
ゲームと一緒で、攻略本だけ読んでいても面白くありませんよね。
コントローラーを握り手を動かすことでレベルが上がり、強いボスに勝てるようになり、だからこそ面白いんです。
プログラミングも本を読んでいるだけではレベルアップしません。
コードを書いてものを作りレベルアップしていくのがプログラミングです。
【結論】作りたいものがなければ「マネ」に徹底しよう
ここまでプログラミングは作ることが大事だという話をしてきましたが、作りたいものが無いからこのページを読んでいるのだと思います。
ではどうするべきか?
結論を言ってしまうと、作りたいものが無いのに無理やり考え出すのは非常に難しいのでそんな場合は素直に諦めてとにかく「マネ」に徹底しましょう。
どういうことかと言うと、すでに完成しているWebサービスやアプリを真似して作ってみるということ。
何周も入門レベルの教材を繰り返すより最初はコードの意味が分からなくても成果物を作り出すことの方が大事なので、作り方を解説している教材を利用して同じものを作る練習に取り掛かることをおすすめします。
おすすめは「Udemy(ユーデミー)」を使って自分のポートフォリオとなる成果物を作ってみること。
Udemyとはプログラミングの動画教材サイトで、現役のエンジニアがWebサービスやアプリの作り方をゼロから教えてる動画が揃っています。動画教材は有料ですが、キャンペーン中であれば10時間以上の動画を1,200円~2,000円程度で購入可能です。
もちろん基礎的なことも解説しながら進むので初心者でも安心してOK。
実際に僕自身もUdemyを使ってiOSアプリやWebページ、掲示板などを作ってみましたが、ゴールがハッキリしているので作っているうちにどんどん楽しくなり最初の勉強として最適だと感じました。
一度動画を見ながら作り終えたら、今度は徐々に動画を見ずにチャレンジしてみてください。
これを繰り返していくうちにコードの意味やパターンを自然と覚えていけるので、他のものを作る時に応用できるようになります。
このように、作りたいものが無ければひたすらマネ!マネ!マネ!をしながら手を動かしてプログラミングの知識を得るのはもちろん、楽しさも知っていくことをおすすめします。
やっていると自分で作りたいものが自然と出てくる
誰でも最初は作りたいものがなくモチベーションの維持が難しいですが、上記のように実際に真似しながらでも手を動かしていると自然に「あ、こんなもの作りたいな」という閃きがやってきます。
なぜかというと、それはプログラミングの知識が付くことで、
「何ができて何ができないのか」
「これができるなら応用してあんなこともできそうだな」
ということが分かるようになるからです。
普通のホームページを作りたくなるかもしれませんし、Web上に自分の掲示板を作ってみたくなるかもしれません。
はたまたTwitterなどのSNSで自動で「いいね」するツールを作りたくなるかもしれません。
そうなればプログラミングへのモチベーションや楽しさは爆発的に増加しますので、まずはとにかく『手を動かして何でもいいから作ってみる』この意識で成果物作成に取り掛かってみましょう。
作りたいものが何もないという最初のハードルを突破してしまえば、あとはゲーム感覚で自分の作りたいものを作っていけばOKです。
【継続が命】作り始めると楽しくて急速に上達可能
たとえ完成品のマネだとしても、実際に作り始めるとどんどん楽しくなってきて気づいたら没頭してコードを書いていた。なんて日が訪れます。
こうなったらもう勝ちでプログラミングスキルは急速に上達可能。
逆に言えば、作り始めてもなおプログラミングが退屈でエディターすら開きたくないという拒否反応が出るのであればプログラミングは向いていないと判断することもできます。
多くの人が言うようにプログラミングは継続が命で僕自身も100%同感。なので一刻も速く”楽しい”フェーズに移行することが理想です。そのためには「作る」ことが必要不可欠。
本ばかり読んでプログラミングに飽きる前に、手を動かして何でも良いので作り始めることをおすすめします。
繰り返しになりますが最初はUdemyを使って成果物を作るのが手っ取り早いです。
【まとめ】作りたいものがないなら真似すればOK!
今回はプログラミングを勉強し始めた時に誰でもぶち当たる壁【作りたいものがない問題】について解決策をお話してきました。
作りたいものがないなら最初は『真似して作る』を徹底すればOK。
作り方が公開されているアプリやツール、Webページをとにかく真似して作ることがプログラミングのスタートです。
もちろん本や学習サイトで勉強することも最初は悪くはないのですが、ある程度基礎を固めたらどんどん作ることにシフトして手を動かすことに専念しましょう。
作りたいものがない人はUdemyをとにかく真似して、アプリやWebページを作ってしまうことをおすすめします