TweetFollow Us on Twitter

Time Bomb
Volume Number:9
Issue Number:10
Column Tag:Legal Eagles

Time Bombs, Stop Devices and Other Stuff

What are the legalities of such code?

By Paul Goodman, Esq., P.A.S., New York, New York

Case in point. Bob Bytes, a custom business software developer accepts a project from Wonder Widget, a local widget brokerage, for the development of an integrated accounting package. Since both parties were in a hurry to get started, neither took the time to memorialize their agreement in writing, but there was an oral agreement that Bob would be paid $3,500 per month for the development which was projected by Bob to take four months. Unfortunately, due to circumstance unforeseen by either Bob or Wonder Widget, the project dragged on for three additional months and then for three more without a definitive end in sight. After ten months, Wonder Widget started to object to the increased development time and costs and started to blame Bob for the problems. Bob, on the other hand, blamed Wonder Widget for constantly changing the program specifications.

After Wonder Widget delayed in paying several of Bob’s weekly invoices, Bob became nervous and thought of an idea to help assure payment of his fee should their relationship fall apart. Bob planted into the software a few conditional statements which locked up the software at a predetermined date. Since Bob had never supplied any source code to Wonder Widget, and Wonder Widget had never requested it, Bob had Wonder Widget just where he wanted them. If they wanted to use the software and access to their data, they would have to pay Bob just what he wanted and thought he deserved. Without the source code, Wonder Widget had little that they could do but to pay Bob.

Let’s look at another possible ending to the story. Instead of paying Bob, Wonder Widget decides to make a stand. They hire a lawyer who brings a law suit against Bob charging breach of contract and intentional interference by Bob with Wonder Widget’s property, that is, its data which was now inaccessible. They also ask for punitive damages. To make matters worse, Wonder Widget’s lawyer brings a motion for an injunction requiring that Bob immediately remove the software stop he has placed into the software until the court can make a final determination on the law suit.

Most programmers will recognize this scenario as one they have either thought about themselves or heard about from other programmers. However, we are sure that there would be quite a bit of disagreement in the programming community about whether or not Bob had the right to place the preprogrammed stop into the software and what the outcome of the law suit would be. In this article, we will look at several scenarios involving attempts by programmers to use time locks or other similar code to help protect what they perceive to be their rights and review the possible legal consequences of these actions.

Wonder Widget v. Bob Bytes

As you’ve seen, Wonder Widgets has sued Bob for breach of the software development contract and for interfering with its data. They also asked the court to issue an injunction forcing Bob to remove the time lock so that they can use the software prior to the final decision in the lawsuit. Bob would undoubtedly counter-sue for the additional programming fees he felt that he was entitled to.

What would happen in this case? What would each side claim and who would prevail in the end? Unfortunately for the programming community, this issue is so new that the court’s have provided little or no guidance to follow. Let’s look at what each party might perceive as their rights and which positions might hold up in court.

Bob Bytes would probably claim that he is entitled to shut down the software since he has not been paid his entire development fee and therefore, the software would still be his. He would also probably analogize the situation to the repossession of a car when the purchaser fails to make their car loan payments on time. Finally, given the original fact pattern, since there was no written agreement between the parties, Bob might emphasis what may be a valid claim to the copyright in the software.

As you might expect, Wonder Widgets might see things a little differently. They would claim that the software was merely the subject of a disagreement over the final development fee, a dispute that should be settled in court. Since they had already paid an overwhelming proportion of the fee to Bob, he had no right to prevent there use of the software. They would also claim that this was very much unlike the repossession of a car since because in that situation, the bank would have both a contractual and statutory right under the Uniform Commercial Code to repossess both of which were absent in this case. Finally, if Wonder Widgets had a smart lawyer, she might point out that not only has Bob Bytes shut off the software, he has also denied Wonder Widgets access to its data and thus, jeopardizing the continuity of its business.

What would be the outcome? To the surprise and possibly, the chagrin of programmer’s everywhere, a court would probably find in Wonder Widget’s favor and possibly order the immediate removal of the time lock. We say probably because, as already mentioned, there is very little legal precedence for judges to rely upon and, as you probably, suspect, the courts have had very little experience in understanding and dealing with computer-related issues. Let’s look at this in some more detail. While Bob Bytes might eventually prevail on at least some of the contract issues (payment for the work he performed), he might be found liable for any damage he caused to Wonder Widget’s business. An enlightened judge might also issue an injunction requiring the programmer to remove the time lock until the ultimate issues in the law suit are decided. This is because what legal precedent does exist seems to suggest that programmers do not have a right to self help remedies such as time locks unless that right is spelled out in an agreement between the parties. This is based upon several factors maybe the most significant of which is that the hiring party, who has been led to rely upon the use of the software to operate their business, will sustain far greater damage from the shutting down of the software than the programmer will, since the programmer would have a so-called “adequate remedy at law” in the form of a breach of contract law suit. In addition, the fact that a significant portion of the development fee had already been paid might lead to a finding that the contracting party is entitled to receive value for that payment in the form of the use of the software. This would be true even if the programmer is found to own the copyright in the software, since the courts have regularly found that even in the absence of a written contract, a party who hires a programmer and pays the development fee (or at least significant portion thereof) will have an implied legal right to a non-exclusive license to use the software. Since Wonder Works would be found to have a right to use the software, the court’s would most likely find that the shutting down of the software would be in violation of that right.

Taking all this all into account, what should the programmer who wants to use a locking device to enforce their right to payment do? Here are some guidelines. First and most importantly, have a written agreement with your client disclosing the existence of the time lock. Next, make sure that in the event that the software is shut down, the user will have the ability to access and use their own data. Also, avoid inserting any device or activating it over telephone lines. Finally, make sure that any locking device is activated only in good faith and in response to a dispute where the rights are clearly in your favor.

Commercial Development Situations

Let’s explore this issue some more by changing the fact pattern a little. Let’s say that Bob Byte’s client is not Wonder Widgets but rather is, So-So SoftWorks, a software publishing company. So-So has contracted with Bob for the development of a software product to be published on a commercial basis. Bob is being paid for the work on a flat fee basis, with the total development fee being paid over a series of milestone payments. Since Bob had trouble collecting some of the milestone payments on a timely basis, he has inserted a time-based locking device into the software with the goal of preventing publishing of the software should he not be paid.

Is this situation any different that the other where Bob was doing custom development work for a commercial software publishing customer (of course, differences in the two situations can be easily found, the question really is, are they legally significant)? The key question really is, assuming that Bob completes the development but does not get paid the final portions of the development fee, would Bob be liable for any damages sustained by So-So if they could not publish the software due to the time lock? The answer to this question is even more unclear than the previous one and the courts have provided even less guidance. While the automatic activation of the lock would not deprive So-So of access to any of its data (as was the case in the Wonder Works situation), it would prevent So-So from publishing the software. In addition, So-So may have already paid a significant amount of the development fee for the software. Thus, this situation leads itself to the same type of analysis as the previous example. That is, the programmer is using a “self-help” remedy to enforce his perceived contractual rights and the commissioning party having rights to at least part of the software by virtue of having paid for (at least part of) the development.

As with the previous situation, if the contract between the parties permits the programmer to lock the software in the event of non-payment, then the programmer would have a strong basis to support his or her claim to the right to shut down the software. If So-So claimed an offset against the final portions of the development fee, rather than just arbitrarily refusing to pay, Bob’s case would be somewhat weaker. A programmer might have a basis to support this claim (although a somewhat weaker one) if the contract conditioned any assignment of rights to full payment. Although, if the shut down of the software occurred prior to the completion of the final version of the software, such a contract condition might not apply. Absent of any type of contractual right to place a locking device in the software, a programmer might be treading on thin ice. If you are a programmer in this type of situation you should think carefully before proceeding. In the event that the software is shut down prior to it’s duplication and publication by the publisher, the damages would be rather limited, that is, those costs associated with missing the shipping date for the software. However, if the shut down occurred after the software was duplicated and sold, damages to the publisher could be substantial including the cost of a total recall of the software and the damage down to the publisher’s business reputation with its distributors and end users.

Publishing Situations

A third possible situation is that of the software publisher who purposely has a locking device placed into their commercially distributed software in order to enforce their rights against the end users. There are several possible situations. One is the publisher who distributes a time-limited demonstration version of their software. This is a version which will fully function, but only for a set period of time afterwards it will lock up. A second is the publisher who sells software which requires a key to activate the full version of the software. Finally, there is the publisher who sells software based upon a periodic (such as an annual) license and equips the software with a locking device which automatically activates unless the licensee/purchaser pays the annual fee and obtains a password to unlock the software. The key (no pun intended) to any of these arrangements is that the end user is made aware of their existence so that they can reasonably anticipate when the software will stop working. In the case of demonstration versions, the time limitations on the software should be made well known to the user during system start-up and in the documentation. A warning displayed starting a few days prior to the software shut-down would also be a good idea. If you sell your software pursuant to a yearly licensing arrangement, make sure that the user who wishes to timely renew the license, is warned far in advance of the shut down, can renew promptly and is not inconvenienced in any fashion while trying to renew. Finally, make sure that the end user can access any data credited via other means, so that a denial of the use of the software does not also deny use of their proprietary data. Following these guidelines should help defeat any claim brought by a disgruntled end user.

In Summary

Like many other areas of computer law, the rights of a programmer to deny usage of a software package through the use of a programming device is highly unsettled. While the legal opinions expressed in this article are to some degree speculations, they are all educated opinions based on reliance upon existing legal precedence from similar or related areas of the law. It was our goal in writing this article to present sufficient information to make the programmer who is considering employing a time lock or similar device to make an educated decision before doing so or to convince them to seek expert advice beforehand. After representing programmers for over seven years, we understand that many programmers have strong opinions on this issue (as well as many others) and feel that it is their inalienable right to use a time lock. However, as has been stated, this may not be the case. Therefore, we hope that this article will help you evaluate your rights and the potential liability for improper action. As always, just as your clients hire you to provide expertise that they don’t have, don’t hesitate to hire expert legal advice when you are unsure of the potential consequences of your actions.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

BBEdit 11.6.1 - Powerful text and HTML e...
BBEdit is the leading professional HTML and text editor for the Mac. Specifically crafted in response to the needs of Web authors and software developers, this award-winning product provides a... Read more
ScreenFlow 6.1 - Create screen recording...
ScreenFlow is powerful, easy-to-use screencasting software for the Mac. With ScreenFlow you can record the contents of your entire monitor while also capturing your video camera, microphone and your... Read more
Microsoft Office 2016 15.25 - Popular pr...
Microsoft Office 2016 - Unmistakably Office, designed for Mac. The new versions of Word, Excel, PowerPoint, Outlook and OneNote provide the best of both worlds for Mac users - the familiar Office... Read more
FileZilla 3.21.0 - Fast and reliable FTP...
FileZilla (ported from Windows) is a fast and reliable FTP client and server with lots of useful features and an intuitive interface. Version 3.21.0: Fixed Vulnerabilities Fixed a string format... Read more
Fantastical 2.2.5 - Create calendar even...
Fantastical 2 is the Mac calendar you'll actually enjoy using. Creating an event with Fantastical is quick, easy, and fun: Open Fantastical with a single click or keystroke Type in your event... Read more
The Hit List 1.1.26 - Advanced reminder...
The Hit List manages the daily chaos of your modern life. It's easy to learn - it's as easy as making lists. And it's powerful enough to let you plan, then forget, then act when the time is right.... Read more
Typinator 6.10 - Speedy and reliable tex...
Typinator turbo-charges your typing productivity. Type a little. Typinator does the rest. We've all faced projects that require repetitive typing tasks. With Typinator, you can store commonly used... Read more
EtreCheck 3.0.2 - For troubleshooting yo...
EtreCheck is an app that displays the important details of your system configuration and allow you to copy that information to the Clipboard. It is meant to be used with Apple Support Communities to... Read more
FileZilla 3.21.0 - Fast and reliable FTP...
FileZilla (ported from Windows) is a fast and reliable FTP client and server with lots of useful features and an intuitive interface. Version 3.21.0: Fixed Vulnerabilities Fixed a string format... Read more
EtreCheck 3.0.2 - For troubleshooting yo...
EtreCheck is an app that displays the important details of your system configuration and allow you to copy that information to the Clipboard. It is meant to be used with Apple Support Communities to... Read more

Dungeon Warfare (Games)
Dungeon Warfare 1.0 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0 (iTunes) Description: Dungeon Warfare is a challenging tower defense game where you become a dungeon lord to defend your dungeon against greedy... | Read more »
Solitairica (Games)
Solitairica 1.0.7 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0.7 (iTunes) Description: Solitairica takes RPG combat and challenging rogue-like progression to a fresh new place—the world of solitaire! | Read more »
Bowmasters tips, tricks and hints
At least for this writer, archery was one of the more pleasant surprises of the 2016 Rio Olympics. As opposed to target shooting with guns, which was dreadfully boring, watching people shoot arrows at targets was pretty darn cool. [Read more] | Read more »
Best apps for watching live TV
The Olympics have come and gone, leaving nearly everyone in a temporary state of "What the heck am I going to watch on TV right now?" Besides old reruns of Golden Girls, but that goes without saying. [Read more] | Read more »
What is Flip Diving, and why has it take...
Move over Pokemon GO. There's a new king in town, and it's "the world's #1 cliff diving game." [Read more] | Read more »
5 places where Pokemon GO is still numbe...
In the U.S., the bloom is off the Pokemon Go rose ever so slightly. It's still doing great, sitting atop the top grossing chart as it has for some time, but it's no longer among the top 10 free apps in downloads, possibly because darn near... | Read more »
Madden NFL Mobile: How defense has chang...
Saying that defense is not a priority in Madden NFL Mobile is a bit of an understatement. In asynchronous head-to-head play, you don't take control of your defenders at all, as the AI manages them while your opponent plays offense. When it's your... | Read more »
Feed Hawk (News)
Feed Hawk 1.0.1 Device: iOS Universal Category: News Price: $2.99, Version: 1.0.1 (iTunes) Description: Feed Hawk makes it easy to subscribe to the RSS feed of the website you are visiting. From within Safari, simply open a share... | Read more »
Reigns character guide: Who's who i...
Know your foes. Keep your friends close, but your enemies closer. And there are probably some other cliches that would apply to your perilous spot on the throne in Reigns as well. [Read more] | Read more »
Match 3 puzzler Small Lime is now availa...
Set to hit Android and IOS on the 17th August, Small Lime is the newest match 3 mobile game, and hopes to throw something a little different into the mix. If you love match 3 puzzles, but are tired of the same old ideas being re-hashed again and... | Read more »

Price Scanner via MacPrices.net

12-inch Retina MacBooks on sale for up to $10...
Amazon has 2016 12″ Apple Retina MacBooks on sale for $100 off MSRP. Shipping is free: - 12″ 1.1GHz Space Gray Retina MacBook: $1199 $100 off MSRP - 12″ 1.1GHz Silver Retina MacBook: $1224.99 $75 off... Read more
13-inch 2.5GHz MacBook Pro (Apple refurbished...
Apple has Certified Refurbished 13″ 2.5GHz MacBook Pros available for $829, or $270 off the cost of new models. Apple’s one-year warranty is standard, and shipping is free: - 13″ 2.5GHz MacBook Pros... Read more
21-inch iMacs on sale for up to $120 off MSRP
B&H Photo has 21″ iMacs on sale for up to $120 off MSRP including free shipping plus NY sales tax only: - 21″ 3.1GHz iMac 4K: $1379 $120 off MSRP - 21″ 2.8GHz iMac: $1199.99 $100 off MSRP - 21″ 1... Read more
Typinator 6.10 comes with 50 improvements – G...
Ergonis Software today announced release of Typinator 6.10, a new version of their text expander utility for macOS. Typinator 6.10 comes with 50 improvements, including new features, compatibility... Read more
Taxi Sim 2016 Puts Users Behind the Wheel in...
Ovilex Soft today announces Taxi Sim 2016, an update to their ultra-realistic 3D driving simulator app for iOS and Android devices — literally a global event what with the company’s nearly 450,000... Read more
11-inch 1.6GHz/128GB MacBook Air on sale for...
Amazon has the current-generation 11″ 1.6GHz/128GB MacBook Air (sku MJVM2LL/A) on sale for $788 for a limited time. Their price is $111 off MSRP, and it’s the lowest price available for this model. Read more
Apple refurbished Mac minis available for up...
Apple has Certified Refurbished Mac minis available starting at $419. Apple’s one-year warranty is included with each mini, and shipping is free: - 1.4GHz Mac mini: $419 $80 off MSRP - 2.6GHz Mac... Read more
Apple refurbished 13-inch Retina MacBook Pros...
Apple has Certified Refurbished 13″ Retina MacBook Pros available for up to $270 off the cost of new models. An Apple one-year warranty is included with each model, and shipping is free: - 13″ 2.7GHz... Read more
12-inch 32GB and 128GB WiFi iPad Pros on sale...
B&H Photo has 12″ 32GB & 128GB WiFi Apple iPad Pros on sale for up to $70 off MSRP, each including free shipping. B&H charges sales tax in NY only: - 12″ Space Gray 32GB WiFi iPad Pro: $... Read more
Apple refurbished 11-inch MacBook Airs availa...
Apple has Certified Refurbished 11″ MacBook Airs (the latest models), available for up to $170 off the cost of new models. An Apple one-year warranty is included with each MacBook, and shipping is... Read more

Jobs Board

*Apple* Retail - Multiple Positions Germanto...
Job Description: Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, Read more
*Apple* Professional Learning Specialist - A...
# Apple Professional Learning Specialist Job Number: 51234379 Portland, Maine, Maine, United States Posted: Aug. 18, 2016 Weekly Hours: 40.00 **Job Summary** The Read more
Lead *Apple* Solutions Consultant - Apple (...
# Lead Apple Solutions Consultant Job Number: 51218465 Richmond, VA, Virginia, United States Posted: Aug. 18, 2016 Weekly Hours: 40.00 **Job Summary** The Lead ASC Read more
*Apple* Solutions Consultant - Apple (United...
# Apple Solutions Consultant Job Number: 51218534 Pleasant Hill, California, United States Posted: Aug. 18, 2016 Weekly Hours: 40.00 **Job Summary** As an Apple Read more
*Apple* Retail - Multiple Positions Chestnut...
Job Description: Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.