Tag Archives: software

Was the Microsoft Empire Built on Stolen Goods?

The history of the computer industry is filled with fascinating tales of sudden riches and lost opportunities. Take that of Ronald Wayne, who cofounded Apple Computer with Steve Wozniak and Steve Jobs but sold his shares for just US $2,300. And John Atanasoff, who proudly showed his digital computer design to John Mauchly who later codesigned the Eniac, typically recognized as the first electronic computer, without credit to Atanasoff. Perhaps the most famous story of missed fame and fortune is that of Gary Kildall. A pioneer in computer operating systems, Kildall started the company Digital Research and wrote Control Program for Microcomputers (CP/M), the operating system used on many of the early hobbyist personal computers, such as the MITS Altair 8800, the IMSAI 8080, and the Osborne 1, before IBM introduced its own PC. Kildall could have been the king of personal computer software, but instead that title went to his small-time rival Bill Gates. For years, rumors have circulated that the code for the original DOS operating system sold by Microsoft is actually copied from the CP/M operating system developed by Digital Research.

A couple years ago we took it upon ourselves to search out the original code and use CodeSuite to determine the truth once and for all. Our research was summarized in a popular (and not-so-popular) article in IEEE Spectrum entitled Did Bill Gates Steal the Heart of DOS? If you haven’t read it, you should. It’s a fun read but it only summarizes our exhaustive results using our tools and procedures for finding copied code. The article generated a lot of controversy and we always intended to publish the full technical details of our analysis, but it’s surprising how many people don’t like our conclusion and wouldn’t publish my paper. But now the full academic paper entitled A Code Correlation Comparison of the DOS and CP/M Operating Systems is available online in the Journal of Software Engineering and Applications. If you want to know the details, and you want to know the truth, it’s in the article and the details are in the paper.

Be a Pioneer in the Field of Software Forensics

I hope you’re all aware of my book The Software IP Detective’s Handbook: Measurement, Comparison, and Infringement Detection. It’s the first book on Software Forensics, a field that I pioneered at Software Analysis and Forensic Engineering and Zeidman Consulting. Whereas Digital Forensics deals with bits and files, without any detailed knowledge of the meaning of the data, Software Forensics deals with analysis of software using detailed knowledge of its syntax and functionality to perform analysis to find stolen code and stolen trade secrets. The algorithms described in the book have been used in many court cases. The book also describes algorithms for measuring software evolution, particularly as it relates to IP changes.

If you are a teacher, this is a great time to incorporate the materials in the book into your courses on software development, intellectual property law, business management, and computer science. There’s something for everyone in the various chapters of the book. Your students and you will be at the forefront of an important and very new field of study.

If you’re interested, please contact me.

HTML Preprocessor Released

S.A.F.E. recently released the HTML Preprocessor. The HTML Preprocessor is designed to transform web pages into files that are amenable to analysis by CodeSuite, DocMate, and other source code analysis tools. The HTML Preprocessor examines HTML files and other markup language files and extracts all embedded code into separate files. These files each contain only one kind of code that can be easily analyzed and compared using CodeSuite and DocMate. The code contained in these generated files are:

  • Scripts such as JavaScript and VBScript
  • Cascading style sheets (CSS)
  • Comment text containing HTML comments
  • Message text containing HTML user messages
  • HTML tags
  • Pure HTML
  • Pseudocode representation of the HTML

CodeSuite 4.4 and CodeSuite-LT 1.2 Released

S.A.F.E. recently released version 4.4 of CodeSuite and version 1.1 of CodeSuite-LT. The most important new feature of this version is that these programs now recognizes many different text encoding formats including ASCII, UTF-8, UTF-16, and UTF-32. Characters in alphabets other than the Latin alphabet used for English are now supported. For example, code with comments or strings in Japanese, Korean, Chinese, or Russian can be compared correctly.

The most significant change is to BitMatch. When examining binary object code to find text strings, you can now specify the encoding format of the file. If you’re not sure about the encoding, you can choose multiple formats.

As demand for our products increase outside the United States, we realized a need to support languages in those countries also.

Inventions must be novel and nonobvious, not complex

In August I debated the impact of software patents at the Computer History Museum (you can watch the debate here). I asked members of the audience how many were programmers or had  written software. A large number of hands went up. I then asked  those people to put their hands down if they thought what they did wasn’t creative and that anyone could do it. I was really surprised when a large percentage of hands went down.

I’ve been thinking about that, and I’ve come to three conclusions.  First, many programmers just aren’t very good at what they do. Many  of them have simply learned to copy others’ code (see  Is Googling Replacing Programming?) or maintain someone else’s code. Second, many programmers underestimate their abilities. Programmers tend to be introverted and not ones to brag about their skills. Of course there are exceptions, but programming is generally a solitary endeavor.

Third, many programmers believe that to be patentable, something must be very complicated. But that’s not true. Section 102 of the U.S. Patent Act states that an invention must be novel, and Section 103 states that it must be nonobvious. There is no requirement that it be complex.

Many inventions are very useful and yet also very simple. Searching Google, I found almost 4,000 patents involving paper clips. I found 27,000 patents with the word “needle” in the title and over 9,000 patents for kinds of spoons. There are nearly 600 patents involving rubber bands. Some recent patents include a water sprinkler for dogs (USPTO # 7,997,229) and a waterproof cover for a camera (USPTO # 7,991,274). My point is that some inventions are simple and some are complex, but they all are novel and no one else thought of them. If you tend to dismiss software patents, remember that what makes an invention patentable is not whether you could have done that, but whether you actually did.

Grocery trolls and civil liberties

People have been asking me lately what I think about those organizations that buy up patents and license them or sue infringers. Kindly known as non-practicing entities (NPEs), patent licensors, or patent aggregators, they are disparagingly called “patent trolls.” However, there is a much more troubling entity out there that I want to bring to your attention-the grocery trolls.

Grocery trolls produce no fruits, vegetables, or produce of any kind. They do not own farm land, they do not raise livestock. They do not harvest grains. Instead, they buy up the food items produced by small, independent farmers, and sometime large farm corporations, and force hungry consumers to buy them at higher prices. These greedy grocery trolls, going by benign names like Safeway, Lucky’s, Rainbow Grocery Cooperative, and Trader Joe’s have no farming skills whatsoever. And the consequences of not buying food from them? Starvation!

Patent licensors perform the same kind of service by buying up inventions from inventors and offering them for sale. The strength of their size, their sales force, their marketing budget, and their distribution channels ensures that they will be able to buy from small entities and sell to large and small entities and make a profit by charging for their services. Groceries buy from small farmers who could not otherwise reach large markets. Patent licensors buy from small inventors who cannot afford to license their inventions to other companies.

The analogy isn’t perfect, but it’s pretty darned good. Free commerce in a free society means that you or I can sell anything we like to anyone we please; there are no restrictions on having created the good in the first place. If that were the case, most transactions would be illegal. You wouldn’t be able to sell your house or buy a used car. You wouldn’t be able to trade baseball cards or collect antiques. The list is very long. That’s why restrictions on the sale of patents must never be allowed in any free market economy. Restricting the sale of any goods would be a curtailing of civil rights-an extremely dangerous precedent-and anyone who believes in civil liberties should be absolutely against such restrictions.

The Software IP Detective’s Handbook

My book on software intellectual property, a labor of love (and hate) for the last two years, has just been published by Prentice-Hall. The book is intended for several different audiences including computer scientists, computer programmers, business managers, lawyers, engineering consultants, expert witnesses, and high-tech entrepreneurs. Some chapters give easy-to-understand explanations of intellectual property concepts including copyrights, patents, and trade secrets. Other chapters are highly mathematical treatments describing quantitative ways of comparing and measuring software and software IP. The first chapter of the book outlines which chapters are most important for the different audiences.

Overall the book covers the following topics:

  • Key concepts of software intellectual property
  • Comparing and correlating source code for signs of theft or infringement
  • Uncovering signs of copying in object code when source code is inaccessible
  • Tracking malware and third-party code in applications
  • Using software clean rooms to avoid IP infringement
  • Understanding IP issues associated with patents, open source, and DMCA

You can purchase your copy from Amazon.com here.

Do patents really kill innovation?

In a recent editorial in the Wall Street Journal entitled Digital Innovators vs. the Patent Trolls, Peter Huber, a senior fellow at the Manhattan Institute, argues that software patents are the shotguns that kill innovation (my analogy) and that non-practicing entities (NPEs derisively referred to as “patent trolls”) are pulling the trigger (again, my analogy). I disagree.

Peter Huber makes some contradictory and misleading arguments where he claims that non-practicing entities are ruining innovation in America. On the one hand, he acknowledges that only a small percentage of patents, roughly 2% by his own estimate, end up court. Yet he also believes that “[o]ur patent laws have drifted way off course.” He states that “[t]he patent office now grants more than 4,000 patents a week” but neglects to mention that the total number of patent applications and the number of patent rejections have both similarly risen. And one major goal of USPTO director David Kappos, appointed in 2009 by President Obama, is to reduce the backlog of 1.2 million patents around the time he took office. Many more patents are being submitted and examined than ever before-—a sign of the vigorous spirit of innovation in America.

Dr. Huber’s logic is equally baffling when he claims that companies rarely sue each other but that companies spend lots of money collecting patents. Why would a company spend so much on worthless patents? Patents are used to protect their investments in technology, and the vast majority of patent lawsuits are between large corporations like the recent ones between Oracle and Google, Apple and Samsung, Dish Network and Tivo, and many, many others.

Dr. Huber claims that the Supreme Court’s decision in Bilski v. Kappos somehow agrees with his view that patentability must be restricted. In fact, this decision did just the opposite. While business method patents were rejected by the court, as expected, the patentability of software was expanded.

Dr. Huber claims that plaintiffs in the Eastern District of Texas almost blindly reward plaintiffs in patent cases, but a recent study by the Stanford
Intellectual Property Clearinghouse
showed that plaintiffs in that jurisdiction win only 40.3% of the time.

Finally Dr. Huber gets to his point. Patent examiners and juries just aren’t smart enough to figure out which patents are good and which are “sketchy.” So instead, he wants the patent system changed to restrict inventors from owning the fruits of their intellectual labor. As an individual inventor I object to his condescension and to his attempt to limit this constitutionally protected driver of American innovation.

DocMatch detects plagiarism

S.A.F.E. has recently announced the release of DocMatch, a new tool for comparing all kinds of documents to find plagiarism. Our unique, patented technology has proved very useful for finding copied computer code in court. We decided to apply our technology to general documents like articles, papers, and novels. There have been a few cases where we built custom applications to compare written engineering specifications. The results were very useful. In one case, finding copied but modified software specifications gave clues that showed how one company copied another’s software.

DocMatch can be licensed as the full version or the LT version. The full version is the professional tool. It creates a database containing matching elements between two sets of documents. The full version can automatically search the Internet for all references to commonly used words and filter them from the database. Also, sophisticated statistics can be extracted from the database. The full version costs $150 for a one-year license. The LT version produces an easy-to-read HTML report showing words, sentences, and paragraphs that are identical or similar in every pair of documents. The LT version costs $30 for a one-year license. Register to download your copy here.