HOKKAIDO アイデアソン&ハッカソン2014 に参加した

本番の2日間の話をさらっと

テーマ

「1タップ(1クリック)で価値を生み出すもの」
話をきいてみると、1タップというより1アクションだった。
たとえば「ツイートする」とか。1タップだと私はそんなに価値生めなくて一発屋みたいなことして終わりだなと思っていたので、少し気持ちが楽になった感じがした。

1日目

流れ

11時オープニングで午後にデモタイムが2回ある。デモの間は1時間半か2時間くらい。
チームごとにアイデア出しからはじめて、開発をしてデモに入る。
何かを聞き逃したのか去年の先入観のせいか、1日目はアイデア出しだけするのかと思っていたのだけれど、実際に作り始めて作ったものでデモするのね…ってことにデモの50分前くらいに気づいた。

イデア出しと作り始めたもの

私はひとりチームなのでひとりアイデア出しをしていた。
なんとなく、困っていることを解消するアプリをつくろうと思って、日々の困っていることを書き出していった。自分が必要とするアプリなら帰っても触ってみたりするかなと思ったのだ。(このへんの課題から出すというアイデアの出し方は、アジャイルリーンスタートアップの研修の影響を受けている気がする)

色々困っていることを出してみて、最終的に私が選んだ課題は「唐突にひとを傷つけたくなる」というものだった。これ多いのだ。一人でいるときはひとりごとで発散しているんだけれど、publicな方向に向くと危ないんだよなぁと常々おもっているので、それを解消するアプリをつくることにした。

どういう形にしようと考えていた時に「悪意をすてきな言葉に変換して世界に放出する」っていう素敵なアイデアをもらったのだけれど、この時点で気持ちが後ろ向きだったので、悪意の壺という「悪意を吐き出してキャラクターを凹ませるアプリ」をつくることにした。

1stデモ

画面遷移して悪意の雰囲気を感じる画像が貼ってあるだけのウェブページをつくる。2画面。
時間も無かったし、アイデアを見せるには多分これで良いだろうと思った。掴みはオッケー!

デモ間の作業

掴みはオッケーだったんだけど私の気持ちがオッケーじゃなかった。デモをした後で悪意を吐きためるというコンセプトに興味を失ってしまった。ネガティブなパワーは持続に向かない。
他のものをつくろうか悩んだけど、デモまであと1時間時点で作りたいものがなかったのでこのまま行くことにした。どうしてもコードを書く気は起きなかったので、最初に作ったキャラクターを段階的に進化させてストーリーをつくろうと思ってずっと絵を描いていた。うまく逃げたって誰かに言われたけど、その時できることをやっていただけなの!

2ndデモ

正直にデモ後の心境の変化と、コード書く気がおきなかったということをお話して、できた絵をざっと流した。絵は色調暗いけどちょっと明るくなる感じになったので、それを生かす何かができたら良いなぁ…… というのを話して、デモと1日目が終わったのだった。

幕間

1日目の終わりにピザ食べた

アンチョビのおいしかった

2週間

1日目と2日目の間は2週間あった。

  • 生活リズムがすごく後ろにずれていてからだがしんどかった。同じCDを聴き続けて頭から離れなくて寝る時も脳内で流れ続けていて興奮して眠れない みたいな状態が続いていた。
  • 何も作れないんじゃないかという絶望みたいな不安が消えない
1日目から1週間後くらいのツイート



バックレるなんて表現10年ぶりくらいに使いました(年甲斐なし)

前日のツイート



ご心配をおかけしました…

背中を押してもらって少し不安が解消して、寝る直前にCDの曲が流れている脳内で考えていたら作るものを思いついた。音なら興味が持てるなって思った。
ふたつ思い浮かんで、ふたつのうち、楽しさまでの距離が近そうな方を選んだ。

2日目(2週間後)

会場に行っただけで褒められた
(ご心配をおかけしました…)

流れ

11時から。朝イチでチームごとに発表する。前回やったことと、2週間のうちにやったことがあればアップデートを。2日目も午後にデモタイムが2回ある。デモの間は2時間くらい。1日目とおなじ。

最初の発表

2週間の間に悪意が浄化されたのでこの前のは忘れて、今日は円周率のメロディを生成するものを作りたいと思います。という話をした。
"自由…" と言ってもらったので嬉しい。掴みはオッケー!(ちがう)

円周率のメロディ?

0-9に音を当てはめてメロディにするというもの。低いシから高いレまで。
10代の頃、MIDIでひたすら打ち込んでいて、最近もやったんだけど結構大変なので自動生成したくなった。
(ちなみにコレ→ https://github.com/imaz/ennui-web/blob/master/music/pi.mp3)

数値を入れたら音が出るやつをつくる。
コンパクトだけど1日でやるにはギリギリのボリュームではないかと思ってつくることにした。
なにより音を出すことに興味がある。楽しい。
音を出せるライブラリを知っていてとっかかりがあったのも大きかった。
知っているけれど触ったことがなくて使ってみたかった。おお、ハッカソンにピッタリ!
(ちなみにコレ→ https://github.com/mohayonao/timbre.js)

1stデモ

デモまでにやったこと

Getting Started やその周辺のコードを動かしてみて、ライブラリを触ってみる。
それから「数値を音に置き換える」という目的に必要な以下の機能から調べていった。

  • これを呼べば再生開始できる というもの
  • 音階もしくはHzを指定して音を出す方法

また、デモ用にブラウザにサンプルを組み込むあたりも行った。
最初のデモの目標

  • ブラウザ操作から音を再生/停止できる
デモで流したもの

「ウェブブラウザでボタンを押すとサンプルコードが動いて音が流れる」というところまで。
ボタンで再生はできたものの、停止がどうにもうまくいかないという状態だった。
しまださんからコメントいただいて、停止はとりあえず置いといて、数値を変換できる方法で進めましょうか と方針が決まってデモが終了した。

2ndデモ(最終デモ)

デモまでにやったこと
  • 数値を入力すると対応する音が流れる
    • ここいちばんロジック書いた気がする! 基礎練みたいで楽しかった。
  • 停止できる
    • ブラウザ操作からの停止方法がわからなかったけれど、最後まで再生したら止める というのはできた。

ここまでが最初目指していたところ。50分ほど余したので他にやりたいことを考えた
1. 転調できる
2. 音をもっとパキッとさせる

2はなんとなくすぐできそうだけど楽しみも少なそうなので、先に時間がかかりそうな1に手をつけることにした。

それぞれの音のHzを調べて、調ごとに音を登録しておけば良い! と思ってデータベース化しようと整形をしていて、30分くらい経ってからものすごく時間がかかりそうな雰囲気を感じてあきらめた。

それから2を10分くらいで調べて適用して、日本語ライブラリをみつけてショックをうけたところで2ndデモになった。

デモで流したもの

最終デモということで、最初つくろうと思っていたもの、どこまでできたか、どういうふうに進めたかを話して、今の状態をデモした。

  • 最終的に当初の目標だった「数値を入れるとメロディが流れる」というのはできた
  • 50分余った時にやったことと判断した時間とか
  • git log をざっと(見せようと思ったけど自分が把握してなかった)
  • メモっておいた円周率をコピペして音を流した

ふりかえり

ひとりで参加するメリット・デメリット

メリット
  • 方向転換がいくらでもできる
  • 誘って断られることがない
デメリット
  • 周りがチーム開発をしていると孤独感めちゃ強
  • 気持ちが落ちたら落ちっぱなし
  • 付箋でも盛り上がれない
  • しっかり興味が持てるものを考えて作りはじめないと止まる
    • チーム開発をするとそれ自体がモチベーションになるので止まることがない
  • 知ってる範囲でしか作れない
    • 1人なのでハマったらオワタ状態
    • チームならだれか1人でも進んでいれば進捗大丈夫です

イデア出ししてわかったこと

困っていることを出すより好きなもの出したほうがいいかも

課題駆動はけっこう難しいなぁと思った。出した課題の上っ面だけみてシステムで解決しようとするとねじまがった形になって生まれてくる。そうすると途中で課題を解決しないことに気づいて興味なくなっちゃう。はっ それみたことある! (1日目)
難しいのもあるし、そもそもシステムで課題を解決することに興味無いかも。
なので、楽しさや興味で作り始めるのが良さそうだなぁと思いました。そのほうが短時間で小さく価値を生み出しやすそう。

デモの良さ

2日目1stデモの前に、必要な機能を探すのと、デモ用にブラウザで動かせる状態にするというのを短時間でいっぺんに行った。
「外側から叩いて使える」という部分はひとりで開発してると最後にまわしがちなのだけれど、ざっくり作った方が見通しがたって良いなぁと思った。
そういえば去年のアイデアソン&ハッカソンでも、デプロイするところから始めたなぁ。あれと一緒だった。去年の私の方が賢いのでは……

あとは、ハマる時間がそこで切れて方針が定められるのが良かった。
区切りをいれるのは一人だと難しいけど、中間地点があるのは良いなあ。

デモの苦手

デモ前に「ピリピリしてきましたね」「あと何分です」っていうの、みんなそれに盛り上がったり集中したりしていたけれど、あの時間がすごく嫌だった。わたしはああいう雰囲気や、時間のプレッシャーを感じる状態が本当に苦手みたい。デモの準備は大体数分前にできていたのだけれど、「あと何分」っていう言葉を聞くだけで心がどす黒くなって血の気が引く感じがした。ビョーキかょ。はー!ハッカソンだめかもー!(思い出しナーバス)

もっとこうしたかった

開発のすすめ方

2日目2ndデモ直前50分、「転調ができる」という機能をいれようとしたところ。
これはアプローチが間違ったなと思っていて、まずは「イ短調に変換できる」とかで良かった。
全部の転調をサポートするにはデータを入れるのに時間がかかりすぎるし、そこまでやるならHzとかで計算して出した方が楽そうだ…でも1hでできる量ではぜんぜんなかったのであった…(--;)
スバラシイコードじゃなくても最小で効果が出るところを目標にするのは、ハッカソンの最初だけじゃなくて、何かをはじめる時に都度考えないといけないですね。気づいたらやり過ぎなことが多い。

デモのやり方

しだらさんが最後に「僕達のチームはxx時くらいには機能開発をやめて、あとはデモのやりかたを考えていました」って言っていたのを聞いて、それやればよかったなーと思った。先に言ってょ!! (←何度も聞いて毎回忘れている…)

最終デモで円周率をコピペして音を流した時、しまださんが「できたんですね…全然わかんないですけど(笑)」って言っていて、そういえばこれが円周率を変換してできたメロディなのかどうかって他の人に伝わらないよなって気付いたのでした。
もっと簡単な数字とか、きらきら星のメロディとかを、その場で打ち込んで流してみる っていうのをやればよかったなぁ。
そしたらきっとデモをもっと楽しめたな。

ハッカソンの時、作ることや作り続けられることを重要視しがちなのだけど、リリースする瞬間ってもしかしたら一番大事なのかなぁと思った。ハッカソンだけじゃなく、多分、普段からないがしろにしていそう。もしくはそういう機会をもっていない。いや、両方だ! うっ…

よかった

  • はじめて、ハッカソンで書いたコードを家でさわりたい気持ちになっている
  • 1年前とちがってRailsでひっかかることがなかった
    • 仕事のおかげ
  • こころのおもむくまま方向転換できた
  • わいわいしてるとこでひとりでやるもんじゃない って気づけてよかった
    • 離れてソファでコード書いて癒えた
  • 自分のモチベーションのことちょっとわかった
    • 何よりも強いのは好みにあったプロダクトで、心が安定するのは良いチーム

ハッカソンのこと

ハッカソンは、やっぱり苦手です。特にコレ

何も作れないんじゃないかという絶望みたいな不安が消えない

はじまる前もずっと不安で、案の定1日目はうまく乗らず。
ものつくるの好きだけどつくりたいものがない、ほしいものない、みたいな気持ちで、ハッカソンというか、ものつくる人としての問題というか、問題とは思ってないんだけど、やりづらいところみたいなやつ。
ハッカソンに出て毎回抱える悩みな気がする。
この不安を解決しようとしてないからかな…

あとやっぱり時間に追い立てられるというのが、苦手だ。
苦手というかつらい。どす黒い気持ちになってしまう。

どっちもチームになればまた違うのかもしれないけど
チームつくろうとして断られるのももうつらい…
ハッカソンつらい……?

つらい?

これ以上書くと落ちていきそうだからもう終わろう!
ナーバスナーバスゥ!

おわりに

つらい感じで〆てしまったけれど、良いとこあった。1年前と比較して所々成長もあった(はず)。
(……1年前との違いがあんまり自覚できていないからそんなに変わっていないかもしれない…)

あとよかったのはほんのいちぶに出会ったこと。すごくすてき
ほんのいちぶ - 気になるフレーズから新しい本と出会う

あとはあとは……あとはやっぱり、もの作ってる時は楽しい。
つくりたいものとか、使いたい技術とかないんだけど、ものづくりするのを楽しいと思えてよかった。

にわか感( °_°)