はじめに
この記事はLIFULL その2 Advent Calendar2018の19日目の記事です。
ボーナスが入ることを見越してりんごを買ったのですが、どうせだし面白いことをやろうと思って、やってみた内容です。
りんごとは
りんごとはAppleWatchのことです(以降は「りんご」に統一します)。
ちなみに、りんごは通知が来た時に手首に振動が来るので、通知を忘れることがないので地味に助かっています。
やったこと
りんごで操作して、やることをTogglに登録するアプリを作成しました。
また、このアプリの目玉機能として、やることの内容が ランダム に決められます。
自分でやることを決めてりんごを操作するのではなく、やることをりんごに決めてもらって自分がそれに合わせるスタイルを取ります。
家に帰ると自制して勉強や家事をやらずに、ずっとYoutubeを見てしまう僕にはぴったりの機能となっています。
やってみて
このアプリに合わせて生活することで、[自由時間, 家事, 筋トレ, 勉強]
が同じ時間ずつ行われるはずです。
あえてリッチな機能をつけずに使用することでシンプルに保っています。
このアプリで生活が改善されると思うので、使用し続けてみようと思います。
真面目な話
機能やアプリについては ネタ です。
iOS,watchOSのアプリどころかSwiftも書いたことなかったのでやりたいことが実現するのに時間が足りなかっただけです。
AppleWatchは常に腕につけているので、iPhoneよりもすぐに操作できるという利点があります。
その利点を生かして、これからやるタスクをAppleWatch上で操作するというのが元々やりたいことでした。
しかしアドベントカレンダーの期日と、自分の習熟度の兼ね合いで機能を削ることにしました。
最初から綺麗にしすぎようとしたり、機能を盛り込みすぎると何も進まないので、最初は小さく始めるのが大事だと思います。
やったこと
まずはやることを洗い出しました。
- Togglのtime_entry APIを使用する
- ボタンを押すとタスクを登録するように実装する
Swiftを一切書いたことがなかったため、いきなりiOSのプロジェクトを作成して実装を始めるとデバッグに時間がかかりそうだったので、cliアプリケーションの形式から実装をはじめました。
cliからTogglへデータをPOSTし、タスクが登録されるところまでをまず作りました。
その後iOSプロジェクトを作成し、StoryBoardなるものでbuttonを配置し、ハンドラ内で、cliで使っていた関数を使用するように実装しました。
iOS/watchOSアプリを書いてみて
XCodeの補完が便利で非常に書きやすかったです。
また、XCode内でほぼ全てが完結していて、見た目に反映されるので、初学者にも実は優しいのではないかと思いました。(普段Webを触っている自分には、動きが違いすぎて慣れるのには時間がかかりそうですが)
まとめ
- 小さい箇所からちょっとずつ作ろう
- 触ったことない言語でも作ってみたら意外となんとかなる
自分用ツール作りたい場合は、iOSアプリとして作ったほうが楽に作れることもありそうですね。