Sunday, July 27, 2008

DataObjects.NET v4.0 will be available under GPL

That's one of the most important decisions we've made. This does not mean we'll eliminate the existing licenses - we'll keep them, so anyone will be able to chose between "non-viral" paid or "viral" free licenses.

By doing this we want to reach several goals:
- Enter the market faster - we already spend much more time on its development then we planned, so we want to take it back here.
- Make the product much more popular. If we'd compare this to something existing, which is closer to us by the underlying ideas and approach, we want to get nearly the same effect as for Ruby on Rails.
- Build bigger community around the product. In particular, we'll allow other people to contribute to the product, as well as to its Wiki.
- Make it stable earlier. Source code should allow the people to help us debugging the issues.
- Show it is good inside, not just outside - i.e. there is nothing "dark" we prefer to hide. We'll publish it with complete set of tests. The quality of its code is really much better then of v3.9.
- Get it developed further faster - as we wrote, it will initially go out without some features (I mean mainly LINQ) that are already implemented in many of its competitors, although as a platform itself it looks as the most advanced one (none of competitors neither have full-featured built-in database engine, nor plans for supporting not just N-tier, but a distributed environment). And we hope it will help us to get them implemented faster.
- Make the product more competitive - here I mean mainly other free products, such as EF. We understand it will be hard to compete with it, but on the other hand, we're creating a new niche one the market: DataObjects.Net will be the only ORM platform that needs no database at all (sounds a bit funny, but on the other hand, anyone using ORM dreams to forget about the database, and we really make this dream come true now ;) ), and works without any lacks in such a configuration. I suspect that e.g. EF will never support this - I don't believe they will compete with SQL Server. Although in wide range of cases (e.g. in Silverlight applications) this is quite desirable.

Availability under GPL doesn't mean we're going to get rid of this product and of its further development, as it frequently happens. On contrary, we're doing this to ensure it will have a good future. We are releasing an new innovative technology having much safer position as a company now then 5 years ago (actually we were much closer to the group of yound people that time, then to a company) - and this time we are sure this is the way we should and can choose.

It doesn't an "all or nothing" game for us - we're already recognized as good software developers at least, and have enough potential to grow further even without DataObjects.Net. But for the new version of DataObjects.Net it really is - i.e. such an approach should expose its full potential faster, and we believe it will be a good race for it. It should swim up and seriously affect on the market or sink fast (6 months to 1 year is enough time to see this) - and personally I don't believe it can sink.

So let's see how it swims up and gets its positions back!


  1. From my experience of PostSharp, I would say that some of your expectations are correct and other are not.

    It is definitively better for people to have the source code. It helps them understand how it works and it requires less work to support them.

    You will indeed raise more sympathy and people will eventually be a larger testing base.

    However, you can't expect having significant contributions. Anyway, you cannot accept GPL contributions if you want to keep the possibility to sell commercial licenses. You always have to buy (or be donated) the contribution so that you are the copyright owner.

    The .NET community is much one of "consumers", i.e. with relatively few active contributors. It differs from intrinsicly open source communities like Java, Python, or Linux.

    Good luck anyway!


  2. Noticeable contributions in form of source code is not what I expect - there are really not too much people that would do this. But on the other hand, there are other aspects important for the people - documentation, samples, HowTo and Q/A sets - and I hope if it will be initially publicly editable, we can expect some public activity here.

  3. Forgot to add - I didn't mean everything will be available under GPL. Almost everything - definitely, but the most innovative things like distributed indexing may be not. We simply didn't thought much about this yet.

  4. But when do you expect to release the 4.0 version? I missed the date.

  5. In the end of summer. So most likely - on August, 31.

  6. Is there going to be some sort of migration path from V3 to V4 ?

  7. It will be provided, but definitely later then initial public release (you may keep in mind something like 2-3 months).