Coding experience in C++
In terms of his alleged coding experience, the foundation was laid in Wright1 at [25] in the following terms:
‘My fascination with coding and computing began when I dabbled with C and C++ around the age of eight or nine. By age 11, I had already started writing code for games. I used C and C++ because they were the languages that games were written in. As I discuss below, while I have worked extensively with various coding languages, C++ has remained a cornerstone of my expertise.’
Professor Stroustrup’s unchallenged evidence was that the name C++ was first coined in December 1983, when Dr Wright was 13 years old. When this was put to Dr Wright, he did not suggest he had made an error with the dates. Instead, he ‘clarified’ that he had been writing in precursor languages. He proceeded to refer to K&R C (K&R being the authors of an early version of C), ‘Object C’ (which is how Dr Wright referred to Objective C) and then Solaris C and that in 1989 a formal version of C++ and then ANSI C++, a year later, were developed. It was suggested to him that all of this was fabricated detail because he had been found out, to which his response was ‘what I’m doing is simplifying so that people understand’.
Although this is a small point in the great scheme of things, it is also revealing because it is an example of what became a very familiar sequence in Dr Wright’s evidence:
Dr Wright gives an account in his witness statement of something which might appear to be uncontroversial and of minor relevance, but is a foundation or building block of his case that he is Satoshi. It is in fact either wholly or partially fabricated.
COPA produce evidence challenging Dr Wright’s account.
Dr Wright prepares his response or excuses, and these he deploys in cross-examination. Only very rarely does he accept he was mistaken. Instead, his response/excuses frequently rely on technical points never mentioned before but explained in some detail, so are difficult to deal with at the time they are deployed and not critical enough to warrant rebuttal evidence or any further questioning.
In this instance, it is highly likely that, having read Professor Stroustrup’s statement, Dr Wright had researched the precursors to C++ and that his detailed account of the development to C++ was true. However, if he really had started with K&R C and had Knuth’s book, it is most unlikely that he would have said what he said in [25]. There was no reason to ‘simplify’ these matters because anyone could have understood references to various different precursor languages.
Later in Wright1, Dr Wright said in [71] that ‘…C++ continues to be an integral part of my coding knowledge and skills, underscoring its enduring relevance in my professional career’ (emphasis added). He went on to give four examples including:
His extensive employment of C++ at Integyrz, a company he founded and ran from early 2009 to early 2011 which he said specialised in cryptographic code development.
His role as a BDO auditor involved conducing security reviews of code for prominent organisations including banks, necessitating in-depth exploration of various programming languages including C++.
His acquisition of ‘numerous SANS/GIAC certifications that pertain to both C++ and C#.
Coding competitively, entering into a C++ coding competition with the SANS Institute and coming first, third, fourth and seventh (there being no limit to the number of times he could enter).
The SANS Institute competition was concerned with identifying flaws in certain passages of C++ code set out in various textbooks, and, according to Dr Wright, re-writing the sections of code more securely. Again, this is consistent with Dr Wright’s role in IT security reviewing malware. It is a somewhat different skill to writing C++ code from scratch. In my judgment, the same point applies to Dr Wright’s GSSP-C and GSSP.net certification by GIAC.
In their Closing Submissions, the Developers drew together a number of points which cast doubt on Dr Wright’s proficiency in C++, but since all these points relate specifically to the Bitcoin Source Code, they are best considered below.