2017-03-14

なぜスマホアプリに強制アップデートが必要なのか


ゲーム系に多いが、アプリによっては、強制アップデートの機能を持っているものがある。ネットゲームは皆が同じ条件でプレイしなければゲームバランスが崩れてしまうので、当然必要な機能の一つだ。

自分は、ネットゲームかどうかによらず、スマホアプリには強制アップデート機能があってよいと思っている。あるべきだと思っている。
よく言われるメリットは次のようなものだけど、それが理由ではない。
 
  • アプリにバグがあったときに確実に修正版を使わせることができる。
  • 古いOSバージョンの端末に対応するための実装やテストに時間を割かなくてよい。
  • アプリバージョン毎に異なるAPIバージョンやサーバリソースにアクセスするような場合、サーバ側のコードやリソースの管理が楽になる。

使い慣れた旧バージョンにとどまりたいユーザが間違いなく存在するのに、なぜ強制アップデートを課すのか。それは、最新バージョンのアプリこそが、ユーザにとって最も価値のあるアプリの姿だと信じているからだ。

アップデートを不満に思って離れていくユーザもいるかもしれない。
でも、全員を幸せにできるアプリは存在しないし、そうあろうとするアプリは誰も幸せにできはしない。 それに、本当に欲しいユーザは、アプリやサービスの信念、哲学に共感して使ってくれるロイヤルカスタマー、ロイヤルユーザだ。

これは、ユーザを置いてきぼりにしてもいいんだって話じゃなくて、むしろユーザの声を聞くためのアプローチだ。

いくらユーザにとって価値のある(と信じている)ものを作っても、それを使ってないユーザの声は聞くことはできない。 常に最新版を使ってもらい、ユーザの声に耳を傾け、でも表面的に、盲目的に機能を増やすんじゃなくて「ユーザにとって本当に価値のあるもの」の分析をしつつアプリを育てることこそが、本当にユーザのハッピーを最大化するのだと信じている。

だからこそ、積極的に強制アップデートをすべきだと思う。




2017-02-28

最強の英語勉強法は、目標を立てないことだ。



みんなは英語の勉強をどんなふうにやってるんだろうか?

プログラマ(not PG)であれば、社内公用語が英語だなんて話にかかわらず、
もはや英語は必須だ。
自分も前回の記事に書いたとおり、継続的に英語に取り組んでいる。

なんで英語の勉強って挫折しやすいんだろう?~そして理由1へ

継続的に英語に取り組むために、考えるべきことがある。
それは、挫折する理由だ。かつての数度の挫折を振り返りつつ考えてみた。
理由のひとつとして、とりあえず勉強を始めてみるんだけど、少し経つとすぐに
「参考書や問題集とか解いてるけど、これ、自分、英語力あがってんのかな?っていう心配がつきまとう」ってのがある。
その不安プラス成果を感じられない期間が続くとすぐに、やる気はどこかへ去ってしまう。

達成具合を計測できる目標をたてればいいんじゃないか?~そして理由2へ

だから、闇雲にやるのではなく、目標と計測が大事になってくる。
とはいえ自然言語における目標って計測が結構難しくて、たとえば「ネイティブと日常会話が出来る」って目標に対する達成具合をどう計測したものかって問題がある。

ありがちな計測可能な目標として、TOEIC600点とるぞとか目標をたてて、そこへ向かってやっていく方法があるんだけど、これだって結構長い道のりで、
達成に至るまでの地道さ、退屈さ、面倒さに耐えられずやめてしまいがちだ。
ちょっと考えるだけでもだいぶ辛いものがある。
  • TOEICの試験(達成のチャンス)が毎日あるわけじゃない。
  • 受験は1日がかり。
  • 受験前夜、当日は寝過ごさないよう気を張っていなくてはならない。
  • 受験会場まで足を運ばなくちゃならない。
  • 会場に着いたら着いたで試験官に「おいお前ら不正すんじゃねえぞ」ってクギをさされたりして。
  • 受験は休日返上。
  • TOEIC攻略のための勉強が必要だったりする。(手段と目標の逆転) 
  • 受験費用もばかにならない。
  • そこまでしても達成できるかどうかは保証されていない!
こういった面倒さ、報われなさも継続の敵であり、充分に投げ出す理由になりうる。
目標に到達するまで耐えてしのんで、ようやく花が咲く、かもしれない。
要するに、webサービスでいうと「大きく作ってドカンとリリース」をやってるのに近い。

なんでもいいから小さな達成を重ねよう。英語力の向上なんて目標は不要だ。

英語力の向上が目標でないって、意味ないじゃん!そう思うひとも多数いると思う。
だけど、英語力の向上を目標としない。それでいいんだ。だからこそいいんだ。
1年以内に英語の資格をとるぞ、とかいうなら話は別だけど。

最強の学習法は、続けることそれ自体だと思う。
つねに英語が生活の一部として自然に取り込まれている、ライフスタイルそのものが最強の学習法だと思う。
我々がいつの間にか日本語を習得したように、英語を頭でなく体になじませていく。

そうすると、考えるべきは
「いかに英語と共にある毎日を設計できるか」
ってことになる。
毎日だ。
毎日やろうと思ったら、歩幅はとことん小さくしておかなくてはならない。
  • 英語ドキュメントの一節を和訳して公開する
  • 海外の有名人のtwitterを一件でも和訳して公開する
とか、なんだっていいけど、公開することを心がけよう。
他人に見られるという事実は、当事者意識と、体への染み込み具合に大きく影響するからだ。

単語を100件追加するたびにリリースする。

どうしたら英語が日常の一部になるかを考えたすえに、先日、Androidの英単語アプリをリリースした。 (Usagi 英単語
だけど、これ自体は目標ではない。
なぜこのアプリを作ったか。それは、アプリの単語数を充実させるために、毎日単語データを作成する必要性を作りたかったからだ。

この記事を書いている時点では単語数は1200であり、英単語アプリとしては全然少ない方だ。そのおかげで、毎日20〜30件ほどのデータを作成するのが日課になっている。
この生活習慣の何が嬉しいかというと、
みんなに新しい単語を届けるためにアプリの単語データを充実させること自体が、
副効果として自分の英語の勉強になっているという点だ。
リリースサイクルは、だいたい1週間ほど。単語が100件たまったら、いくつかのバグフィクスや機能改善とともにリリースするという形だ。

単語が100件たまったらリリースする。小さく作って、こまめにリリースだ。
この方式のいいところは、
  • 達成条件が明確。
  • 達成の難易度がとても低い。
  • 短期間で達成できる。
と、挫折しようもない短距離走であるところだ。
正確には挫折パターンとして日々の単語データ作成をサボってしまうことが考えられるが、
そもそもタスクが明確すぎる&簡単すぎる&短期間なので、モチベーションに関係なくできてしまう。
いまでは単語データ作成、リリース前のテスト、日常的なドッグフーディングで自らも1ユーザとしてアプリを使用し、その中でアプリの課題発見をしつつ英語に触れ続ける習慣ができあがっている。今後も途切れることはないだろう。

受験勉強や試験勉強ではこうはいかないが、一つのやり方として参考になれば幸いだ。


Usagi 英単語