Over the last 20 years we have encountered projects with a variety of business characteristics:
freeware Java projects that wish to offer a C++ integration API;
in-house integrations projects that get deployed to one group server;
expensive commercial products where JunC++ion is used to solve a tiny integration detail, invisible to the user;
inexpensive commercial products where JunC++ion provides an important capability;
middleware products used on thousands of computers where JunC++ion provides crucial end user-facing integration features;
There is not one licensing model that would allow us to accommodate all of the business scenarios together. We don't win if we price ourselves right out of the picture; we only win if we allow our customer to see a strong ROI from using JunC++ion.
In general, we do not give our product away for free. We have occasionally made an exception for freeware solutions with a charitable background, but these occasions are rare and we still required someone to sign our license agreement and commit to the solution remaining free.
A Starter Kit to Get You Going
The easiest and least expensive way to become a supported customer is to purchase a JunC++ion Starter Kit. A Starter Kit costs US$ 1,995 and includes
one developer license (required for users of the code generator, not for users of the generated code),
one year of maintenance and support, and
five counted deployments (client host or server CPU).
The Starter Kit is designed to allow you to do prolonged prototyping or to deploy small, group-sized applications. Except for maintenance and support, many customers never need anything beyond the Starter Kit.
Once you need more deployments than the five included in the Starter Kit package, you need to upgrade to a full developer license (by paying the price difference) and either purchase more counted deployment licenses or negotiate a custom deployment license with us (see below).
You lose the right to upgrade to a full developer license for the price difference if choose to let support lapse.
Three Components to Every Deal
Other than not wanting to give our product away for free, we have shown great flexibility in pricing and terms. We typically break a deal into three different components:
There is a one-time fee per licensed user of the code generator.
Our customers typically have one or a few developers who are trained in using the code generator. They generate the proxy types that can then be used by all developers on their team.
Every user of the code generator—but not every user of the generated code—has to be licensed.
There is an (optional) fee for maintenance and support.
We strongly recommend that you purchase maintenance and support. Maintenance and support are only available as a package and you either purchase it for all developer licenses or for none. As a supported user you have access to tech support and minor and major product updates.
Without it, you will be on your own when you run into problems and you will not have access to any JunC++ion updates. If you choose to forgo maintenance and want a later version of JunC++ion you have to purchase a new developer license.
There is a deployment fee for any application that includes the JunC++ion runtime library.
You can count hosts or CPUs, but we try to avoid doing deals that involve counting. We much prefer negotiating a flat one-time or annual fee for your application.
While we typically have a firm price in mind for the first two components, this component is totally up for negotiation and will depend heavily on the business characteristics of your product.
You tell us what you're trying to do with JunC++ion and we try to give you a price that allows you to emphatically say "Yes" to JunC++ion.
We are very reasonable people—we have to be to still be in business after 20 years of selling a development tool—and we will do our best to come to an agreement on price.
Source Code License
We offer an optional commercial Source Code License for the purpose of enhancing, debugging, and porting. It doubles up as a source code escrow agreement by having provisions that grant you durable rights in the case of a Codemesh demise or a significant failure to uphold its obligations.
Contact us for details.