Software developer found to have copied former employer's code despite using different programming language and deleting the original source code

Background

The claimants are two companies (“PQ”) that produced quality assurance software, in particular statistical process control (“SPC”) software and gauge management software. The first, PQ Systems Europe Ltd (“PQE”), is an English company and ceased trading in 2015. The second, Productivity-Quality Systems, Inc. (“PQS”) is a company incorporated in the USA.

Mr Aughton is a software developer and worked for PQE in various roles (including as director and ’senior partner’) between 1989 until his resignation on 15 May 2015. On 19 May 2015 Mr Aughton and his wife incorporated Factoria Limited (“Factoria”), the second defendant, which also produces quality assurance software. Mr Aughton represented himself and Factoria in court.

The trial concerned whether software written by Mr Aughton for Factoria was copied from software he wrote while employed by PQE, in which PQ claim copyright and confidentiality.

Mr Aughton at PQ

In around 2006 or 2007 OQ decided to re-write its principal SPC produce, SPC pack. Mr Aughton was given the task of developing a charting module in a programming language known as VB.NET, with another developer producing an alternative version written in WPF. Only the WPF version was ultimately taken forward, which Mr Aughton considered a serious mistake. At his request he was moved to another project but he carried on developing an SPC program in VB.NET (“ProSPC”) and gave evidence that he spent around 50 days of his own time working on it. In 2012 he shared a copy of that software with a former employee of PQ. This resulted in disciplinary action against Mr Aughton, culminating in a written warning and being removed as a managing director of PQ.

Mr Aughton after leaving PQ

After leaving PQ, Mr Aughton developed SPC software written in VB.NET (“InSPC v1”). He formed Factoria to exploit this software and then developed it in partnership with a commercial partner, CyberMetrics. He later re-wrote the software in C# (“InSPC v2”). They have broadly the same functionality as ProSPC.

A demo form of InSPC v1 was promoted by CyberMetrics, which PQ discovered and investigated, finding significant functional similarities with their own product and references to both Factoria and PQ as an author of the program. PQS filed proceedings against CyberMetrics in 2017, and Mr Aughton was deposed in October 2021. These proceedings were subsequently settled.

Ownership of copyright in ProSPC

The current proceedings were started in 2019 and centre on the allegation that Mr Aughton copied or made use of software owned by PQ, in particular ProSPC.Mr Aughton claimed that his work on ProSPC was separate from his employment, and written on his personal home computer and that PQ did not own the rights to the software.

In contemporary statements at the time of his disciplinary proceedings suggest that Mr Aughton admitted that the code for ProSPC was written while he was employed by PQ and using somecode the earlier PQ software. Mr Aughton claimed at trial that these statements were made to “placate” the then-owner of PQ under threat of losing his job.

The Judge dismissed this evidence on two bases:

·the admission that he used PQ code in a project shared with a former employee made his position worse than if it had been a personal hobby project; and

·when the founder of PQ attended Mr Aughton’s home to retrieve his work computer containing the source code for ProSPC he was intentionally given a blank computer to take away.

Mr Aughton accepted ProSPC was written using resources licensed by PQ which the judge viewed as a factor in determining whether ProSPC was written in the course of his employment.

Looking at the points overall, the Judge found that ProSPC was written in the course of his employment and so the copyright and confidential information in it belonged to PQ.

Was InSPC v1 copied from ProSPC?

Mr Aughton retained a copy of ProSPC after leaving SPC and while developing InSPC v1 however his case was that InSPC v1 had been written from scratch.

Assessing the similarities between the code for ProSPC and InSPC v1 was complicated by the fact that the Mr Aughton had deleted (or overwritten) the source code for both, and only the object code remains.The object code had to be ‘de-compiled’ (and in the case of InSPC v 1 ‘de-obfuscated’) which hampered comparison.

Despite these issues, the experts agreed that there were similarities in the structure, format, naming conventions and capabilities and features of the programs. Mr Aughton claimed all this could be explained by the fact that he wrote both of them, and had “developed his own idiosyncratic style”.

However, the similarities are also found in areas with no structural or functional need to be ordered in a certain way. Neither expert could think of a technical reason why this should be the same and the Judge found they had been copied. While this did not prove that Mr Aughton copied a substantial part of ProSPC, it did undermine his credibility.

The Judge also pointed to the circumstances of the original source code deletion as suggestive of copying: although Mr Aughton was required under contract to delete ProSPC upon his resignation, he admitted to retaining it until at least 2015. His evidence was inconsistent about exactly when deleted it, and whether he in fact deleted it or merely wrote over it. The Judge inferred that Mr Aughton kept the source code for ProSPC until he no longer needed it to copy for InSPC v1.

Overall, the Judge found that Mr Aughton had copied “at least a substantial part of ProSPC” when producing InSPC v1.

Was InSPC v2 copied from ProSPC?

In 2017, Mr Aughton started to re-write InSPC v1 into C# in 2017. Again, it is unclear exactly when this began. The Judge found that it was most likely shortly after he received the letter before action in the US proceedings. The Judge felt that it was inherently likely that Mr Aughton would have referred to the InSPC v1 source code when writing InSPC v2, particularly given his finding that InSPC v1 was itself copied from ProSPC. He also pointed to the fact that the source code for InSPC v1 was deleted when it was superseded by InSPC v2, in the same way that ProSPC was deleted only when Mr Aughton had copied what he needed from it for InSPC v1.

The Judge also dismissed evidence from Mr Aughton that he always started “with a blank slate” when writing code, as this was inconsistent with his admissions regarding the repurposing of the original PQ software when writing ProSPC.

The Judge concluded that it was more likely than not that InSPC v2 was at least substantially copied from InSPC v1, and therefore was indirectly copied from ProSPC.

Conclusion

The Judge’s overall conclusion was that Mr Aughton had both breached a contractual duty of confidentiality and infringed copyright of ProSPC when producing both versions of InSPC. The Judge also found that Mr Aughton had breached his duty as a director, even though he stepped down from this role in 2013, however the Judge did not feel that any additional consequences arose from that finding.