累計3.3億DL突破「ibisPaint」GPUベース、C++ワンソースを選んだ理由は?成功を支えた技術選定の裏側

2023年7月26日

株式会社アイビス 代表取締役社長

神谷 栄治

ソフトウェア技術者・経営者。2000年に「株式会社アイビス」を創業。フィーチャーフォン向けアプリの開発を経て、2011年にスマホ向けペイントアプリ「ibisPaint」をリリース。2023年現在も開発組織をリードしている

株式会社アイビスが提供する「ibisPaint(アイビスペイント)」は、高度な機能と使いやすさ、優れた安定性を兼ね備えたペイントアプリとして世界中のユーザーに愛されています。

リリースは2011年。当時からGPUベースで、開発言語にはC++を採用し、UIパーツやライブラリもすべて自社で制作しているという。ibisPaintの企画・設計・開発を一手に担った創業者の神谷栄治氏は「この技術選定が、現在のibisPaintの発展につながった」と語ります。

2011年当時のスマホアプリ開発において異例の技術選定の意図は? 全世界での累計ダウンロード数3.3億(2023年6月末時点)という大成功に、この技術選定はどう結びついているのか? 神谷氏に取材しました。

常識にとらわれない開発スタンスから生まれたibisPaint

——リリースから今年で丸12年を迎えたibisPaintは、今年6月に3億3000万ダウンロードを達成したそうですね。なぜこれだけ多数の支持を集めているのでしょうか?

ibisPaintは無料版であってもほぼすべての機能が利用できます。スタイラスペンなど専用の道具がなくても、スマホ1台あればすぐに描ける。さらに、動作が遅くなりがちなペイントアプリのなかでも、高速かつ安定して動く点などを評価していただいていると思っています。

▲PCのペイントソフト並みの機能が無料で使えるのはibisPaintならでは

——なぜスマホやタブレットでも、高速かつ安定した動作を実現できるのですか?

リリース当初からずっと高速さを追い求めて改善を続けてきたことはもちろん、最初から「スペックが低いスマホでも高速に安定して動く」という観点で技術選定を行ったのが大きかったと思います。

実は、開発した2011年当時、スマートフォンの世帯普及率は9%に過ぎませんでしたし、絵を描くにしてもアナログかパソコンが主流で「スマホを使って指で描く」という人はいませんでした。ただ「近い将来スマホはパソコンよりも普及するだろう」「スマホの画面は小さく指はペンより太く描きにくいが、若者はきっと使ってくれるだろう」と確信し、スマホ向けペイントアプリ「ibisPaint」の開発を決意しました。

とはいえ2011年当時のスマホの処理能力は、現在よりはるかに劣っていました。多くの競合アプリはCPUベースで開発されていましたが、スペックが足りず、快適に動作しているとは言えない状態でした。つまり、当時のスマホのスペックでもペイントアプリとして高速かつ安定して動作できれば、十分に勝算があるということです。それを実現するために、グラフィック処理に特化したGPUをベースに設計しようと決めました

2011年当時、GPUをベースにペイントアプリをつくるというのは、傍から見たらクレイジーな決断と思えたでしょう。しかし、デバイスのスペックが明らかに足りない中で、CPUベースで開発しても、動作速度が遅く、良いユーザー体験を届けられませんし、サービスの発展も見込めません。技術的に難しい挑戦でしたが、GPUをベースにすれば、低スペックなスマホでも快適に動作するペイントアプリをつくれて、今までにない価値を届けられると考え、決断しました。

また、開発当初から、サービス拡大後の拡張性も考慮して技術選定ができたことも、現在たくさんのユーザーにアプリを使ってもらえている理由のひとつだと思っています。

——拡張性を担保するために、どんなことに工夫したんでしょうか?

iOS版もAndroid版もワンソースで開発するために、開発言語にはC++を選び、UIパーツやライブラリもひとつひとつ自作することにしたんです。

当時iOSアプリはObjective-C、AndroidアプリはJavaと、それぞれ別の言語での開発が常識でした。それに、AndroidのNDKが出たばかりでしたから、私がやろうとした「C++ワンソースでiOS版、Android版両方に対応できるスマホアプリ開発」の前例がない時代でした。

でも、OSによって言語を分けてしまったら、その後の機能拡張やバージョンアップ、不具合対応などすべて、それぞれのソースコードを書き直さなくてはいけません。そうなれば、プロダクトの規模が拡大するごとにどんどん身動きがとりづらくなり、良いプロダクトを早く届けることはできなくなっていくでしょう。

ワンソースで、UIパーツも含めOSに依存しないでつくれれば、新規開発やメンテナンスの手間も各段に減ります規模が拡大しても高速に開発を進め、よりよいプロダクトを早くユーザーに届けられます

プロダクトの根幹となる技術選定を妥協しては良いものをつくれませんから、この選択は譲れませんでした。ほかにも、古い技術に頼るべきところとそうでないところは、特に慎重に選んできましたね。

そのおかげで、12年経った今でも崩壊することなくソースコードを積み上げ続けることができていますから、この技術を選んでよかったと思っています。

▲ibisPaintの生みの親である神谷栄治氏。取材はオンラインで行いました

——実際にこの技術で開発してみて、難しいことはありますか?

GPUのメーカーが多種多様で、メーカーごとのバグ回避などを細かく対応しないといけないのが大変ですね。

スマホに搭載されているCPUの大半はArm系ですから、CPUベースのアプリを開発するならArm系CPUにフォーカスすれば事足りるのですが、GPUベースだとそうはいきません。スマホに搭載されているGPUは千差万別だからです。メーカーも規格も多種多様で、「だいたいこの会社とこの会社に対応しておけばよい」とはならないんです。GPUメーカーごと、チップごとの特性を正しく把握しなければ開発できない難しさがあるのはもちろん、各端末メーカーが提供するGPUドライバにバグが含まれていた場合、そのバグひとつひとつに回避プログラムを書いていくなど、地道で泥臭いチューニングを重ねなければなりません。

手間も時間もかかりますし、技術力の高さも求められますが、あらゆるスペックのデバイスでサクサク動くプロダクトをつくるためには、必要な苦労だと思っています。

——改めてibisPaintはどんなターゲットを対象にしているのでしょうか?

はじめてスマホを買ってもらったばかりのエントリーユーザーから、高度な機能を使いこなすハイアマチュアまで広くカバーしています。以前はPC版のアプリがなかったので、スマホやタブレットでは飽き足らなくなったユーザーの多くが、作業効率や大画面を求めてPCに移行するとともにibisPaintから卒業してしまいがちでした。2022年6月にWindows版をリリースしたことで、いまでは、セミプロレベル、プロレベルに達したユーザーにも使ってもらえるようになりつつあります。

実はこのWindows版も、従来のコードにWindows対応のために必要な部分を追加するだけで開発できたので、企画検討からごく短期間でリリースできました。OSに依存しない開発を貫いてきたからこそ、今回のようなサービス拡大にもすぐに対応できましたね

ユーザーの声にはあえて合わせない。プロダクトアウト型の開発アプローチを採る理由

——国内トップのDL数を誇るibisPaintですが、リリース当初からビジネスは順調だったのでしょうか?

いえ、リリースしてしばらくは、広告収入が月間で1万円に満たない時期もあったほど苦戦していました。アプリの評価も「専用のペンを使わずどうやって絵を描くんだ」「ペン先より太い指では画面が見えづらく描きづらい」など、批判的な声が少なくありませんでした

しかし、半年、1年経つうちに、ibisPaintで描いた作品をSNSに投稿してくださるユーザーが増えはじめ、そのおかげでじわじわとユーザー数が増えていきました。2016年には19カ国語に対応し広告マーケティングを強化したことで海外市場でも火がつき、いまやibisPaintの97%が海外からのダウンロードによって占められているほど、たくさんの方に使っていただいています。

▲(左)指でイラストを描く様子・(右)完成したイラスト。ペンで描いたような完成度

2020年以降はコロナ禍のステイホーム需要もあってダウンロード数が激増し、2021年12月にダウンロード総数2億、2023年1月には3億を突破、現在は3.3億に達してなお伸び続けています。全世界でのアクティブユーザー数は現在4000万人と、国産アプリとしては著名なコミュニケーションアプリに次ぐ規模となっていますね。

——これだけのユーザーから支持を集めるために、工夫していることは何ですか?

ユーザーの要望を叶えることを第一にするのではなく、あくまでもプロダクトアウト型のアプローチを貫いています

ペイントアプリの特徴ともいえるかもしれませんが、ユーザーから寄せられる要望の多くは、以前使ったことがあるアプリや競合アプリと比較して、足りない機能を追加してほしいという内容なんですよね。確かに機能が多いほうがユーザーは喜んでくれるでしょう。しかし機能の多さは必ずしも使いやすさにつながるとは限りません

ペイントアプリは、基本的な機能の数がすごく多いんです。ニーズに合わせて線の太さや質感を自由に変えられるように、ペンの種類だけでも何百種類もあります。でも、機能を増やせば増やすほど、ボタンやコマンドが増えてUIはごちゃごちゃになってしまいます。ペイントアプリに慣れているユーザーは、UIが複雑でもだいたい勝手がわかっているから使えますが、初めてペイントアプリを使う人や慣れていない人にとって、画面にたくさんボタンがあったら触るのも怖くなってしまうんです。

そのため、初心者をターゲットとしたibisPaintでは、画面に表示する機能をあえて減らしています

また、画面の大きさによって、画面に表示できるボタンの数も変わります。スマホは画面が小さいから、誤タップを防ぐためにもできるだけボタンを減らす必要がありますが、PCやiPadなら画面が大きいので、スマホよりボタンを増やしても見やすさを保てる。ボタンを押した後の階層構造も綿密に考えていて、初心者でも直感的に使えるように工夫を凝らしています。慣れていない人にこそ使いやすいと思ってもらわないと意味がないんです

▲iOS版とWindows版のUI。Windows版の左端に表示されているボタンは、iOS版にはない

素養の高い新卒を集め、凄腕のエンジニアを育てる

——開発チームには、どのようなキャリアのエンジニアが所属しているのでしょうか?

実はibisPaint開発チームの大半は、新卒で採用したメンバーなんです。

既にキャリアを積んでいる腕利きのエンジニアはそもそも数が少ないため、転職市場に出てくれば取り合いになるのは必至です。であれば、プログラミングやプロダクト開発の経験がゼロでも、素養のある新卒メンバーを選りすぐって育てる方がいいだろうと判断し、ここ3年ほどは新卒からエンジニアを育てることに注力しています。

——どのようにして、優れたエンジニアを育てているのですか?

最初はすぐにできることから、徐々に難しい課題を任せていくといった具合で、さほど特別な育成をしているわけではないんですよ。

もちろん最初からトップクラスの技術力を持つ新卒はいませんから、入社1年目には1年目でもできる仕事から任せ、少しずつアウトプットの質を高めながら、より難易度の高い仕事、抽象度の高い課題と向き合ってもらえるようにしています。

あとは「技術が好き」という風土を保っていくために、定期的に勉強会を開催しています。各自がそれぞれ最近知ったことやすごいと思った技術の話を持ち寄って発表する、LT大会のようなものですね。私もときどき発表の時間をもらっています。

▲過去の勉強会のテーマ例。技術や実装についてだけでなく、アルゴリズムや論文など理論を学ぶ回も

成長が速いなあと思う人の特徴は、課題を論理的に捉えることができる、抽象化する能力が高い、コンピュータサイエンスの基礎になる数学が得意、の3つでしょうか。この3つが揃っている人は、どんどん頼もしく育っていってくれていると思います。

最初は新卒だったメンバーが育って中堅からベテラン層となっていて、若手を育てる環境としては十分です。これもibisPaintの機能や品質にいい影響を与えているのは間違いありません。

——ibisPaintの今後について聞かせてください。話題のAIについてはいかがですか?

2017年5月に線画からAIが自動着色する機能、また2023年6月にはディープラーニングの技術を使い、作品をワンタップで高画質化できる「AI超解像度機能」をリリースしました。

AIを取り巻く社会情勢は刻々と変化しています。機が熟したときにすぐ対応できるよう、機械学習や深層学習に関する学術論文を社内で共有し開発に活かすなど、技術の蓄積と共有に務めながら、効率化、省力化につながる機能開発を進めていくつもりです。

——今後、どのようなアプリに育てていくつもりですか?

ペイントアプリ領域は海外勢を含め、競合がひしめき合っている状況です。当面は、Windows版を含めプロダクトのブラッシュアップに取り組みながら、シェア拡大に臨みます。長期的には、現在4000万人を抱えるアクティブユーザーに対し、使いやすく高機能なペイントアプリの枠を超えたプラットフォームやエコシステムを提供できるような環境を整えたいですね。

開発のWikiには、常にアイデアレベルのタスクから、すでに仕様書、設計書にまで落とし込んだタスクが積み上がっている状態。トレンドや技術の発展を踏まえ、これからもペイントアプリの理想を追求し続けていきます。

取材・構成・文:武田 敏則(グレタケ)

関連記事

人気記事

  • コピーしました

RSS
RSS