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].