@shu223さんに誘っていただいて、ちまたで噂のハッカソンというやつに参加してきました。
11:30くらいから始めて、18:00までやっていたので、6時間くらい?
できたもの
水滴が落ちるようなインタフェースのメトロノームです。
下の「ー」「+」でBPMを設定して、画面のどこかを押すと始まります。(止めるときも同じく、画面のどこかを押す)
触りたいのに触れてなかったWebAudioAPI周りなど、ごりごりやってました。
やったこと
午前
-
レポジトリつくる
-
grunt-initやknife soloなどを、ッターンする
-
サブドメイン切る
- DNS書き換わるのが妙におそかったので不安になる。ムームーさん最近おそい?
-
github経由の自動デプロイしたかったので、そのあたりの準備
-
UIから始める
-
前に作ったWinstatusを使おうと思ったら、バグがぼろぼろ出てきたのでなおす
- ていうかREADMEもひどいから、だめだこいつはやくなんとかしないと
-
canvasで水滴っぽいグラフィックを描く
- ベジェ曲線をぽちぽち描いてる
-
水滴が落ちるところの動画とか見ると、やっぱりちゃんと再現するのは時間かかりそうだったので、ここはあんまり凝らないことに
-
メトロノームの基本機能っぽいところ実装
午後
- WebAudioAPIしらべる
- いいデモがけっこう見つかった
- そのあたり実装
- sourceは使い捨て、というあたりが最初わからなくて詰まりかけた
- なんかchromeで音出ないけどcanaryでは鳴る、みたいなことが起きて辛かったけど、chrome再起動したら鳴った。なぞ。
- メトロノームのbeatに合わせて鳴るようにする
- BPMを速くするほど、音が高くなるようにした
- filter的なことになるのかなーと思ったら、sourceのplaybackRate変えるだけだった
- UIをいろいろ調整
- 「ー」「+」のボタンをぐりぐりしてBPM変えられるようにしたら、音程がぎゅいーんと上がる効果が出て楽しかった
- スタート/ストップができるように
- 音系のアプリは、UI分かりづらい = 音が止められないと非常にめんどくさいなぁと痛感
さいご
- 発表
- アイデアもらったデザイナー先生に報告
ぜんたいてきに
- 周りがiOSエンジニアばっかりだったので新鮮で楽しかった
- のわりには、chefとかWAFとかnodeとかの話もぽろぽろしていて、出る幕あった
- WebAudioAPI、iOSならけっこうちゃんと動くっぽいので、攻めがいありそう。近いうちwrapperとか書く。
そんなかんじで、よい日曜日の過ごし方でした。
また行きたい、というか企画しようかなぁ。
音の講座も週末型にきりかえてもいいかも,。