「学生の内からプログラミングを学んで起業したい」
「プログラミングでの起業で何ができるのかな?」
「プログラミングってどうやって学んだらいいんだろう?」
プログラミングでの起業に興味があるけど、何から始めていいかわからずに困っていませんか?
2000年代から急速にIT化が進み、技術の向上が加速度的に進んでいる現代では、プログラミングを学ぶ人がだんだん増えてきています。
2020年度からは全国の小中学校でプログラミングが必修化されるなどの動きもあり、世の中のエンジニア需要はこれからもどんどん高まっていくでしょうし、
将来プログラミングを学生のうちに学んでおくのはどんな業界で起業するにしても決して損ではありません。
この記事では実際に学生時代からプログラミングを学び起業を経験し、現在はフリーランスとして働いている筆者も実際に通ってきた、プログラミングの起業までの道のりや学習の際に気を付けたことがいいことなど、
プログラミングで起業したい人がいますぐ学び始められるようなアクションプランまで紹介します。
「プログラミングって難しいんじゃないの?」
「自分には無理だよ」
私も学び始める前はそう思っていました。
しかし、現在こうしてエンジニアになってから思ったことは「まず、行動してよかった・・・」ということです。
(なお、筆者は当時はガチガチの文系でブラインドタッチもイマイチなザコ雑魚学生でした。)
この記事を読んでぜひプログラミングに触れ始めてみてください!
目次
そもそもプログラミングでは何ができるのか
そもそもプログラミングでは何ができるのでしょうか?
「なんとなく凄そう・・・」という印象のままプログラミングを学ぼうとしている人も多いのではないかと思います。なので、ここで軽くプログラミングについて解説します。
プログラミングでできることは大きく分けて4つの種類に分かれます。
一番身近なのはWebサイトやサービス開発です。
皆さんが普段Googleなどで検索し閲覧しているのがまさにWebページですし(このページももちろんそうです)、Youtubeなどのサービスもこれにあたります。
他にも物流管理システムやVR/ARの開発など一度は聞いたことのあるような仕組みは全てエンジニアが打ち込んだプログラムで動いています。
これからの時代はプログラミングの力なしでは生きていけないと言えるでしょう。
ではなぜ、学生起業家がそのようなテクノロジーを学ぶ必要があるのでしょうか?
確かに、システムやWebサービスの開発が必要になった際にはそれができる人に外注という形で依頼するのが一般的です。
しかし、起業家自身がプログラミングを学ぶことにはいくつものメリットがあります。
次の章から具体的に触れていきます。
学生起業家がプログラミングを学ぶべき5つの理由
先ほども申し上げましたが、どの業界や分野で起業するにせよプログラミングを学んでおくことは決して損ではありません。
むしろ、学生起業家は全員プログラミングを学んだほうがいい!と言っても過言ではないほど、プログラミングの重要度はぐんぐん上がっています。
もはやプログラミングは必須科目にしてもいいかもしれません。
なぜこれほどまでに私がプログラミングの学習を推すのか?そこには5つの理由があります。
私がエンジニアとして学び始めた時点ではこんなにもメリットがあるなんて正直思いませんでした。
この章では私がエンジニアとして仕事をする中で感じたプログラミングをオススメする理由について一つずつ深掘りしていきます!
プログラミングというスキルだけでコストの低い事業が成り立つので起業のハードルが下がる
まず一つ目の理由はプログラミングというスキルだけでコストの低い事業が成り立つので企業のハードルが下がるからです。
学生での起業となるとどうしても一番考えないといけないのは「金銭的コスト」です。ここを甘くみているとあっという間に起業は失敗します。
・なるべく初期コストを抑えるために店舗を構えたくない
・なるべく人件費を抑えて少人数でもできる事業で起業したい
・小規模でもいいから短期間かつスピード感を持って起業したい
よくあるこれらの悩みは全てプログラミングを学べば解決します。
なぜならプログラミングによる起業は全て「インターネット上で完結する」ことだからです。
店舗型のビジネスのように直接在庫を手元に持つ必要はないです。
必ずしも複数人で運営する必要もありません。
自作システムや既存のシステムを作成/カスタマイズすれば極端にいうと、いますぐにでも起業することが可能なのです。
例えば以下のようなサービスがあります。
ColormeShop -> プログラミングの知識なしでも簡単にネットショップを作成することができる
Wix -> 誰でも簡単にHPを作成することができます。
formrun ->簡単にオシャレなお問い合わせページが作れる。システムと結び付けられ,管理も簡単
2000~2010年頃まではインターネットの黎明期でまだプログラミングも発展途上にありましたが、技術が進歩してきた現在では、誰でも比較的簡単にプログラミングに触れることができます。
また、それを利用して主婦や学生でもECショッピングや自社Webサイトでの販売などの事業を立ち上げている人も少なくありません。
もはや副業という小さい形だとしても誰でもプログラミングでの起業は可能になっているのです。
これらのすぐ利用できるサービスと自分のやりたいことを掛け合わせれば、コストを最低限に抑えつつ起業できるので、起業するハードルはグンと小さくなります。
なので学生だからこそいますぐプログラミングを学んで、どんな形態でもいいので起業してみることを強くお勧めします。
人件費が下げられ、コスト削減につながる
2つ目の理由は、人件費が下げられ、コスト削減につながるからです。
なぜなら、プログラミングで作った仕組みそのものが「労働力」として機能してくれるからです。
例えばあなたが自社商品のWebサイトを作ったとしましょう。
それらをSNSなどで拡散すればその発信活動自体が(少し押しは弱いですが)営業活動になります。
直接の営業であればリーチできなかった人に対してもインターネット上で仕組みを作ることでアプローチできますし、無理に人を雇う必要はありません。
試しに営業マン1人の月収を30万円、3人の営業マンを雇用して営業をする場合と、Webサイトを作成して営業を行う場合では1ヶ月あたりの支出はどれほど違うのでしょうか?
結果は下記のグラフの通りです。
どちらの方が支出が多いかは一目瞭然かと思います。
しかも、人件費は毎月発生しますが、Webサイトは一度作れば費用は発生しないので、実際にはさらにコストカットできます。
プログラミングを学ぶことは、2本しかない自分の手の本数を増やしていくのをイメージしてもらうとわかりやすいかもしれません。
本来複数人の力を借りて数押しで進めていたことをプログラミングを使って効率よく進めていくことで金銭的なコストをだいぶカットすることができるのです。
私自身や私の友人もそうだったのですが、起業をしようと思った時には周りに仲間はいませんでした。
起業の際によく聞くのが「価値観の違い」による事業崩壊だったので、それを恐れてひとりでの事業開始を思い立っち実行しました。
正直、ひとりで起業するのは現実的に厳しかったです。
やることも多かったですしとても一人では手が回らないし、全てを自分でやっていたらお金ばかりが出ていく・・・。
さらにそれで体調まで崩してしまった日にはもう大変で、咳をしながら仕事をしていました。休んでも地獄、休まなくても地獄の状態でもうどうしようもない状態でした。
今思うとよくあの状況でやっていけていたな、と思います。
実はそんな私や友人を解決してくれたのがプログラミングの力でした。
自分のサイトやシステムなどを作成し営業や集客販売を自分の代わりにやってくれるような半自動化の仕組みを構築することで一人でも簡単に(それなりの苦労はしましたが・・・)起業することができました。
あそこで人を増やして固定費を上げていたらきっと赤字になって崩壊していたと思っています。
このように、固定費を下げて起業失敗のリスクを下げるためにもプログラミングを学んでおくことをオススメします。
アイデアの創造や開発をイメージしやすくなる
3つ目の理由はアイデアの創造や開発をイメージしやすくなるから、です。
学生起業の際によくある「アイデアが思いつかない・・・」という悩み。経験値も社会人の経験がないうちはどうしても0からアイデアを考えるのに苦労すると思います。
しかし、これはプログラミングの知識があるかないかで解決までの時間が大きく変化します。
なぜなら、プログラミングを学ぶことで「できるかもしれない」という見通しが立ちやすくなるからです。
自分が「やりたい」と思ったことに向けて踏み出しやすくなるのです。IT技術に触れているか触れていないかでその価値観や感覚というものは全然違います。
・AIやIoTなどの現代のトレンドとなっているサービスの使われ方
・現代のアプリがどう作られており、どう応用できるのか
・デジタルマーケティングをうまく利用し、事業展開できないか
プログラミングを理解しているだけでこうしたIT技術の利用したものに対する抵抗感を減りますし、自分がやりたいことの実現のために役立てることも可能になってくるでしょう。
実際に自分が開発をするわけでなくてもこの辺りの知識を持っているだけで事業の見通しが全然違います。
例えば、一見複雑に見える「Twitter」などのサービスも簡単に分けると会員登録機能+掲示板的機能にリプライやいいね機能などを組み合わせただけの比較的シンプルなアプリです。
ここに何か一つ独自の観点を加えるだけで新しいサービスができる・・・
この「何か」というのはもちろん考える必要はありますが、これだけでだいぶハードルが下がったような気がしませんか?
少なくとも0から考えるよりは考えやすくなると思います。
以上のように物事を見る視点を増やすことでアイデアの創造や開発をイメージしやすくなることが理由の一つとして挙げられます。
クリエイターと仕事をする時のコミュニケーションが円滑になる
4つ目の理由はクリエイターと仕事をする時にコミュニケーションが円滑になるからです。
これも先ほどと似たようなことなのですが、自分自身がエンジニアなどのクリエイターとしての視点を持っていると、指示が具体的になったり、認識のズレをなくしたりできます。
なので、外注や発注の際にスムーズに仕事を進行できます。クリエイターとしても具体的な指示を受け取ることができるので、より相手によりそった制作をすることができるようになるのです。
また、実装可能か不可能かの判断もつきやすくなるので、クリエイターとの無駄なやり取りを減らし、時間の削減をすることも可能です。
よくあるのが、経営者の頭の中とクリエイターの頭の中で考えていることが異なっており、経営者の指示がうまく実装されないケースです。
私もエンジニア初期の頃は相手方の求めるものと自分の中のイメージが一致せず、うまく納品物を作れないことがありました。
まさに先の見えない暗闇を走っているような気分で、自分自身ももどかしかったし、先方にも申し訳なかったと思います。
その点、起業家自身がプログラミングを学んでいたらこの点は解消できます。
具体的な指示に加え、自分のイメージを簡単なプロトタイプとして作成することも可能になりますし、より事業の全体像も見えやすくなります。
クリエイターとスムーズにコミュニケーションを取るためにも、起業家はプログラミングを学んでおく必要があると思います。
有名な起業家の多くも学生のうちにプログラミングを学んでいる
5つ目の理由は有名な起業家の多くも学生のうちにプログラミングを学んでいるからです。
現在世の中にある様々なWebサービス。これらを開発した人の多くも実は、学生時代からプログラミングを学んでいたという人が非常に多いです。
・株式会社Progate 創業者 加藤將倫さん
・Facebook創業者 マーク・ザッカーバーグ氏
・株式会社ライブドア創業者 堀江貴文氏
代表的な人としては以上のような人が挙げられます。
とはいえ、皆もちろん最初からプログラミングができていたわけでも、天性の才能があったわけでもありません。
皆、0からプログラミングを学習し、サービスを作り上げてきました。
私が、どうしても忘れられないエピソードが一つあります。
堀江さんの有名なエピソードとしてAppleのサイト制作を受注し、その後書店でプログラミングの本を購入し、学びながら制作を進め、納品したというものがあります。
しかも当時はプログラミングの学習サイトなどありませんので本当に書籍だけでの独学だったということです。
現代でプログラミングを学んだ私としては、このエピソードに強く驚愕しました。
堀江さんの度胸にも驚きましたが、一学生でもプログラミングのスキルさえあればどんな場所にでもアプローチできる。
今までになかったものを自分の力で作り上げることができる!そう感じたのです。
何が言いたいかというと、プログラミングを学ぶと新しい価値観を得られるということです。
有名な起業家はもちろん彼らの圧倒的努力があったのは事実だと思います。
しかし、プログラミングを学び、知見を広げたことも間違いなく起業成功の要因の一つです。
これは実際にプログラミングを学んで見ないと分からない点だとは思うので、実際に自分の手を動かしながら学んでみることを強くオススメします。
学生起業家がプログラミングで起業した事例
とはいえ、学生のうちに起業するイメージがあまり湧いていない人も多いと思います。
この章では、実際にWebエンジニアとして活動している筆者が今まで目にしてきた学生起業家のうち、
プログラミングを使ってIT起業に漕ぎ着けた例を3つご紹介します!
(プライバシー保護のため個人名は控えさせていただきます。)
成功のポイントや実際の収益など赤裸々な部分まで踏み込んでいくので是非自分の起業の参考にしてくださいね!
オリジナルでアプリを開発して、アプリ開発会社を設立した事例
始めに紹介するのは私の友人の事例です。(名前を仮にYくんとします。)オリジナルアプリの開発からはじめ、アプリケーションの起業に至りました。
もともとY君自身は文系でプログラミングも独学で始めたのですが、RubyやPythonなど様々な言語を学びながら、AIと音楽を掛け合わせて自動で作曲を行うアプリケーションを友人とともに立ち上げました。
しかも、このアプリは1週間で立ち上げたらしいです。
通常アプリの開発は、簡単なショッピング系のものや検索ツールだと3ヶ月ほどですし、長いものだと半年や1年でかかるものもあります。
それを1週間で仕上げてしまうのはかなり凄いです。
リリース後、数度のアップデートも繰り返しながらダウンロード数が3万ほどを越してからK君はアプリケーション開発会社の起業を決意し、
他会社からの開発受託事業や音楽方面のオリジナルアプリの開発事業を開始しました。
現在ではAR/VR事業の展開も見越しているとのことです。
◇成功のポイント◇
・オリジナルアプリを短い期間で開発し、世の中に出したこと
・自分が作りたいものをはっきりさせたこと
・時間という学生の利点を目一杯生かせたこと
Y君が成功したポイントはこの3つです。
自分の作りたいものをはっきりとさせ、小規模でも短期間で仕上げてリリースしたこと。
これによって自分でもできる、と自信が生まれ、起業に結びつきました。
さらに、Y君は学習の合間合間に他のWebエンジニアに会いにいく時間を作っていたそうです。
社会人だとなかなか忙しくて人脈や仲間を作る時間は作りにくいのでこれは学生である自分の身分をうまく生かした例だと言えるでしょう。
プログラミング学習のロードマップを作り、スクールを設立した事例
次に紹介するのは私が過去に一緒に仕事をしたことのあるKさんの事例をご紹介します。
Kさんは大学3回生の頃からプログラミングスクールに通いながらプログラミングを学習し、HPなどの制作を請けおうエンジニアとして活動し始めました。
その中で、過去にスクールで出会った仲間と自分たちのオリジナルのスクールを立ち上げることを思いつき、プログラミングスクールを立ち上げるに至りました。
K君が今まで請け負っていた制作案件も会社の事業として確立し、Web制作会社としても事業展開しています。
世の中にはプログラミングスクールはたくさんあるのですが、K君たちは特に対象者を狭い範囲に絞ったことでプログラミング市場の中でもポジションを確立していくことができたそうです。
実際のカリキュラムで使われているロードマップを私も見たことがあるのですが、小学生でもわかりやすいほど作り込まれていて舌を巻いてしまいました笑
◇成功のポイント◇
・起業前からプログラミングで仕事をしていたこと
・既存の事業をベースにニーズをずらして起業したこと
・完成度7割で起業に踏み出したこと
K君が成功したポイントはこの3つです。
K君自身が起業前にエンジニアとして活動していた経験があったため、自分やIT未経験者が何に悩んでおり、どう解決すべきかのノウハウを体験談として持っていました。
なので、過去に自分が受けたプログラミングスクールのモデルを参考にしつつ、わずかにオリジナリティを加えるだけででスムーズに起業することができたのです。
また、起業当時はサービス体制が完璧に立ち上がっていたわけではなく、手探りで未完成なまま事業を開始しました。
当時の給料はほぼゼロに近かったとのことです。(笑い事ではありませんが・・・)
しかし、プログラミングと同じでまずは世の中にリリースしてから徐々に改善を加えていく。
この姿勢を貫き、短時間での起業に成功しました。
個人事業主として起業し、Webエンジニアになった事例
最後に紹介するのはこの記事を執筆している筆者の事例です。
私はKさんと同じように、大学3年生の頃からプログラミングスクールに通いながらプログラミングを学習し、Webシステム会社でのインターンの後にWeb制作と開発事業の展開をし、個人事業主として起業するに至りました。
現在ではWeb制作やシステムの受託開発の仕事を請け負いながらライターとしても活動し、事業の幅を広げています。
時には他のエンジニアとチームを組んで大きな開発プロジェクトに参画したり、事業の手伝いをさせていただくこともあります。
サービス開発機関は0日です。
というのも、私の事業の内容は自分自身を商品として売り出し、自らのスキルでシステム構築・開発を行うものだからです。
それ以前の学習で事業を進めるためのスキルは獲得していたため、個人事業家になるための手続きを終えたその日から事業を開始しました。
とはいえ、他の事例とは違い、実は起業に踏み出すまでに1年ほどかかってしまっています。
これは一重に私自身が起業への勇気を一歩踏み出せなかったからで、今ではもう少し早く決断しておけばよかったと後悔しています。
学生である時間は限られていますので早めに挑戦してみることを強くオススメします!
◇成功のポイント◇
・失敗を恐れず、とにかく行動した
・すべての行動の責任を自分で請け負った
・できないことに挑戦し、キャパシティを広げていった
私のように活動を続けられエンジニアがいる一方で、挫折したり失敗する人が多いのも事実です。
成功できたポイントは上記の3つです。
学生の多くは生活の一部を両親に負担してもらっており、社会経験も浅いです。
しかし、起業することで社会の厳しさや自分の甘さなどに徹底的に向き合わなくてはなりません。
私の場合は経験不足をとにかく行動力でカバーし、できないこともなんとかできるように努力し積み上げを続けていった結果、挫折せずに事業を軌道に乗せることができました。
学生起業家が0からプログラミングで起業する手順
では、実際にプログラミングで起業するにはどうしたら良いのでしょうか?
起業までには大きく分けて4ステップに分かれます。
順番に解説していきます。
プログラミングの基本に触れる
最初は「プログラミング」というものがどういうものなのか、イメージしにくいと思います。
自分がプログラミングに向いているかどうかを判断するには実際にコードを書いてみるのが一番です。
基礎に触れる手段としては以下のようなWeb学習サービスがあります。
もはや定番中の定番ともいえる2つです。僕の知り合いのエンジニアの99%がここから学習を始めています。
パソコン一つあるだけで無料かつ簡単に登録・プログラミング体験をすることができます!
Progate
Progateは世界規模で100万人が利用するプログラミング学習サイトです。
多くの人に親しまれている理由は3つあります。
・イラストを使用した優しい解説で拒絶感を抱きにくい
・画面にコードを打ったらすぐに反映されるのでテンポよく学習できる
・指示書やヒントなどがたくさんあり、初学者でも何をしたらいいかで困らない
とにかくスピード感を持っていますぐにプログラミングに触れ始めたい!という人にはオススメです。
有料コースと無料コースに分かれてはいるのですが、基礎を学んで適正を見極めるくらいであれば無料の範囲を学ぶだけで十分です。
特に人気なのが「HTML/CSS」コースです。ここから始めれば間違い無いのでこの記事を読んだらいますぐに体験してみましょう!
興味があれば有料コースも月額1080円(税込)で申し込みできるので追加で学習してみてください!
ドットインストール
ドットインストールは3分ほどの動画授業でプログラミングを学習できるサイトです。
ドットインストールが人気の理由は以下の3つです。
・動画を使った丁寧な解説で、細かいところでもつまづきにくい
・1セクションが3分なのでサクサク学習できる
・必要なものの準備から環境の構築まで全て教えてくれる
基礎に触れつつ、その後の開発も見越して学習したい!という人にオススメです。
Progateと比べて無料でも学べるコンテンツの量が圧倒的に多いため、自らの目的にあった最適な学習方法を選択できます。
基礎学習だけでなく、動画を見ながら簡単なサービス作りも学べるので、起業する上でのイメージがより付きやすくなります。
こちらも基礎を学んで適正を見極めるくらいであれば無料で「HTML/CSS」を学び始めることをオススメします。
余裕があれば他の言語の動画をチラッと覗き見してみてもいいかもしれません。
同じく、興味があれば有料コースも月額1080円(税込)で申し込みできるので追加で学習してみてください!
ここまで、2つのWebサービスについて解説してきました。
よくありがちなのが、パソコンとコード入力画面(いわゆる真っ黒な画面です)をみるだけで「もういいや・・・」と辞めてしまうケースです。
プログラミングへの固定観念に縛られてやる前から諦めてしまうのはすごくもったいないです。
実際自分も最初はプログラミングに対してそこまでいい印象は持っていなかったのですが、学び始めるうちに本当に何もない0から作品をうみだすプログラミングという仕事にのめり込んで行きました。
学び始めた当初はそれこそ1日の半分以上をプログラミングに費やしていたこともありました。
なので実際にプログラミングの基本に触れて感覚を掴むことの方が大切です。
自分に適性があるかはそれから判断しても遅くありません。
この段階で「自分でも学べそうだな」「何となく頑張っていけそう」という見通しが立てば起業への一歩を踏みだしたと言えるでしょう。
自分が将来的にやってみたいサービスを作る言語を学ぶ
プログラミングの基礎に触れて何となくいけそうだな、とイメージできたら次のステップです。
2番目は自分が将来的にやってみたいサービスを作る言語を学んでいきましょう。
「え!いきなり!?」と思われたかもしれませんが、やはり学生起業はスピードが一つの大切な要素となってくるので、HTML/CSSなどの基礎学習は進めつつ、目的にあった言語を選ぶのが最短です。
具体的な目的にあった言語の選び方については後ほど解説します。
学習方法としては2つの選択肢があります。
・本や学習サービスを利用して独学で学ぶ
・プログラミングスクールに通う
本や学習サービスを利用して独学で学ぶ
先程のWebサービスを使って学習を進めたり技術書を買ってさらに知識を深めていく方法です。
一昔前はどの情報も英語で書かれており、プログラミングを学ぶ際には同時に英語の勉強をする必要がありました。
しかし、現在では情報量が格段に増え、日本語の書籍や動画も多く公開されています。
なのでそれらを利用して自分のできることを増やしていくのは十分可能です。
試しに「PHP」と検索すると以下の結果になりました。
動画コンテンツはどれも日本語ですし、出てきた情報は全て日本語で記述されています。
他の言語名で検索しても同じように日本語で書かれた物ばかりが検索の上位に上がってきています。
このように様々な情報を活用すれば簡単にスキルを高めることができます。
独学で学習することのメリットとデメリットは以下の通りです。
自分のペースで好きな時間に学習出来る一方で、つまづいたときに解決するのが難しいという側面もあります。
とはいえ、最近は「Qiita」や「Telatail」のようなエンジニア向けの質問サイトも多くあります。
他にも定期的にエンジニア同士が集まる作業会なども全国で開催されていますので、そちらに顔を出して他のエンジニアとのつながりを作ることも容易です。
余計なことは学ばず、自分の作りたいものに一直線に進んでいきたい人はこちらの道を取るのが良いでしょう。
プログラミングスクールに通う
とはいえ、やはりひとりで学ぶが不安な人もいると思います。
そんな人は学習をサポートしてくれるプログラミングスクールを利用するのが一番です。
スクールを利用すれば自分で書籍や学習サイトを選ぶ手間も省けるためすぐに学習を開始できます。
他にも以下のようなメリットやデメリットがあります。
世の中には様々なスクールがありますが、個人的にオススメするのは「TechAcademy」です。
様々なコースに分かれており、複数のコースを並行して学ぶことができるので、短期間で自分に必要な分野だけでも高いスキルを身につけることができます。
しかも多くのスクールでは一人ひとりにメンターがつき、オリジナルサービスの制作を監修してくれるので、この後紹介するステップを進める上でもスクールは多いに役立ちます。
とにかくつまづきを少なくスムーズに学習を進めたい方はプログラミングスクールに通うのがオススメです。
自分で実際に小さな作品やサービスを作ってみる
基礎学習を終了した後は実際に何か小さな作品やサービスを作ってみましょう。
なぜなら、文法や簡単な技術を学ぶのと、実際に0から、あるいは既存のサービスをカスタマイズして作品を作るのでは感覚が全然異なるからです。
プログラミングもスポーツと同じで理論だけ頭で理解していても必ずしもそれらを活用できるかといわれるとそうではありません。
実際に考えながら自分の技術で作品を作って初めて「何ができて何ができないか」がはっきりしてきます。
私が初めて自分でゼロから作ったのは自分専用のWebサイトでした。
「簡単にできるだろ!」と思っていたのですが、自分の頭で構成を考えて制作し、エラーも修正するのには思わぬ苦労もあり、いかに自分が理解したつもりになっていたかを痛感しました。
サービスを作る方法としては2つの方法があります。
・完全オリジナルで作る -> 自分で企画設計まで全てをこなす
・既存のシステムをカスタムする -> 既にあるサービスやシステムに自分なりのカスタマイズを加え制作する
私がオススメするのは後者の方法です。
本やWeb学習サービスでサンプル公開されているコードを真似してサービスやアプリを実装しつつ、自分なりの機能を1つ2つ付け加えてみましょう。
例えば、先ほどお伝えした「Qiita」というサイトで「作ってみた」と検索すると過去にエンジニアがサンプルで作ったWebサービスやアプリケーションをたくさん見つけることができます。
自分で面白そう!と思うものを見つけて自分でもそれを再現してみてください!
サービスの拡大・新しい作品を開発で事業を作る
ここまでのステップで、自分でサービスや開発をする流れがある程度掴めたと思います。
最後のステップは「サービスの拡大・新しい作品を開発する」ことです。
自分のスキルを使って実現したいことや、既存のシステムに足りない部分の開発などを企画し、設計し、開発する。
これまで学んできたことと基本的な流れは同じです。
プログラミングを学び作品を作る上で大切なのは「とにかく小さく始める」ことです。
特に学生起業のように「低コストハイスピード」での起業を実現するのであれば、最初から複雑な機能のついた作品を開発する必要はありません。
さらに、事業拡大の過程で当初はなかったアイデアを思いつくこともあり得ます。
例えば、決済サービスとして有名な「BASE」も当初は「ショッピングカート機能」のみでのリリースでした。
しかし、大手の銀行や決済会社との契約を経て現在では何百万ダウンロードもされている人気のアプリになっています。
最初から規模の大きいアイデアを考える必要はありません。
最低限の機能を持ったサービスや作品をリリースし、徐々にアップデートを繰り返しながら事業を作り上げていきましょう。
学生起業家がプログラミングを学ぶ際に気をつけるべきたった5つのこと
ここまで、学習の手順について解説してきましたが、学生がプログラミングを学習し始める際にもいくつか注意点があります。
プログラミングを学意欲の高い人ほど陥りやすい点を5つ紹介します。
これらは何を隠そう私自身もしてしまったミスでもあります。実際の体験談も交えて深掘りしていこうと思います。
「自分だけは絶対にこんなことしない!」なんて思う人ほどこれらのミスをしがちです。じっくり見ていきましょう!
長い時間をかけて学ぼうとすること
1つ目の注意点は、長い時間をかけてプログラミングを学ぼうとすることです。
なぜなら大学生は社会人に比べて比較的起業のための時間を取りやすい傾向にあるからです。
プログラミングの世界を突き詰めようとするとキリがなく、学ぼうとすればいくらでも学べてしまいます。
言語一つとっても深いですし、そのような言語が何十種類もあるのです。
しかも、技術は日々進化し続けているので、3ヶ月前の技術がもう役に立たない・・・なんてこともザラにあります。
それだけの情報量なので全てを網羅することは不可能に近いですし、少なくとも在学中では不可能です。
学生起業にあたってはスピード感も大事な要素の一つになるので、プログラミングの学習に時間を取られすぎないようにしましょう。
完璧を求めすぎてしまうこと
2つ目の注意点は完璧を求めすぎてしまうことです。
なぜなら、先ほども触れた通り、プログラミングは情報量が多すぎるので全てを網羅するのは不可能だからです。
一つの言語をとってもそうで、全ての文法を完璧に覚える必要は全くありません。
よく考えて欲しいのですが、私たちだって日本語の単語や文法を全て覚えているわけではありませんよね?
自分に住んでいる地域以外の方言なんてほとんど知らないし、性別や年代によっても微妙に言葉の使い方は異なります。
(最近のギャル語は到底理解できません・・・)
プログラミングもいわゆる「コンピューターの扱う言語」なので原理原則は全く同じで、全ての文法を網羅しなくてもなんとなく話すことはできます。
しかも情報はインターネット上にいくらでも落ちているので、わからないことがあればそのまま調べればオッケーです。
日本人によくありがちなのが「真面目に全部覚えてからでないと先に進めない・・・」というパターンです。
それではいつまで経っても起業に動き出せませんので、まずは完璧でないといけない、という意識を捨てるようにしましょう。
学ぶ目的を明確にしないままプログラミングを学ぶこと
3つ目の注意点は「学ぶ目的を明確にしないままプログラミングを学ぶこと」です。
もちろん趣味で学ぶ分にはこれでも全然いいのですが、学生のうちに起業しようとする場合にはこれを意識しつつ学習していく必要があります。
なぜなら、言語によって技術の方向性が全く異なるからです。
・自動で動くAiプログラムを実装したい -> AIを作るための言語
・スマホユーザー向けのサービスを作りたい -> アプリケーションを作るための言語
・データの分析でマーケティング力を上げたい -> 目には見えないデータの世界を扱う言語
言語を「船」とイメージしていただくとわかりやすいかもしれません。インターネットという世界であなたの
ゴールまで移動していくためには、そのゴールの方向を向いた船を選び進んだ方が、ゴールまでの到達時間が短縮できますよね。
このように、ある程度プログラミングを学習した後は、学ぶ目的に沿った言語学習をしたほうが圧倒的に学習効率が良くなります。結果的にプログラミングがあなたの起業に大きく貢献することになるのです。
具体的な言語の選び方は後の章で解説しますのでこのまま読み進めていってください!
独学で学習しようとしてしまうこと
4つ目の注意点は「独学で学習しようとしてしまうこと」です。
これには理由が3つあります。
・わからないことがあったときに悩みすぎて挫折しやすいから
・調べようにも調べ方がわからずに挫折しやすいから
・ストレスでモチベーションが保てず挫折しやすいから
プログラミングは一見、コードをガリガリ書いているイメージ強いと思います。私自身もエンジニアになる前は、毎日机に向かってブラックの画面と対峙している、そんなイメージでした。
しかし、実際には「検索」をしている時間の方がコード書く時間の2倍近く多いと言われています。
わからない部分やエラーについて調べている時間の方が多いということです。
つまり、プログラミングを学ぶ上では「問題解決能力」や「検索力」が不可欠ということです。
とはいえ、プログラミング初心者はそもそも「何がわからないのか」がわかりません。
プロのエンジニアであれば1秒で解決できることに何時間も悩むこともザラにあります。
なのでそれで挫折しないためにも独学での学習は避け、指導者となる「メンター」を見つけることが大切になるのです。
メンターをつけることで短期間で効率よく学習できるので起業にもつながりやすくなります。
プログラミングを学ぶ際にはぜひ一人で解決しようとせず、他の人の手を借りるようにしましょう。
学習ばかりで作品を作ろうとしないこと
5つ目の注意点は「学習ばかりで作品を作ろうとしないこと」です。
これも日本人によくありがちな行動です。
なぜなら本来起業したいはずなのに「プログラミングの学習」自体が目的になってしまっているからです。
つまり「プログラミング学ぶの楽しい~!」「これうまくクリアできたのってすごくね!?」と制作の達成感や充実感に浸るあまりに、世の中にサービスを出すことなく知識やテクニックばかり手に入れようとしてしまっているということです。
こんな友人がいました。彼は趣味でプログラミングを始め、HPやLPの制作での起業に興味を持ちました。
自分でいくつか作品を作っていたらしいのですが、なぜかいつまで経っても彼の収入は上がらぬまま・・・。
不思議に思って理由を聞いてみると、なんと、彼は未だにオリジナル作品を作るにとどまっていたのです。
よくよく聞いてみると彼の中には以下の不安がありました。
・自分の作品が他の人に受け入れられるか心配だった
・自分の技術が十分でないと思った
・どうプログラミングを起業に繋げたらいいのかわからなかった
「不安」「不足」「疑問」この3つのせいで一歩踏み出せない人は本当に多いです。
しかしプログラミングはまず自分で何か作って世の中に出すことから始まります。
どんな小さなものでもいいのでまずは何か制作してみることをお勧めします。
次の章では実際にどの言語で何ができて、何から始めたらいいのかを紹介します。
学生起業におすすめの目的別の学習言語
プログラミングを学ぼうとしてつまづく最初の悩みは「言語が多すぎて何から始めたらわからない」ということです。DotinstallやProgateで基礎学習を終え、プログラミングを本格的に学び始める際には自らの目的にあった言語を選び、一点集中で学習することをオススメします。
なぜなら、単一の言語を深く学んだ方が効率がいいからです。違う言語でもいくらかは内容が被ってくることがあるので、入門ばかりをいくら学んでいてもスキルが伸び悩んでしまいます。
この章では目的別におすすめの言語を難易度順に紹介します。
・とりあえずプログラミングに触れて雰囲気を掴みたい
オリジナルのWebサイトやランディングページを自力で作りたい
-> HTML/CSS/Javascript
・アプリやiOSの開発がしたい
-> Ruby
・サーバーやシステムに詳しくなりたい
-> PHP
・人工知能を用いた開発がしたい
-> Phython
・もっとプログラミングを突き詰めたい
-> C/C++/C#
自分がどの分野で起業したいのか。
目的をはっきりさせるためにもぜひこの章を読んでみてください。
オリジナルのWebサイトやランディングページを自力で作りたい HTML/CSS/Javascript
最初に紹介するのはHTML/CSS/Javascriptです。言語としては3種類なのですが、まとめてセットで使うことが多いので一気に紹介します。
この言語でできることとできないことは以下の通りです。
これらの言語は「マークアップ言語」と呼ばれており、ユーザーが実際に触れる部分や操作する部分の動きなどをインターネット上で実装するのに使われます。
インターネット上で見ることができるWebページやアプリケーションのグラフィックや文字など一つ一つがこの言語で作られており、汎用的に使われる便利な言語として知られています。
例えば以下のような制作物を作ることができます。
身近にあるとっつきやすいもので、学習のハードルも低いので、ITに苦手意識のある人でも学び始めるのにぴったりな言語です。僕はいくつものプログラミングスクールを経験してきましたが、どのスクールでも最初に教えてくれたのはこのHTML/CSSでした。
僕が上記でHTML/CSSの学習を最初に推しているのもそのためです。
アプリやiOSの開発をしたい Ruby
次に紹介するのはRubyです。Rubyも初心者にもオススメな言語で、学校の授業や講義でプログラミングの学習を開始する際にもよく使われる言語です。
例えば以下のようなサービスもRubyで作られています。
・Wantedly
・Airbnb
・食べログ
この言語でできることとできないことは以下の通りです。
昔のプログラミング言語よりも効率よく開発できるような「フレームワーク」というテンプレートのようなものが用意されているので、以前よりもコードを書く量が圧倒的に減り、学習のハードルも非常に低くなっています。
もともと「Ruby」は楽しく学び、楽しく使うことを目的とされているので実用性も高く、簡単なアプリケーションであれば少人数でも簡単に作ることができます。
もちろん、深く学んでいけば上記のような有名なサービスのようなアプリケーションを制作することが可能です。
アプリケーション開発を一人や少人数で制作し、起業へ踏み出したい学生にはぴったりの言語です!
サーバーやシステムに詳しくなりたい PHP
次に紹介するのはPHPです。Rubyと並んで初学者に人気の言語で、拡張性も高くいろいろなサービスが実装できる言語です。
HTML/CSSと組み合わせてデータも扱う高度なサイトを制作することもできます。
例えば以下のようなサービスもPHPで作られています。
・Facebook
・Wikipedia
・Slack
・ココナラ
・ぐるナビ
そんなPHPでできることとできないことは以下の通りです。
他の言語との大きな違いはPHPがサーバーとやり取りを行いながらプログラムを実行する点です。
サーバーにおいてあるデータや情報を取ってきたり渡したりすることで、会員登録サイトのような個人の情報を管理したりパスワードでログインしたりする機能も実現しています。
ここまで聞くと非常に難しいと思われるかもしれません。
しかし、PHPにもRubyと同じように「フレームワーク」が用意されているので、開発の難易度は下がっています。
さらに最新のGitHubの調査(2020年)によるとPHPは世界的にも人気で、20年以上も上位5位以内の高い水準で使用されています。
なので、日本語の情報も多数あり、英語が苦手な人でもスムーズに学習を進められます。
ちなみに、私がHTML/CSSの次に学んだのもこのPHPでした。
PHPを学んで初めて、僕がイメージしていたような「文字の羅列」を目にするようになり多少大変でしたが・・・」
それでもこの言語を学んでから明らかにできるようになったことが増えましたし、自分の開発の幅も広がりました。
プログラミングの起業の際はもちろん、他のエンジニアとスムーズにコミュニケーションをとる上でも学んでおいて損はないでしょう。
人工知能を用いた開発がしたい Python
次に紹介するのはPythonです。今流行の人工知能や、これからの生活でますます浸透してくるであろうIoTやVR/AR領域にも触れることができるのがこのPythonという言語です。
誰もが知っているような以下のようなサービスはこのPythonで作成されています。
・Google
・Yahoo
・Pinterest
・Instagram
他にも深層学習と呼ばれるディープラーニングの分野でも多くのソフトウェアがPythonで動作しています。
Pythonは基礎を学んだ後にできることがとにかく多いのが特徴です。
他の言語と掛け合わせて複雑なシステムやサービス開発を行うことも可能です。
先ほどのGitHubの調査でも(2020年)Pythonは第2位にランクインしており、学習のためのサイトや本も充実しています。
人工知能やIoTへの注目度が高くなってきているので今後もPythonの人気と期待は大きく広がっていくでしょう。
最新の技術を学んで時代の最先端となるサービスを作りたい人はぜひPythonの学習を始めることをオススメします。
もっとプログラミングを突き詰めたい C/C++/C#
最後に、起業とは少しずれてしまうのですがもっとプログラミングの世界にどっぷりハマりたい、という方向けにC言語を紹介します。
これらは先に紹介したRubyやPHPなどの源流ともいえる言語で、ソフトウエアの共通言語とも言われていますす。要するに、C言語を学んでおけば、以後に他の言語を学びたいとなった際にも特に苦労はなく学び始められる、ということです。
C言語では以下のことができます。
ほとんどのことはC言語を学べば実装可能と言われています。プログラムの世界はほとんどC言語で回っていると言ってもいいくらいです。
確かに歴史が長く多少古い言語ではあるのですが、今でも現役で多くのシステムやアプリケーションで使用されています。
ただし、記述するコードの多さや自由度の高さゆえに何をどうしたらわからなかったり、意味不明なエラーで悩んでしまうことが多く、学習には時間がかかります。
スピード感を大切にしたい学生起業家にはあまり向いていない言語と言えるでしょう。
それでも、自分の満足のいくクオリティの高いサービスを作って起業したいという人はC言語で起業するのもいいかもしれません。
現役エンジニアが進める学生起業家が今学ぶべき言語とは!?
ここまでプログラミングの学習手順や言語について紹介してきました。
学びたい言語は見つかりましたでしょうか?
どうしても自分が学ぶべき言語がわからない人のために、最後に現役エンジニアとして活動しているである筆者が学生起業家向けにオススメする言語を紹介します。
最もオススメする言語はズバリRubyです!
学生起業家にRubyをオススメする理由は3つあります。
・Webサービスを自作することができる
・フレームワークを使って高速で開発が進められる
・学習するハードルが比較的低い
何を隠そう、HTML/CSSを学んだ後に実際に起業に踏み出す際に最初に学んだのもこのRubyでした。
私の場合は小さいアプリケーションの開発に止まり起業には結びつかなかったのですが、アイデア出しからローンチまではわずかに2週間で行い、一定数のダウンロードに結びつきました。
ここでの開発経験はフリーランスとして活動している今も役立っていますし、エンジニアや他のクリエイターと仕事をする際にも開発者側からの視点でも物事を見ることができるので非常に重宝しています。
「あの頃学んでおいてよかった・・・」大学2年生の時に勇気を出してプログラミングの講義をとろうと決断した自分に本当に感謝しています。
学生起業家にとって大切な「スピード」と「スモールスタート」の両立を実現する上でRubyは非常に有効な言語です。ぜひあなたも少しの勇気を出してRubyを学び始めることをお勧めします!
まとめ
いかがだったでしょうか?
プログラミングは少し前までは専門職のエンジニアだけが学ぶものだとされてきましたが、現代では主婦や学生を含めあらゆる人々がプログラミングを学んでいます。起業家もその例外ではありません。
ここまで述べてきたようにプログラミングというスキルは今後どの業界で働くにしても身につけておいて必ず得になるスキルです。
これからのIT時代で取り残されないためにも時間のある学生のうちに短期間で集中して学び、自分なりのサービスや事業の創造に役立てていきましょう!
コメント