
My Thoughts on the Datomic License - DanielRibeiro
http://blog.goodstuff.im/datomic_license
======
cordite
In a presentsrion by Rich Hickey, one of the answers in the Q&A section
afterwards about this was along the lines of "I want to put my kids in
college"

I too am very interested in diatomic, but I find the no benchmarking clause to
be absolutely ridiculous in this environment. sure, some technologies are
harder to compare because the specialization differs, but surely with
something like the yahoo cloud data test or whatever could be helpful for
someone considering the trade offs they get with Datomic.

~~~
dustingetz
> I find the no benchmarking clause to be absolutely ridiculous in this
> environment

That's called a DeWitt Clause and most database ELUAs have it.

[http://en.wikipedia.org/wiki/David_DeWitt](http://en.wikipedia.org/wiki/David_DeWitt)

~~~
dave_sullivan

        The original DeWitt Clause was established by Oracle at     
        the behest of Larry Ellison. Ellison was displeased with 
        a benchmark study done by David DeWitt in 1982, then 
        just an assistant professor, using his new Wisconsin 
        Benchmark, which showed that Oracle's system had poor 
        performance.
    

It takes a special kind of sicko to take someone you don't like, create a
fairly dickish policy to basically restrict free speech/fair comparison of
products, then _name said dickish policy after the person who was trying to
encourage the exact opposite._

See, if it were just "the ellison clause" it would need no further
explanation.

------
jwr
I have considered and purchased a number of commercial libraries and
development tools over the years (in particular, some Lisp
implementations/compilers and databases, and some libraries), so I'll drop in
a few notes on the subject:

* Price does not necessarily correspond to quality/capabilities. I have seen very expensive software that was disappointing, and very cheap (or free) software that was impressive.

* Paying a lot for software does not mean you will get the support you expect. You _will_ get the attention, but your problems will not necessarily get fixed. This is just a business reality: some problems are too expensive to fix.

* A commercial licensing agreement you enter into is usually a huge problem that crops up later. It's baggage that you will carry along and will need to look into regularly: when you make a huge new sale, when you sign an escrow agreement with a customer, when you go through due diligence, or when you sell your company.

* A licensing agreement with revenue sharing is an even bigger problem. Setting apart the management costs, it is something that not all of your investors/partners/buyers will approve of.

* Commercial software, in general, has fewer users than free software. Which means you are more likely to end up the first or the _only_ user of certain functionality. Not a good place to be in when you have systems to ship.

* If a company does not have a clear pricing structure, the negotiations might take too long to be worthwile. Just hearing a price is sometimes difficult and requires exchanging multiple E-mails („let us assess your needs so that we can provide you with a custom quote”).

* If you build your product on top of a commercial library, take into account that you are now dependent on the company you bought it from. Unless you have the source code and the rights to modify it — but even then, if the company goes under or gets bought, you might end up holding the bag and having to develop and support the code you bought.

Put another way, when I make a decision to use a commercial library, in
general I will avoid it, unless:

* the pricing is transparent and immediately available,

* there is no revenue sharing, quarterly reporting, etc,

* there are few licensing restrictions,

* there are enough users I know of that I can assume the library has been used and tested,

* I get the source code,

* I get the rights to use the code after the company goes under or gets sold.

------
mark_l_watson
I was confused by, or the author is confused by the free community edition
license.

The JAR files and runtime of the free community edition can be redistributed
in other open source projects. Right? Haas something changed?

Edit: the author probably wanted to purchase the commercial version. If this
is the case he could still package the runtime assets for docker, etc.

------
wukix
As a developer of commercial software, this strikes me as a lot of paranoia,
although I do agree with one or two points.

These types of agreements have to be somewhat broadly written so that if
someone acts like a jerk and e.g. resells Datomic as a cloud service, the
license has a way to stop that. It has nothing to do with preventing you from
privately installing your Datomic instance on AWS, or otherwise being a
reasonable customer.

Companies generally have a strong interest in being fair to their customers.
Taking the most paranoid reading of the license text like it is constitutional
law and tyranny is right around the corner is simply incorrect and unfair.

I invite comment on my own license: [https://wukix.com/mocl-license-
agreement](https://wukix.com/mocl-license-agreement) (for
[https://wukix.com/mocl](https://wukix.com/mocl))

~~~
macmac
Which parts specifically would you consider paranoid? Issues similar to those
pointed to by DPP (e.g. those found in the License Grant and Restrictions
sections) have been used many times by software vendors to extort fees from
licensees. And before you say that this would surely take such vendors out of
business in short order, please know that this approach has been used by some
of the worlds most successful software companies who are still very much
around and well (at least financially).

~~~
wukix
For starters, objecting to the anti-criminality clauses seems paranoid.
Granted, if you're a human rights organization under a hostile government,
maybe you need to worry about this. But otherwise, what is the problem? Does
one really need the ability to write viruses with Datomic? WTF?

Can you point to any specific examples of the extortionate behavior you
describe? I imagine some companies cry extortion when they get nailed for
genuine infringement (e.g., lots of unlicensed installs), but I would like to
see an example where a software vendor went truly tyrannical on a customer
that was actually using the software as agreed and intended.

------
sheetjs
> I'll use PostgreSQL 9.3 with JSON support. Yeah, it's technically not as
> good, but I know what my rights are.

What makes Datomic better than pg?

~~~
Skinney
Depends on what you are after I guess. Datomic puts the query engine in your
application, so you're querying over a built-in cache. This means Datomic
could be rediculusly fast for often requested data (should always be in
cache). Datomic allows you to "travel back in time" as it has built in time
management. Writes never blocks reads. All writes are atomic. Datomic supports
functions (Java or Clojure) in queries and transactions. There is more, but
this was a list of my most liked features.

Of course, Datomic has some drawbacks as well. Like storage space. Datomic
never deletes anything, and isn't exactly conservative on storage either. For
instance, a timestamp is saved for every value in the database. This allows
you to view the database the way it was at any point in time, or tell you
exactly when a user changed his password, username or email, but it does have
a storage cost. Since Datomic is distributed, you also need a bigger setup
(more machines) than with traditional databases.

~~~
AlisdairO
I know you're not contrasting against PG here, but just to add: writes never
block reads in PG either, all writes are atomic, and you can create functions
for use in queries.

The main USP for Datomic is the way it distributes data, which if you've got
the right use case (i.e. you're generally querying over a subset of the data)
is really nice.

------
whatevsbro
He does make good points about the legalese. Quite worrisome.

------
vlaosm
It seems to be that this post is just not happy with the fact that Datomic
guys are selling their software :)

~~~
prutschman
From the article,

"I will also gladly pay Cognitect for Datomic if I get it into production for
a non-trivial site."

~~~
vlaosm
"I will also gladly pay" \+ look there are guys who give their product for
free + I don't agree with your pretty much standard EULA = I will never pay
but I would use it if it were free.

~~~
spacemanmatt
Your words, not his.

