Contrasting UberProf & RavenDB from business perspective
I was recently asked to contrast the business decisions related to the profiler and RavenDB. I thought that it would make an excellent post.
There are a lot of aspects to thing about here, actually. The profiler is an add on tool, it is only useful if you are using one of the supported OR/Ms, but if you do… it:
- has very low barrier to entry, you need to reference the dll and add a single line of code.
- provides immediate value, you can see the benefits that it gives you.
- have very few moving parts that users can break.
NH Prof was released on Jan 1st, 2009. The first sale happened on Jan 2nd, 2009 (thanks Yann!).
The lead time for the profiler tends to be very short. Because there is very little that you need to invest and there is a lot that you gain. Yesterday I introduced a guy to the profiler as a way to help him see what his app is doing, he made a purchase about an hour later.
That is excellent news from my point of view. :-)
RavenDB, on the other hand:
- has a very high barrier to entry, not so much from technical perspective, but from adoption one.
- requires you to make significant changes to the way you work.
- takes time to show why it is beneficial.
- requires payment only when you actually goes live.
- requires much higher degree of support for users.
That means that while it takes a few minutes to decide if you want the profiler (and the rest of the 30 days trial is spent getting corporate approving it :-) ), for RavenDB the lead time until you pull out your credit card is much longer.
That has some interesting implications. I actually spent a lot more (time & money) in the profiler than I spent (outright) on RavenDB. But the major difference is what type of investment that would be.
There is a term in economics called sunk cost, that is all the costs associated with building a product up to the point you released it. That is money already spent. But what usually matter a lot more is that once you reached the release point, can the cash flow from a product justify the continued work on the product ( and maybe, at some point, pay for the product development) ?
NH Prof was a big investment for me, but money started coming in shortly afterward, and it became apparent that it was sustainable product. For RavenDB, the costs have actually been a lot lower (since the majority of them represented my own time), but the expectation is that it would take about a year or two before it would be be possible to say if RavenDB is a sustainable product.
In that sense, RavenDB represent a lot riskier investment. If RavenDB wasn’t rattling in my head for so long, I would have probably would have gone to something with much shorter lead time.
It is interesting to me to see how many factors there are in those sort of decisions. So many things to balance.
Comments
It seems NH Prof have very specific, but actually wide market due to high usage of NHibernate ORM and simply absence of other real alternatives! That is why you start generate revenue right after release: no real rivals, but whole a lot of potential customers that really SEARCH for profiler for best ORM!
With RavenDB I see whole a lot of alternatives (rivals) so it's really seems very risky investment :) More so huge brands like MSFT, Oracle and others will not leave this (NoSQL + document centric DB) market for you in long term :)
Personally I think if you just port and extend Apache Solr into .NET, probably you will have bigger market and whole a lot of people can use it right after initial releases and a lot of people that want scale with Lucene probably will be glad to see such engine!
In any case, good luck with RavenDB, maybe one day I will not need to use in some projects, combination like MySQL + Memcached + Solr + Lucene + ... and will just use RavenDb instead ;-)
Do you see a future market for RSB? I ask because Udi is talking about making NServiceBus commercial. The community doesn't have much choice beyond NSB, RSB and MassTransit. Thoughts?
Supporting such a product might be an interesting challenge if you want to only start charging for it when the utilizing application/service goes live. Faq's, blogs, and documentation are a reasonable sunk cost, but they only go so far.
Adoption may hinge on getting case-by-case support which will be bloody expensive and time-consuming. I'd expect that most organizations looking to use RDB would pay for consulting / support during their evaluation & development, but I'd imagine this would eat up a considerable amount of your time as interest grows.
Ah well, you don't truly learn anything until you venture out into the unknown! :)
@JV The community still has choice. The community that doesn't want to part with money to obtain value will have less choice (for whatever reason that may be).
There is a difference.
@John: What I meant in that statement is that there are only 3 [lightweight] service bus platforms in the .NET community right now (unless there are more I don't know about). NSB was included in my list. Whether you are paying money or not does not apply to what I was meaning to ask:
To Ayende: do you think you might take advantage of the limited market to make some money on RSB and compete with NSB?
After reading this post, NO WAY I am going with RavenDB... If you're not confident about it, why should I be?
Anyway It seems a data store needs good corporate backup.
I think that you mistake what I meant by confidence.
I am completely certain in the technical details of RavenDB
What I am not certain yet is whatever it can be a viable revenue source.
Comment preview