Joachim Schüeth, a German amateur radio enthusiast from
Bonn, won a challenge to crack secret messages encoded by a World War Two cipher.
His program, written in Ada especially for the challenge,
cracked the supposedly hardest part of the challenge — deciphering the code of
a Lorenz SZ42 encryptor, which
has approximately 16 million million million permutations — in just 46 seconds.
He completed the entire challenge in less than two hours.
Reuters quoted Andrew Clark, director of Britain’s National
Museum of Computing, as saying “It’s a brilliant piece of work, really really impressive”.
We here at the AdaIC would like to think that his choice of
programming language had something to do with his success. Schüeth’s web site
describes Ada as a “powerful and beautiful language [which] has become my favourite”,
a sentiment shared by many Ada programmers. In a more recent interview, he
explains that “Ada avoids programming errors by its strong typing model, so you
spend less time on debugging your programs”, which obviously helped him during
the challenge.
He continues by saying “I can only encourage everyone to
have a look at Ada. It is a modern programming language with all the features of
object oriented languages, like high level abstraction, information hiding, generic
programming (similar to C++ templates), and function / operator overloading.
Personally I do not have much use for inheritance and run-time polymorphism, but
Ada has that too, with concepts that seem more logical to me than those of C++ or Java.”
We couldn’t have said it better ourselves.
For news reports on the challenge, see
German amateur cracks WWII mega-code in 46 seconds [Reuters]
and
German amateur code breaker defeats Colossus [The Register].
For an article on the challenge by Schüeth, see
Tunny, Colossus and Ada: Keeping an Open Mind [DDJ].
For interviews with Schüeth, see
Cracking the Lorenz Code [AdaCore] and
Beating Colossus: an interview with Joachim Schüeth [NetBSD].
Also see
Joachim Schüeth’s web site on the challenge.