Royal Courts of Justice. Rolls Building
Fetter Lane. London, EC4A 1NL
Before:
Mr RECORDER DOUGLAS CAMPBELL QC
Between :
NOEL STARBUCK | Claimant |
- and – | |
PATSYSTEMS (UK) LIMITED | Defendant |
Jonathan Moss (instructed by Penningtons Manches LLP) for the Claimant
Michael Hicks and Nick Zweck instructed by in-house solicitors for the Defendant
Hearing dates: 24th - 25th January 2017
Judgment Approved
Mr Recorder Douglas Campbell QC:
Introduction
This is an action and counterclaim in respect of copyright infringement. More specifically, the Claimant (“Mr Starbuck”) alleges that he wrote a number of versions of a suite of computer software referred to as NSA (where NSA stands for Networked Systems Architecture); that he owns the copyright which subsists in NSA version 3.1 in particular; and that this copyright has been infringed by the Defendant (“Patsystems”). I will generally refer to the parties as Mr Starbuck and Patsystems in this judgment, save where it is clearer to refer to them as the Claimant and Defendant respectively.
Patsystems’ defence is that it owns the copyright in NSA version 3.1, rather than Mr Starbuck, by virtue of an assignment entered into between the parties on 29th June 1999 (“the 1999 Assignment”). Mr Starbuck admits that in this 1999 Assignment he did assign to Patsystems title to some versions of NSA, but disputes that he assigned title in NSA version 3.1. Patsystems accepts that if Mr Starbuck does own the copyright in NSA version 3.1, it has infringed his copyright therein.
As will be explained in more detail below, there is a minor issue as to the status of certain modifications to NSA version 3.1 which were made in the period August to December 2001 by Mr Starbuck. At this time Mr Starbuck was employed by Patsystems and was assisted by a Mr Sean McAlister. There is otherwise no dispute that Mr Starbuck wrote all versions of the NSA software.
Patsystems also counterclaims that, if it does own the copyright in NSA version 3.1, then Mr Starbuck has infringed this copyright by using the NSA version 3.1 software to create new software known as ACE, and subsequently using ACE.
At the case management conference, the parties identified over 20 issues to be determined at trial. By closing speeches it had come down to only 3, as follows:
Was the 1999 Assignment effective to assign to Patsystems the rights to NSA in all its versions, including version 3.1? (Footnote: 1) Or did it only assign rights to some versions which did not include version 3.1? I will call this “the Assignment issue”.
Does Patsystems own rights to the modifications to NSA version 3.1 created in the period August to December 2001 as a result of (a) Mr Starbuck’s employment (b) Sean McAlister’s contract? I will call this “the modifications issue”.
Has Mr Starbuck infringed Patsystems' copyright in NSA by his use of NSA to create ACE and his subsequent use of ACE? I will call this “the ACE issue”.
The Assignment issue is primarily a matter of contractual interpretation. The modification issue turned out to have limited practical importance. The ACE issue is the only one which involves any significant amount of copyright law.
The witnesses
The Claimant’s witnesses
I heard oral evidence from Mr Starbuck, Mr Paul Hayward, and Mr Martin Hemmings on behalf of the Claimant.
Patsystems submitted that Mr Starbuck was an unreliable witness for two reasons.
First, it said that he had forgotten what actually happened in the key period (which was 1997-2001) and that his purported recollection was actually a reconstruction. I agree with this criticism, and I will take it into account.
Secondly it also submitted that Mr Starbuck was dishonest. When I pressed Patsystems to explain the basis of its allegation that Mr Starbuck was dishonest, the only basis given by Patsystems was that Mr Starbuck said he remembered things when actually he did not. I reject this allegation. As I have explained, I accepted that Mr Starbuck’s evidence was reconstruction rather than recollection. However, people who reconstruct events will very often believe that their reconstruction is a genuine recollection; and in my judgment, Mr Starbuck was one of these people.
Mr Hayward was the Technical Director of Patsystems in 1997. He was also one of its two legal directors, along with a Mr Tom Theys. He left Patsystems in about 2001. He gave evidence about discussions which he had had with Mr Starbuck prior to the 1999 Assignment. He was a fair witness when cross-examined, but understandably found it difficult to recall much detail from 1997-2001.
Mr Hemmings was a software engineer who worked for Patsystems from November 1999 until 2011. He was an honest witness.
Mr Scholes was a computer programmer at LIFFE, first as a consultant from 1984- 1986 and as a permanent employee from 1986. His evidence covered various dealings between LIFFE and Mr Starbuck. He was not required to attend for cross-examination, and his evidence is accordingly undisputed. However I did not find it to be relevant.
The Defendant’s witnesses
I heard evidence from Mr Jeffrey Cook and Mr Jacques De Cock on behalf of the Defendant.
Mr Cook was first hired by the Defendant in 2001 as an external contractor and become a permanent employee in 2010 as a Senior Developer. He is currently a Development Manager for the Defendant. He gave evidence explaining how he had developed the NSA code from the version originally supplied by Mr Starbuck into a production-ready version; about an email interaction he had with Mr Starbuck in December 2013/January 2014; and his inspection of some of Mr Starbuck’s ACE source code on 23 May 2016. He was a fair witness.
Mr De Cock was appointed by Patsystems in 1999 to prepare it for flotation on the London Stock Exchange. He was its Chief Executive Officer from then until September 2001, and remained employed by it until early 2002. He was also a director of the Defendant for various parts of this period. The Claimant submitted that Mr De Cock was a combative witness. I disagree. He merely gave robust answers to robust questioning.
The Assignment issue - legal context
It was common ground that the approach was as set out by the Supreme Court in Arnold v Britton (Footnote: 2) at paragraphs [14] to [23], See for instance paragraph [15], as follows:
"When interpreting a written contract, the court is concerned to identify the intention of the parties by reference to ‘‘what a reasonable person having all the background knowledge which would have been available to the parties would have understood them to be using the language in the contract to mean”, to quote Lord Hoffmann in Chartbrook Ltd v Persimmon Homes Ltd [2009] UKHL 38, [2009] 1 AC 1101, para 14.... ”
This judgment also stresses inter alia that commercial common sense and surrounding circumstances should not be invoked to undervalue the importance of the language of the provision which is to be construed (see [17]); that the less clear the centrally relevant words are, the more ready the court can properly be to depart from their natural meaning (see [18]); commercial common sense is not to be invoked retrospectively (see [19]); while commercial common sense is a very important factor to take into account, a court should be very slow to reject the natural meaning of a provision as correct simply because it appears imprudent (see [20]); and that one can only take into account facts or circumstances which existed at the time that the contract was made, and which were known or reasonably available to both parties (see [21]).
It was also common ground that whilst pre-contractual negotiations are themselves not admissible to construe the terms of a written contract, they are admissible in so far as they relate to the proof of whether both sides had knowledge of a particular fact: see Chartbrook v Persimmon. (Footnote: 3)
In opening the Claimant also drew my attention to authority in support of the proposition that the subsequent conduct of the parties is generally not relevant to the construction of a written contract, but is allowed where the agreement is oral or partly written and partly oral: see Henderson J in Entrust Pension Limited v Prospect Hospice Limited & Anor (Footnote: 4) and The Interpretation of Contracts, Lewison, 6th Ed. (Footnote: 5) However as matters developed it was not necessary to consider this further.
The Assignment issue - the evidence
Although both sides accepted the correctness of the approach set out in Arnold v Britton, both sides also devoted much of their attention to events pre-dating and post-dating the contract. In particular, each side submitted that their preferred events were not merely relevant in law to the construction of the assignment but were also clear on the facts, whereas the events preferred by the other side were neither. I will begin by reviewing the evidence. I will deal with the legal significance of this material, if any, later.
Matters pre-dating the 1999 Assignment
The versions of NSA
The Particulars of Claim refers generally to “the NSA software” and gives the dates when Mr Starbuck created a number of different versions thereof, from version 1 (created in 1988) to version 3.1 (created in approx. 1996). The Defence and Counterclaim used the same nomenclature, as do the contemporaneous documents. However the Reply coined the phrase “NSA Pascal” to refer to versions prior to version 3.0, since these were all written in the Pascal programming language; and “NSA C” to refer to version 3.0 onwards, which were written in the C programming language. The evidence tends to use the latter terms. In an ideal world one would use only one type of nomenclature, but the documents in the case are not organised that way so I will use both sets of terms.
It was in any event established during Mr Starbuck’s cross-examination that when writing NSA versions 3.0 and 3.1 he started off with version 2.5, in Pascal, and converted it into a C version. The programs have the same functionality, albeit that the detailed way in which they work is different. The other main difference is that the C versions are portable across various operating systems whereas the Pascal versions are locked into a particular operating system, called VMS.
Mr Starbuck’s dealings with LIFFE prior to the 1999 Assignment
Mr Starbuck explained that he had provided consultancy services to the London International Financial Futures Exchange (LIFFE) since 1988. He, or rather his service company, originally licensed NSA version 1 to LIFFE in 1989 and after that had licensed later versions thereof. LIFFE was not interested in licensing NSA versions 3.0 onwards, even though they were faster.
The 1997 meeting in a pub
Mr Starbuck signed the Particulars of Claim with a Statement of Truth. So far as material for present purposes, this alleged that:
“By way of separate agreement in 1997 the Clamant granted a perpetual licence to the Defendant to use NSA v. 2.5. This licence allowed the Defendant to use NSA v. 2.5 within their business in return for shares in the Defendant company to a value of £300,000. NSA v3 was not licensed to the Defendant as it was not compatible with their systems at that time, was incomplete and untested”.
In cross-examination Mr Starbuck said this related to a meeting held in a pub in June-July 1997. However he then went on to recall that no fee or other terms were agreed for this licence, and it was terminable at will (“we could have walked away from it at any time”). When pressed about the obvious discrepancies between the alleged terms of the licence which were set out in the Particulars of Claim and the terms of the licence according to his evidence in cross examination, he claimed for the first time that there had been two agreements made “months apart".
In his cross-examination, Mr Hayward agreed that he and Mr Theys had met Mr Starbuck in a pub to discuss a licence. However he thought it was “about a year” after first meeting Mr Starbuck in 1997. He said that there were there were two main types of the NSA software at this time, namely the “tried and tested” Pascal version and the partially complete C version which “was not really off the drawing board” but which had “some strategic value” for the future. Mr Hayward wanted the Pascal version, which Mr Starbuck told him was being licensed to LIFFE. He did not want the C version: he said that the C version would have cost additional money which Patsystems could not afford at that time due to its financial instability and its need to rely on angel capital. He confirmed that no price was agreed and said that Tom Theys handled the future negotiations with Mr Starbuck.
Mr Theys did not give evidence, nor was there any evidence explaining why he did not do so.
The Heads of Agreement between the parties
The Particulars of Claim did not mention the Heads of Agreement which were entered into between the parties on 13th May, 1998. Nor did they mention the 1999 Assignment itself. In cross-examination Mr Starbuck denied this was because he had forgotten about these documents. He said that these omissions were because he did not think they were relevant. I do not find it necessary to resolve this issue, since both the Heads of Agreement and the 1999 Assignment are now agreed as documents.
In any event the Heads of Agreement stated in part as follows:
“Purchase of NSA
It is agreed that Patsystems will outright purchase and have all rights to the system NSA. Along with all new versions. And the sole right to all revenues generated by NSA. ”
The point made by Patsystems is that this document did not distinguish between the Pascal and C versions.
Preparations for the flotation
By 1999 Patsystems was growing very quickly. Mr Starbuck become Technical Director at Patsystems instead of Mr Hayward, whose role was then more sales oriented. Mr Theys hired a new managing director, Mr de Cock, to take the company to flotation.
By this time Patsystems had been using the NSA software (in particular, version 2.5c) for 2 years. Mr Theys told Mr Starbuck that owning the NSA software would strengthen the flotation prospectus. Mr Theys then proceeded to draw up the 1999 Assignment, which was witnessed by Mr De Cock.
Mr De Cock was also involved in drafting the 1999 Assignment, though not as heavily involved as Mr Theys. He was not aware that there were multiple versions of NSA. He thought there was only one version, which was simply known as NSA. He knew that LIFFE were using NSA.
Mr Starbuck was also granted a share option on 28th June 1999 pursuant to a special resolution.
Findings of fact
I find the facts to be as follows.
First, Mr Starbuck, Mr Hayward, and Mr Theys did meet in a pub at some early point - most likely in June 1997 as Mr Starbuck thought - to discuss licensing the NSA software to Patsystems. This was an informal licence which either Mr Starbuck or Patsystems could terminate at any time. It had no other terms.
Secondly, prior to the 1999 Assignment, both sides knew the following information about NSA:
That there were at least 3 versions of NSA. These were NSA versions 2.5a, 2.5c (both of which were written in Pascal and were in actual use), and version 3.1 (the experimental version, written in C).
That LIFFE was only interested in version 2.5a, and not in any C version.
That Patsystems itself used version 2.5c.
That whilst Patsystems was not immediately interested in the C version it recognized its strategic value for the future.
Thirdly, the commercial background changed between 1997 and 1999. In 1997 Patsystems was a startup company which was financially unstable, short of funds, and reliant on angel investors. By 1999 it was growing rapidly, preparing for a full stock market flotation, and wanted to formalize its position - hence the 1999 Assignment. In particular it needed to sort out both its own title to NSA and the position with respect to LIFFE, who were still operating under the licence which Mr Starbuck (or his service company) had granted to them. It needed to do so in order for the float to be as successful as possible, as both sides wanted to happen. All of this information was known to both sides as well.
Fourthly, the principal negotiators with respect to the 1999 Assignment were Mr Starbuck and Mr Theys. They were the ones who signed the 1999 Assignment (and indeed the Heads of Agreement the year before). Mr Hayward was not involved at all. Mr De Cock was only peripherally involved in the negotiation. This is unsurprising since he had only joined the Defendant in 1999 and his responsibility was the flotation.
Matters post-dating the 1999 Assignment
The oral licence re NSA C
This also relates to the modifications issue, but it is convenient to deal with it here. My findings are as follows.
Mr Starbuck worked on testing and debugging NSA version 3.1 when employed by Patsystems as Technical Director. He was assisted in this task by a contractor called Sean McAlister: specifically, Mr Starbuck amended the code and Mr McAlister tested it. Mr Starbuck did the amendments to the code at home since it was on his home computer. The evidence as to what these amendments actually consisted of was unclear, no doubt because of the passage of time.
However it is clear there was a rival group within Patsystems, headed by a Mr William Todd, which favoured the use of the Java computing language over the use of C. The end result was that the Java enthusiasts won the internal argument, and most (but not all) copies of NSA version 3.1 were deleted. The version which did survive most likely did so because it had found its way on to Patsystems’ development drive; and from there it had been automatically included in Patsystems ’ escrow archive. Mr Hemmings explained, and I accept, that there was nothing about this version which indicated that Patsystems did not own copyright therein.
There was a lot more evidence about the deletion - e.g. who did it, why was it not somebody else instead, was it as complete as Mr Todd appears to have intended, etc. I appreciate the importance of these points to the parties, but the deletion post-dates the Assignment and is not otherwise relevant to the issues I have to decide.
Mr Starbuck claimed that he licensed Patsystems in relation to this use. He pointed to a textual data file which he said was the NSA C licence file, and which he said licensed Patsystems to use the system for 600 days. The figure of 600 days was, he said, arbitrary but allowed a long development period. He admitted in cross-examination that this textual file would not have been visible to Patsystems. I accept the basic facts that there was such a textual data file and that it would not have been visible to Patsystems. However it is for me to decide whether Mr Starbuck actually granted such a licence as a matter of law or merely thought that he did. In particular, it all depends on whether Mr Starbuck was in fact the owner of the copyright in the NSA C (aka NSA version 3.1) code following the 1999 Assignment.
Licences to LIFFE
There were 2 subsequent licences from Patsystems to LIFFE, one in 2000 and the second in November 2002. Both were specific to NSA Pascal. Under the terms of the 1999 Assignment, Patsystems was entitled to grant such licences provided that Mr Starbuck was paid 50% of all revenues in relation to the same.
Mr Starbuck’s counsel also drew my attention to a memorandum headed “LIFFE Commentary on Patsystem 8 October 2002 Draft”. This appears to be a commentary by somebody unknown on a document which I have not seen, but which was presumably an early draft of the November 2002 licence. It was relied on as showing the views held by the unknown author about Mr Starbuck’s rights. I did not find this document helpful.
The current legal position as regards the second LIFFE licence, and some other documents including this memorandum, is complex. On 12th December 2016 HHJ Hacon granted Mr Starbuck permission under CPR Part 31.22(1)(b) to use such documents for the purpose of bringing fresh proceedings for breach of contract: see paragraph [1] of the Judge’s Order. He also granted permission to appeal: see paragraph [3]. However Mr Starbuck was ordered not to make any actual use of these documents until any one of a number of triggering events occurred, one of which was the documents being read to or by the court at the trial (see paragraph [2(1)]). Even then Patsystems was given permission to make a fresh application at the trial for another order restricting use of such document under Part 31.22(2): see paragraph [2], end.
During the trial Patsystems indicated that it does intend to make such an application of the type referred to at the end of paragraph [2] of HHJ Hacon’s Order. In particular it seeks an order under CPR Part 31.22(2) prohibiting Mr Starbuck from using the documents in question even though HHJ Hacon has already granted permission under CPR Part 31.22(2) for such use; and the documents have now been read to, and indeed by, the court at the trial. The parties have agreed that I will deal with that application at the hearing on the form of order following this judgment. Nothing in this judgment, including my reference to the documents in question, prevents that application being made.
The email exchange between Mr Starbuck and LIFFE
On 19th September 2002 Mr Starbuck sent an email to Gary Jordan of LIFFE. In this email Mr Starbuck mentioned that he had heard of plans by LIFFE to redevelop NSA to use something called Tibco. Mr Starbuck suggested to LIFFE that “you start with NSA v3.1 rather than 2.5. You’d be 90% of the way there before you started, with the obvious cost and time saving”. He went on to say that v3.1 was “written in C rather Pascal ... works with VMS, TRU64, Solaris, Linux and Windows 2000 ... v3.1 has not been released by Pats, although it was completed and working as of q3 last year”.
In his cross-examination, Mr Starbuck said that the suggestion NSA version 3.1 worked with all of these platforms was an exaggeration. He agreed that in this email he did not claim to own any rights in NSA version 3.1.
2013 Christmas Eve emails
Mr Starbuck also relied on an exchange of emails between Mr Starbuck and Mr Cook on Christmas Eve 2013, in which Mr Starbuck referred to the undeleted code as “MY” code. However such code was always Mr Starbuck’s in the sense that he had written it.
The 1999 Assignment itself
I now turn to the Assignment itself. For purposes of this judgment I will focus only on those provisions which were addressed in argument. These are as follows, starting with the recitals:
“WHEREAS:
(A) The Vendor, (Footnote: 6) has developed and installed the Software (as hereinafter defined) on computer systems owned by the Purchaser. (Footnote: 7)
(B) An Associate of the Vendor has licensed the London International Financial Futures Exchange (“LIFFE”) to use the Software on the terms of development, source and run-time licences all dated 5 June 1989 and maintenance agreements dated 1 June 1990 and 22 January 1992 (“together, the LIFFE Licences")
(C) The Vendor owns the Intellectual Property Rights (as hereinafter defined) in the Software and except for the licences granted pursuant to the terms of the LIFFE Licences, has not granted any licences for the use of the Software
DEFINITIONS
In this agreement unless the context otherwise requires:
…
“Intellectual Property Rights” the copyright, trade marks, trade names, patents and all other intellectual property subsisting in or used in connection with the Software;
…
“Software” the software programs known as ‘NSA’ or ‘Networked Systems Architecture’ in source code form identified by title and description in the Schedule
…
SALE OF COMPUTER SOFTWARE
Subject to the terms and conditions of this Agreement the Vendor shall sell with full title guarantee and the Purchaser shall purchase the Software including all Intellectual Property Rights therein with effect from the First Payment Date.
…
THIRD PARTY LICENCES AND REVENUES
…
The Purchaser shall, if it thinks fit, grant rights to third parties to use the Software by way of sale, licence or otherwise. If it does so then, the Vendor shall be entitled to 50 per cent of all Third Party Revenues paid by such third parties and the Purchaser undertakes to pay such proportion of the Third Party Revenues within 14 days of receipt of the same from such third parties.
…
SCHEDULE
NSA (Networked Systems Architecture) a software package which provides the application developer with complete fault tolerant process control and secure communications between processes within a distributed system.
NSA includes the following features:
Fault Tolerance
Hot Standby
Load Sharing
Communications
NSA turns a collection of individual programs and computers into an integrated single system. This means that the application use the system as a whole without any need to know which machine the other applications are on, whether they have failed and been restarted, etc. ”
The Assignment issue - analysis
The key issue is whether “Software” as defined in the Assignment includes NSA version 3.1 (as submitted by Patsystems) or only the Pascal versions (as submitted by Mr Starbuck). In my judgment the term Software includes all of these versions. This is for the following reasons.
First, as a matter of language the definition of “Software” is very general and covers all versions of NSA. It is not defined by reference to any particular version but by reference to its functionality. Mr Starbuck accepted that as a matter of language this definition applied to all versions of NSA and there was nothing in the language to exclude its application to NSA version 3.1.
Secondly, it seems to me to be particularly important that prior to the 1999 Assignment both sides knew there were multiple versions of NSA, namely the three versions I have mentioned: see paragraph [35] above. Moreover, Mr Starbuck accepts that a reasonable person having all the background knowledge which would have been available to the parties would have understood them to be using the language in the contract to mean both of NSA versions 2.5a and 2.5c. Mr Starbuck accepts this because both of these versions were in actual use, and no reasonable person would have thought that the definition excluded either the version of NSA used by LIFFE or the version of NSA used by Patsystems itself. If the wording used would be understood to cover both of these versions in any event, it is difficult to see any logical reason why the same wording would not also be understood to cover the other version which both parties knew about. In my judgment, it does.
Thirdly, it is not as if the parties thought that NSA version 3.1 was irrelevant. On the contrary, both sides knew that Patsystems thought it had strategic importance for the future: see again paragraph [35]. In addition the purpose of the 1999 Assignment was to formalise the position as regards the NSA software so that the proposed float would be as successful as all parties hoped: see again paragraph [36]. It does not seem to me that leaving NSA version 3.1 outside the scope of the Assignment would be thought likely to help the success of the float. Hence if the wording were unclear - and I do not think it is - then these are further reasons why a reasonable person having all the background knowledge which would have been available to the parties would have understood the language used in the contract to include NSA version 3.1.
This conclusion is unaffected by the recitals, on which Mr Starbuck particularly relied. The recitals are not definitions, nor are they presented as such: on the contrary, they cross-refer to the definitions. The recitals are merely statements of fact, as they appeared to the parties. Recital (A) is literally correct since Mr Starbuck had installed NSA version 2.5c on systems owned by Patsystems. So is recital (B), since LIFFE had been licensed to use NSA version 2.5a.
My attention was also drawn to a number of other provisions of the Assignment, including Mr Starbuck’s warranty (see clause 6) and the restrictive covenant entered into by Mr Starbuck (see claim 10). I also note the covenant of further assurance (see clause 13). These do not change the position.
Nor is my conclusion affected by all of the other documents to which my attention was drawn, such as the Heads of Agreement or the documents concerning LIFFE. All of these documents were drafted in their own particular context and use their own language. There is no logical reason why the meaning of the 1999 Assignment should change according to how the term NSA was used in these different documents.
I also disregard all of the evidence about what Mr Starbuck, Mr Hayward, Mr De Cock and others thought the 1999 Assignment meant. Such evidence is by its nature entirely subjective. Indeed, much of this evidence did not even focus on the wording of 1999 Assignment itself but on more general notions such as “what the negotiations were about”. There was no evidence from Mr Theys but his private views would not have mattered anyway.
For the same reason it does not matter whether Mr Starbuck thought he owned copyright in version 3.1 when granting what he believed to be a licence to Patsystems in 2001, or thought he did not own such copyright when sending his email to LIFFE about version 3.1 in September 2002, or what language he used to describe the different versions in the Particulars of Claim. These would only go to his private state of mind at various times.
Still further arguments were advanced on both sides in support of their respective constructions. For instance Patsystems sought to argue that the amount of consideration was so high that it must have included title to NSA version 3.1, whereas Mr Starbuck argued that it was not high enough, to which Patsystems countered that NSA version 3.1 was not worth very much at this time anyway. These arguments demonstrate the dangers of seeking to apply a free-standing notion of “commercial common sense” which is divorced from the actual language used in the Assignment. In any event they are inconclusive, and I place no weight on them.
The modifications issue
Both sides agreed (albeit for different reasons) that nothing turned on this issue so I will be brief. Patsystems pointed out, without objection by Mr Starbuck, that his pleaded case does not assert that Mr Starbuck owns any copyright in modifications to NSA version 3.1 created over this period or that Patsystems has infringed any part of such copyright. Hence it does not matter who owns copyright in any such modifications.
In any event, whilst the evidence established that the modifications made by Mr Starbuck (whatever they were) were done by him at home, this was because he had the relevant version of the NSA software on his home computer rather than on his work computer. Mr Starbuck was a full time employee of Patsystems in a senior role at this time, and there was no evidence that he did this work in his free time. Accordingly Mr Starbuck has not proven that he owns whatever copyright there may be in relation to such modifications.
The ACE issue - legal context
Both sides were asserting that copyright subsisted in NSA version 3.1 and I have found that such copyright was owned by Patsystems. The sole legal issue is infringement: does the ACE software reproduce “the expression of the intellectual creation of" the author of NSA version 3.1? See SAS Institute v World Programming [2014] RPC 8; [2013] EWCA Civ 1482 at [61]. (Footnote: 8)
In the SAS case, the Court of Appeal gave further guidance as to what was meant by “the expression of the intellectual creation of" the author. For instance it is clear that the functionality of a computer program is not protected by copyright: see ibid at [51], [52], (Footnote: 9) Similarly neither are keywords, syntax, commands and combinations of commands, options, defaults and iterations, etc: see [58]-[59]. The Court of Appeal in SAS also approved an earlier Court of Appeal case, Nova Productions v Mazooma Games (Footnote: 10) where Jacob LJ drew a distinction between the functions of a computer (which are ideas, and not protectable by copyright) and “a written work consisting of a specification of the functions of an intended computer program” (which is a form of expression, and entitled to protection as a literary work): see SAS at [70]-[74] and in particular paragraph [71].
This distinction between idea and expression is a familiar one in copyright law. What SAS establishes in particular is that merely copying the functionality of a program, and/or copying any of the other technical features mentioned above, falls on the ideas side of the line.
The ACE issue - Evidence
There was no dispute that Mr Starbuck has used the ACE software. Indeed he said that he had lost about £15 000 by using it to trade on financial exchanges. It was also accepted that his use was of such a nature that it would infringe if the ACE software infringed the copyright in NSA version 3.1. One would thereafter have thought that the evidence on infringement would begin with a comparison of the source code used in each of ACE and NSA version 3.1. This has not happened, due to the way in which Patsystems has conducted its counterclaim.
The case management conference was held on 23rd February 2016 before HHJ Hacon. Unusually, that made provision for a further case management conference to be held in July 2016. The purpose of this arrangement was so that the parties could agree limited inspection of the ACE source code (which Mr Starbuck understandably said was confidential) and that the further case management conference could deal with further disclosure and/or expert evidence if considered necessary.
On 23 May 2016, Mr Cook of Patsystems travelled to the offices of Mr Starbuck’s solicitors to inspect the source code of ACE. He was allowed 3 hours and was given 66 separate PDF files which had been generated from the source code (ie not the source code itself). He noticed some similarity between an NSA version 3.1 header file called env_intemal.h and an ACE header file called ace_private.h, including a misspelling of “data” as “adta”. He also noticed some similar comments appearing in some other files (nmw_process.c as compared to acm_process unix.c, acm_process_vms.c and acm_process_win32.c). However Patsystems then did nothing until November 2016. At that point it made an application to HHJ Hacon for disclosure of the source code, which the Judge refused as being too late. Patsystems did not appeal against that order.
Mr Starbuck chose not to produce the source code himself. His evidence in chief about it was quite general, and focussed on what he said were the differences between NSA and ACE.
Mr Starbuck was cross-examined about how he had created NSA. He explained that when creating the NSA C software his “very first step” when creating had been to go through the Pascal file line by line, translating where he could and rewriting where necessary. In this way he “essentially” and “largely” kept the structure and sequence and organisation of the Pascal code in the C code. The questioning later turned to whether he produced the ACE code in the same way, but this time starting from NSA C. This produced the following:
Q. When you started working on ACE - the programme you are now calling ACE - presumably you began with the NSA C code, which you had worked on between August and December 2000.
A. Yes. It has a lot of perfectly valid building blocks that I moved over into ACE. There is also an awful lot of ACE that does not exist in either of those two. It is like the conversion from Pascal to C. You take the first step and then you add on to it quite significantly, and this move from NSA C to ACE was exactly the same. There is the starting point. Use the building blocks that work and redo the stuff that does not work So, yes, there is commonality between NSA C and ACE. I am sure there are lots of modules that would be very, very similar and an awful lot that are brand new and heavily modified. I know there are modules in NSA C that do not exist in ACE, which I decided were obsolete and deprecated them. So, yes, there are building blocks in ACE that certainly do the same function as NSA C.
Q. Just to summarise, your process would have been a bit like your Pascal to C conversion except you started with a C version rather than a Pascal version, so to that extent it was a little bit easier.
A. Yes.
Q. Where there was useful code in NSA C you kept it and where it was not useful you modified it or rewrote new bits.
Yes, standard programming techniques for any programmer. When you are doing something new, you pick up the bits that you have already done and reuse them. Any programmer will tell you that.
The ACE issue - Analysis
Patsystems relied on the combination of Mr Cooks’ inspection; Mr Starbuck’s failure to disclose the source code; and the passage of cross-examination reproduced above as being sufficient to show infringement.
Mr Starbuck submitted that Mr Cook’s inspection showed very little; that Mr Starbuck was not obliged to provide disclosure of his source code, that it was up to Patsystems to prove infringement; that in the absence of any source code in evidence, the counterclaim must inevitably fail; that ACE had lots of additional functionality and code not found in NSA; and that the passage of cross- examination mentioned above went no further than showing reproduction of ideas, if it even showed that.
I agree that Mr Cooks’ inspection is insufficient per se. All this showed was that very minor amounts of code appeared to have been reproduced in 2 of the 76 programs. It may be that the 76 programs selected for inspection on that occasion were not representative of the whole of ACE but the time to take that point has long gone.
I am more troubled by Mr Starbuck’s failure to disclose the source code. However it seems to me that the real reason why the source code is not before me is because Patsystems failed to take the opportunity given to it by HHJ Hacon at the case management conference to press for inspection thereof until it was too late. Moreover I was told that Patsystems never warned Mr Starbuck that it would ask for an adverse inference to be drawn against him if he did not disclose it.
I do not agree that the absence of source code is in itself determinative of non- infringement, as Mr Starbuck submits. If there is alternative evidence on which the Court can properly find infringement, the lack of source code does not matter. Furthermore the presence of additional functionality in ACE having nothing to do with NSA is neither here nor there.
The key question to my mind is whether the cross-examination gets Patsystems home. The high point is Mr Starbuck’s statement that “I am sure there are lots of modules that would be very, very similar However although Mr Starbuck refers to “modules ”, he also seems to be thinking about “building blocks ”, and he does not explain what he means by either. Prima facie this sounds more like ideas than the expression of ideas.
In the end it seems to me that I am being asked to speculate about things which Patsystems could quite easily have proved by proper evidence, such as an expert report based on actual source code comparisons, and I see no reason why I should speculate. Hence I conclude that Patsystems has not proved that the ACE software reproduces the expression of the intellectual creation of NSA version 3.1, and the counterclaim accordingly fails.
Conclusion
Mr Starbuck’s action for copyright infringement fails because Patsystems owns the copyright in all versions of NSA pursuant to the 1999 Assignment, including in particular version 3.1. The counterclaim fails because Patsystems has not proved that the ACE software used by Mr Starbuck infringes such copyright