Run this on linux text console only. It won't work in an xterm or similar. (Update:) This looks better if you stand far from the monitor.

clear;perl -we 'ioctl STDIN,19296,$t=pack a8888;while(++$o){select""," +","",0.01;print"\e[H";for$v(0..19){$x=0.5*$_+3e-2*$v*($_-39)+0.5*$o,p +rint vec($t,8-$x%9+8*int(0.9*$v+1.5-3e-3*($_-39)**2)+256*ord substr(" +Just another Perl hacker ",$x/9%26),1)?"#":" "for 0..78;print$/}}'

This is a reimplementation of a japh I have written and lost long ago. Speed depends on the speed of your computer somewhat.

Replies are listed 'Best First'.
Re: Linux console japh
by ambrus (Abbot) on Sep 05, 2009 at 13:42 UTC

    Actually I seem to remember the old one curved in the other direction so it was more like this:

    clear;perl -we 'ioctl STDIN,19296,$t=pack a8888;while(++$o){select""," +","",0.01;print"\e[H";for$v(0..19){$x=0.8*$_-2e-2*$v*($_-39)+0.6*$o,p +rint vec($t,8-$x%9+8*int($v-4.5+3e-3*($_-39)**2)+256*ord substr("Just + another Perl hacker ",$x/9%26),1)?"#":" "for 0..78;print$/}}'
      Doesn't work for me :
      syntax error at -e line 3, near "*int(" Execution of -e aborted due to compilation errors.
      What's wrong?
      $ perl -v This is perl, v5.10.0 built for i486-linux-thread-multi

        You could get something like that if perlmonks wraps the code for you and marks continuation lines with red + signs and you copy those signs. Try using the "Download code" link instead.

Re: Linux console japh
by corenth (Monk) on Sep 18, 2009 at 15:43 UTC
    Thank you. This code definitely brought a smile to my face after a long day :)