Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

"Licensing" of Already Delivered Software?

Cliff posted more than 9 years ago | from the after-the-fact dept.

The Almighty Buck 57

Matterama asks: "My partner and I are treading on thin ice. We delivered six microprocessor controllers with source code libraries to a customer, under a written agreement to negotiate the license for that code from us once they got it working with their system. That time is upon us, and we realize that we do not know how to go about this (yep, we're pathetic). They want to buy 1000 units, and we are not setup to be a Microsoft (nor do we want to be). If I'm going to get a good, simple answer that puts money in our pockets for our work, it will be here. Can Slashdot recommend solutions or sites with solutions?"

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered


Try this? (3, Informative)

man_ls (248470) | more than 9 years ago | (#9538604)

Go with, customer may perform any modifications to the source code and program for the purpose of developing applications for their customers, but may not resell the source code without an additional license fee/royalties.


May modify code and build modified binaries, and redistribute binaries.

May not distribute their source code in any form.

Re:Try this? (5, Funny)

Glonoinha (587375) | more than 9 years ago | (#9538832)

Here's a better way to get paid, OP : next meeting with the business folks, bring a chessboard and a pocket full of pennies. Set down the chessboard and put the pennies next to it - tell them the first license costs one penny and put a penny on the first square on the chessboard. Tell them the license for the second copy is two pennies and put two pennies on the next square on the chessboard. Tell them for each additional copy just double the previous amount, and put four pennies on the next square to reinforce the concept while explaining that those four pennies just paid for license number three.

If they go for it ... send me 10%. That ought to be enough to buy me some nice toys, like maybe Brazil and Bermuda.

Re:Try this? (3, Funny)

Prior Restraint (179698) | more than 9 years ago | (#9540739)

If they go for it ... send me 10%.

Tut, tut. I shall ask for only 1% of the first license (rounded down: $0.00), 2% of second license (rounded down: $0.00), 4% of the third license (rounded down: $0.00),...

Clearly, my offer is much more generous than Glonoinha's, so I urge you to take me up on it.

Re:Try this? (0)

Anonymous Coward | more than 9 years ago | (#9541253)

Shoot, I'll beat that. I'll take %1 rounded down for every license.

Re:Try this? chessboard (0)

Anonymous Coward | more than 9 years ago | (#9544603)

Whatcha tryin to be......microsoft?

Re:Try this? chessboard (1)

meringuoid (568297) | more than 9 years ago | (#9555037)

Whatcha tryin to be......microsoft?

With two to the one-thousandth power pennies, he could buy Microsoft. And indeed all of Redmond. And Washington State. And the other forty-nine states. And all of the European Union, Japan and China. And the rest of the world. And then he could fund the wholesale terraforming and settlement of Mars, and still not have come close to spending it all...

Re:Try this? (2, Interesting)

gcaseye6677 (694805) | more than 9 years ago | (#9548560)

I hate to say it but, these guys are going to get fucked. There's no avoiding this. The company has their source code, and there's been no agreement for them to pay. Now is not the time when they can or should try to force a license agreement. The company most likely will pay something, but it won't be favorable to the authors of the software. They will have to take whatever they are offered and if they don't like it, what can they do? I doubt they can afford an attorney at this point. Chalk it up to a lesson learned, and never make the same mistake again, guys.

Re:Try this? (1)

drinkypoo (153816) | more than 9 years ago | (#9554996)

Unless they have some contract that says they agreed to buy the source code, it still belongs to the copyright holder - the developers.

Consult an attorney... (5, Insightful)

mOoZik (698544) | more than 9 years ago | (#9538620)

This is the kind of matter that's not meant for Slashdot, unless you enjoy seeing your question published and replied to without any gain in real knowledge. Consult an attorney, as they really know how to manage situations like these, unless the armchair-lawyers here. I can't quite understand why you would base your business decisions on replies from /.

Re:Consult an attorney... (1)

jalet (36114) | more than 9 years ago | (#9538834)

> I can't quite understand why you would base your
> business decisions on replies from /.

Money, maybe ?

Re:Consult an attorney... (3, Insightful)

mOoZik (698544) | more than 9 years ago | (#9538942)

My point is the information here may not be accurate, as this is the internet and anybody is anybody. I would not spend a cent on the sayings of an anonymous few, perhaps you would?

Keep in mind this is different from product recommendations or other such things: this is a serious matter, at least it would be if it were not asked on Slashdot.

Re:Consult an attorney... (0, Redundant)

jalet (36114) | more than 9 years ago | (#9539021)

I understand.

My point was only that they may not have the cent to spend on attorneys fees, and maybe /. is all that they can currently afford.

Russian mafia (-1, Troll)

Anonymous Coward | more than 9 years ago | (#9538623)

Is your customer worried about his own health and the health of his family? If so, I recommend Russian mafia finance retrieval gurus. Quick turnover, minimal expenses, decent commission.

They work for getting the money for any type of code shipped for x86-compatible platform.

Well... (5, Interesting)

addaon (41825) | more than 9 years ago | (#9538636)

If you 'don't want to be a microsoft', I assume you mean you're willing to be a decent person about this. That can only work if the customer is also a decent person. If you think that, here's what you do.

First off, there are two distinct possibilities. Either they'll be a customer again in the future (in which case they have a vested interest in helping you out) or this was a one time thing. In either case, just ask them honestly what there budget for the project is. Do this /after/ explaining your expenses; that is, how much you want and why you want it, broken up (honestly) into sunk costs, future development, and the stuff for your pocket. Once they quote a budget, if it's reasonable, take 80% of it. If it's not reasonable, say so. That'll make them want to come back.

Don't sell on cost, sell on value (3, Insightful)

JohnQPublic (158027) | more than 9 years ago | (#9545034)

In either case, just ask them honestly what there budget for the project is. Do this /after/ explaining your expenses; that is, how much you want and why you want it, broken up (honestly) into sunk costs, future development, and the stuff for your pocket.

No no no, don't do that! Your costs have nothing to do with the price a customer will be willing to pay. One of the basic tenets of capitalism is that goods trade at or near their perceived value. If that value exceeds your cost, you make a profit (congratulations!), if not you take a loss. How much profit you make is direct compensation for the value you added to the parts you obtained before selling the result to your customer. This is the true meaning of "value added" (not to be confused with the "value added reseller", a synonym for "retailer").

Once they quote a budget, if it's reasonable, take 80% of it. If it's not reasonable, say so. That'll make them want to come back.

Now that's good advice, or at least almost. There are two schools of though on deals: "Everyone should feel some pain" and "Everyone should feel happy". The former is based on non-recurring sales, where you can squeeze all the profit you want and then scorch the ground. The latter assumes that your repuration with this customer is valuable to you, and theirs with you likewise. If you believe in recurring sales (usually a good thing!), you should always leave some money on the table, although I'd say 20% is too much.

Simple answer (3, Insightful)

reynaert (264437) | more than 9 years ago | (#9538645)

If I'm going to get a good, simple answer that puts money in our pockets for our work, it will be here.

Yep: get a lawyer. Also, don't ask for legal advice on Slashdot.

Re:Simple answer (2, Funny)

Glonoinha (587375) | more than 9 years ago | (#9538792)

Legal / financial / technical advice on Slashdot : good, accurate, free (pick one.)

Re:Simple answer (1)

dubl-u (51156) | more than 9 years ago | (#9541250)

Yep: get a lawyer. Also, don't ask for legal advice on Slashdot.

If that's what they're asking for, that would be a problem. However, they're asking for business advice.

Once they have an idea of what kind of deal they want to cut, they should then go talk to a lawyer about how to put together the documents. A good lawyer will also help raise issues that they may not have thought of.

But walking into a lawyer's office before you know what you want can get awfully expensive. Asking here is perfectly appropriate.

Your mistakes (-1, Flamebait)

Anonymous Coward | more than 9 years ago | (#9538679)

Well, there were few mistakes made on the way:

1) You did not attribute your code to GNU Foundation.
2) You neglected to mention to the customer that the code was released under GPL.
3) You did not put up a SourceForge project with your source code.
4) You actually expect to be paid for code, while everyone knows that it's services you make money on. Just ask Caldera, Mandrake, VA Linux and other successful ventures.
5) How dare you ask for money, if millions of open source developers work for free? You should be glad the customer gave you this project, and this is something to put on your resume, when you take up a call center job for Verizon.

What it the goal? (4, Insightful)

narrowhouse (1949) | more than 9 years ago | (#9538735)

Are you hoping to make money off the code? Off of the controllers? Given the information you gave us so far you will end up selling 1000 controllers ("units" I'm assuming refers to hardware) so that is good. License the code any way you like and charge a one time cost for the code. GPL, MPL -like, whatever, allows you to charge for your code. If the code gives you some particular advantage in your market then write up a license that stops them from delivering the code to others but allow them to modify it for themselves.

In short, license it in the most liberal way you can to allow your company to keep the value invested in it without ruining its value to the buyer (they have been working with it all this time, if they lose the ability to alter it now they won't be happy).

Split this one up (4, Insightful)

coyote4til7 (189857) | more than 9 years ago | (#9538885)

You've basically got two questions to answer:

1) What do they get now (binary usage, source usage, source ownership) at what price

2) What will be your ongoing relationship (will you provide bug fixes, future versions, telephone support) at what price.

Make sure you handle both sw and hw.

But, the key thing is to talk to a lawyer who knows this area and understands the tradeoffs between different approaches, especially between proprietary and open source.

Can You Deliver 1000 Units? (4, Interesting)

reallocate (142797) | more than 9 years ago | (#9539050)

Licensing aside, can you actually deliver 1000 units to this customer within the timeframe specified by your contract? (You do have a contract?)

If you can't meet the contract's terms, the license won't be your real problem.

That said, use your head about the licensing terms. You have every right to construct a license that is in your best interests. That's not being "Microsoft", it's just not being stupid.

If your business future depends on your exclusive access to that code, you may already be in trouble, since you agreed to negotiate terms after the potential customer has their hands on it.

If you believe there's a lot of future profit to be made selling that code, then negotiate a license that allows you to do that and prevents this customer, and future customers, from selling or otherwise distributing the code. Yes, this is not in keeping with the spirit of open source, But, are you willing to trade the existence of your business or your future livelihood for the warm fuzzies you get releasing it as open source?

If the code has nothing at to do with your future business prospects, you might as well hand it out on street corners.

It's easy giving things away when your bank balance isn't at stake.

Re:Can You Deliver 1000 Units? (1)

wpc4 (169892) | more than 9 years ago | (#9539671)

Umm, it sounds like they client already has the product and has integrated it in their system. Now they just have to pay for it.

Re:Can You Deliver 1000 Units? (1)

reallocate (142797) | more than 9 years ago | (#9539843)

The post says they "...delivered six microprocessor controllers...", plus the source code, and the customer now wants 1,000 units. That leaves 994 units to be delivered.

Unless the customer can buy the controllers from soneone else and burn the code on them. If that's the case, these guys won't be running a business next week.

Re:Can You Deliver 1000 Units? (1)

HeyLaughingBoy (182206) | more than 9 years ago | (#9542042)

If you can't meet the contract's terms, the license won't be your real problem.

So true.
There are two major issues here:
a) Do you have an enforceable contract? For delivery of 1000 units of something to a customer I've never dealt with before, I want my lawyer to look over the purchase order/contract and tell me it's OK. The lawyer will tell you whether or not they can back out of it after you've bought parts/assembled boards and leave you screwed and how to fix that. Lawyer's cost will probably be less than $200 for something as simple as this.

b) How will you deliver 1000 units? If you have sufficient cash on hand/credit this is not a problem. If you don't have cash, start asking friends/family for loans. Look at getting more credit cards.You should already have lines of credit with some suppliers; if not, start now. Once your lawyer has said OK on the contract, you should take the attitude of "we will deliver, it's just a matter of finding the money."

Secondary to this is the code licensing issue and the parent already covered this well enough. Personally, in my past self-employment delivering embedded hardware, I always assumed the customer would want the code, so I factored that into the price up front.

Customers are hard to find as I'm sure you know if you got this far. With a good contract (a Purchase Order is a contract) in hand, you want to do whatever it takes to deliver the product and turn these guys into happy return customers and good references.

You don't have to be Microsoft.. (5, Funny)

mr.scoot (745046) | more than 9 years ago | (#9539162)

Just be SCO instead. Give the code to your customer. Then, sue IBM.

Slashdot?!? (5, Funny)

Anonymous Coward | more than 9 years ago | (#9539186)

Ummm...wait a minute. You expect advise, from slashdot, about how to make money on software. You do realize that this place is full of socialists who think all software should be free, right? Good fucking luck. Go eat your ramen, plebeian.

copyrights are easy enough (5, Insightful)

Anonymous Coward | more than 9 years ago | (#9539206)

lots of folks saying you need a lawyer... if you have a lawyer, go talk with him, but remember, it's the *lawyers* that come up with these long convoluted "licenses" which blur the boundaries between "license" and "contract" and are full of of BS. It's "job security" for lawyers.

When it comes to copyrights and licensing, the law is on your side to begin with. If you deliver 1000 units with your software, and no license, then they can use the software in the usual way, but they cannot redistribute, copy, etc., etc.

You can grant them additional rights through a license, or you can REMOVE their rights with a *signed* *contract*. Contracts and licenses are different things. Usually a contract includes a license, just to keep things simple, but look at the GPL or other open-source licenses, they are not signed, because they aren't contracts.

So what I would do in your situation is come up with a contract that says you will deliver the units for X dollars, and include a "license section" in the contract that simply says they can't copy, redistribute, perform, reverse engineer, whatever (look at some open-source licenses for ideas).

If you don't have experience with contracts, then definitely get a lawyer since a contract is so "general". But when it comes to software licensing I wouldn't sweat it. If they do anything with your software, the law is on your side, you can sue (you might want to register those copyrights too, by the way).

When I enter a contract with a costomer, my biggest fear is "what if they don't pay, and there's some loophole in here", not "what if they start selling my program", because unless you explicitly give them that right, they can't sell it. Then again I'm an open-source-minded guy, I don't believe in per-copy licensing fees, I only charge for labor and "set up fees" and so forth. I go out of my way to simplify the licensing for the customer.

Just remember that a lawyer is going to go out of his way, making your license as complicated as possible, for *his* benefit.

Re:copyrights are easy enough (1)

tomhudson (43916) | more than 9 years ago | (#9540184)

The above poster is basically right, so it's a shame that he or she posted anonymously.

It's true that you did this in the wrong order - you should have had an agreement with price first - but that's water under the bridge, and it sounds like you have a decent working relationship with your customer, which is worth more than any signed contract.

You could always ask them what they think is fair, and what they would like from you in the future. This might sound naive, but they might come back with an offer that's more than you were thinking of asking.

If they come back too low, or with unfair terms, explain to them why you feel the way you do.

Each of you has something the other side wants, so that should help keep negociations fair.

Don't be so sure (0, Flamebait)

JohnQPublic (158027) | more than 9 years ago | (#9545095)

When it comes to copyrights and licensing, the law is on your side to begin with. If you deliver 1000 units with your software, and no license, then they can use the software in the usual way, but they cannot redistribute, copy, etc., etc.

If these guys have only one customer and no contract and have already turned over samples, they should watch out. The code might be deemed a "work for hire", especially if they took cash to produce the samples. If so, the copyright rests with the customer, not the programmers.

Licenses and contracts aren't BS, they're a very basic part of business. If you don't like having written rules and paying lawyers to draft them, you shouldn't be trying to conduct business yourself. Just be someone else's wage slave and enjoy the freedom of not worrying how you're going to make payroll next week and whether you'll have to fire your friends because you screwed up.

Facts (3, Insightful)

fozzmeister (160968) | more than 9 years ago | (#9539266)

Unless there is something saying they can use the software, they can not. the whole point of a license is to give the customer a right to use it, and it will not matter how many thousands of pounds they paid you to build it! Therefore it doesnt technically matter if it is delivered. to put it into context they are un the same situation as if you had a warez copy of MSWord. Of course they know you've done the development so they may think they are in a very strong bargaining position, so its just how much you are prepared to stick to your guns. Id say your position is strong er than if you'd done this before starting work, as they know the quality of the end product and if you tell them "the license is you can use it on christmas day" they will have to pay someone else to develop and have yet more delay.

In short, be a hard bastard!

Re:Facts (1)

scott_davey (552885) | more than 9 years ago | (#9541578)

Unless there is something saying they can use the software, they can not.

Actually, the law often takes into account "prima facé" evidence in leui of a written agreement. I've been here before.

This is the "if it looks like a duck and quacks like a duck, it is most probably a duck" style of law.


Re:Facts (1)

atari8 (67774) | more than 9 years ago | (#9542251)

Ridiculous! You do not need a license to use software (or any copyrighted thing). You need a license to make an otherwise illegal copy of the software legal.

In other words:

  • You make a copy of your software and give it to someone: it's legal and they can use it however they want (you had the right to make a copy, after all). If you want to restrict them in some way (e.g., your "the license is you can use it on christmas day" example), you need to get them to agree to a contract to that effect. Do that before you deliver the software, because they have no reason to agree after you've delivered it (unless they still want something from you, like a license so they can copy your software).
  • They make a copy of your software and give it to someone: it's illegal unless you've given them a license to copy your software or the end user a license to use it.

The understanding you have of US copyright law (i.e., copyrighted material is always illegal without a separate license) is exactly what the big software companies (and Hollywood, for that matter) want you to think, but it isn't true.

Re:Facts (1)

man_ls (248470) | more than 9 years ago | (#9544006)


This same principle allows me to legally operate ROM images in emulators of videogame consoles that I no longer own, but still have dozens of cartridges for sitting in storage.

Cost (4, Funny)

sql*kitten (1359) | more than 9 years ago | (#9539536)

Figure out how much it has cost to develop/will cost to deliver, double that, there's your price. Pick a number based on the local market rate for embedded developers, and include every hour in your calculation, even time spent in the shower thinking about it. Even if you don't charge for them, you'll need the real number so you can estimate jobs in the future.

In fact, triple the number, then you can give your customer a big discount and they'll love you for it, and you'll still come out ahead.

Re:Cost (1)

HeyLaughingBoy (182206) | more than 9 years ago | (#9542139)

Figure out how much it has cost to develop/will cost to deliver, double that, there's your price

My first job was at a tiny company with less than 10 employees that sold I/O boards and embedded controllers on the retail industrial market.
The general rule I learned was take 5x parts cost and consider that your base price. Next, look at the competition and adjust that base in the right direction (our niche was a low-cost specialized I/O supplier) so we came in a little lower. Unless it was a custom job, we never considered development cost since the stuff that was expensive to develop also tended to have expensive parts and sell higher volumes so it averages out well.

The 5x parts cost worked well and covered parts, overhead, and a hefty advertising budget and generally allowed about 20% net profit. It also allowed us to offer quantity and reseller discounts and still make tons of money for the owner.

For delivery of 1000 units of specialized hardware, I'd say these guys are at about the same level. Pricing is one aspect of business that I've always found interesting, but can never find enough "rules of thumb" on.

Bad move (4, Insightful)

duffbeer703 (177751) | more than 9 years ago | (#9539538)

"under a written agreement to negotiate the license for that code from us"

That probally means nothing. You need to see a good attorney ASAP, because you probally don't have any kind of valid contract.

You. Are. Screwed. (2, Informative)

Anonymous Coward | more than 9 years ago | (#9539552)

You have done quite possibly the stupidest move in software engineering. Delivering product without even an agreement to pay, let alone actual payment.

After you get out of bankruptcy, try to remember this incident, mmkay?

Negotiate payment BEFORE A SINGLE LINE OF CODE IS WRITTEN. Your contract starts with a MINIMUM amount, which MAY INCREASE depending on the work involved in the project. Don't EVER give the client a chance to screw you, BECAUSE THEY WILL.

Re:You. Are. Screwed. (2, Insightful)

dubl-u (51156) | more than 9 years ago | (#9541266)

Negotiate payment BEFORE A SINGLE LINE OF CODE IS WRITTEN. Your contract starts with a MINIMUM amount, which MAY INCREASE depending on the work involved in the project. Don't EVER give the client a chance to screw you, BECAUSE THEY WILL.

If you do business with people who will screw you just because you can, you're fucked no matter what contracts you have. Even if you have 100% airtight agreements written by the world's best lawyers, a malicious client can make your life a living hell. As my lawyer says, "They can sue you for anything they want. Eventually you'll win, but that can take a long time."

Instead, do business with people you like and trust. Then, as you suggest, get everything in writing up front. The main benefit isn't the ability to have a court enforce things; the benefit is that everything's clearly spelled out while things are still sunny. That makes getting through the storms much easier.

What's the problem, exactly? (1)

Chemisor (97276) | more than 9 years ago | (#9539731)

So what's the problem? You tell them how much money you want, they send you a check, and you print out a license that says they bought 1000 copies. Everybody would be happy. Are you asking how much to charge? In that case you are in the wrong place since Slashdot is full of people who never pay for software. Are you asking whether your contract is legal? Does it matter in this case, since your customer is obviously quite happy to pay you? Just draw up another one.

It depends (1)

Brandybuck (704397) | more than 9 years ago | (#9539853)

It all depends on what terms you want to place on that software. If you don't know you should never have written it to begin with.

Figure out what terms you want, tell it to a laywer, and voila... instant EULA!

Of course, it could be that you don't even WANT a license. If all you want is to ensure that the customer doesn't copy, distribute or modify your software, all you really need as a simple copyright. And you ALREADY have that! The only thing a license is good for is if you want to further restrict your user (or do the opposite and grant them some additional permission). You want to absolve yourself of liability if your product blows up and kills your customer's children. But you don't need a software license of that, because you're already entering in a contract over the product anyway.

How to hire a lawyer (3, Informative)

mbstone (457308) | more than 9 years ago | (#9540025)

1. Your Friends
2. The Yellow Pages
3. The County Bar Association

Some people worry they can't afford a lawyer. You have a deal for 1000 units, so this is not your problem.

Some people have an irrational fear of actually picking up the phone and making an appointment with a lawyer. If this is your problem, stand on your head and take ten deep breaths. Consult with a doctor before beginning any exercise program.

You're in a really strong position (1)

Animats (122034) | more than 9 years ago | (#9540043)

under a written agreement to negotiate the license for that code from us once they got it working with their system.

An agreement to agree is not an agreement. You're in a really strong position. But you may have trouble convincing the other party of that.

When you need to do some heavy-duty convincing, go with one of the major intellectual property law firms. I use Townsend and Townsend and Crew [townsend.com] . I've spent about $50K with them over the last decade, and it's been worth many times that.

Re:You're in a really strong position (0)

Anonymous Coward | more than 9 years ago | (#9541277)

Why do you think he's in a "really strong position"?

The other party has the source code and he didn't indicate any limitations on what they can do with the source code until a license is negotiated.

What if they cancel, and then with the knowledge gained from having the full source code, develop their own product?

Re:You're in a really strong position (2, Informative)

Animats (122034) | more than 9 years ago | (#9543657)

He's in a strong position because they are using the program without the right to use it. He owns all the rights, and the user has to come to terms with him to use the code. Otherwise, he can drop the big "anti-piracy" law hammer on them, going after them for DMCA violations and such.

This is when you need the intimidating law firm.

Possible Problem (1)

miyako (632510) | more than 9 years ago | (#9540134)

as others have said, get a lawyer. That said, here are my ill-informed and ill-thought-out remarks.
Since you have already given them the code before working out a license you might run into some problems down the road. If you have anything that you wanted to keep a trade secret or something else analogous to that, you may have a hard time now because you handed over the code.
That aside, what it seems like you were asking is for some ideas for fair licenses that still get you money.
I would suggest the license gives the company the right to have a copy of the source code, and they can do whatever inhouse development they want, but they are not allowed to release any source or distribute anything based on the source (or if they do they pay you more money / give you a cut / whatever). This always seemed like a fair compromize between OSS and proprietary software to me. You license the code as a base for any private in house development or use they want to do with it. They get the benefit of having code they can work with, and you are still getting paid for your work.

Think about Cost, Value and Relationship (1)

G4from128k (686170) | more than 9 years ago | (#9540552)

I'd think about three factors in negotiating the monetary side of the licensing terms. The first are the costs that you incurred or will incur in providing or supporting X-copies of software. Even if you give them the source under generous terms, there will be times when they would like some assistance in customizing or debugging the code. And the more seats they sell or have, the more customizing and debugging they might want. This will cost you time and effort that you should charge for.

The second is to think about the value of the software to the client (or their clients). As the creator of the software, its not unreasonable to get a cut of that value. However, your client is also adding value by getting your software -- by getting your software out there and supporting it (perhaps). You might negotiate a sliding scale with your percentage dropping as the number of seats increases -- reflecting the value that your client adds in selling and supporting the next thousand seats and then the next thousand seats, etc.

If your software is good, the price you can charge will exceed your costs without exceeding the perceived value of the software (too many products fail this test).

Third, you also have not said anything about the nature of your customer and relationship with them. If they are fair-minded and seek a long-term relationship with you, then a frank discussion of costs and values will help you arrive at an equitable agreement. If they are greedyslime balls looking for a quick buck, then you may need to lawyer-up or write-off the project as one of life's lessons.

Good Luck!

Just give 'em the code (0)

Anonymous Coward | more than 9 years ago | (#9541133)

I always do this for custom work. Makes the customer happy. Makes me look "open and transparent".
If they like my work they'll always get me back to do the changes, even though I gave 'em the code.
If they don't like my work, they won't get me back, so it's no loss giving them the code.
Sure I don't get to lock them in, but I don't need the aggravation.

Two numbers (1)

dubl-u (51156) | more than 9 years ago | (#9541366)

You need to calculate two numbers.

First is your cost. Figure out all the time and money you put into this. Ask yourself questions: What's that time worth to you? What would it have cost if you had paid somebody else to do the work? And so on.

Second is the value that they will receive from using your work. If they sell their 1000 widgets, how much do they make? If they couldn't use your stuff, how much would they make then? If they have exclusive rights to your work, is that more valuable? Et cetera.

Now you can figure out what to charge; it will be between these two numbers. If you manage to charge them more than the value they're getting, this will eventually make them sad; you should always try to cut win/win deals. And if you charge them less than your costs, then eventually you'll go out of business.

Other than that, you haven't really given us enough info to go on. If you want more specific advice, tell us about what you did, who you did it for, why they want it, and so on.

Business Models 101 (3, Informative)

Anonymous Coward | more than 9 years ago | (#9541951)

Your question gets to the overall question of business models. How best to turn a good situation to all participants advantage? That is, you, in selling the units want to not just recoup costs, you also want to make a profit to invest in future business activities, including the possibility of "down time" while you are not making sales, generating revenue, etc. Most folks forget this.

What you do not want to do is to ask your customer to set the price for you. In any negotiation, you have to make sure you control the conversation, make the initial offer, and steer it along the lines you need. This means something like the following:

a) compute the development costs for the system. Be realistic and honest. Do not discount your and your companies time/efforts/equipment.

b) compute the production and support costs. Rampup is not cheap, requires procedures be developed. Support is not cheap. Requires people/procedures.

c) compute the space costs, and other indirect costs of doing business. These are not cheap. If these folks are your only customers, then all your indirect costs are due to work on their behalf. If they are one of several, try to apportion the fraction of the indirects that are due to their project to this.

d) sum up the costs. Call this variable $cost.

e) now what profit do you need to make? Look at it this way. If the customer stopped ordering after the 1000 units, how much money would you need to stay in business for a month or two if they are the only customer? Figure out what a reasonable profit is for this. Call this $profit.

f) now sum together $cost + $profit and divide by 1000. That is your price per unit to your customer.

Once you have this price, do not, and I repeat, do not tell this to your customer. Give them a number 10 - 20% higher.

They are going to negotiate with you over the price. Their goal is to minimize their costs. Your goal is to attain the number you need ($price + $profit). These two are incompatible without agreement, so you start a little high, and let them talk you down to their number. You get a concession for this number. They help you find another customer, or they promise to order another thousand or so. That is, it is in their interest to provide you what you want, in order for them to get what they want.

Note: if the customer simply says "OK" and starts writing a check, you have made a critical sales mistake. It is called "leaving money on the table". The customer would likely have been happy with a higher number, which means that you missed out on that profit.

Remember, you do not want to gouge your customer. If what you deliver is critical for their efforts, they will be willing to negotiate with you. Just be aware that the stances that some folks take when negotiating can be infuriating, no matter how cordial the relationship is prior to that.

Your goal is to build a long term supplier relationship with these folks. Repeating revenue is much much better than a large revenue infusion. The latter will seem bigger, but it is harder to maintain business with this. This is why everything is going to subscription based services.

As for the software, well, this is going to be unpopular here, but tough.

Open source does not a business model make.

It is a bad strategy if there is value in what you have done here. You may want to grant the customer freedom to modify the code, or to hire others to modify the code (why, thats revenue off your company, or if you are a small operation, food off your table). You can give them the right to alter the source code.

Do not give them the right to redistribute the source without your permission. This is a bad thing if you have competitors who would benefit from seeing the code.

GPL advocates are likely to be up in arms over this. Runs counter to their thinking. Then again, when you have a family sitting across from you at the table, and you are worrying where your next check to pay for food, the table, the house is coming from, you tend to lose the fervor for the GPL for everything.

Aside from that, these strong GPL advocates rarely if ever are facing your choices. If they demand GPL, then you have as much right to demand that they refuse to accept a paycheck for the work they may do for their employer. After all, that is precisely what is being asked of you. You are being asked to a) commit your time b) commit your resources, c) do so without remuneration. You can ask, but if it GPLed, the customer DOES NOT HAVE TO PAY you. They could just as easily ask someone else, and get the same thing from them, either for free or a trivial cost. More on this in a moment. You should ask the folks most urgently pushing you to GPL it to a) work for their employer b) do so without remuneration.

GPL is good for some things, just not everything. It does not destroy IP, it protects it in a different way than your business might require.

If you want to set the standard platform, and GPLing your work will help you do this (marketing advantage), go for it. Just remember that many customers are quite happy to pick GPL no for free-as-in-freedom, but for free-as-in-beer. I have seen this many many times, among customers and resellers. The folks who do this would happily pay someone else less than they will pay you for the same work, as they can get it from the other person for less, even though that other person has no skin in the game: they did not develop the code, they did not sink costs and capital to make it work, and they are deriving an un-earned profit from it.

You would not believe the outrage some folks express when you reasonably ask them to compensate you for the work you put in. Moreover, some folks make significant money packaging GPL tools and reselling them. The authors do not or rarely derive income from this.

If you are not independently wealthy, you might chose to be careful about GPLing your work. It can and does come back to haunt you. Several packages we have developed have been "repackaged", and others take credit, changed copyright notices, and done other things to attempt to "legalize" their theft of our work, in the sense of stealing credit. Since they (the repackagers) are outside our jurisdiction, our courts cannot touch them.

It has rather soured us on the whole GPL aspect as you may have noted. Don't make our mistake.

It is ok (and preferable) that customers have source. But paying customers, with a requirement that they not redistribute without your permission. They can extend the work. They own their own (non trivial) extensions (so adding 1 space to every line means they own the space, not the line, and yes, we have seen some folks try that). They cannot distribute your code without license to do so, though they can distribute their changes as far and wide as they wish. Gives them control over what they do with the code without shooting you in the head by providing it in the first place.

Our customers are OK with this. They don't generally care about free-as-in-freedom. They care about being able to see source, make changes, and not be held hostage. Having the source gets them there. If they want redistribution, then have them pay a royalty-based re-distribution license for that. Make it easy for them to swallow (e.g. not unreasonable),

Just my thoughts as a small business owner. YMMV. If you must GPL, look at the MySQL license structure. We are using it for all of our GPL products going forward. It is free only for GPL projects. It is decidedly not free for any commercial activity/product.

Re:Business Models 101 (0)

Anonymous Coward | more than 9 years ago | (#9555984)

Wow, mod parent up! You have just summarised a hell of a lot of things i have learnt the painful way since starting my open source software components business (GPL/LGPL) a number of years ago. And you make a sound point about the "repackaging" that goes on in the industry, we've noticed an element of that too. Open source definitely does NOT a business make.

Close to the point of closing the company down, we eventually hit upon the idea of cleaning up all the bugs in the OS code and re-releasing all our software under proprietary licenses. We finally hit paydirt not long after that decision too. The proof of the pudding is that we're now back from the brink and pulling in a very healthy turnover and without any outside funding whatsoever.

This is not a troll, i'm appreciate the "moral principle" of OSS, but in the end it sure as hell doesn't pay you any dividends. I similarly went from complete enthusiasm for the OS business model to sheer contempt for the parasites who would never stop to think about how much time/effort/money we had put into the development our software before moaning about a missing feature/annoying bug etc. Perhaps if they had bought the goddamn support contract it might have been implemented!

We are still considering OSS for future products, but STRICTLY for the marketing element only. That is one of the few positive things I can speak for about OSS. And yes you may have guessed, I AM bitter!


WHAT!! No Common Sense? (1)

sciop101 (583286) | more than 9 years ago | (#9542656)

Time & Past time to see a Lawyer! Much of the advice on Slashdot sounds like the usual stuff coming from students of university and college survey law class. They were listening!!

Lawyers are overpriced and their use should be tempered with common sense. Find a good contract lawyer.

Write-off the first six as prototypes/examples?? Ouch!!

Do you have sense of self-preservation? Your customer has a stronger business sense than you and your partner!!

Pull a Microsoft (0)

Anonymous Coward | more than 9 years ago | (#9550439)

Since you're not in a position to send 1000 copies of the source, and since the source has already been modified, I would suggest "pulling a Microsoft": allow the customers to make as many copies of the software as they would like for a flat fee.

Microsoft did this with DOS for the PC (fee, was $50,000 IIRC). Yes, it can make a fortune, even if you aren't making a per-unit royalty.

Weeeelll... (1)

thechao (466986) | more than 9 years ago | (#9555818)

I'm not a lawyer ... and I don't really know how this licensing stuff works; heck, I don't even really know what you're doing or why - but here's my suggestion:
(1) Tell them they owe you, oh, I dunno, 2.7 hojillion dollars. Um. Per 7/11ths copy.
(2) ???
(3) Profit!
Check for New Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account