<< 7月 2012 | Home | 9月 2012 >>

アベンジャーズ

を観た。
アベンジャーズ|Avengers|映画


神話の世界と現代がつながるマイティ・ソーの世界から悪者がやってくるのをヒーロー達が集結して地球を守る、的なトンデモナイ設定。要はマーベルのヒーロー大集結、勧善懲悪のわかりやすい作品。

アイアンマン、マイティ・ソー、ハルクは観たことがあるけれどもつぎはぎ・無理矢理の筋書きではなく、それぞれの作品からキレイにストーリーが繋がっているのが見事!
ヒーローが多すぎで導入部分の尺がやや長い・・・。

最近の映画にありがちな伏線〜回収までやたら長かったり、どんでん返しの先にどんでん返しがあったりというような凝り過ぎな脚本ではなく、素直に派手な画面を楽しめる作りで期待通りでした。

グウィネス・パルトロウ好きとしてはもうちょっと彼女の出番を作って欲しかった。


タグ :
このエントリーをはてなブックマークに追加   

Dropboxにいれたgitリポジトリが[マシン名]'s conflicted copy](不整合)で壊れた場合の対処

gitでバージョン管理、GitHubに定期的にプッシュしていれば良いのでgitリポジトリをDropboxに入れておくのはあまり良いプラクティスではありません。

が、私の場合はcommitもstashもしていないファイルを安全に保管しておくためDropboxに入れています。

どういうタイミングで発生するのかはよく分かっていませんが一人で作業していてもたまーに"(ymbpr's conflicted copy yyyy-mm-dd)"というファイルが作られ、gitが混乱してしまうことがあります。

$ git pull
fatal: Reference has invalid format: 'refs/heads/master (ymbpr's conflicted copy 2012-07-05)'

大抵の場合$ find . -name "conflicted copy" *で見つかるファイルを削除すれば解決しますが今回はだめでした。

.gitディレクトリ内をgrep($ cd .git;grep conflicted * -r)したところ.git/packed-refs内に以下のような行が見つかりました。。
b98126521c3960ea8f9ca0b0c9653a27a04ed675 refs/remotes/origin/master (ymbpr's conflicted copy 2012-07-05)

このファイルが何を示しているのかわ知りません(!)が、これによりGitが混乱しているのは確実。
そこでpacked-refsをテキストエディタで開いて"(ymbpr's conflicted copy yyyy-mm-dd)"を含む行を削除したら解決しました。

このエントリーをはてなブックマークに追加   

hogan.jsを利用しようとしたら Cannot find module 'nopt'

プリコンパイル型のテンプレートエンジン、hogan.jsを試してみました。

nodeを使うようなのでまず brew で node をインストール。
$ brew install node

https://github.com/twitter/hogan.js をローカルにクローンして、binディレクトリにあるhulkコマンドを叩く・・・

hogan.js/bin$ ./hulk 
module.js:340
throw err;
^
Error: Cannot find module 'nopt'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object. (/Users/yusuke/Dropbox/opensource/hogan.js/bin/hulk:21:14)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.runMain (module.js:492:10)

noptというモジュールがないというエラーが出ました。
どうやらnodeではnpmというものを使ってモジュールの管理をするそう。
Issue #13: nopt · reid/node-jslint

以下のように npm 、それからhogan.jsが依存しているらしいnopt、mkdirpをインストールしたところ起動しました。
$ curl https://npmjs.org/install.sh | sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7882 100 7882 0 0 3907 0 0:00:02 0:00:02 --:--:-- 6361
tar=/usr/bin/tar
version:
bsdtar 2.8.3 - libarchive 2.8.3
install npm@1.1
fetching: http://registry.npmjs.org/npm/-/npm-1.1.57.tgz
0.8.6
1.1.57
cleanup prefix=/usr/local

All clean!

> npm@1.1.57 prepublish .
> npm prune ; make -j4 doc

sh: npm: command not found
make: Nothing to be done for `doc'.
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@1.1.57 /usr/local/lib/node_modules/npm
It worked
$ npm install nopt
npm http GET https://registry.npmjs.org/nopt/1.0.10
npm http 200 https://registry.npmjs.org/nopt/1.0.10
npm http GET https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz
npm http 200 https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz
npm http GET https://registry.npmjs.org/abbrev
npm http 200 https://registry.npmjs.org/abbrev
npm http GET https://registry.npmjs.org/abbrev/-/abbrev-1.0.3.tgz
npm http 200 https://registry.npmjs.org/abbrev/-/abbrev-1.0.3.tgz
nopt@1.0.10 ../node_modules/nopt
└── abbrev@1.0.3
$ npm install mkdirp
npm http GET https://registry.npmjs.org/mkdirp/0.3.0
npm http 200 https://registry.npmjs.org/mkdirp/0.3.0
npm http GET https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz
npm http 200 https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz
mkdirp@0.3.0 ../node_modules/mkdirp
$ ./hulk

USAGE: hulk [--wrapper wrapper] [--outputdir outputdir] [--namespace namespace] [--variable variable] FILES

OPTIONS: [-w, --wrapper] :: wraps the template (i.e. amd)
[-o, --outputdir] :: outputs the templates as individual files to a directory

[-n, --namespace] :: prepend string to template names

[-v, --variable] :: variable name for non-amd wrapper

EXAMPLE: hulk --wrapper amd ./templates/*.mustache

NOTE: hulk supports the "*" wildcard and allows you to target specific extensions too


環境:
Mac OSX Mountain Lion(10.8)
node(v0.8.6、brewでインストール)

このエントリーをはてなブックマークに追加   

Jettyでカレントディレクトリをwarアプリケーションとして実行するワンライナー

展開されたwarアプリケーションのルートがカレントディレクトリの状態で以下のコマンドを打つとmaven経由でJettyを起動し、warアプリケーションとして実行してくれます。

curl -s https://raw.github.com/gist/3401651/dd1dbb40ed8c0adcc324fb6d2e56aca3c22d9766/launch_war.sh | bash

ちょっとしたデバッグや確認に便利。
Maven/Javaが入っているのが前提。

・gistにあるスクリプトの実体


・スクリプト内で読み込んでいるpom.xmlのひな形


修正:
Ubuntuに入っているsedでは-iオプションが効かないそうなのでsedで置換後のファイルはリダイレクトで保存するようにした。

タグ :
このエントリーをはてなブックマークに追加   

効率良くデンタルフロスを使う方法 - 輪っかにする

フロッシングはしてますか?毎日フロスしないとどんどん歯垢がたまって歯石の原因になります。
会社のトイレの洗面所とかでフロスしてるとたまに変な目で見られますが・・・。

さて、フロスの使い方として両手の中指や薬指に巻き付けて人差し指で歯に沿わせる方法が良く紹介されます。
が、実は輪っかにしてあげると効率が良いです。
指がうっ血することなく、輪を送ってくるくる回していけばまんべんなく使え、さらに1回に使う長さも短くてすむのでいいことだらけ。

輪っかにする際、1回結ぶだけだとだんだん緩んでいくので2回結ぶのがコツ。
2回結ぶのは面倒そうだけれども中指に巻き付けてクルン、そのまま薬指に巻き付けてクルン、とすれば素早くできます。
言葉じゃたぶんわからないので動画も撮ってみました。

(右利きの場合は鏡写しの形で輪を作ることになると思います)



このエントリーをはてなブックマークに追加   

炭酸水を作れるソーダストリーム(SodaStream)で元が取れるのかどうか計算してみる

最近代理店ががんばっているのか何かと話を聞くSodaStream。
SodaStream日本公式販売サイト

ソーダストリームは家庭で簡単に炭酸水を作れる機械で、ボンベを交換すれば繰り返し使えるので経済的といううたい文句の商品です。

経済的といえども、初期投資が必要なのでもちろん損益分岐点に達するまでの期間は人それぞれ。

うちでは炭酸水を結構消費しており、500ml24本入りを安ければ1,680円くらいで購入しているので500mlあたり70円になります。

ソーダストリームだと500mlあたり約18円なので500mlあたり52円も安いことになります。
ガスシリンダー1本(2,100円)で60リットル、つまり500mlボトル換算で120本作れます。シリンダー二本目を使い切るタイミング(計16,800円)で500ml70円のペットボトルと並ぶことになります。

うちだとだいたい1年ちょっと(2日で500ml換算)と、それなりに現実味があるタイミングで元が取れることになる(水代は計算外)ので買ってみようかと思います。

もっともこのソーダストリーム、30年以上前に実家(というか赴任先のデンマーク)で使っていたけど捨ててしまったそうで。日本に持って帰ってきてくれていて譲ってくれていたらこんな計算をすることもなかったんだけど・・。


このエントリーをはてなブックマークに追加   

ヘルター スケルター

を観た。
映画『ヘルタースケルター』

同名の漫画が原作の作品。

お知り合いの水中女性映像作家(!)である古賀学さん(@manabukoga)が1シーンを担当したということで、漫画の原作を予習して(でも結末まではあえて読まず)臨みました。
原作の設定を保ちつつ、いかに省いて/または筋を変えるんだろうかと楽しみにしていたけれども、良い意味で期待を裏切られました。
かなり原作の雰囲気が再現されています。(その分尺は長め)

とにかくリリコ(沢尻エリカ)がキレイ!羽田ちゃんはもうちょっと若い俳優が良かったような・・・。
本作とは直接関係ないけど「友情出演」の鈴木杏を見てリターナーをまた見たくなった。(リターナーの鈴木杏は演技がひどいと思ったけど本作は大丈夫)

いつ出るかいつ出るかと待望の水中シーンは、現実世界のしがらみから解き放たれたリリコ(沢尻エリカ)の綺麗な姿が映し出されていてステキでした。

古賀学さん(@manabukoga)の水中女子映像をもっと観たい方はDVD↓をどうぞ!



タグ :
このエントリーをはてなブックマークに追加   

ダークナイトライジング

を観た。
映画『ダークナイト ライジング』公式サイト

バットマン・ビギンズ、ダークナイトに続く作品。

これまでに登場したバットマンの秘密兵器とさらに強力な乗り物が登場してドッカンドッカンしてて楽しめた。
リーアム・ニーソンがクワイ・ガン・ジンまたはダークマンに見えてしょうがない。

タグ :
このエントリーをはてなブックマークに追加   

トータルリコール

を観た。
トータル・リコール - オフィシャルサイト

シュワちゃん主演のSF映画のリメイク。前作は火星に行ってなんかする映画だっけ??くらいでほとんど覚えてない。

で、内容の方はというと・・・まぁまぁ?なんか設定に無理あるんじゃない?とちょっとあんまりのめり込めなかったかも。火星は出てこなかった。
ブレードランナー、記憶屋ジョニー、攻殻機動隊、iRobot、CUBE、アンチャーテッドを同時に楽しめる感じ。

タグ :
このエントリーをはてなブックマークに追加   

Jenkins+Apache構成でジョブ作成時に host/view/すべて/newJob というURLで 404 #jenkinsci

久しぶりにJenkinsで新しいジョブを作ってみようとしたところ、http://jenkins.twitter4j.org/view/すべて/newJob というちょっと妙なURLにたどり着き、404が返ってきました。


なぜ「すべて」とマルチバイトのURLになっているのかわからないけれどもまんま"view/すべて/newJob"でググってみたところ同様の現象と対応方法を発見。
Tomcat + Apacheで、マルチバイトを含んだURLがうまく処理できない - @ikikko のはてなブログ

ただし、上記の事例はTomcat+Apache。ウチではJenkins内蔵のWinstoneをjkプロトコルで接続しているのでnocanonというオプションは使えません。
"nocanon mod_jk"というキーワードで検索してみたところ、Liferay関連の質問で関連しそうな記事を発見。
Do you know that you can not use characters like “:” in article titles? « eo Networks about Liferay

+ForwardURICompatUnparsedというオプションを使えば良いとのことで、最終的には以下のような設定で解決しました。

<VirtualHost *>
#JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkOptions +ForwardKeySize +ForwardURICompatUnparsed -ForwardDirectories
JkMountFile conf/jenkins_uriworkermap.properties
ServerAdmin yusuke@mac.com
DocumentRoot ***/htdocs/
ServerName jenkins.twitter4j.org
ServerAlias jenkins.twitter4j.org
ErrorLog logs/jenkins-error_log
CustomLog logs/jenkins-access_log common
</VirtualHost>


タグ :
このエントリーをはてなブックマークに追加   

Twitter4JでFizz Buzzボット @fiz_buz を作ってみた

@fiz_buz に数字で@ツイートを送るとFizz、Buzz、Fizz Buzzのいずれかを返してくれることがあります。
(3でも5でも割れない場合は無反応)

コードは以下の通り。


一応プロジェクト全体はGitHubにおいた。
yusuke/fizzbuzzbot

関連リンク:
Fizz Buzz - Wikipedia
職業PGにわかるFizzBuzz - 日々常々
FizzBuzz 問題どや顔で解くひとなんかよりも "KEN_ALL.csv" をうまく扱える人の方が社会的貢献度高い - Togetter
今日のクソコード « てっく★ゆきろぐ Rev2
型レベルFizzBuzz - einblickerの日記
SQLでfizzbuzz — Gist

このエントリーをはてなブックマークに追加   

8月1日 Twitter 勉強会を開催しました #twtr_hack

昨日はTwitter 勉強会でした。
今回はライトニングトークはなく、中身の濃いセッションを4つの構成。

・@i7a16k RailsでTwitter連携アプリをサクっと作る
gifteeのエンジニアによるRuby on Rails+Twitterの解説
Ruby on Railsでどのように画面遷移を定義するかといった基本から、Twitterと連携するための最小限のコードどのように書いていくかなど事前に録画してあるスクリーンビデオを交えて解説。
Macを使っていれば必要な環境はだいたいそろっているのでRoRを始めてみたい、という方にも非常に良いセッションでした。単体でトレーニングとして売り出すこともできそうなクオリティ!
セッションの録画ビデオは下に貼り付けてありますのでじっくりご覧頂けます。
そしてgifteeは勉強会当日、新たな資金調達やファミリーマートとの連携、iPhoneアプリのリリースなどニュースのラッシュでした。
- 簡単なギフトを贈れるgifteeがデジタルガレージなどから資金調達、ファミリーマートとの提携も
恐ろしく忙しい中講演に出向いて頂いたことと思います。

・@teapipin 約173万ツイートを調査して分かったTwitterの利用動向
ツイッター分析シリーズの@teapipinにる分析結果のまとめ。これまでにブログに書かれた内容に加え、まだブログでも発表されていない分析結果も交えて詳しく解説していただきました。
曜日、時間帯別のツイート数の傾向や利用クライアントの動向など、Twitterのsampleストリームでこと細かに分析された内容は圧巻!

・@i2key iOSのTwitterFrameworkを使ってみたら・・・・
最近リリースされたソーシャル音楽アプリ(?)であるATTACCAの開発者によるiOSからTwitterFrameworkを使う場合のステップやコード例、はまった場所、工夫した箇所などを解説。
iOS Twitter Frameworkはそれなりにしっかりとしたドキュメントはあるものの、実践的な内容を日本語で詳しく解説しているサイトなどは見たことがないので今後もかなり貴重な情報源となりそうです。

・@Mocel Twitter クライアントの開発とか
Twitterクライアント、チャーハン諸島についての話。ユニークなコンセプトを面白おかしく紹介するだけでなく、外部API(=Twitter API)を呼び出すアプリケーションの作りの難しさ、そして安易にエラーメッセージを出すとユーザーがびっくりしてしまうのでなるべく隠蔽するといったユーザビリティに関して工夫している点など広く、かつ深い内容でした。
最後にTwitterクライアントの開発はプログラミングスキルを磨くのに格好の材料なのでみんな作ってみましょう!とのメッセージが。エンジニア心がくすぐられました!

以下、ビデオとスライド(順次追加予定)です。

・@i7a16k RailsでTwitter連携アプリをサクっと作る


Video streaming by Ustream

スライド:

Rails and twitter #twtr_hack from i7a


ソースコード:i7a/twtr_hack_rails at twtr_hack-20120801

・@teapipin 約173万ツイートを調査して分かったTwitterの利用動向


スライド:
約173万ツイートを調査して分かったTwitterの利用動向 #twtr_hack from teapipin


・@i2key iOSのTwitterFrameworkを使ってみたら・・・・

スライド:
iOSのTwitterFrameworkを使ってみたら #twtr_hack from Itsuki Kuroda


・@Mocel Twitter クライアントの開発とか


スライド:
Twitter クライアント開発のすすめ #twtr_hack from Mocel77


今回の場所はデジタルハリウッド東京本校 - @dh_tokyoで、お借りしたのは3回目になります。
巨大なスクリーン、ゆったりとした座席、音響、無線環境と大変快適な環境をご提供いただきました!
なお、来年4月にデジタルハリウッドは移転する予定する予定。新しい場所は専門スクール、四年生大学、大学院などが集まった校舎になるのでより充実した設備になるそうです。(東京の中心部だし、快適な環境なので移転後もお借りできたらうれしいなぁ・・・)


関連リンク:
8月1日(水) - Twitter 勉強会 #twtr_hack @デジタルハリウッド東京本校(@dh_tokyo)に行って参りました - Androidはワンツーパンチ 三歩進んで二歩下がる
デジタルハリウッド東京本校|Web/デザイン/3DCG等の学校|デジタルハリウッド
デジタルハリウッド東京本校|ブログ
東京アサカツ・ヨルカツ ご意見箱
2012/08/01_Twitter 勉強会 #twtr_hack @デジタルハリウッド東京本校(@dh_tokyo) - Togetter
Twitter勉強会 #twtr_hack ツイート 全部オレ - Togetter
Twitter 勉強会 #twtr_hack に参加しました。 | @johtani の日記
Twitter 勉強会 #twtr_hack に行って来た ~ 懇親会なんてなかった | DevAchieve
レポート置き場: Twitter 勉強会に参加してきました #twtr_hack
8月1日(水)のTwitter勉強会で発表してきました! by Twitter4J 番外編 #twtr_hack - creativi.tea

このエントリーをはてなブックマークに追加