
Ask HN: How to Sell Proprietary Software? - amirouche
I am investigating practices around selling proprietary software.  I know about the SAAS or managed approach where I need to handle all hosting operations.<p>In my case, customers might need to self-host the software for security or privacy reasons.  I am wondering how to enforce license and contract.  I am considering to add a routine in my program to &quot;call home&quot; with only the necessary informations, at which point the server will respond with the necessary information that will allow the program to run.<p>How do you sell software?
======
matt_the_bass
Looking from the customer point of view, I would urge you to consider what
value you are bringing with a subscription model. If I understand you
correctly, you want to charge an ongoing subscription for a one time piece of
software. It sounds like you’re not including updates or improvements, just a
one off install.

My personal opinion is if I’m buying software designed to run on my own
hardware with a one off install, I only want to pay once for it once. I don’t
want a subscription. But I also don’t expect updates or infinite support.

If there is a subscription, I expect updates (bug fixes, new features, support
for OS updates, etc). If the maintenance side has value to me, I’ll pay for
that subscription.

One example is Solidworks. I pay a few thousand dollars for the “base
product”. It’s mine to use forever. But I also pay a yearly service fee. That
subscription gives me: software updates (new features and bug fixes), tech
support, etc. I get value out of those things so I (gladly) pay for them.

~~~
amirouche
I am considering a subscription model. Also the software I want to sell is a
database. Thanks for the reply.

------
rotterdamdev
Mailspring does something like that. I personally prefer people selling me
yearly licences that do not call home, if a one-time is not possible.
Depending on the market you target, people might not like sw trying to call
home (every adobe software ever?). My firewall would block and report it
anyway.

------
mc3
Your app might need to call home for updates? I guess it could call home then
and verify.

Yes people could carry on running the SW on an old version and hack it
somehow, but don't worry about those people. You won't answer their support
calls!

------
actionowl
> "call home" with only the necessary informations, at which point the server
> will respond with the necessary information that will allow the program to
> run.

That means means users won't be able to use your app offline (in an airplane,
during an outage, in an area with spotty connection). You can attempt to play
it safe by checking in the background and terminating the app when/if you can
make a connection but that is easy to work around.

~~~
amirouche
It does no matter, it is a database server, the niche I am targeting (more
than 10TB of SSD) is still not available to commoners.

Creating subset of the data is not really possible. And if it is the case, the
existing product (free or not) can help.

------
fastbeef
There are commercial license key libraries that solve this for you. It’s been
years since I used them so I’m not qualified to make suggestions

~~~
amirouche
I look for 'commercial license key libraries'.

Thanks for the hint!

------
welder
Your call home idea is good. This open source self-hosted product does the
same:

[https://docs.sourcegraph.com/admin/subscriptions#how-user-
ac...](https://docs.sourcegraph.com/admin/subscriptions#how-user-accounts-are-
counted)

