PerlでTDDするためにguardっぽいモジュール書いた

何をやったか

PerlでTDDをしたくなったのだけれど、いちいちテストスクリプトを修正毎に回すのが億劫になってしまったのでファイルを監視して勝手に回すモジュール書いた。perlにguardっぽい挙動をさせるもの。

中でやってることは簡単で、newするときに監視したいプロジェクトのrootディレクトリを指定する。startでFilesys::notify::simpleへの監視が始まる。更新されたファイルが *.t であればそのテストだけ回し、*.pl *.pmだったらワイルドに全部回す。

TDDへの意識の高みが消え失せる前に書かねばというモチベーションの元作ったのですごくシンプルなものになった(なってしまった)

テストについて

基本的にテストはめんどくさい。開発より単調な作業だし時間がかかる、だからこそ開発と平行してやるべきなんだけど、それがなかなかできない。

だとすれば、テスト作成に必要な準備は徹底的にめんどくさくないものにすべきだと思う。今回はモジュールにしてしまったのも本来はスクリプトにすべきだったと思っているしなんならスクリプトを起動する手間だって省きたい。vimを立ち上げたときに自動的監視が始まりテストが動き始めたら尚良い。

このモジュールを書きながら、そんなことをちょっとだけ考えた。

おわりに

このエントリは Qiita Perl Advent Calendarの14日の記事として書きました。

来年はちゃんと準備してテクニカルのことを書きたい。

Perl Advent Calendar 2013 - Qiita [キータ]

 

Dockerを入れるrecipe書いたら翌日に用なしになった

vagrantでdockerを使おうと思って、どうせならchefでいれられるようにしようと思って、こんなrecipeを書いた。

無事に使えるようになったのでやったーと思って寝て起きたらdocker provisionerがリリースされていた。

Vagrant.configure("2") do |config|
  config.vm.provision "docker",
    images: ["ubuntu"]
end

Vagrantfileにたったこれだけ追記するだけで入っちゃうらしい。

Docker - Provisioning - Vagrant Documentation

なんと。

8tracksでプレイリスト作った

 

8tracksを使ったよ

http://8tracks.com/

web上でプレイリスト作って共有できる8tracksを使ってみました。以下雑感

8tracksのexploreがカッコいい

8tracksにはいろんなプレイリストがあるのですが、それの検索機能であるexploreがすごい。タダのタグ検索なのですが、音楽とすごく相性がよくて素晴らしいのですよ

exploreの複数タグ選択がすごくよい

これが音楽ととても相性がよいと思いました。ロックでも激しいロックもあればジャズと組み合わさったロックもある。夜に聞きたい静かなロックもあるし朝向けのさわやかなロックもある。要はジャンルがめちゃくちゃ細分化されている中、1つのタグで自分の思い通りのプレイリストを探すのは難しいんですね。

f:id:hiroraba:20130502125000p:plain 

こんな感じに。直感的でええ感じです。

 

プレイリストも作った

聴くのもいいですが誰でもプレイリストが作れるので作ってみました。

yo ra tengoとかpoolsideとかpenguin cafeとか入れてみました。

Japanese salaried worker 2013-05 from hiroraba on 8tracks Radio.

まとめ

上のツイートにも書きましたけどマジで未来感じました。昔だったらCD借りて自分でカセットテープ(もしくはMD)買って頑張って録音して聴いてたりしてたので今の中学生とかはこんなサービス使って自分のベスト盤とか作っちゃったりするんだろうか。

全然関係ないんだろうけど8トラックとかけてたりするんだろうか。

ズーム 2トラック同時録音8トラック同時再生 マルチトラックレコーダー R8

ズーム 2トラック同時録音8トラック同時再生 マルチトラックレコーダー R8

C++でウェブアプリケーションが作れるWtを試した

C++でウェブアプリケーションが開発できるWtをためした

てっとり速くC++を勉強したかったのでubuntuにWtをインストールしてHelloWorldまでやってみました

まずはインストール

$sudo apt-get witty witty-dbg witty-dev witty-doc

公式docみながらコードを書く

http://www.webtoolkit.eu/wt/doc/tutorial/wt.html#_hello_wt

コンパイル

$g++ -o hello hello.cc -lboost_signals -lwthttp -lwt

ローカルで起動

$./hello --docroot . --http-address 0.0.0.0 -http-port 9090

ブラウザからアクセス

f:id:hiroraba:20130501170803p:plain

まとめ

とっとウェブアプリケーションつくることにします

perlでglitch生成スクリプト書いてみた

なんでこんなことをしたのか

どんな画像ができるのか

  • こんな画像ができます

f:id:hiroraba:20130417233142j:plain

なぜperlなのか

  • 作った当時それしか使えなかったからです

注意点

  • ファイルがぶっ壊れるので注意してください

使い方

  • glitched_hogehoge.jpgみたいなファイルが生成されます
$ perl glitch.pl hogehoge.jpg

コードはこちら

https://gist.github.com/5405098

ブログを書こうと思います

誰が書いているか

25歳のウェブエンジニアです。
都内のIT企業でプラットフォームエンジニアをしています。
音楽と読書と京都が好きです。

何について書くのか

  • プログラミングのこと
  • 読んだ本のこと
  • 聴いた音楽のこと

について書きます。

何のために書くのか

主に自分のために書きます。
自分の考えをまとめるために書きます。

いつ書くのか

自分が書きたいと思った時に書きます。
頑張って2週間に1回は書こうと思います。

これだけで終わるのもつまらないので
最後に最近大好きなPoolsideの動画を貼って終わりにします。