mikutter blog

mikutterのアナウンスなど

約束の日2017

Androidのmikutter公式アプリをリリースしました。

着想

いつも11月くらいには構想を練り始めるんですが、Androidアプリはもともとやってみたくて、ここ数年はAndroidアプリを書く機会もあったので、しょうもない釣りアプリでも作るか〜と、軽いノリで始めました。

当初の計画は本当に簡単なもので、mikutter公式サイトをWebサービスに見立て、そのコンテンツをアプリから利用できるようにするというものでした。

アプリのコンテンツは?

Google Analyticsによると一番人気のページはFAQ。こともあろうに、一番役に立たないページが、一番アクセスされているらしいです。まさにmikutterという感じですよね。

もちろん、一番利用されているコンテンツを優先してアプリ化するべきですから、今回はFAQを見るアプリにしようと考えました。

Android

今回のプラットフォームのターゲットはAndroidだけとすることにしました。今回iOSを外した理由は、

  • どのような方法を取っても、サポートするプラットフォームを減らしたほうが開発コストは下がる
    • 単一のコードでiOSAndroidアプリを出力できるフレームワークもあるが、結局サポートするプラットフォーム向けにテストをする必要があることは変わりない。
  • iOSでは、このアプリはリジェクトされる可能性がある
    • 現在の規約を確認したわけではないが、一度、あまりにも無意味でくだらないアプリを申請してRejectされた経験がある。

です。他にもAndroidデベロッパ登録料が払いきりで安いなどというメリットもありましたが、お金の話はmikutterへの寄付金で賄ったのであんまり関係ありません。

4.4以降

  • 対象バージョンは狭い方が実装コストが減るが、利用できない人が増える
  • 実装コストのためにiOSを諦めたので、せめてAndroidユーザなら使えるようにしたい

という事情から、Android 4.4以降にしました。

ポケモンGOAndroid 4.4以降でないとプレイできないことはご存知のとおりです。

製作

実際の製作には2月くらいから入りました。アプリとしてはかなり簡単な部類で、初めてアプリを趣味で書く人が練習で作るような簡単なものを想定していたので、伸び伸びになっていました。結局3月の後半に差し掛かるかどうかというところで尻に火がついて仕上げたのですが、実際それくらいで仕上げられるような規模のアプリです。

フレームワーク

  • WebViewやJavaScriptエンジンを乗っけてるタイプのやつは…
    • 書くのは楽だが、面倒も増える
    • 今回書くアプリは規模が小さすぎて何で書いても大して変わらない
  • ネイティブアプリだとアプリサイズが小さくなる
    • クソアプリに専有されるのは嫌だ
  • 動作も軽快だよ

方向転換

月の半ばにはだいたい完成していたのですが、なんとmikutter APIを用いてFAQを表示するAndroidアプリを習作として書いた人をTwitterで見つけてしまいました。単純なアプリだったため同じアプリなんじゃないかというくらいそっくりでした。当然、当時はこのアプリの計画を知る人は誰も居なかったので、これは偶然です。今思えば、それがmikutter公式アプリを考え直す良い機会となったのですが、こんなことってあるんですね。

そこで、「mikutterのAndroid版だと思ってダウンロードしたら釣りだった」から「釣りだと思ってダウンロードしたらmikutterだった」に方向転換することが決まりました。

mikutterとは?

mikutterだ、と思わせるにはmikutterが何なのかを定義する必要があります。これは簡単で、mikutter自体が釣りソフトウェアで餌としてTwitterクライアントをはじめとした有用な機能が実装されているにすぎないということは皆さんご存知のとおりです。mikutterをTwitterクライアントだと思っている人が多いですが誤解も甚だしいですし、そういう人に向かって訳知り顔で「mikutterは環境ですよ」とか言ってる人もいますが、両者とも私の手の上で踊らされているという意味では何の違いもありません。

同じソフトウェアに対してでも、人によって求めるものは違います。人によっては何の価値もないアプリでも、別の人にとっては有用だったりするのです。したがって、機能を追加するというのは、誰かにとって実用的なものになってしまうというリスクを常に伴います。

今回は、実用的な機能とゴミを同時に追加することで、先のネタかぶりを回避するとともに、できるだけ価値が薄まるように努力しました。

実用性の化身:お知らせ

mikutterのステータスバーには、私のサーバから配信されているお知らせを表示する機能があります。このお知らせに過去に掲載されたのは:

  • mikutterのマイナーアップデート
  • mikutterの誕生日(12/25)
  • あけおめ
  • mikutterに関するイベント
    • OSCに出展
  • mikutterの薄い本
    • 原稿催促
    • コミケ等のイベントでの頒布告知

でした。mikutterのこういった情報はどれも有用で、とくにOSCの開催日と場所は、忘れてて行きそびれるとか、そもそも知らなくて行けなかったということを防ぐことが出来る神機能です。この部分をアプリとして持ち運べることが如何にありがたいことかは説明するまでもありません。もはやmikutterを通り越して、あらゆるOSSに関わる人にとって有用なアプリといえます。

ゴミの化身:まりも

f:id:toshi_a:20170402140542p:plain

mikutterユーザなら、アイコン上に表示されるボタンのなかにあるこの緑色のモサモサした丸について疑問を持たなかった人はいないでしょう。誰に聞いても「それはまりも。押しても何も起こらない」と言われるばかり。しかし、人から聞かれたらあなたもやはり「それはまりも。押しても何も起こらない」と説明してしまうのです。不気味だけどどこか愛らしいまりもボタンは、閉じるボタンと並んでファンが多いボタンでもあります。

f:id:toshi_a:20170402141319p:plain

ストアへの公開

テスターとして、複数のAndroidアプリ開発の経験があるmikutterコミッタ @ahiru3net と、大量のAndroid端末を所有しているオタク @sushi514 を招いて幾つかの機種でテストをしてもらい、フィードバックをもらいました。

公開するタイミングについてはとても悩みました。

  • 公開ボタンを押してから実際に公開される時間は読めない
    • 俺は普段10分くらいで公開されるけど、1時間くらいかかることもあるらしい
    • サーバなどのトラブルを含めると数時間とか
  • 早すぎると4/1になるまえにバレるかも
  • 遅くても駄目
    • mikutterのステータスバーに「mikutter、Androidに登場!」と表示されるように予約配信してしまった
    • 24時間前には予約配信しなければならない仕組み。一度配信すると取り消せない
    • ステータスバーに表示されてるのにストアに無かったら、エイプリルフールに嘘をついたことになってしまう

結局、31日の23:15に公開ボタンを押して、11:40には公開されました。こればかりは、公開ボタンを押して祈るしかありません。公開を待つ25分は祈るような気持ちでした。

告知

ステータスバー

上述の通り、24時間前には配信されています。お知らせAPIは公にはされていないとはいえ、mikutterのソースを見るなり、通信を解析するなり、知る術はいくらでもあるため、気づいた人にバラされたらおしまいです。しかしmikutterユーザは訓練されているので、リークはありませんでした。流石に来年からはこの方法は使えなくなるので、考える必要があるかな。

公式サイト

もう一つ、公式サイトの簡単なリニューアルも寸前でねじ込みました。Playストアのために以下のような画像を作ったのですが f:id:toshi_a:20170403232429p:plain これを前のTOPページのデザインのまま貼り付けると明らかにおかしいです。それならばMaterial Designっぽくリニューアルしてしまおうと考えてやったのが今回のリニューアルです。

今までは、既に皆の手元にあるmikutterに仕込まれた時限爆弾が発動するというもので、Webサイトを更新するということはありませんでした。しかし今回は4/1になった瞬間リリースするので、話題になればWebサイトがTwitterで拡散されることが予想されます。今回はWebが非常に重要であると考えたのです。

結局4時間くらいしか割り当てられる時間がなく、4時間でできるだけMaterial Designっぽくすることを目標としました。多分1ヶ月かけてもこの程度だったと思います。流石にコンテンツ部分はカード風にしたほうがいいかなぁ。

反響

togetter.com

反響についてはTwitterを見てもらったとおりです。0時キッカリにいつもどおりアイコンが変わり、そして誰にも気づかれること無く、ひっそりとステータスバーが変わりました。あとから調べると気づいていた人も居たようですが、最初はエイプリルフールネタだと思っていたようです。まさか、mikutterがエイプリルフールに嘘を付くわけがないじゃないですか。

f:id:toshi_a:20170402141455p:plain

AndroidTwitterクライアントだと思ってインストールしたら完全に何の意味もないアプリだった時の皆の気持ちを想像するだけで、2缶買ったヱビスビールが一瞬でなくなりました。これほどおいしい酒もありません。mikutterはこの瞬間に飲めるこの酒の味をモチベーションに開発が続いているのです。 21件のレビューは、当然全てが★5という素晴らしい反響をいただきました。

ユーザ数集計

ここからは毎年恒例のユーザ数集計です。mikutterのアイコンを取得するためにサーバにアクセスしてきたホストの数で、おおよそのユーザ数の目安を出します。

mikutterユーザ

今回も、3/1から3/31までの間、サーバにアクセスしてアイコンを事前にダウンロードしておくようになっていました。

f:id:toshi_a:20170402114607p:plain

白状すると、今回のカウントは失敗しました。サーバのログの設定を間違っていて、あまりにもアクセス数が多かったために3/20以前のログが消えていました。

4/1のアイコンを、当日からダウンロードしていたのでは0時になった瞬間にアクセスが殺到してしまいます。そこでmikutterは、3/1から密かに差し替え用アイコンデータをダウンロードするようになっています。mikutterのヘビーユーザなら、3/20には既にダウンロードは終わっているでしょう。要するにこの数字にはヘビーユーザが含まれていない可能性があります。来年までにはログファイルをワンライナーで集計するようなことはやめようと思います。

では、がくっと半分近くに減っているのは嘘なのかというと、恐らく減少傾向にあること自体は正しいと思います。よくわからないから悲観的に見ているというのが正直なところですが、「Twitterの勢いとLinuxとかのデスクトップの勢いを見ていると、とても増えるとは思えない」ということを2016年に書きましたが、今年もその傾向は変わっていません。

一方で、外国人でmikutterを試す人はちょくちょく見かけるようになりました。このままメンテナンスを継続していけば、もしかしたら増えることもあるかもしれませんね。

mikutter公式アプリのユーザ

さて今回はほとんどがAndroidアプリの話でしたが、これのダウンロード数はどんなものだったのでしょうか。mikutter導入の敷居は高めですが、アプリはPlayストアからダウンロードするだけで利用できるので、純粋に釣られることに興味がある人の人数がわかります。一方で、日本ではAndroidよりシェアのあるiOSをサポートしていないというウィークポイントがあることも事実でした。

Play Storeの統計

4/1の時点で、アクティブユーザが207人いるようです。また、インストールしたユーザ数は240人いるようです。

mikutterユーザのAndroidバージョン統計

多分唯一有益な情報ですが、アプリを公開したので、管理コンソールから見れる統計情報から、ユーザが利用しているAndroidのバージョンのTOP5をご紹介します。

バージョン 端末数 割合 シェアとの比較
6.0 69 33.50% 同じ
7.0 43 20.87% 異常
7.1 42 20.39% おいオタク!!!
4.4 23 11.17% やや少ない
5.0 21 10.19%

一方で、「エンターテイメント」カテゴリのAndroidアプリの同日のシェアは以下のとおりです。

バージョン 割合
6.0 31.87%
4.4 22.15%
5.1 16.90%
5.0 11.05%
7.0 6.03%
4.2 5.23%
4.1 3.37%
4.3 1.79%
7.1 0.76%

近頃販売されている格安スマフォは6.0が搭載されたものが多いため、シェア1位です。私が使っているP9 liteも6です。Android 7が段階的に配信され始めたようですが、まだ来てません。 面白いのは、シェアが二番目に高い4.4を4位に抑えて、全体のシェアとしては7%未満のAndroid 7系が、合計約40%もいるということです。特に、シェアを見ると無に等しい7.1のユーザが20%も居るのはかなり珍しいことだと思います。私が業務で作っているアプリだと、(ある程度のダウンロード数があれば)大体この数字は全体シェアとほぼ一致するのですが、アプリのターゲットが決まっているとここまで大きな違いが出てくるんですね。当然、mikutterユーザにはギークが多いことが原因だと思われます。

今後

実は、これからもこのアプリをmikutterに支障が出ない程度に育てていこうと思っています。俺が考える最高のクソアプリにしていけたらな、と思っています。アプリのサイズもわずか2MB未満とかなり小さいので、皆さんの端末に置いていただいて、クソアプデを受け取っていただけたらな、と思います。

iOSは…どうしようかな。ずっとiPhoneを使っているので個人的にはやりたいんですが、デベロッパ登録料だけでも毎年1万円程度かかってくるうえ、まともな開発環境を手に入れるには更にお金がかかるため、そこまで投資するのはちょっとなあ…というのが正直なところです。とはいえ、iOSのほうは日本ではまだまだシェアが高く、古いOSが残りにくい傾向にあるため、やりたいですよね。

まとめ

今回はmikutter自体に新たに何かするわけではなく、アプリを配信するという新たな試みに挑戦しました。全ての人がダウンロードできるわけではありませんでしたが、どうせダウンロードしても何もないアプリなので、十分楽しめたと思います。 mikutter側は去年と同じことをしたので記事には特に書きませんでしたが、新たなユーザが困惑している様子を見ることが出来て大変満足しました。 来年は何をするかはまだ何も決めてませんが、来年もまたこうやってしょうもないことが出来るといいですね。