News, examples, tips, ideas and plans.
Thoughts around ORM, .NET and SQL databases.

Thursday, May 27, 2010

Link: Users from Russia and CIS countries, apply for discounts!

See this post for details.

Link: Free licenses for DataObjects.Net and Help Server for bloggers, article writers and user group speakers

We just published a complete information on how to get your free licenses for DataObjects.Net and Help Server for article publishing or blogging.

DataObjects.Net editions and prices, final version

Here is the final version of new pricing model I previously announced:

As you may find, we described the same model and prices in much more standard fashion. No more license packs as default option, and consequently, no more Solo Professional license.

The most important difference with standard models is that we sell hardware (HW) licenses, not developer licenses:
  • You should purchase HW license for each machine where DO4 is used during build process.
  • We implied that first developer needs up to 3 HW licenses: two for office and home PCs and an additional one for build/testing agent or CI server, so 3 prepaid HW licenses are included into any edition by default. This is just our implication, but not requirement.
  • 5 and 10 HW license packs are built implying that 80% of licenses there will be used by developers, and 20% - by build/testing agents. Again, this is just our implication.
We hope the prices are reasonable - especially taking into account the amount of time we're ready to spend on support :)

Monday, May 24, 2010

DataObjects.Net v4.2.1 and v4.3 RC2 are available

Both versions of DataObjects.Net are already in downloads area. My previous post explains the changes we've made there. I'd like to add few screenshots to this post:

New images in installer - have you noticed a logo here? :)

PostSharp is now optional:

VS.NET Tools menu contains 2 new tools dramatically simplifying upgrades from previous versions, as well as this process.

Upgrade Tool,  "Upgrade Project" tab:

Upgrade Tool, "Upgrade Solution" tab:

Project templates (it seems people frequently simply don't know they exist):

Good luck with trying v4.3!

DataObjects.Net editions and prices: upcoming changes

Update: final pricing model is already announced.

The following map defines new pricing model we're going to introduce in June\July:

We tried to develop a model with good balance between several factors:
  • Our base prices must be comparable with key competitors; but final per-developer price must be lower.
  • The model should be explicitely designed to maximize the price of each purchase; but options we offer should be anyway be more attractive from the point of full price in comparison to competitors.
  • Since we're going to explicitly check hardware (HW) licenses, number of prepaid licenses must be determined basing on fact we provide 2 or 3 HW licenses for each developer: two for office and home PCs and one more - for CI/testing agent, if it is a team pack.
  • There should be a cheap option for companies or persons that would like to try a product in action, or currently have just a single project where it can be used.
Licenses of existing customers will be upgraded by the following rules:
  • Current Enterprise license will be upgraded to Ultmate edition;
  • Current Personal license will be upgraded to Solo Professional edition;
  • Any other license will be upgraded to Professional edition.
So most part of existing customers (owning SMB licenses) won't loose neither features, nor money (on yearly subscription prolongations). Since downgrades are free, customers with e.g. Internal license might decide to switch to a cheaper option later.

Any comments are welcome. This isn't final version, so your comments may affect on its final look.

Saturday, May 22, 2010

DataObjects.Net v4.2.1 and v4.3 RC2

This is my plan on this weekend. v4.2.1 will include all the changes and fixes we've made there after v4.2 release. This is still a stable branch we maintain.

v4.3 RC2 will include all the updates made both branches. There are two important improvements:
  • It won't require you to install PostSharp 2.0. This is an option now, if PostSharp isn't installed, it will use integrated one, as before.
  • There is DataObjects.Net Project Upgrade Tool simplifying migration from v4.X to v4.3 and helping to reference DataObjects.Net from already existing projects.

Tuesday, May 18, 2010

DataObjects.Net 4.3 RC 1 has been updated

Due to several issues with PostSharp 2.0 and its integration we spent last two days in tight cooperation with its author, Gael Fraiteur, and as a result, we are going to deliver a more stable release, although it is still RC 1.

The update is strongly recommended for those who downloaded RC 1 during this weekend.

Get started now.


Dmitri Maximov

DataObjects.Net PM

Monday, May 17, 2010

Project upgrade tool

We know it's pretty complex to properly add references to DataObjects.Net from your projects. The only solution we offer now is project templates, that are availabe after installation. But much better solution is on the way:

This tool will be fully ready in few days. It is capable of applying necessary options to .csproj/.vbproj and upgrading old-style references to the most current style.

So hopefully, this will remove a part of initial complexity related to usage of DataObjects.Net.

Saturday, May 15, 2010

DataObjects.Net v4.3 RC1 with Visual Studio 2010 and .NET 4.0 support is available

DataObjects.Net v4.3 Release Candidate 1 installer was uploaded to Downloads Area today. We're going to gather feedback about this build during the next week and publish v4.3 final a bit later.

This release passes the same set of tests as v4.2; moreover, it already contains all the changes made to v4.2 till this moment, so it should be nearly as stable as its predecessor, although we don't recommend using it in production environment.

What's new:
  • .NET 4.0 and Visual Studio 2010 support.
  • v4.3 uses PostSharp 2.0 instead of PostSharp 1.0 - by my impression, assembly post-processing performance is nearly 2 times faster now.
  • Xtensive.Core contains new Tuples engine that relies on generics instead of generation of Tuple and TupleDescriptor classes with System.Reflection.Emit. This significantly affects on application startup time: although code generation was happening just once for each type, this process was pretty costly.
  • Domain.Build(...) also works nearly twice faster - partially, because of today's fixes (btw, they're available in v4.2 branch as well), and partially - because of Tuple engine replacement. I know this is still not the best result we can reach here: a bit later we'll try to make this at least 20-30% more faster.
  • This build supports only .NET 4.0 and VS2010; .NET 3.5 version will be available on the next week.
  • You must uninstall old DO 4.X and old PostSharp (if you installed it);
  • This version will function for 60 days after the installation or till the end of July - which is earlier. During this period we'll migrate to full-featured licensing module.
  • There is no source code - only binaries.
  • This version contains only .chm help file (class reference, its online version is here): Sandcastle currently isn't capable of building help files in new help format introduced with VS2010.
  • We tested mainly SQL Server provider for it; test configurations for PostgreSQL and Oracle providers aren't established for this version on our build servers yet, so they can't be considered as stable.
To upgrade to this version from v4.2, you must:
  • Uninstall old v4.2 and install v4.3;
  • Upgrade your projects to VS.NET 2010;
  • Remove references to PostSharp.Public.dll and PostSharp.Laos.dll from your project and add reference to PostSharp.dll from "Lib" folder;
  • Remove [Persistent(...)] attribute from your AssemblyInfo.cs files and reference to its namespace (Xtensive.Storage.Aspects);
  • Probably, add "using Xtensive.Core;" to some of your files - we moved classes from old "System" namespace to this one;
  • Likely, it will be necessary to make other minor fixes. Please notify us, if you'll find another typical case.
Good luck trying DataObjects.Net v4!