浄泉爺のブログ

浄泉爺の考え事を記録します(研究のこと、仏教のこと、教育のこと、ドローンとか)

がまん貯金の開発秘話(秘話と言うほどではないか)

今日は、がまん貯金の開発秘話を書こうかと思う。秘話と言うほどのことは無いが、これからアプリを作ってみたい!という人にはもしかしたら参考になるかもしれない。特に、何を作ったら良いのか?という人には、私のスタイルを参考に考えてみても良いかも。 

 

ところで、がまん貯金の宣伝をしようと動画を作成した。

 

またもや、とりあえずバージョンだが、無いよりはマシだろう。使い方は直感的だとは思うが、そもそも何をするのか?がわからない可能性もあるなと思い作成した。

 

 

AppStore のアプリの説明部分には結構詳しくそのコンセプトまで含めて書いてある。ただ、この文章はどうもあまり読んでもらえないらしい。微妙な笑いを誘う文章も組み込んであるのだが、見てもらえないのは寂しいのでここに載せておこう。注意3とか結構面白いと思うんだけれども、私の感覚がおかしいのかもしれない。

がまん貯金はあなたの日頃のがまんを見える化します。

使い方ビデオを作成しました。こちらもご覧下さい。
https://youtu.be/QiaHe-W7BOE

どういうこと?「がまん」なんてしたくないんだけど?

例えば、欲しい腕時計があるとしましょう。既に沢山腕時計は持っているとします。どう考えても無駄。でも欲しい。このようなとき、実際に買ったとしても、あーまた無駄遣いをしてしまったと後悔してしまうことありませんか?そのような精神状態はあまりよくありません。そこで「がまん貯金」。小さながまんを重ねた結果で買ったのだからという事実は、先の後悔の念をきっと楽にしてくれます。ですから、深く考えないことが大事。気軽にがまん貯金を重ねて、気楽に無駄な買い物をしましょう。小さながまんは知らず知らずにしているものです。それに気が付くのも素敵なことです。それに、欲しいものを手に入れることは、本来的には無駄ではないでしょう。

さあ、アプリに欲しいものや旅行の行き先の写真、金額を登録しましょう。あまり高いものはおすすめしません。本当に欲しいかどうかわからないけど・・といったものがおすすめ。がまんの結果のご褒美として無駄買いも悪くない!

がまん貯金って?例えば、

「あー、喉が渇いた。カフェでコーヒー・・、ちょっとがまんして缶コーヒーで済まそうかな・・。」

缶コーヒーを飲みながら、大体100円がまんしたから、がまん貯金100円をポチッ。大体・・といったゆるさが大事!小さな無理のない「がまん」を積み立てよう!

Apple Watch対応)iPhoneは鞄の中でオッケー。Apple Watchがあれば、もっと手軽にがまん貯金!(Apple WatchiPhone との通信圏内にある必要があります。)

貯金が貯まると目的の写真がどんどん大きく実現に近づきます!

目標額に達すると、達成のメッセージがでます。(ただそれだけ・・。)

がまん貯金を達成したということは、あなたはそれだけの額のがまんを積み立てたってこと!がまんしなければ買えなかったものが買える!買っちゃえば?行きたかったところに行ける!行っちゃえば?がまんしなかったら、そもそもそれだけの金額を失っていたはずなんだからー。


注意1:達成時にそれだけの金額のお金が残っているとは限りません。

注意2:あくまでも自分の「気持ち」コントロールに役立ててください。そもそも買えそうにないものをがまんしたとして貯金というのはちょっとおかしいw

注意3:扱える金額の上限が内部処理の関係で20億円となっています。これでは足りない!と言う方は、通貨単位を M¥ (Million Yen) 等に変更して活用ください。

注意4:本当に必要なものはがまんしないで下さい。暑い日に水の購入をがまんすると熱中症になります。水筒持参したから、200円節約できたはず!というのは有りだと思います。水筒買うのにコストがかかった・・という細かいことは考えないw

注意5:積み立て額の訂正機能はありません。一端0にリセットして、カスタムから正しい?積み立て額に変更して下さい。ただ、正しい積み立て額って?おおよそで積み立てるのが良いように思います。(Ver.1.3.2 にてカスタムボタンにて減金できるようになりました。)

注意6:がまん貯金の結果をもって、他人(親等も含む)に購入をせがむのは難しいと思われます。あくまでも自分用。がまん貯金の楽しさはどんどん人に伝えて下さいw

注意7:シンプルさが特徴です。あまり複雑にする気はありませんが、今後のアップデートで機能追加等検討します(アプリの色テーマ設定や、達成時のアニメーションの種類の追加など)。

注意8:登録する写真を前もってiPhone標準の「写真」アプリでデコっておくと良いですよー。

 

さて、この「がまん貯金」の作成の経緯を書いておこう。私がこれまで作成したアプリにはそれぞれ技術的なテーマがある。つまり、ニーズを捉えてアプリを開発しているわけではない。あくまでも、何か技術的なテーマがあって、その技術的テーマが活かされるアプリの作成を考えている。その結果としてニッチなものになっているような気もするが、ニーズスタートだと、大抵のニーズに応えるアプリが既に存在している現状では、スタートすらできないようにおもう。

 

このアプリについての技術的テーマは、ズバリ「Apple Watch」であった。(JoyaTimerはそもそもアプリ作成をし、公開するがテーマ。TheDLAは数値計算的な事がスマホでそもそもできるのか?という実験。今は非公開になっているが、WasPlayingというアプリは、テーブルビューという表示の仕方を使えるようになりたかった。JoyaTimerSは、広告モデルのアプリ作成をしてみたかったという事情。基本これらの積み重ねから、がまん貯金に至っている。)

 

Apple Watchは発売当初から使っている。ただ、Apple Watchでこそ真価を発揮するアプリというのがあまり無いように思えた。よって、Apple Watchからの利用が便利だよねというアプリのアイデアを考えるところからはじまった。(つまりApple Watchスタートで、そこからアイデアを考えはじめた。)

 

基本的に、あまり高度なタスクをApple Watchでする事はしない。あまりシビアでは無いタスク。当時、自宅から最寄りの駅まで歩くと30分くらい、バスだと200円程度で5分という位置に住んでいた。それをほぼ毎日歩いていたので、かなりの額を節約しているはずだと思っていたが、あまり確かでは無かった。(計算すればすぐだが。)また、駅前にスタバがあったので、そこでコーヒーを飲むことも多かったが、それも今日は節約しようとやめたことも多々あった。そういう日々の節約がどれくらいなのかを知りたいと感じ始めた。そういう、ちょっとした節約は思いつきで発生する。つまり、突然おこる。よって、Apple Watchの出番だと思ったし、結構な頻度アプリを起動するであろうから、広告モデルでいけるだろうと考えた。(対照的なのが JoyaTimer で、こちらは一年に数回しか使われないアプリであるため、広告モデルは使えない。ただ、工夫次第で、頻繁に使ってもらえるようになるかもしれないとは思っていて、今後改良は行う。)Apple Watchスタートで、がまん貯金というアイデアに落ちつくまで、多分数日だったと思う。その間色々考えたと思うが、もう忘れてしまった。こういうのはメモにとっておいた方が良いなと今更思う。

 

さて、Apple Watchのアプリは、今は単独アプリ(iPhoneと通信すること無く単独で動作するApple Watchアプリ)が存在するようだが、当時はiPhoneとの通信が前提のアプリのみ開発可能であった。Apple Watchアプリの作成の困難さは、Apple Watch側のデータとiPhone側のデータの同期をApple WatchiPhoneとの通信によって実現する点にある。iPhoneの中だけで完結するアプリはそういった事はあまり考える必要が無いが、iPhone上でデータ(例えばつもり貯金の金額)をかえたときに、Apple Watchに対して変更を告げ、Apple Watch内のデータの変更も必要となる。このような、デバイス間の通信のプログラミングはあまりしたことが無かったため(以前MPIという仕組みを使った、数値シミュレーションの並列プログラミングはしたことがあり、基本それと同じではあったが、長らく時間がたっていて結構苦労した)、試行錯誤が続いた。あと、Apple Watchのプログラミングに関する資料が圧倒的に不足していて、iPhoneのプログラミングに比べてかなり難易度が高かった。さらに言えば、Apple Watch自体が進化中のデバイスで、そのプログラミングの仕様が結構頻繁に変わる。これにも難儀した。

 

さて、最終的に完成し、こちらは一発で審査に通り AppStore に並んだ。その後、自分のアプリが話題になっているかとサーチすると、似たようなアプリが実は既に幾つかあることがわかった。これは、私の開発スタイルが、こういったことをしたい!から発生しているのでは無く、技術的なテーマ(今回はApple Watchの利用)から来ているためで、そもそも同種のアプリがあるかどうかをチェックしていなかった。ただ、Apple Watch対応しているこの手のアプリは「がまん貯金」だけのようだし、他のアプリは高機能すぎる感がある(私のがシンプルすぎるともいう)ので、差別化にはなっているだろうと勝手に思っている。ただ、繰り返しになるが、ニーズベースでアプリ開発を考えると、必ず先行するアプリがあって、その完成度が高いと作る気にすらならないだろう。だからこそ、まず勝手に自分で作るものを決めてしまって、完成させてしまえば良いと思う。どうせ似たようなアプリは沢山あるし、その中から選ばれないとしても、自分自身のスキルは確実に上昇している。次に繋げれば良いではないか。

 

ところで、Apple Watchは結構な人数が使っているはずだが、あまり積極的に活用されているようには思えない。そもそも、Apple Watch対応アプリの開発者が少ないようだ。これは、先に述べた、Apple Watchアプリ開発に関する情報が圧倒的に不足しているせいだとおもわれるが、これはApple Watchの開発環境がある程度落ちついて、もうこれ以上大きく変化しないという状態にならないと難しいだろう。ただ、最近はそのような兆候がみられるので、ある時期にApple Watchアプリが数多く開発されるようになるのかもしれない。ただ、やはりその利用シチュエーションを考えると、なかなかApple Watchでないと!というものが思いつかないのは事実だ。私もこれからさらに考えてみたいと思っている。(きっと、Apple Watchアプリにはまだおおきなチャンスがある。)

 

アプリ作成をしてみたい!という人は結構多いだろう。沢山の本も出ていて、解説通りに進むと何かできあがる。だが、大抵その先に進めないだろうと想像している。何故かというと、プログラミングの基礎知識が圧倒的に不足していると思われるからで、それはある程度地道に積み上げておかないとならない。一方で、アイデア勝負のアプリについては、あまりプログラミングの能力は要らないものも有ると考えられるが、そういったアイデアアプリは結構既に多くでていて、そのような画期的なアイデアアプリの創出は凡人には難しい。

 

そういう意味で、アプリ作成なんて楽々的な雰囲気が世の中にあって、やればできるけどやってないだけのように思って居る人も多いのではないだろうか。何か完成品としてアプリをAppStoreに並べるにはそれなりに積み重ねが必要だ。私の場合には、そもそもプログラミングの技術は持っていた上に、小さなちょっと変わったアプリ作成で技術的な細部をおさえつつ、さらに高度なアプリ開発の能力開発をしているのである。

 

ただ、アプリ作成は楽しい。これは間違いない。作ったものが世の中に簡単に出せて、評価され、場合によっては収入が得られる。プログラミングをする人にとっては20年前には考えられなかった夢のような状態だ。評価されようがされまいが、小粒なアプリを作成しつづけ、スキルを身につけていくことは趣味としても楽しいし、是非そういう人が増えればと思う。ただ、世の中に思われているよりはハードルは高という印象があって、そういう意味でもじっくり取り組める趣味であると思う。アプリ作成入門という風な本に従って何か作成できたら、その喜びそのままに、何かオリジナルのものを作成する!まずは、その本の内容を少し変更したものでもよい。まずは次の行動すること、それが大事だ。アプリ作成なんて楽々ということはないが、やればできるのは確かだ。何か作れる。それが評価されるかどうかは次の問題で、まずは作ってみよう。そうしないと何もはじまらない。ただ、アプリ作成なんて楽々というのが頭にありすぎると、最初の困難さで自分には向いてないという風になってしまうかもしれない。

 

これまでは、アプリ作成って難しいですか?と聞かれたら、「まぁそれなりに難しいけど、少し頑張ればできるよ、沢山本も出てるし」というふうに言ってきたが、これからは「うん、かなり難しいよ。でも、やり応えがあるよ。」と答えようかと思う。実際、苦労して何かを成し遂げた人は、大したことない、私でもできるんだからみたいに言うことが多い。これは謙遜でもあるが、こう言うとちょっとかっこいいじゃないか。先人の言うことをあまり、鵜呑みにしない事も大事だろう。頑張ってないという成功者は大抵裏で猛烈に頑張っている。これは、私が子供の頃には常識であったが、今はそうでも無いようなのでわざわざ言っておく。

 

がまん貯金

がまん貯金

  • Daishin Ueyama
  • ライフスタイル
  • 無料

apps.apple.com

 

最後に、良くAndroid版もというお話を頂く。正直に言えば、時間が十分あればできるが、なかなか難しい。一つに、AndroidiOSでは開発環境や開発言語が異なる。両対応を前提に開発環境を選べば作成も可能だが、それはそれで色々制限が出てくる。今のところ、iOSの開発が楽しくてやっているため、Android版を是非作りたいという積極的な気持ちが出てこないとやらないと思う。そもそも、Android端末を一つも持っていない・・。それから、Android端末には種類が多すぎて、多くの機種で動くようにする事が結構大変であろう。iOSですら、既に結構大変なので、そういう意味からも敬遠してしまう。

 

もしも、JoyaTimerのAndroid版を作成します!という希有な方がおられたら、Twitter(@JyousenJii)に連絡下さい。ああ、そういえば、JoyaTimerは当初 Objective-C という言語で作成したが、その後 Swift という言語が現れ、Swift言語を学ぶために JoyaTimer を Swift で全面書き換えをしたということがあった。アプリ開発を始めるには丁度良い難易度のプログラミングであったなと思う。