Home AMX User Forum AMX General Discussion

Software Licensing?

viningvining X MemberPosts: 4,368
Similiar in topic to points of views posted in the "Source Code Plolicies" thread of 2005 which basically discusses policies to prevent theft of intellectual property while at the same time maintaining the customers right to access code which they hired us to "specifically" write for them. Code that is not specific to them that is condionally license for use should be installed as a module in .tko form.

That's fairly straight forward and one could argue the finer points as was done in the thread but what about the use of sleeper programs buried somewhere in a .tko module that would make use of the system some what aggrevating if not impossible should the customer fail to make final payment. Say six month after completion. Obviously a legal recourse would be required but similiar to a down loaded trial program that give you 30 days of access and which upon every usage they inform you have x amount of days left until the temporary licnese expires. We could do the same and after the fifth month with out payment run a daily pop-up reminder informing them the license is expiring, listing the amount of days left unitl the 30 day warning period is up.

Legally if the program is embedded from the onset and there is a reference to this conditional licensing and a vague mention of de-activation in the contract and one of the conditions is timely and complete payments I think we would completely justified and legally with in our rights.

Does anyone do any thing like this? We could then give our customers a licensing "key" upon final payments to prevent the embedded "doom's day" program from running.

Any thoughts?


  • Spire_JeffSpire_Jeff Formerly Caffeinated Programmer Posts: 1,917
    I understand the thinking here, but I am hesitant to intentionally break a program. Given the description you gave, I am less hesitant. I think my gut hesitation to this is that this breeds an environment of distrust. If you really don't trust the client to pay, insist on prepayment or pass on the job. It is so common these days as far as software on a computer goes that it probably won't break a deal nor raise an eyebrow. There is also a bigger chance for a coding error that could introduce problems into the system.

    I also tend to believe that this is more of an emotional response to the situation. It starts as just a popup, but when all the client has to do is push OK once a day, they may decide to live with that fact instead of paying. Then we start the process of escalating the situation by doing more when they don't pay. If a call from us every day doesn't make them pay, do we really think that a touch panel based reminder will do any better?

    To me, this is like putting a rocket launcher on my car to deal with people that don't know how to drive. It's a great idea to help me cope with the idiots of the world, but it belongs in the realm of fantasy. Believe me, there are a few clients that I would have really enjoyed knowing that there house just stopped functioning one day for non-payment.

    One method that could be used that doesn't affect the code as harshly, is to not provide source code until final payment is received. This means that everything is fine until they want to change a device. Another condition could be that all warranties are null and void if payment is more than 90 days overdue. We find that a simple letter that reminds the client of this fact generally motivates them to send a check. Karma has a way of working into this equation :)

    These are just a few of my current opinions and they are subject to change without notice or reason :P

  • DHawthorneDHawthorne Old Timer Posts: 4,584
    I don't think such a solution is strictly legal. They contracted for a service, and didn't pay; your recourse is through the legal system, and that smacks of vigilantism.

    Back in the day when I did alarm systems, I was a Radionics dealer. One of the neat things about that alarm panel was that you could send custom messages to the alarm keypad whenever you liked, and even make it persistent. It was a feature intended for custom alerts, or putting the owner's name on the panel when it was idling, etc. When I was in training, they cautioned us about going overboard with this feature. As it turns out, one installer thought it would be cute to put a notice up on the panel when his customer fell in arrears on his payments. The customer came home with a guest in tow, and was horrified to have his delinquency notified to him in sight of his guest. He sued the installer for defamation, and won.

    Though not entirely the same thing, I think there are parallels. If a program stopped working, the customer could probably claim in court that the software was flawed, and therefore he didn't owe anything. If it did something unpleasant, like my alarm example, he could do the same thing that guy did and claim defamation.

    I'm not a lawyer, and I don't know that would be the case, but it's something to think about. I certainly wouldn't do it without legal counsel, just in case.
  • Service or Software

    Ask yourself, am I a contractor selling my time or a software developer selling an application? That should give you a better idea how to determine what you need to do concerning non-payment. I subscribe to the no source code without final payment idea.

    Is your software complete and comes in the proverbial shrink wrapped box? It looks like the Microsoft release key solution is a pretty good one.
  • Spire_JeffSpire_Jeff Formerly Caffeinated Programmer Posts: 1,917
    Just to play devil's advocate a little, you could simply make the popup say: Please contact [COMPANY NAME] at [COMPANY PHONE NUMBER] as soon as possible.

    This seems harmless enough, but I would be inclined to tell you to check with a lawyer just to make sure :)

  • viningvining X Member Posts: 4,368
    Ok, it was my emotional vindictive side that had to ask the question but it was the least violent method that I could think of.

    Your comments are appreciated and I guess that answers my question even though the little devil on my shoulder tells me otherwise.

  • JeffJeff Junior Member Posts: 374
    The company I used to work for (where I was an installer, not a programmer) did this to churches.

    IIRC, we didn't even give them 6 months. We gave them a 1 month period of it working, then a month of an alert once a week (on sunday mornings), and then the touchpanel would automatically lock out the system to the point where you could use only a single wireless microphone through the main PA, and everything else would stop working until we gave them the code.

    Rarely, if ever, did this feature get used while I was there, but I do know it happened at least once in the company's history. I'm sure those of you who have done church installs are familiar with the payment by committee pitfalls that often happen, and this was the way we worked around that and made sure that we would receive payment.

    We were a very small company. I can guarantee you no lawyer was ever consulted before doing this, but I can also tell you that we did it with some success. We'd regularly get payments after the alerts started showing up.

Sign In or Register to comment.