飽きっぽい性格がそうさせるのか、何かこれをやるぞ! と決めたことをやっている間に他のことを思いついてとりあえずメモっている間にどんどん積み上がっていって、果たせないままに今年も大晦日が近づいてきました。残された人生の時間と話し合って、自分が手を出すのはやめとこうと思ったアイデアをここに記しておきます。ブログに書くときの記事タイトルと想定はてブ数を併記しますので、参考にしてください。
「Perl プログラムを変数名で静的解析する」
YAPC::Asia 2013 で Perl の静的解析の話が盛り上がっていて考えた。Perl のような言語に静的解析のために型アノーテーションをつけるのは煩雑で間違いを起こしやすいと考えられるけれど、静的型のない言語は名前付けが相対的に重要であることを利用して、変数名を型アノーテーション代わりに使用するというもの。例をあげると
sub get_req { ... return $req; } my $res = get_req(); # return $req された変数を <del>$req</del>$res で受けている!
というような齟齬を静的解析によって検出できないか、というもの。
- やらなかった理由: Perl 最近書いてなかった。
- ブクマ数の根拠: Perl を題材にしたのがよくなかった。Ruby か JavaScript ならもうちょっとブックマークがついたはずである。
「ソビエトロシアではブラウザがあなたをオートメーションする! または humandriver で自動テストを手動化する」
ブラウザ拡張。ブラウザオートメーションの API である WebDriver の実装を人間が行う。WebDriver API では E2E テストなどで、クライアントが送る「このセレクタで得られる要素をクリックして」みたいな要求を実際にブラウザを(プログラム的に)操作することで達成する。この「プログラム的に」という部分を人間が実際に行うことで機械に使われてる感じがして面白い……だけでなく、WebDriver を使うスクリプトの検証に利用できる。
動作イメージはこんな感じ。
// 雰囲気コード driver.findElement('button#submit').click();
たとえば E2E テストで上のように書かれていたとすると、起動中の Chrome にポップアップなどで「button#submit をクリックしてください; OK」と通知される。その通りに実行したのち OK を押すとクライアント側に操作が戻りテストが進む。
- やらなかった理由: WebDriver API を尽くすのが大変そうだった。
- ブクマ数の根拠: 記事タイトルがややウケだったが、実用性があまり認められず伸び悩んだ。
「機械にレシピを生成させ、食べる」
機械にレシピを生成させてクックパッドに投稿し、つくれぽを教師として学習し、新たなレシピを考案する。飲んでる最中のアイデアだったけど同僚が即座にこういう文献があるね、と出してきたのが面白かった。
- やらなかった理由: 調理中の画像を用意するのが面倒そうだった。怒られそう。
- ブクマ数の根拠: 誰もが知っているウェブサービスと、料理という馴染み深い題材による裾野の広さでエンジニア以外にも注目された。初期のいかにもまずそうなレシピにつくれぽがつかなかったため自分たちで作って食べた、というエピソードもうけた。
「Go でジェネリクス的なことを実現する(import を利用して)」
go get は Git リポジトリなりからコードを取得するので、Git サーバを自作すれば動的にコード生成することができる。そこで import 時に適当なパラメータを与えることで書き換えられたコードをダウンロードさせることができないか……と考えた。
- やらなかった理由: Under Construction | Random とかぶった……。
- ブクマ数の根拠: なかなか面白いアイデアだったけど、実用的にはあまり広がりがなかった。
「hubot-ramen で定時退社を促進する」
hubot を使い出したので考えたやつ。Tumblr の ramen タグ からラーメン画像を探しだして、チャットに投稿する。定時とともにラーメン画像を投稿することで仕事のやる気をなくし、結果的に定時退社を促進するというソリューションの提案。
- やらなかった理由: やりゃあ一瞬だが別にそんなにラーメン好きではないのだった。
- ブクマ数の根拠: お前らラーメンとか好きなんだろ? という態度が透けて見え、かえって反感を誘ってしまった。
以上、総計 500 ブクマ(想定)ちかいエントリたちの紹介でした。いかがでしたか? もし気に入って実現してみた人は僕と飲みましょう! その際にはおごっていただけると幸いです。
またこのエントリを書く際にいくつかのアイデアをサルベージし、やる気を復活させることができました。みなさんもこの年末、過去のアイデアを棚卸ししてみてはいかがでしょうか?
よなよなエール [ 350ml×24本 ] クラフトビール ペールエール エールビール
- メディア: 食品&飲料