One of the things that makes protecting computer related inventions tricky is that first you have to define the invention, and defining the invention is not something that is altogether easy when the invention is a computer process or relates to software. Sure, it is easy enough to define a list of desired functionality, and if you have some computer programming skills it is easy enough (after investing the requisite time) to write the code that will enable the functionality, but that which can be protected via patent lies somewhere between the desired functionality and the code, making the defining of the invention rather elusive for some, particularly those who are new to the patent arena. Further complicating the matter is the reality that over the last several years the law of patent eligibility in the United States has been in flux. It did become largely settled with respect to software and business methods thanks to Bilski v. Kappos , which was decided by the United States S