@kotyのブログ

PythonとかAWSとか勉強会のこととかを、田舎者SEがつづります。記事のライセンスは"CC BY"でお願いします。

日報13日目

午前中は洗濯と引っ越しの見積もり。

午後は実家で借りた車の返却、掃除。あと以前からメンテしているアプリのメンテ。久しぶりにVisual Studioを開いた。

所感

時間がないこともなかったけど昨日の長距離運転の疲れが相当あり、これといった作業はしなかった。明日はできるはず。。。

日報11日目

アプリを実地でテストしてきた。2回しか試せなかったけど、期待した挙動になった。精度的には問題なさそう。もう少し長い距離で確認する必要もあるが。。。まあテスト初回としては大成功だし、MVPとして有効なアプリだと確認できたと考えている。

f:id:kkotyy:20190315100456p:plain

f:id:kkotyy:20190315100450p:plain

wrapじゃなくてlapだ。。。修正済み。

当然、課題もある。課題管理が必要になってきた。

  • pixel3の画面サイズだと、明るさ最大にしてもさすがに泳ぎながらの視認性が厳しい。7インチくらいあれば良さそう。7インチタブレットあるけど、古いのでアプリをインストールできるか要確認
  • ターンのしぶきで意図しないタッチが起きてしまい、設定メニューが開いてしまった。キオスクアプリ化する手もあるようだが、ケースに入れるのが現実的な対応だろうなぁ
  • スタート時はカウントダウンしてほしい。スタートをタップしてすぐ泳ぎだすのは慌ただしい。
  • 自分にしか使い方は分からないので、UIの改善。ラベルつけるとか。泳ぎながら見える必要があるので、必要な情報は大きく表示してそれ以外は表示したくないんだけど。。。
  • リファクタリング
  • 最後の停止時の考慮がまったくなく、stopをタップするしかないのがいまいち。あらかじめ泳ぐ距離を登録しておいて、その距離に達したらストップウォッチを止めるとかしたい。
  • 静かな場所でやるなら現状方法の、音が最大になる瞬間をピークとすることで良いが、多くの人に使ってもらうには雑音があっても使えたほうが良い。となるともっと高級な音声認識が必要になるが。。。機械学習を適用したとして、学習モデルをdartから使うことってできるんだろうか。
  • 有料で売るとなると、ターンの認識精度を確かめるための簡易アプリが必要になるのかも。。。
  • ワークアウト管理サービス(stravaとか?)に投稿する機能がほしい

現状でも自分のニーズには合致するアプリになった。とても嬉しい。どうにかplayストアで公開するまでもっていきたい。

午後は実家の引っ越しを手伝う予定。

日報10日目

雪が降ったけどこの時期なのですぐに融けた。保育園に送ったあとにプールで練習。その後は終日自宅にてアプリ開発。途中、引越し業者に見積もり依頼をした。自己都合の引っ越しなのにこの時期に重なってしまった。。。

録音開始タイミングの調整、レイアウトの調整などをしてアプリはアルファ版としていったん完成した。

f:id:kkotyy:20190314170407p:plain

これでいったん現場で使ってみる。知らない人のために解説すると、クイックターン音を検知してラップを取ってくれるアプリである。水泳以外にも使えなくはないかも。

公開するには、以下の調整が必要と考えている。

  • 自分にしか使い方は分からないので、UIの改善。ラベルつけるとか。泳ぎながら見える必要があるので、必要な情報は大きく表示してそれ以外は表示したくないんだけど。。。
  • 停止時の挙動がイマイチ。録音を即時停止すべき。
  • リファクタリング...

所感

  • flutterのレイアウトシステムがまだよく分からない。Containerで適宜ラップしないと、widthやheightがinifinityだと怒られることがある
  • setStateの無名関数内でmutationする。無名関数はasyncであってはならない。この辺はvueのmutationと同じだな

日報9日目

アパートの水回りのトラブルで朝イチに業者に来訪いただいたため、立会をした。24時間常駐のためいつでも対応可能である。

その後はアプリの開発。タイマーへの組み込み中。ラップタイムデータをクラスに切り出したので多少ロジックはスッキリした。 しかしうまく動かない。。。何かがおかしい。

午後は腰を痛めないよう気を付けつつ、物置から実家への引っ越し作業をした。あとは本棚1個と寝具類だけになった。パソコンを運ぶときになって雪が舞ってきてあせった。

所感

  • 3月も半ばにさしかかってしまった。一応進捗は出ているが。。。
  • kotlinらしいコードになっていないのはオブジェクト指向プログラミングができていないからと、ツイッタでいただいたメンションで気づく。確かに全部入りクラスにはなっていた。。。つらい。

日報7日目

午前中は自宅で作業。アプリの開発の続き。

  • ピークを求めるロジックは完成。いろいろやった結果、平滑化せずに生データのまま最大値を探索すると精度が良かった。音声データを平滑化するとどんな影響があるのかよく分かっていない。この辺は大学のときに習ったはずなんだけど。。。今はパチンと手を叩いてピーク音を作っている。実際のターン音でどうなるかはまた別の話。
  • ストップウォッチに組込中。ターン音がしたときからのタイマーを作る必要がある。すこし煩雑。

明日は別件で作業できないが、金曜あたりに現場で試用できるところまでもっていきたい。

午後は実家で打ち合わせと荷物を運び込むスペースの掃除。晴れていれば荷物を運び込みたかったが終日降ったり止んだりだった☔。今後は引っ越し作業とアプリの開発を並行する感じになりそう。

偶然なんだけど、無職期間と引っ越し(あと奥さんの繁忙期)が重なったのはラッキーではある。