2011年12月24日

クリスマス、その日は世界に笑顔があふれる・・・はずなんだが

クリスマスイブも仕事だぜ~、だから独り身でも寂しくないぜ~ъ( ゜ー^)
と言える思っていたらこういう時に限って休日出勤なしという
運命の歯車は歯がすり減った上に逆に回っているような気がする今日この頃

そうそう、年賀状を書かないといけないなーと
年とか月の感覚が年を重ねるにつれて希薄化しているような気もするのですが
まあ、特にすることも無いのでなんかデザインを考えてみましょう

メールの年賀状は相手によって適当に文面変えて送ればいいので
今回は紙の年賀状です。(σ・∀・)σ

では、作成時間30分!2012年の貧乏プログラマからの年賀状。デザインはこちら!

さて、年が明ける前から年賀状を公開したついでに
このAA風挨拶ロゴの詳細をご説明

知っている人にはすぐ分かることかもしれませんが、
この「謹賀新年」の部分はプログラムのコードになっています。
QuineでRubyのコードをまんま出力しております。
(C#でのやり方がよく分からなかったので今回はRubyです(;´▽`A``)

簡単にご説明すれば、自分自身と同じ文字列を出力する
効率主義が叫ばれる中ではなんの意味があるんだい?と言われるような
「プログラマにとってのただの遊びです」
(偉い人にはそれがわからんのですよ)

受け取った人が年賀状を見ながら同じコードを書き
それを実行すれば「謹賀新年」と表示されると。

では、この文字列を出力するソースコードを載せてみます
b="BAhsKwK6AQAA/v+Bf/wDAPwHwP//BwAAACAA0A84wA8/wP8FAEAAAAAAAgAFAACAEAAAUAAABAAAAOD/XwAAAAgBAAAFfEAAAACA////////8AAfUMAHBAAAAAgAoP///wcH/AEFAEAAAACAAAAKAABAGGABUAAABAAAAPj/vwAAAISB8f/9/38AAAAA/v8JPPBAEPz/////AQAAACAAkMADDwQTAAAAABAAAAAAAgAJAABA4AEAAAAAAQAAAOD/nwAAAAQW8P//DxAAAAAA/v/5P/B/AAH+//8AAQAAACAA0P8B/g8QAAAAABAAAAAAAgAFAACAAAH///8AAQAAAOD/XwAAAAgQ4P//DxAAAAAA/v/9P/D/AAH+//8AAQAAACAAkP8B/gcQ8P//DxAAAAAAAgAJAABAAAEAAAAAAQAAACB4kP8B/gcQAAAAABAAAAAAggf9P/D/AP8A/wP+AQAAACAAUAAAAAj/ADAwAP4BAAAAAgAFAACAYADAAwcACAAAACAAUAAAAAgM/wOA/8EAAAAA/v/9////gB8AAADwBwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwHwAA/gcA/w8AAAAAAAAA/wH//B9AAAzAAAAAAAAAABAAAEgAAAxwAPz//38AAAAAAQCABACAgAEAAAAABAAAABAAAEgA8A8GAAAAAEAAAAAAD3zgBPwAGAAAAAAABAAAAIBABkJAAIAB/v8A/38AAAAADzzgBfj/MDAACBAAAAAAABAAAFAAAAgG//8A/j8AAAAAAQAABQCAwAcAAAAAAgAAABAAAFAAAAhYAAAAACAAAAAA/wH/BTzgAAQAAAAAAgAAAPAf8F9AAgJAgP8A/z8AAAAAAQAABSQgAAQICBAAAAAAABAAAFBAAgJ/gP8A//8AAAAAAQAAAyQgEAAAAAAACAAAAPADwD9AAgIBAAAAAIAAAAAADAA4AiYgEAAAAAAACAAAADAAACwgAgIBAAAAAIAAAAAAAQBAAyIg8P//D/D/DwAAACAccBQgAgIAAIAAAQAAAAAAZgE9ASIgAAAACBAAAAAAAMAREBMwAgIAAIAAAQAAAAAACP8B/yEgAAAA+B8AAAAAAAAAAAAQ/gMA"

n=Marshal.load(b.unpack("m")[0])

e="eval$s=%w"<<39<<($s*3)

o=""
j=-1
0.upto(54*132-1){|i|
  o<<((n[i]==1)?e[j+=1]:32)
  o<<((i%132==131)?10:"")
}

o[-77,6]=""<<39<<".join"
puts(o)

詳しい解説・・・
を書こうと思いましたが、これを必要としているような人が思いつかないので
省略。
興味のある方はhttp://code.google.com/codejam/japan/tshirt.html
などを調べてみてください。もっと綺麗な作り方が見つかると思います。

では、クリスマスはまだ終わっていないようなので
年末年始に布団の中からAndroidで動画鑑賞するための準備をしたいと思います。

では、また!
え?クリスマス当日?当然引きこもるよ!(^_^)v