My name is Todd Nathan, and it is with great pleasure to annouce the opening of 2005 IORCC. The Official International Obfuscated Ruby Code Contest Rules and FAQ are now online. Please consider entering your most obfuscated Ruby program, or becoming a judge.
> Todd Nathan wrote: >> it is with great pleasure to annouce the opening of 2005 IORCC.
> 1st price: "Advanced Obfuscation: Perl for Ruby Programmers" > 2nd price: "More Awkward Obfuscation: AWK for Ruby Programmers" > 3rd price: "Obfuscation by Parenthesis: Lisp for Ruby Programmers" > 4th price: "How to shoot yourself in the foot"
> An ORCC doesn't seem to be a good idea. I already hear them saying "See > this? They keep on saying that Ruby code is much cleaner than Perl code. > Don't believe their lies."
I wonder how the perl community reacted on books like "Object-oriented Perl" by Conway... :P
Seriously, a deobfuscation contest of the winners is planned, too.
> An ORCC doesn't seem to be a good idea. I already hear them saying "See > this? They keep on saying that Ruby code is much cleaner than Perl > code. > Don't believe their lies."
In message "Re: ANN: 2005 International Obfuscated Ruby Code Contest (IORCC)" on Wed, 23 Feb 2005 06:37:50 +0900, Josef 'Jupp' Schugt <j...@gmx.de> writes:
|An ORCC doesn't seem to be a good idea. I already hear them saying "See |this? They keep on saying that Ruby code is much cleaner than Perl code. |Don't believe their lies."
Well, it is a good chance to prove them we can write pretty unreadable code as well as readable code.
> > In message "Re: ANN: 2005 International Obfuscated Ruby Code Contest (IORCC)" > > on Wed, 23 Feb 2005 06:37:50 +0900, Josef 'Jupp' Schugt <j...@gmx.de> writes:
> > |An ORCC doesn't seem to be a good idea. I already hear them saying "See > > |this? They keep on saying that Ruby code is much cleaner than Perl code. > > |Don't believe their lies."
> > Well, it is a good chance to prove them we can write pretty unreadable > > code as well as readable code.
> Is that "pretty" as in "somewhat", or "pretty" as in "nice-looking"? > :-)
In message "Re: ANN: 2005 International Obfuscated Ruby Code Contest (IORCC)" on Wed, 23 Feb 2005 08:23:08 +0900, "David A. Black" <dbl...@wobblini.net> writes:
|> Well, it is a good chance to prove them we can write pretty unreadable |> code as well as readable code. | |Is that "pretty" as in "somewhat", or "pretty" as in "nice-looking"? |:-)
>> it is with great pleasure to annouce the opening of 2005 IORCC.
> 1st price: "Advanced Obfuscation: Perl for Ruby Programmers" > 2nd price: "More Awkward Obfuscation: AWK for Ruby Programmers" > 3rd price: "Obfuscation by Parenthesis: Lisp for Ruby Programmers" > 4th price: "How to shoot yourself in the foot"
> An ORCC doesn't seem to be a good idea. I already hear them saying "See > this? They keep on saying that Ruby code is much cleaner than Perl code. > Don't believe their lies."
> Josef 'Jupp' Schugt
Obfuscated codes promote exactly two things, not less, not more: 1, the flexibility of the target language 2, the talent and creativity of the author
I can only look up to those who write such high quality codes :) It does not mean that they are not capable to write clean, well-structured ones, on the contrary, most of the times it shows their deep understanding of both "sides".
For another point, any idea which puts ruby in the spotlight is more than welcomed, I think, for what ruby needs now more than anything else is popularity... and fun around it, like this obfuscated contest or the ruby quiz is exactly the thing for it - improving morale, stirring up any still water, etc.
Todd Nathan wrote: > it is with great pleasure to annouce the opening of 2005 IORCC.
1st price: "Advanced Obfuscation: Perl for Ruby Programmers" 2nd price: "More Awkward Obfuscation: AWK for Ruby Programmers" 3rd price: "Obfuscation by Parenthesis: Lisp for Ruby Programmers" 4th price: "How to shoot yourself in the foot"
An ORCC doesn't seem to be a good idea. I already hear them saying "See this? They keep on saying that Ruby code is much cleaner than Perl code. Don't believe their lies."
Josef 'Jupp' Schugt -- Currently running Aurox 10.1 Quicksilver.
On Wed, 23 Feb 2005, Yukihiro Matsumoto wrote: > Hi,
> In message "Re: ANN: 2005 International Obfuscated Ruby Code Contest (IORCC)" > on Wed, 23 Feb 2005 06:37:50 +0900, Josef 'Jupp' Schugt <j...@gmx.de> writes:
> |An ORCC doesn't seem to be a good idea. I already hear them saying "See > |this? They keep on saying that Ruby code is much cleaner than Perl code. > |Don't believe their lies."
> Well, it is a good chance to prove them we can write pretty unreadable > code as well as readable code.
Is that "pretty" as in "somewhat", or "pretty" as in "nice-looking"? :-)
Quoting m...@ruby-lang.org, on Wed, Feb 23, 2005 at 08:07:49AM +0900:
> Hi,
> In message "Re: ANN: 2005 International Obfuscated Ruby Code Contest (IORCC)" > on Wed, 23 Feb 2005 06:37:50 +0900, Josef 'Jupp' Schugt <j...@gmx.de> writes:
> |An ORCC doesn't seem to be a good idea. I already hear them saying "See > |this? They keep on saying that Ruby code is much cleaner than Perl code. > |Don't believe their lies."
Powerful languages allow obfuscation. Weak languages only allow garbage code.
Anybody looking at the code in an obfuscated coding contest as an example of how unreadable a language is severely misses the point.
On Wed, 23 Feb 2005, Yukihiro Matsumoto wrote: > Well, it is a good chance to prove them we can write pretty unreadable > code as well as readable code.
There are already too many Ruby books that I can't read. :-)
-- Matt Nothing great was ever accomplished without _passion_
Alexander Kellett <ruby-li...@lypanov.net> writes: > On Feb 23, 2005, at 2:02 PM, Christian Neukirchen wrote: >> I wonder how the perl community reacted on books like "Object-oriented >> Perl" by Conway... :P
> as far as i can tell more people (e.g me) in the ruby community > have read books such as that than people in the perl community.
> sad ain't it?
Now, *that* would explain lots... }:-) Excellent book, btw.
s=",GreEkcaSh BODybuILDER ALBreChtAMMOonIa tSUNEMATsuJ"; puts lambda{|f|h=lambda{|h|lambda{|x|f[h[h]][x]}};h[h]}[ lambda{|f|lambda do|h|h[0]?f[h[1..-1]]<<h[0]:[];end}][s. delete(*%w{A-Z ^JR})].#See King James text of the bible: pack("c*")## "Y do ye not understand my speech?", John 8
> Cheers, > Navin.
srand 52019;puts"Azzp!bljqkmw!Xrfy!nmgaiq!". unpack(%q(c*)).map{|x|x^rand(16)}.pack('c*') -- Christian Neukirchen <chneukirc...@gmail.com> http://chneukirchen.org
> >> (It may be unreadable, but it isn't really obfuscated...)
> >> > I'm still impressed by that one (obviously)
> >> Well, thank you.
> > I agree, you did some really clever work, including a generator > > script, but in the end it's base64 and the resulting Ruby code is very > > readable.
> > I've seen people going around with a simple base64 encode/decode Ruby > > line in their .signatures. It's just not impressive, people! :-)
> s=",GreEkcaSh BODybuILDER ALBreChtAMMOonIa tSUNEMATsuJ"; > puts lambda{|f|h=lambda{|h|lambda{|x|f[h[h]][x]}};h[h]}[ > lambda{|f|lambda do|h|h[0]?f[h[1..-1]]<<h[0]:[];end}][s. > delete(*%w{A-Z ^JR})].#See King James text of the bible: > pack("c*")## "Y do ye not understand my speech?", John 8
Brian Schröder <ruby.br...@gmail.com> writes: > On my machine: > $ uname -a > Linux silver.wg 2.6.9silver #1 Mon Jan 10 14:43:04 CET 2005 i686 GNU/Linux > $ ruby -v > ruby 1.8.2 (2005-01-10) [i386-linux]
> That evaluates to: > $ ruby -e 'srand 52019;puts"Azzp!bljqkmw!Xrfy!nmgaiq!". > unpack(%q(c*)).map{|x|x^rand(16)}.pack("c*")' > Gwvz&baf|ej}%T{a|.ikhbcw)
> And I thought it was about obfuscating the code, not the answer ;)
> cheers,
Very interesting...
$ uname -a Darwin lilith.local 7.8.0 Darwin Kernel Version 7.8.0: Wed Dec 22 14:26:17 PST 2004; root:xnu/xnu-517.11.1.obj~1/RELEASE_PPC Power Macintosh powerpc $ ruby -v ruby 1.8.2 (2004-12-25) [powerpc-darwin7.7.0]
And it works. BTW, I've coded that on an Athlon XP on Kernel 2.6.0 with ruby 1.8.1...
Christian Neukirchen <chneukirc...@gmail.com> wrote:
> My favorite stays:
> s=",GreEkcaSh BODybuILDER ALBreChtAMMOonIa tSUNEMATsuJ"; > puts lambda{|f|h=lambda{|h|lambda{|x|f[h[h]][x]}};h[h]}[ > lambda{|f|lambda do|h|h[0]?f[h[1..-1]]<<h[0]:[];end}][s. > delete(*%w{A-Z ^JR})].#See King James text of the bible: > pack("c*")## "Y do ye not understand my speech?", John 8
Very neat, though the "suJ" sequence gives it away.