アプリって実際どう?

アプリ開発初心者が独学で最初のiOSアプリを公開するまでの道のり!

すいません、最初に断っておきますが、私は”アプリ開発”初心者ですが、プログラミング初心者ではありません。

同じIT業界の中でもアプリ開発とは対極ぐらい遠い領域かもしれませんが、プログラマーとしての実務経験がたっぷりあります。業務でJAVAは書いていました。

そんな私が、2017年に突然思い立って初めてのアプリ開発に挑戦した時の実録です。(わりと正直に書いています。)

ちなみに、身近にアプリ開発経験者の知り合いは一人も居ません。

関連:なぜ突然アプリを作ろうと思ったのか

まず環境を選びます

iOSにするか、Androidにするか、最初にちょっとだけ迷いましたが、私は自分が欲しいアプリを作って自分が使いたかったので、自然とiOSになりました。私は長年iPhoneユーザーで、自分の携帯で動かないアプリを作る気にはなれませんでした。(Unityとかいう、どっちにもいける開発ツールが存在することは、後から知りました。)

Mac(PC)が必要です
開発ツール(Xcode)は無料です

iOSアプリ開発の場合、最初のハードルとなるのはここかもしれません。Mac(PC)が必要です。私は趣味で昔から画像加工とかWEBサイト構築とかをやっていた関係で、元々持っていたし、使い慣れていました。開発ツール(Xcode)は無料なので、開発環境を作るのに費用は全く掛かりませんでした。

開発ライセンス
Apple Developer Programへの
登録が必要です

ここが結構大きいですよね。年会費が1万円前後(円相場で変動)掛かります。アプリで最低でも年に1万円の収益が上がらなければ、赤字になります。

私がとりあえず勉強のために買ったもの

(入門となってますが、完全初心者向けではなかったです。)


世界最大級のオンライン学習サイトUdemy

【6日で速習】iOS11Swift4アプリ開発入門決定版
(安価な有料動画。実際のコーディングの様子が動画で見られて、これがとっても良かったです。本買うよりも安くてコスパ高し。)
iOS11アプリ開発オンライン講座


(書籍としては、後から読んだこっちの方が初心者向けで分かりやすかったです。先にこっちを読めば良かった。)

作りながら勉強するのがおススメ
ググれば大抵の情報は出てくる

私の場合は上記の3つをざらっと見たら、早速作り始めました。書籍や動画で勉強するよりも、結局、作りながら・実際に動かしながら、試行錯誤しつつ勉強するのが一番速いです。行き詰まったらググれば大抵の情報は出てきます。先人の知恵はどんどん借りましょう。日本語のサイトだけ見ていても求めている情報が見つからない場合は、英語のサイトも敬遠せずに読んだ方が良いです。英語が分からなくても、Google翻訳を使えば何となく読めます。

マネタイズ(収益化)の方法を考えます。

ようやくアプリが完成しても、そのままでは1円も生みません。収益化の方法を考えます。AdMobなどのバナー広告を入れるのはそんなに難しくないです。それより広告非表示オプション(アプリ内課金の仕組み)の実装の方が難しかったですね・・・。

動くようになってからが長かった!
申請が一番めんどくさい!

いよいよ申請です。アプリ申請の仕方も、ググれば丁寧に解説したサイトが出てくるので、その通りに一つ一つ進めていけば基本的には出来るのですが、めんどくさがりの私はここが1番しんどかったです。アイコン、スクリーンショット、説明文、キーワード・・・用意しなければならないものがたくさんあります。

審査の期間は短くなっています

以前はiOSアプリの審査には5~10日程度かかっていたそうですが、2016年あたりからは平均1〜2日ぐらいまで短くなっています。私のアプリも1日ぐらいで通りました。
(でも私は長かった時期を知らないので、1日でも長いと思ってしまう。)

全くの初心者でもできる??

よっぽど素質・適性があれば可能性はゼロではありませんが、正直かなり難しいかもしれません。どんなアプリを作りたいかにもよりますが、少しは収益の上がるアプリを作りたいなら、相当な時間が掛かる事は覚悟する必要があります。シンプルな機能のアプリを作ることは簡単ですが、それをAppStoreで公開できるかどうかは別問題です。どれだけ膨大な時間を掛けて開発したアプリだろうと、Appleが認めないアプリは容赦なくリジェクト(却下)されてしまいます。あなたが自分のアプリにどれだけ価値があるといくら主張しても、審査が通らなければAppStoreには置いてもらえません。

私のアプリは、新規申請の際には2つとも一発で通りました。(バージョンアップの申請ではリジェクトくらいまくっています。)

精魂込めて作ったアプリが↓こんな理由で却下されたら、誰だって再起不能なほどに凹みますよ。

4.2リジェクト「機能が少なすぎ(これはゴミアプリですね)」
4.3リジェクト「既にあるアプリと似たようなアプリを出すな」

※実際には英語。カッコ内は意訳です(笑)

それでも再起するには、鋼の精神が必要です。

唯一にして最大のリスク!
膨大な時間の先行投資が必要

個人アプリ開発におけるリスクは、ここだけと言っても良いでしょう。まぁ自分一人で開発している限りはタダですが、とはいえ「時は金なり」ですからね。

正確には計っていませんが、私がこれまで開発や調査・勉強にかけた時間をもし時給換算したら、現時点では真っ赤っかの大赤字です。
そして何年掛けて開発しても、リリースできない可能性、リリース出来たとしても、そのアプリで全く稼げない(収益ほぼゼロ)の可能性も十分にあります。そのアプリに需要があるかどうかは、リリースしてみるまで分かりません。そういう意味では、ギャンブル性が高いと言えます。

「時間なんて、持て余すほどに有り余ってるぜ?」っていう方は、ぜひ挑戦してください。ヒマでしょうがない大学生なんかには、全力でおすすめします。

大事なのは、
プログラミングが好きかどうか

現時点で経験が浅くても、好きなら続けられます。使ってくれる人の反応を想像してワクワクできるかどうか? 自分が楽しいかどうか?が一番大事だと思います。

掛けた時間に見合う収益がすぐには得られなくても、耐えられるだけの経済的・時間的余裕が必要です。

間違っても家族の生活を賭けてアプリ開発なんて、するべきではありません。開発の時間が楽しければ、「掛けた時間=労働時間」ではなく「趣味の時間」と捉えることも出来ます。(私の場合、アプリ開発に夢中になっている期間、他の趣味や娯楽にかける出費は減っていたように思います。)

転職には有利(?)

これは私が実際に転職活動したことはないので何とも言えませんが、アプリの場合、目に見える形で成果物があって分かりやすいし説明もしやすいので、「自力で1からアプリを開発してリリースした経験がある」というのは、転職の際に大きなアピールにはなるでしょう。

私の感想

元々プログラミング経験があったので、言語や開発環境は違えど、試しにやってみたら意外と簡単に出来ちゃうんじゃない?という、謎の自信と軽いノリでとりあえず作り始めてしまった私としては、実際に仕上げてリリースするまでの道のりは「想像の100倍ぐらい大変だった」という感想が正直なところです。夢はあるけど、厳しい世界です。(それでも、挑戦する価値はあると思いますよ。)

この記事が、これからアプリ開発に挑戦してみようかな?という方の参考になれば幸いです。