今回は技術的なことではなく、Webサービスやアプリを開発していく上で大切な考え方についての話
最近はプログラミングを学習する人が増えていますが、挫折してしまう人も多いです。なぜプログラミングを頑張ってもなかなか身につかないのか?僕の考えを話していきたいと思います。
プログラミング学習が身につかない理由
僕は以前、RubyでWebサービスを作っていて挫折した話をしたと思うんですが、実はそのもっと前にスマホアプリの開発にも挫折したことがあります。
iPhoneのアプリを作りたいと思っていたのでわざわざ5万ぐらいのMacを用意しObjective-Cというプログラミング言語の参考書を買って、一通り参考書通りに機能を作っていました。
そこから少し自分で考えた機能を加えたりデザインをかえたりして作るところまではできるようになっていたと思います。
最初はObjective-C自体がちょっと難しいと感じたところもありましたが、一応ある程度理解できていたし、そのまま続ければアプリのリリースまでいけたのかもしれません。
ではなぜやめてしまったのかというと
端的に言うと作りたいものがなかったからです。
当時僕がスマホアプリを作ろうと思っていたのは、エンジニアとして仕事をもらえるように開発スキルを身に着けたい、そのための学習としてやっていたことでした。
作りたいものがあってそのために技術を勉強するのではなく、ただ技術を身に着けることを目的
に開発をしていたのです。ですがこれは失敗に終わりました。
モチベが続かなかったし、何よりあまり楽しいと感じられなかったことが理由だったと思います。最初はそれなりに頑張っていたけど、仕事が忙しく勉強の時間があまりとれなくなってくると少しずつ意識から抜けていって気づいたら完全に忘れてた・・。という状態です
小学生や中学生だった時に勉強したことを思い出してみて下さい。
思い出せますか?僕は全く思い出せません・・。
なんで思い出せないのかというと、やっぱり生きていく上でそんなに必要にならないことだったからなんだと思います。
ITスキルに関してもそれと同じで、技術自体を勉強してもあまり身にならないのです。
自分が本気で何か作りたいものや成し遂げたいものがあって、どうやってそれを実現するか
を考えた時に必死で調べたことや勉強したこと、これが本当に身になっていくスキルなんだと思っています。
僕はRubyもスマホアプリの開発もなんとなく挫折して、そのあと使いなれていたWordPressで
Webサービスを作り始めたんですがその時は明確に作りたいものがあったので、最終的に完成させることができました。
何かを作りたいという気持ちから始まり、それを実現するために必要なスキルを身につける
ことが重要です。
何を作ったらいいのか?
先ほどWebサービスを作る上で、作りたいものを明確にした上で必要なスキルを身に着けていくことが重要だという話をしました。
ですがここで一つ問題があります。
自分が作りたいWebサービスを作って誰かに使われるのか?ということです
エンジニアにはありがちな考え方かもしれません。自分が作りたいから作る、自分がこうしたいから作る。
ただ単に自分のスキルアップや、転職でアピール材料にするのが目的ならそれもいいと思います。
でもWebサービスを作る以上、やっぱり誰かに使ってほしいですよね?世の中の多くの人に使ってもらいたい、便利だと思ってもらいたい。
僕もWebサービス作りたいなと思った時にはそういう気持ちがありました。
もし、少しでも誰かに使ってもらいたいという気持ちがあるのなら自分が作りたいものを作るだけではダメです。
身近な誰かに聞いてもいいしTwitterで誰かに聞いてみてもいい。とにかく世の中の誰かに需要や問題点があることを確認した上でそれを解決するためにWebサービスを作ること
あるいは今までにない面白いと思ってもらえるかもしれないWebサービスなどが誰かに使ってもらえるサービスだと思います。
まとめると開発者が作りたいものを作るだけではダメということですね。
結局どうやって決めたらいいの?
で、結局どうやって作るサービス決めたらいいの?という話なんですが
端的に言うと
これが良いと思います。僕はいつも何か作ろうと思った時には基本こんな感じで決めています。
加えて、ビジネスとしてWebサービスをやりたい場合はマネタイズ(どのようにサービスで収益を得るのか)も考えておく必要があります。
まとめ
いかがだったでしょうか。
今回はあまりWordPressに関係ない話になってしまいましたが、日ごろ僕がWebサービスを作る上で重要だと思う考え方をお話しました。
あらかじめWebサービスを作る目的を明確にした上で必要なスキルを習得するほうが、長く自分に残るスキルを身に着けることとモチベを維持することに繋がると思います。
これからWebサービス作ろうと思ってる人、プログラミングを頑張ろうと思ってる人
是非本気で作りたいものを見つけて学習を進めていってもらえたらと思います。