On May 16, 9:24 am, Matthew Moss <matthew.m... / gmail.com> wrote: > [Note: parts of this message were removed to make it a legal post.] > > _If you want to ignore the introduction and just get to the task, skip down > to the last paragraph._ > > Ah, yes... I remember the good ol' days of Usenet, when the signal to noise > ratio was high, very high... certainly much higher than the 1-to-100 ratio > that is the curse of many newsgroups today. > > Back then we had rules! And etiquette! And people felt compelled to adhere > to such rules, because... well, that was how things were done. For the most > part, we didn't have to deal with the unrestrained spam that now pervades > the Internet net like the lingering smell of boiled cabbage. > > Where was I? ..... Oh yes, signatures! We had signatures for our posts and > email, restricted to a narrow space of no more than four lines and no wider > than the terminal. We'd put our names, email, phone... even funny quotes (or > angry, political quotes for those angry, political folks). But it always fit > within four terminal lines: never more. > > But nowadays... What sane person would put his email address in his > signature file, out in plain view for spammers to see? It is folly, I say. > Insanity. Lunacy. I would sooner code in BASIC than publicly divulge my > email address to the world. > > Now, I hear you say, "So, genius, how do you provide such information if not > in the signature?" Well, you are right to ask and also right to call me a > genius. Pay attention, and I shall reveal to you how such is accomplished > (best viewed in monospaced font): > > x = ("swDlw ms > mMm.hh@ttaiog" + ## Matthew D Moss, 888-555-1234 > "<.cMmssoottaaee").split(//); z = ## Department of Fine Ruby Studies > [""] * x.size; puts x.map {z = x. ## University of Wherever I Like > zip(z).sort }.last[9].join + "\n" ## "He that runs Ruby, runs well." > > Do you see it? You don't, do you? Look again after I run this signature > through the Ruby interpreter: > > Matthew D Moss <matthew.m... / gmail.com> > > The silence suggests to me that you are stunned beyond words. I think you > are needing such a challenge... > > For your task this week, I ask that you make your own signature such that > displays your email address when run through the Ruby interpreter. The > signature must fit within four lines of no more than 80 characters per line. > (If you still want to avoid outputting an email address, your script may > produce something else: a phone number, a funny quote, vCard, a poem to your > love, whatever...) Here's mine. I avoided unpack and gsub and zip so that I could write something I can't rely on working in the future. srand 0; a=if defined?(RUBY_ENGINE);%w(r c y . i g i c r h r . e t k @ a s r b - o u); elsif RUBY_PLATFORM=='java';%w(r s - t i r u r k . @ r i c . o h e b c g y a); else; %w(y e t b s i @ . r i r u . o h r c c - k g a r);end;puts a.sort_by{rand}.join Chris