Some comments regarding new licensing policy for Image Uploader 6

posted by Andrew on 8 June 2009, 00:03

Hi there,

We made pretty serious changes in the licensing policy for Image Uploader 6. It is not similar to the old one and someone may be confused with it. However I strongly believe that it is much more straightforward. That’s why I decided to write this post to explain our point of view on the licensing questions.

Single Domain vs. Express/Standard/Professional

From the very first version of Image Uploader, the primary license type was a Single Domain license. It was issued for a website with one full-qualified domain name, and it was limited by a single server. For more servers, a separate license type called Web Farm license was provided (the reason why multiple servers require additional licenses is outlined below). Things were getting complicated when such websites required multiple domains, etc.

Taking into account our past experience with customers’ licensing demands, we have reviewed our licensing system. Now each website requires only one license. This license allows using it with a single server and one domain (other limitations are omitted for brevity, so refer licensing pages for more details on this). If this is not enough, you should extend the license with so-called connectors. There are two kinds of connectors – server connectors and domain connectors.

This license plan is called Standard. It has a sibling – a license plan called Professional. The only difference is that the Professional version includes some additional features primarily interesting to the photo printing companies.

These license plans are more consistent comparing to the Domain and Web Farm licenses. However they may seem pretty expensive for a number of customers. But we wanted to keep Image Uploader affordable for startups and small websites as well. That’s why we offer an Express license plan in addition to Standard/Professional. It is very similar to the old good Domain License, but however it includes fewer technical support features.

I would like to comment this point with support. For a long time, our policy was to provide the same level of technical support to everyone. But in the course of time we got a number of customers who have special requirements for the support - guarantied response time. That’s why we made a difficult decision – we provide unlimited high-quality technical support with guarantied reply in 24 hours to Standard/Professional customers only.

But it does not mean that Express customers do not get any support at all. They still can submit up to 2 cases, and of course they can post messages on forums. According to our statistics, it should satisfy a big number of our customers.

About Server Connectors

Some people wonder why the price for the client-side software like Image Uploader depends on the number of servers, their CPUs, etc. Let me explain.

Ideal fair measure for a software price should be the intensity of its usage. When we talk about common standalone desktop applications, it is easy to estimate – the number of workstations where the software is installed is a good appraisal. That’s why this licensing model is so popular for such kind of applications.

However when we consider such application as Image Uploader, it is not so easy. On one website Image Uploader may be downloaded by 1000 people, on another one – by 1000000 people. And the worst thing is that a website owner is not always able even to calculate this number. The same situation we see if we try to use some similar metric, like amount of uploaded data or something like this.

That’s why we decided to use another metric – the power of the server side which processes the upload (i.e. the number of servers, etc). This value is clear and easily managed by the website owner. And it seems to be fair enough, because it is unlikely that someone will purchase and configure large web farms and let it be idle. So to make the licensing policy scalable, we just deem each additionalserver, CPU, or CPU core as a separate unit which requires purchasing a connector to the main license.

The arguable question here is whether to interpret multi-core CPUs in the same way as multiple single-core CPUs. On the contemporary market all new server CPUs are almost always multi-core, so it may seem not very good idea. But on the other side, it is obviously that 32-core SPARC is not the same as typical multi-core Intel or something like this. So the decision worthy of Solomon would be to set a threshold value for the number of cores which divides typical multi-core CPUs from something special like SPARC. In our case we consider CPUs with up to 8 cores as a single unit.

And the last aspect I would like to discuss regarding server connector is what to do if you use a virtual hosting rather than run it on real servers. This is especially actual because of growing popularity of such services as Amazon EC2, and similar.

Of course we do not have anyone to purchase licenses for all underlying hardware of Amazon EC2. Virtual hosting providers allocate resources in so-called Computing Units. Each such Computing Unit has the power comparable with common server with typical configuration. That’s why we just interpret such Computing Units as servers requiring connectors, not the real underlying hardware.

Single-owner Website vs. SaaS/Commercial Apps

In the previous section I explained how we make the price scalable based on the product usage intensity. But this is not the only parameter which should be considered. One more crucial parameter is whether the website is used by a single owner or itis an application used by multiple third party companies.

Imagine you build Image Uploader into a CMS engine. You host this engine on your server and let your customers an account, and create websites based on it.  From our point of view such usage of Image Uploader may be interpreted as reselling to third parties.

In such situation Express/Standard/Professional license plans do not work here. This is where we use classic license model for software component market. The idea is the following: instead of purchasing a website license with connectors, you purchase SDK licenses per each developer on the application development stage, and when you run it to the production, you purchase deployment licenses per each client.

Depending on your situation and what is preferable for you, you either purchase blocks of deployment licenses which cover all your present and future customers, or acquire a license for each separate customer.  But the general rule is simple – the price depends on the number of your customers, not on the intensity of the software usage.

We divide single-tenant and multi-tenant applications pretty long (at least from version5.0 or even earlier), but earlier it was less obvious, and it lead to misuse of some kind of old licenses. Hopefully now we managed to make it clearer.

Where is an IP license?

One of the main questions our previous customers may have is what an analogue for the IP license is.  This is quite ambiguous question.The answer depends on the nature of the website you run.

1. If you have single-owner website and need the IP license to cover all its domains (e.g. www.example.com, www.example.net, www.example-alias.com, subdomain.example.com etc.), you should switch to Standard or Professional license + appropriate number of domain connectors. If the number of domain connectors is not reasonable, we can provide special connectors for IP address or whole domain tree on aspecial request.

2. If you have a hosted application,you should switch to SDK/deployment model. If the number of clients of your application is more or less constant and do not grow extensively, most likelydeployment fee will be a block of licenses which will cover all your customers for the nearest year or other period of time.

Holders of the old IP license may have a concern about the price of deployment license block or IP connector. However I would like to ensure you that there will be no price skyrocketing. At least its order is the same as for old-fashion IP licensing.  

 

I hope I shed some light on new license policy and made it clearer. If you have any feedback or would like me to write one more post about some aspect of licensing questions, do not hesitate to leave a comment here.

Graphics Mill 5.0 Press Release

posted by Max on 20 May 2008, 19:13

Standard vs. Pro

kick it on DotNetKicks.com

Aurigma Inc. announces an anniversary version of Graphics Mill for .NET, the popular SDK for the developers of image processing solutions. Version 5.0 marks a new milestone in the product life cycle: Graphics Mill is now offered in two flavors, Standard and Pro. This allows the developers to choose the optimal tool for precisely addressing the goals in an economically efficient manner.

Now the developers of basic imaging solutions do not need to pay for expert Pro version functionality, having the Standard package contain all necessary imaging features. Normally, Standard version proves sufficient for such solutions as image editing web applications, image viewers, photo galleries and catalogs, etc.

More demanding customers, however, would rather choose to buy the Pro version that includes all the expert features needed to develop such serious products as preprint preparation solutions, document management systems, satellite photo processing applications, etc. Graphics Mill Pro has native support for x64 platforms that allows for addressing more than 2 gigabytes of RAM per process for imaging needs.

Also the Pro version has enhanced support for multi-processor and multi-core systems, detecting the amount of CPUs/cores and accordingly optimizing imaging computations.

Other prominent Graphics Mill Pro features include support for Adobe Color Management Module and 16 bits per channel for images, real-time color space conversion, etc.

Graphics Mill code is native .NET (ASP.NET) which delivers valuable advantages for the developer.

One of the greatest improvements in version 5.0 is the introduction of Red-Eye Removal Add-on into Graphics Mill SDK. Therefore, there is no need now to purchase this add-on separately from Graphics Mill. Now the Graphics Mill SDK includes everything necessary to develop photo imaging solutions, including red-eye removal tool. Red-Eye Removal Add-on makes the entire process as easy as possible: it features a unique semi-automatic mode that only requires selecting the necessary face – and the natural eye tint is automatically restored. The process is split up into steps and features undo operation.

Other add-ons are included into Graphics Mill, depending on the package type: AVI Processor and Media Processor are available both with Graphics Mill Standard and Graphics Mill Pro, while Advanced PSD Add-on is only limited to Graphics Mill Pro.

Advanced PSD Add-on.

There is no doubt PSD format is immensely popular with artists engaged in graphic and web design. Very often a customer gets the final result (and sometimes even the mockups) in a PSD file. This allows for making minor changes without resorting to the designer expertise. However, sometimes there is a pressing need to streamline PSD file processing, inserting some custom content on-the-fly. The most typical example of such usage can be an online business card editor.

Objective: generate a business card from the person’s name and position input via a web form. Assets: business card PSD template that includes text and raster layers as well as the person name and position (and possibly a photo).

Solution: Advanced PSD Add-on reads the template and merges PSD graphics with custom personal data such as name and position (as rasterized text), personal photo, etc. The data can be input through a web form or be retrieved from a database – at developer discretion. The final image can be saved into a file for further printing.

More complex examples include discount cards, brochures and booklets with custom regional and cultural data, etc.

AVI Processor Add-on and Media Processor Add-on.

The advent of broadband connections brought video processing online. AVI Processor Add-on allows for AVI format manipulation: retrieving frames and soundtracks and saving them to files, adding frames and soundtracks from files and much more.

Providing metadata processing and multimedia format support, Media Processor Add-on makes a handy addition to AVI Processor.

Imaging Controls

To fully reveal Graphics Mill potential in web and desktop applications, a WinForms control set and an AJAX control set for ASP.NET 2.0 are included into the SDK.

WinForms controls include multilayer controls, containers for manipulating vector and raster objects, zoom and pan controls, thumbnail view control and many more.

AJAX controls for ASP.NET 2.0 are specifically intended for providing smooth online image editing experience even for slow Internet connections.

Graphics Mill is a comprehensive development tool for building imaging solutions of varying complexity. A more detailed Graphics Mill feature list is well beyond the limits of this brief article, while a complete understanding of Graphics Mill capabilities can be achieved by reading the extensive SDK documentation.

kick it on DotNetKicks.com