読者です 読者をやめる 読者になる 読者になる

not good but great

プログラミング、アート、映画・本の感想について書きます。

新卒マークアップエンジニアが、趣味でiOSアプリを半年で「11個」リリースした話

社会人になり1年が経とうとしている。半年でiOSアプリを11個リリースしたので、そのことを書いてみよう。

普段はマークアップエンジニア

2014年新卒で、普段は会社でHTML,CSS,たま〜にJavascriptを書いている。

アプリを作成するにあたった経緯

新卒入社後、半年間は趣味のプログラミングはいろいろやっていた。oFやProcessing,JSを使ったジェネラティブなプログラミングなどを良くやっていた。面白いのだが、飽きることもあったり、世の中のトレンドとして、アプリは無視できないと思った。Objective-Cの本を買ったものの、少しのサンプルを動かして終わっていた。2014年10月ごろ、重い腰をあげて、開発を再開したという感じ。

何を作ったか

・一覧
https://itunes.apple.com/jp/artist/naoya-sugimoto/id933472785

就活したくないお-頭ゆるゆる自己分析-

就活したくないお-頭ゆるゆる自己分析-

  • Naoya Sugimoto
  • エンターテインメント
  • 無料
処女作「就活したくないお-頭ゆるゆる自己分析-」
典型的な診断アプリ。ViewControllerのインスタンスを作る練習になった。シェアもできるようにした。絵のクオリティは低くすることで、他の意識高い就活系アプリと差をつけるようにした。

ホーリーチョコ-絵文字ゲーム-

ホーリーチョコ-絵文字ゲーム-

  • Naoya Sugimoto
  • ゲーム
  • 無料
2作目「ホーリーチョコ-絵文字ゲーム-」
SpriteKitを使ったゲーム。Flappy Birdに似たゲームを作ろうとして、絵文字が好きなので、それをテーマにして制作。海外の人にもダウンロードされた。

Twins - 画面を二分割するブラウザ

Twins - 画面を二分割するブラウザ

  • Naoya Sugimoto
  • ユーティリティ
  • 無料
3作目「Twins - 画面を二分割するブラウザ」
WKWebViewを初めて使ったアプリ。二画面のアプリはあったけど、広告があり、フリックで戻る進むができないものが多かった。広告を消して、フリック操作をつけた。海外で根強い人気が出た。

飯テロ -ダイエットは明日から-

飯テロ -ダイエットは明日から-

  • Naoya Sugimoto
  • フード/ドリンク
  • 無料
4作目「飯テロ -ダイエットは明日から-」
TableViewの練習。飯テロの画像をSNSに投稿できる。画像の数が少ないこともあって、クソアプリだと思うw スクリーンショット作成に有料のMacアプリを使うなど、AppStoreに載せる情報に気を使うようになった。

5作目「100万個のアワビ:汚染されたアワビを回収せよ」
「100万タマゴ」がヒットしたことに影響され、自分も作ってみることに。「100万個」の後に続けたい言葉を考えて、「アワビ」しかないと思った。タップ回数をランキングにしていて、一部のユーザが結構ハマってくれた。

貯金の練習 - マネークリッカー

貯金の練習 - マネークリッカー

  • Naoya Sugimoto
  • ゲーム
  • 無料
6作目「貯金の練習 - マネークリッカー
「100万タマゴ」のクローン。今度はタップすると額面が増えるというもの。社会人になって、貯金が増える喜びを覚えて、それをアプリにできないかと思い、作成。

チリも積もれば山となる

チリも積もれば山となる

  • Naoya Sugimoto
  • 教育
  • 無料
7作目「チリも積もれば山となる」
まずダジャレが思いついて、それをアプリ名にして作ったらどうなるかと思って実験したもの。SpriteKitの物理エンジンを使っている。全然ウケなかったw

Colorful Clock - ultra simple -

Colorful Clock - ultra simple -

  • Naoya Sugimoto
  • ユーティリティ
  • 無料
8作目「Colorful Clock - ultra simple -」
たまにはオシャレなアプリでも作るかと思って、時計のアプリを作成。なかなか申請が通らなかったけど、音をつけたら通った。

近くのスタバ - カフェまでウォーキング

近くのスタバ - カフェまでウォーキング

  • Naoya Sugimoto
  • ナビゲーション
  • 無料
9作目「近くのスタバ - カフェまでウォーキング」
APIを使ったものを作成してみようと思って、作った。近くのスタバが分かって、店までの道を教えてくれる。Google Place APIを使用。ASOが強くて、ダウンロード数が多い。「スタバ」で検索すると6番目くらいに出てくる。

ひとり面雀

ひとり面雀

  • Naoya Sugimoto
  • ゲーム
  • 無料
10作目「ひとり面雀」
松本人志のひとりごっつ」に出てきた面雀を練習できるアプリ。ネタを自分で作るのが楽しく、一番大変だった。知り合いにレビューしてもらうと「ひとりでやって何がおもしろいの?」と言われてしまった。

69 - シックスナイン

69 - シックスナイン

  • Naoya Sugimoto
  • ゲーム
  • 無料
11作目「69 - シックスナイン」
脳トレ系アプリ。SpriteKitではなく、UIKitでどれくらいアニメーションできるか試してみたアプリ。面白いと言ってくれる人が多い。デザインも他の比べると好評w

アプリを作る心構え

クオリティは低くしよう
アプリ制作は難しい。だからしょうもないものを作るようにしよう。最初は診断アプリがオススメだ。内容次第でヒットも狙える。かっこいいものや、技術的に高度なものを作ることは諦めようw

リリース最優先
とにかくリリースすることを優先させた。デザインやコーディング、うまくやろうとしたら、キリがない。最低限のクオリティが担保できれば、まずリリースしてみる。そこでリジェクトされても、問題点がわかるし、リリースできたら、またアップデートすればよい。いつまでもリリースできずに、未完成のアプリがあるというのは精神的に良くない。暗い気持ちになる。

リジェクトされても諦めない
今リジェクトされてしまって、リリースできてないアプリが4つある。それでもちょくちょく改修を進めて、申請を出している。リジェクトなしで通ったアプリはとても少ない。審査の時間が長く、モチベーション低下によって、修正するのが面倒なこともあるが、諦めずにがんばれw

開発時間を作る

勤務時間を考えると、時間を作る必要がある。作成する時間帯は3つに分かれる。出勤前、退勤後、休日だ。

・出勤前
自分は1時間半早く起きて、開発時間を確保した。家、会社の近くのカフェや会社で開発をする。PCを前日のままの状態にしておけば、すぐにコードを書くことができる。と言っても、すごくアプリ開発が進むことは稀だ。ここで大切なのは少しやっただけで満足することだ笑。1行書いただけでも、進んでいるからおk。

・退勤後
退勤し、自宅に帰ったら、すぐにPCを起動させて朝の続きをしよう。さすがに疲れているので、あまり頭を使わない作業に充てることが多かったかも。スクリーンショットの作成、AppStoreの文言、iTunes Connectの設定などは、この時間ですることが多かった。

・休日
平日と同じ時間に起床して、すぐにPCの前に行き、コーディングを始めよう。起きて10分以内にはXcodeを見られる状態にあったと思う。そこからぶっ通しで開発をしよう。開始時間はまちまちだが、8:30~12:00,13:00-16:00,18:30-22:30の時間帯とかでやっていた。もちろん休憩はある。休憩は散歩がオススメだ。自分は休日に用事がないことが多かったので、やることがない日は開発をしていた。

大晦日や正月休みも例外はなし。ちょうど自分は正月休みに「近くのスタバ」を一から作ることができたw

アイディアの作り方

自分はプログラミングがするのが好きだが、それだけをやるというよりは、作りたいものがあり、しょうがなくやっている気持ちがどこかにある。周りも見ると、そういうタイプの人は少ないように思える。そういう人はアイディアがないのかもしれない。ここでアイディアの作り方を書いてみよう。

メモを取る
どんなにしょうもないアイディアでもメモを取ろう。自分はiPhoneの標準メモアプリにどんどん書き込んでいた。

メモを取るタイミング
アイディアはアプリ制作の場から、離れたときほど浮かぶ。例えばテレビを見ていたり、ラジオを聴くとき。面白いフレーズ、言い回しでもいいから、ピンときたモノはメモを取ろう。寝るときもアイディアが浮かびやすい。枕元にiPhoneは置いておこう。思いつたら、眠たくても、一度起きて、書き込もう。

メモを取る場所
なかなかアイディアが出ないときは、アイディアが思いつきやすい場所を見つけよう。自分の場合は自宅のトイレと、近所を散歩する時の道。アイディアが思いつかないときは、その場所に行ってみよう。もちろんメモの準備は忘れずに。

どうやって勉強したか

基本、Webで調べる。Qiita,stackoverflowをよく読んだ。あとはGithubのコード検索。自分が書きたいコードに似たものを書いている人を見つけやすい。ただ自分が作りたいものをそのまま作っている人がWebに情報を公開しているなんて、極めて稀だ。コピペは楽だけど、スクラッチで書くようにしよう。

詳解 Swift

詳解 Swift

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

書籍も買ったけど、たまに読むくらい。

まだまだ制作を続ける

社会人2年目になろうとしている。今制作中のアプリが2つあって、リジェクト修正中のものが4つあり、まだアプリにできていないアイディアはたくさんある。だから今年度もリリースしていこうと思います。