プログラミングの学習があるレベルまで進むと「プログラミングで作りたいものが無い」という悩みにつき当たります。
「作りたいものが無い」と感じることは、「Progateやドットインストールを教科書通りに進めるだけでは物足りない」とレベルに到達している裏返しでもあります。
このように、物足りないと感じるところまで来たら、基本が身についたレベルであると言えるでしょう。同時に、さらに上のレベルに挑戦したいという気持ちも湧き上がってきており、モチベーションが高い状態になっています。
しかし、基本から先の教材として「何が良いか?」とGoogleで検索しても、なかなか良い答えに行き着くことはないかもしれません。とはいえ、何かを作りたい
一番良いのはポートフォリオを作り始めることですが、はじめてだと少しハードルが高いと感じる人も多いです。
そこで、今回は「プログラミングで作りたいものが無い」ときに何を作れば良いか、を説明したいと思います。
もくじ
チュートリアルをやる
いちばんお手軽なのはチュートリアルをやることです。
例えば、ブログを作る、簡単なECサイトを作る、簡単なSNSを作るなど、様々なチュートリアルがネット上には存在します。
こういったチュートリアルをこなすことで、より実践的な言語の使い方が理解できますし、少しカスタマイズすればポートフォリオとして使うことも可能です。
公式のチュートリアル
何と言っても、公式のチュートリアルがいちばん安心して使えますね。
ただし、モノによってはあまりチュートリアルが充実していないケースもあります。
そういった場合は、別途動画を見たり、書籍を買ったりして補えば大丈夫です。
ドットインストールを利用する
ドットインストールには、いくつかチュートリアルのようなものが存在します。
例えば、
- PHPで投票システムを作ろう
- Javascriptでキャラ診断を行おう
この他にも様々なチュートリアルがあり、すべて合わせると71個もあります(2019年2月1日時点)。
Udemyを利用する
Udemyのプログラミング講座には、クローンプロジェクトという「既存のサービスを簡素化したものをゼロから作成する」というチュートリアルが存在します。
以下の例はPHPのみですが、他の言語やフレームワークのものの多々あります。
Make a YouTube Clone from Scratch: JavaScript PHP and MySQL
解説は英語になる場合がほとんどですが、かなり実践的な内容になるので、基本から一歩踏み出したいという方には非常におススメです。
サービスやプロダクトを作るタイプの本を買う
本を買って勉強するのも有効な手段です。
大き目のサービスか、小さなサービスを何個か作るパターンが本には多いので、一つの言語をしっかり学びたいときには効率の良い方法です。
PHPだと、松浦 健一郎(著)「ゆきのおもしろまじめなチャットボットをつくろう」の本が面白かったです。
本屋に行ったり、Amazonで検索をかけると色々出てくるので、暇なときに探してみるのも面白いですよ。
すでにあるものを真似て作る
プログラムの世界には車輪の再発明という言葉があります。
「誰かすごい人が作ったプログラムを理解しながら自分で書いてみる行為はとても勉強になる」という意味です。
つまるところ、誰かが作ったものを真似ることは上達の近道になるという話ですね。
Qiitaを検索してみる
Qiitaには、エンジニアさんが記事した記事がたくさん存在します。
その中でもよく見るのは、「初心者」や「やってみた」という単語を含んだ記事です。
とくに「はじめて●●を触ってみた」といったタイプの記事は、投稿者がやったことを丁寧に書かれていることが多いため、チュートリアルのように利用することができます。
以前作ったサンプルアプリを改造する
過去に自分が作ったプログラムを残しているなら、見直してみるも勉強になります。
例えば、数か月前に自分が作ったプログラムを見直してみると、あまりの出来のヒドさに呆れた経験はないですか?それはあなたが成長した証拠です。
改良アイデアを使って、より良いプログラムに改良するのは良い勉強方法です。ちなみに、既存のコードを改善することを「リファクタリング」と呼びます。
真似て作ったものの中で何か応用できないか探してみる
もし、すでにいくつかのチュートリアルを終えているのであれば、プログラムの実装方法の知見が溜まっているはずです。
それらの知識の中から、昔書いたプログラムを改良できそうなアイデアがないか、考えてみるのも面白いですよ。
改造はほんの少しでもOK
いざ改造しようとすると、広大なプランを頭に描いてしまう人をよく見かけます。
「機能Aを直したいけど、それを直すとなると機能Aの元にあたる機能Zを直さないと・・・それから関連している機能Bも・・・」といった感じです。
上のように、あらゆる機能を完璧に修正すべきと考えることは大事です。とはいえ、それを実際の行動に移すのは、少し立ち止まって考えるべきでしょう。
時間は有限です。
プログラムの勉強に使う時間は限られていますし、修正にかかる時間が膨大になればなるほど、途中で投げ出したくなります。
修正アイデアは1つだけに絞って修正をかけるくらいが、ちょうど良いバランス感覚です。
もっと良い書き方が思いついたら、さらに修正してみる
勉強を進めていけば、どんどん新しいアイデアが浮かんで来るようになります。
そのアイデアをどこかに書き留めておけば、過去に作ったプログラムを修正したり、新しいサービスを作成するときに役立ちます。
ポートフォリオの一部を作ってみる
チュートリアルがだんだん飽きてきたら、ポートフォリオの作成に取り掛かる時期に差し掛かっていると考えて良いです。
ここで大事なのは、壮大なポートフォリオを作らないことです。
ポートフォリオとは、今のあなたができることを相手に伝えるものです。
そのため、完璧なポートフォリオを作ろうとすれば、永遠に完成しません。
自分が習得している技術は何があるか?をリストアップして、技術を相手にどう見せるかを考えたほうがうまくいきます。
就職でもフリーランスでも、ポートフォリオは必要
プログラミング言語の学習を行っているのであれば、遅かれ早かれポートフォリオを作成する必要性に駆られます。
企業に就職するにしろ、フリーランスでやっていくにしろ、相手に自分の実力を示すためにはポートフォリオを見せるのが一番早いからです。
すべてを一気に作るよりも、一部だけ作ってみる
ポートフォリオを作るのは、時間がかかります。
今まで作ったプログラムは自分が使うだけの練習用でしたが、ポートフォリオは他人に見せる製品になります。
ですので、つい良く見せようと張り切るのですが、張り切りすぎるとやることが多くなりすぎて大変です。
そこでおススメなのが、作りたい機能をすべてリスト化し、その中で「面接相手に見せたいもの」だけを選び、それらを1つずつ順番に作る方法です。
一部を組み合わせて、ポートフォリオを完成させる
上の方法でリスト化した機能を、時間があるときに順次仕上げていきます。
そうすると、ポートフォリオの核になる機能が自然に揃い、ポートフォリオの完成までこぎ着けれます。
また、ポートフォリオは複数ある方がアピールになります。1つだけでも良いですが、数が多いほど、より強い実績になります。
まとめ
プログラミングを学び終わったあとは、作りたいもの、作るべきものを考える機会が増えます。
チュートリアルやポートフォリオを作るのも大事ですが、ベストは自分の作りたいものがある状態でしょう。
なので、日頃からアイデアを出す習慣をつける必要性が何処かで出てきます。
最近はフリーランス案件でお金を稼ぐ人が多いですが、個人サービス開発だけで生活をしている人もいます。
自分でサービス運営して、自動でお金が入ってくる仕組みを作りを考えてみるのも面白いですよ。
うまくいっている人は月に10万円以上稼いでいるので、サイドビジネスとして検討してみる価値はありますね。