Ouroboros Ascii

Mug Design for the new MIT Media Lab building. Code in the shape of one building to output ascii art in the shape of the other and vice versa.

# MUG ONE ----------------------------------------

#!/usr/bin/env ruby1.9
puts "0EAkWCIMRI        IlQi      IUWEIkSCIUWEIkSK
IkWEIkSKIkWEIkSM        MkWE      IkSMMkWEIkSKIk2A
QlSo                JNUKIkUo      IkSi
IlyI                A0XIIMSM      MlEA
==".                  gsub(       /\s/,
'').                 unpack(      "m"
)[0].unpack(          "b*")[      0].scan(/.{6}/
).collect{|x|         {"0"=>      ".","1"=>"#"}[
x[0                   ]]*x[1                  ,5].
to_i(                 2 ) }.                 join.
scan(                 /.{54}/     ).         join(
"\n"                  );puts      " "         *3+"
MIT MEDIA LAB; 2    5 YEARS; E    15 (1985); E14 (
2010);".strip.      to_s.gsub(    /\s{2,}|\n/, '')


# MUG ONE OUTPUT ---------------------------------

..################........####......####..............
..################........####......####..............
..####................########......####........####..
..####................########......####........####..
..####....................####......####........####..
..####....................####......####........####..
..############............####......####........####..
..############............####......####........####..
..####....................####......##################
..####....................####......##################
..####....................####..................####..
..####....................####..................####..
..################....############..............####..
..################....############..............####..
   MIT MEDIA LAB; 25 YEARS; E15 (1985); E14 (2010);


# MUG TWO ----------------------------------------

#!/usr/bin/env ruby1.9
puts "0EAk2IAMRI        INSC      IUWC
IkQoElQqIkWCIkSo        IlQs      MkWI
c1TI                J1WKIkUo      IkSi        IlSK
IkWE                IkSKIkWE      IkyI        A0SI
MNSI                    M0CA      ==".       gsub(
/\s/                    ,'').    unpack(       "m"
)[0].unpack(            "b*"      )[0].      scan(
/.{6}/).collect         {|x|      {"0"      =>".",
"1"=>                   "#"}     [x[0]]*x[1,5].to_i(
2)}.                   join.     scan(/.{54}/).join(
"\n");                 puts      " "*3 + "MIT MEDI
A LAB                 ; 25 Y                 EARS
; E15 (1985); E1     4 (2010);"             .gsub(
/\s{2,}|\n/,'').     reverse               #2010

# MUG TWO OUTPUT ---------------------------------

..################........####......################..
..################........####......################..
..####................########......####..............
..####................########......####..............
..####....................####......####..............
..####....................####......####..............
..############............####......##############....
..############............####......##############....
..####....................####..................####..
..####....................####..................####..
..####....................####......####........####..
..####....................####......####........####..
..################....############....############....
..################....############....############....
   MIT MEDIA LAB; 25 YEARS; E15 (1985); E14 (2010);