本のアプリ「Stand」井上隆行さんに聞いた、iPhoneアプリ開発の面白さ


本のアプリ「Stand」井上隆行さんに聞いた、iPhoneアプリ開発の面白さ
目次
  1. きっかけは、ヨドバシカメラで見たiPodtouch
  2. アプリ開発の面白さは「変化の速さ」
  3. 「Stand」は面白い本と人に出会える場
  4. アプリ開発は、初心者でも意外にできてしまう!?
  5. こんなのあったらいいな!はアプリで解決できるかも

アプリ開発エンジニア・インタビュー!

CodeCamp「iPhoneアプリ開発コース」がいよいよスタート! そこで、第一線で活躍するアプリ開発エンジニアさんに、アプリ開発の魅力やプロダクトのこだわりポイント、プログラミング初心者への応援メッセージなどをインタビューしました。第一弾は、本のアプリ「Stand」の井上隆行氏です。

プロフィール:井上隆行(いのうえたかゆき)

フリーランスのアプリ開発エンジニア。NHN JapanでWebエンジニアとして勤めた後、Fril、cakes、Wantedlyなどのスタートアップ企業でスマートフォンアプリ開発に参加。2015年3月に本のアプリ「Stand」をリリース。

きっかけは、ヨドバシカメラで見たiPodtouch

先月、本のアプリ「Stand」をリリースされましたが、これまではどんなお仕事をされてきましたか?

2年前までNHNJapanに勤めていました。その後は、スタートアップのプロダクト開発を中心に仕事をしています。他社さんの開発のお手伝いをしながら、自分のサービスを作ってきました。仕事はアプリの開発が多いですね。

NHNJapanにいたころは、ケータイサイトを作るモバイルの部署にいましたが、その後スマートフォンが出てくるにつれ、アプリの開発が増えるようになりました。

はじめてアプリの開発をしたときの印象は?

日本でiPhoneが発売される少し前、吉祥寺のヨドバシカメラでiPodtouchを見て。画面に並ぶアイコンを見て、「これ作ったら楽しいな」と思ったのがきっかけです。

当時はPerlでWebサービスを作っていました。ウェブのプログラミングとの違いは、ないわけではないですが、似ているところも多いです。PerlはC言語に影響を受けている言語ですし、Objective-CもCの拡張ですしね。

アプリ開発の面白さは「変化の速さ」

IMG_0920_mini

スマートフォンアプリをつくる面白さはどんなところですか?

一番は、スマートフォンを持つユーザーが増えて、多くの人に使ってもらえる環境があることですね。サービスもたくさん出てきています。でもまだ色々ありそうですよね。

PCだと机の前でしか使えないけど、スマートフォンなら生活のあらゆる場所で使うことになります。いろんな視点でサービスを考えられるのも魅力です。

ユーザーが多いことは魅力的ですよね。開発者視点での、ウェブとの違いやアプリならではの面白さはありますか?

ウェブとスマートフォンアプリと、開発の流れはそこまで変わらないです。ただ、アプリは道具っぽいところがありますよね。さっとポケットから出して、使って、しまうという。Webサービスなんだけど、道具を作っているという感覚もあります。

例えば、少し動きを工夫したらUX、使い勝手が上がるとか、アニメをつけたら印象が変わるとか。もちろんウェブにもある要素なんですけど、スマートフォンの方がタッチであったりアニメであったり、より工夫の余地が多い。米国の活きのいいIT企業とか、どんどん新しい見せ方を取り入れてきています。

画面のタップとか、10年前にはなかったですし、アプリの見せ方、表現に関しては、今もまさに様々な人が工夫している最中です。変化も速いですが、それが面白いところでもあります。

「Stand」は面白い本と人に出会える場

IMG_0920_mini

先月リリースされたアプリ「Stand」はどんなサービスですか?

本を探す、本を紹介する、というふたつのシンプルな機能をもったアプリです。

タイムライン上に面白そうな本がたくさん流れてきて、気になったものがあればアプリから購入もできます。また、本の情報にはユーザーのアイコンとコメントも載っているので、気になる人がいたらフォローもできます。使っていくほど、自分の興味により合った本が流れてくる仕組みになっています。

いま、毎日200冊の本が新刊として出ているそうです。毎日本屋に通ったとしても、全部知ることはできない。読んだら面白いのに知らずに見逃している本は、たくさんあるはずなんですね。

人を間に介して見つけることで、思いがけない本が見つかったりします。それが機械的なレコメンドとは違った面白さですね。飛躍もあるんですけど、それもまた新鮮という。

「Stand」の機能的な部分でのこだわりはありますか?

人手も時間もなかったので、そんなにこだわれなかったのですが、強いていえば…

ひとつは、本が流れてくるタイムライン。本の表紙に、本屋さんのPOPのように紹介する人のコメントとアイコンがついて流れてきます。それは最初から意図してそのように作ったんですが、下のいいねした人のアイコンや同じ本に別の人がコメントしていたらアイコンが並んだり、そのあたりは後から加えました。人気の本は、賑やかな感じで一目で分かります。

だいたい、はじめは時間をかけ過ぎず、ざっと作ってから改善した方がよさそうなところは良くする、という順序でやっていきます。

オープニングも、もとは画像がページングする簡単なものでした。ユーザー登録の前にどんなアプリなのか紹介するところは、アプリ本体と切り離して自由に作れるところで、そこだけ動画を入れるようなサービスもあります。「Stand」の場合は、アニメを使って本をどのように扱うかをわかりやすく示すようにしました。

あと、こだわりというかアプリならではの点として、カメラからの本のスキャンですね。裏表紙のバーコードをスキャンできるので、本の紹介がさっとできます。スキャンして、何かコメントするだけですね。

アプリ開発、まずはどんなことから始めるのでしょうか?

自分の場合は、初めにこれができたらいいなという機能をひとつかふたつだけ考えます。スマートフォンは画面が小さいので、アプリの機能は極力しぼるのが普通です。

「Stand」でいえば、本を探せる、本を紹介できる、この2つですね。紹介する人がいるから本を探せるので、両者はセットになってます。

多くの人に使ってもらえるかは、出してみないと分からないところもあります。でもエンジニアは、自分で作って試してみることができるので、プロトタイプを作って、知り合いの反応を試してみてもいいわけです。

ニーズがありそうで、まだ存在していないのであれば、実現されたら面白いかもしれない。じゃあちょっと簡単なものを作ってみよう、という感じです。

アプリ開発は、初心者でも意外にできてしまう!?

IMG_0920_mini

アプリをつくりたい方って、今たくさんいると思いますが、プログラミング初心者でも簡単に始められるものでしょうか?

難しそうに見えがちですが、始めるのは本当に簡単なんですよ。iPhoneアプリ、iOSの開発はMacさえあればすぐにスタートできます。

ウェブの開発だと、事前に多少準備が必要だったりしますが、iOS開発は、XcodeというAppleの開発ツールキットをインストールするだけです。

Swiftが出てから、新しい言語でアプリ開発をやってみたいという人がまわりに結構いて、たまに集まって開発するという会を個人的にやっています。はじめての人には簡単な電卓アプリを作ってもらうんですが、エンジニアでなくても、1時間くらいで動くものが作れます。

初心者の方におすすめの学習方法はありますか?

はじめにちょっとしたものを、手を動かして作ってみるのがおすすめです。

たとえば、Swiftの本を買ってもいいですが、軽めのチュートリアルがあるものを選んでやってみるとか。ウェブのリソースも、今はたくさん選択肢があります。自分に合いそうなものを利用すればよいと思います。

あまり大きすぎないサンプルコードがあって、それを動かしたあと、ちょっとずつ改造していって理解を深めていく、という順序がよいのではないでしょうか。

Appleも言語の本やサンプルコードなどを出していて、これはもちろん信頼できます。開発の経験があるのなら、そこから入っていっても問題ないですが、未経験の場合はちょっと敷居が高いです。うまく他のリソースを組み合わせてやるのがよいと思います。

難点というか、はまりポイントとしては、アプリ開発は変化が速いので、情報が古くなりがちというところですね。出版物だけでなく、ウェブの情報でも古くなっているものがかなりあります。

そういう意味で、とくに初めのうちは、周りに聞ける人がいると便利です。知り合いでも、初心者向け勉強会でも、それこそCodeCampのようなオンラインサービスでも、うまく活用して進めるとよいです。

こんなのあったらいいな!はアプリで解決できるかも

では、最後にこれからアプリ開発を始める方にメッセージをお願いします。

メッセージというほどのものはないですが、入口は意外と難しくないということでしょうか。

スマートフォンは、人が起きてから寝るまでずっと持ち歩くものなので、生活の側にありますよね。だから同じWebサービスでも、人の普段の生活に近いところで使われるし、それだけ暮らしの課題も解決できるかもしれない。

こういう問題を解決したいし、それをスマホのアプリを使ってできるんじゃないかということで、開発を勉強してみる、というのも全然ありだと思います。それが意外と新しいアプローチになるかもしれない。

あと、よいものを作れば多くの人に使ってもらえる可能性があって、作る中で工夫する過程も楽しいですよね。気軽に始められるものなので、ぜひ小さなアプリを動かすところから試してみてはと思います。

ありがとうございました。

本のアプリ「Stand」


関連記事

CodeCampus編集部
この記事を書いた人
CodeCampus編集部
まずは7日間お試し!人気プログラミング講座を無料公開中
オンライン・プログラミングレッスンNo.1のCodeCamp