Founded in 1993 by brothers Tom and David Gardner, The Motley Fool helps millions of people attain financial freedom through our website, podcasts, books, newspaper column, radio show, and premium investing services.

Dear Oracle, Google's Innocent!

While Oracle is a highly innovative company with a broad swath of technologies and patents that should be protected under law, the lawsuit it is trying to levy against Google over Java APIs is a bit over the top.

Anybody following the hoopla in the tech landscape has probably at least heard of Oracle's (NYSE:ORCL) suit against Google (NASDAQ:GOOGL). In particular, Oracle sued Google for "copying" a number of its application programming interface, or API, definitions for use in the programming model for the now incredibly popular Android operating system.

The case was initially largely dismissed. In fact, Oracle ended up having to reimburse Google for a million bucks in legal fees. Now, it seems that Oracle is being rather aggressive in appealing this decision and extracting what it feels it's due from Google. But the question is, does Oracle really have a case here?

What's going on here?The tricky thing about this lawsuit is that Google didn't actually copy any code. What it did was copy a set of Java API definitions. What exactly is an API? Well, think of it this way: When a programmer sits down to write code in a given programming language, he or she doesn't have to start from scratch -- many programming environments usually have a lot of functionality already built-in, which means the code is already written and ready to be invoked by the programmer building a new application.

So, for example, a very popular API for graphics programming is known as OpenGL. What this particular API does is abstract away all of the intricacies of talking to a computer's graphics hardware in order to draw images and graphics to the screen. Without a standardized API like OpenGL, programmers would need to write specific code for just about every graphics chip on the planet -- nobody would be able to get any real work done and the game industry would be much less vibrant. Instead, a common set of functionality is exposed to the programmers and it is up to the graphics chip vendors to actually implement these APIs in their graphics drivers.

That's exactly what's going on here. Oracle specified a number of quite useful APIs that make the lives of Java programmers easier. Google, when it designed Android, decided that Java would be the language of choice and augmented with its own APIs and functionality specific to the Android OS. However, a number of the APIs that ship with "standard" Java were also deemed to be useful, so Google included them as part of the "Java for Android" specification.

Google did the legworkWhile Google may have copied the specification for these APIs (i.e. exposed that same functionality), Google did the work in actually implementing those APIs in its own version of Java and accompanying virtual machine. If Google had simply copied the actual code and implementation from Oracle, then this wouldn't even be a question -- Google would probably have to pay up. But that's not what happened here. Google took the definition of what functionality should be included for Android programmers to use and implemented that functionality itself. Google did the legwork.

Foolish bottom lineWhile Oracle may well win this lawsuit, it won't be on much of a technical basis. Google may have borrowed some definitions, but it did all of the right things and provided its own implementations of these APIs as well as its own virtual machine implementation. There's nothing to suggest that Google couldn't have developed its own programming language from scratch for Android, nor is there anything to suggest that it couldn't have developed its own APIs to cover the same basic functionality exposed with the original Oracle ones.

What Google did was out of convenience for the programmers that would need to develop on the Android platform. Java is a very popular programming language that is the language of choice in both academia and industry, and it would have been foolish for Google -- especially in trying to introduce a brand new mobile platform -- to use anything else. But, more importantly, Google didn't seem to do anything wrong here.

Oracle is a great, highly innovative company with a broad swath of technologies that should indeed be covered by patents, but API definitions, in this Fool's view, don't fit the bill.

Author

Ashraf Eassa is a technology specialist with The Motley Fool. He writes mostly about technology stocks, but is especially interested in anything related to chips -- the semiconductor kind, that is. He can be reached on Twitter -- follow him there: Follow @tmfchipfool