Live data from Hacker News

Datomic is Free

blog.datomic.com

271–280 of 436 posts

Re: Datomic is Free

#271

From experience: Datomic Cloud is slow, expensive, resource intensive, designed in the baroque style of massively over-complicated CloudFormation astronautics. Hard to diagnose performance issues. Impossible to backup. Ran into one scenario where apparently we weren't quick enough to migrate to the latest version, AWS had dropped support for $runtime in Lambda, and it became impossible to upgrade the CloudFormation t…

Are they _forcing_ you to use CloudFormation? Or is it just the officially supported mechanism?

> Mother Postgres can do no wrong.

I'll say that Postgres is usually the answer for the vast majority of use-cases. Even when you think you need something else to do something different, it's probably still a good enough solution. I've seen teams pitching other system just because they wanted to push a bunch of JSON. Guess what, PG can handle that fine and even run SQL queries against that. PG can access other database systems with its foreign data wrappers(https://wiki.postgresql.org/wiki/Foreign_data_wrappers).

The main difficulty is that horizontally scaling it is not trivial(although not impossible, and that can be improved with third party companies).

Re: Datomic is Free

#272
post #208

Earlier quoted context omitted.

Consider this use case - in addition to your web app, you have a reporting service that makes heavy duty reports; if you run one at a bad time, bad things might happen like users not being able to log in or do any other important work, because the database is busy with the reports. So in a traditional DB you might have a DBA set up a reporting database so the operational one is not affected. Using Datomic the reporti…

With AWS you can create a replica with a few clicks. Latency is measured in milliseconds for the three-nines observed usage. I don’t think this is a huge challenge (anymore) for Postgres or whatever traditional database.

That is a read replica, datomic peers can do writes as well, which further expands the possible use cases.

Re: Datomic is Free

#273

From experience: Datomic Cloud is slow, expensive, resource intensive, designed in the baroque style of massively over-complicated CloudFormation astronautics. Hard to diagnose performance issues. Impossible to backup. Ran into one scenario where apparently we weren't quick enough to migrate to the latest version, AWS had dropped support for $runtime in Lambda, and it became impossible to upgrade the CloudFormation t…

As someone who is using Datomic Pro in production for many years now I must agree with you. One time I began a project with Datomic Cloud and it was a disaster similar to what you described. I learned a lot about AWS, but after about half a year we switched to Datomic Pro.

There were some cool ideas in Datomic Cloud, like IONs and its integrated deployment CLI. But the dev workflow with Datomic Pro in the REPL, potentially connected to your live or staging database is much more interactive and fun than waiting for CodeDeploy. I guess there is a reason Datomic Pro is the featured product on datomic.com again. It appears that Cognitect took a big bet with Datomic Cloud and it didn't take off. Soon after the NuBank acquisition happened. That being said, Datomic Cloud was not a bad idea, it just turned out that Datomic Pro/onPrem is much easier to use. Also of all their APIs, the "Peer API" of Pro is just the best IME, especially with `d/entity` vs. "pull" etc.

Re: Datomic is Free

#274

Earlier quoted context omitted.

Is most marketing good? I don't think so.

I don't know what you are calling "good". That is a super loaded word. I would say it is effective though. The baseline evidence for that is how much money gets spent in that industry, I guess.

> I would say it is effective though.

Really depends on your metrics. Very little of it builds long-term trust that didn't already exist. Much of it abuses long-term trust.

See the discussion on https://news.ycombinator.com/item?id=35590734

Re: Datomic is Free

#275
post #244

Earlier quoted context omitted.

I'm moderately confident you could mechanically transform a time-oblivious schema into a history-preserving one, and then write a view on top of it which gave a slice at a particular time. Moderately.

That is essentially what MVCC does.

That is an extremely good point.

Re: Datomic is Free

#276

Free as in beer. Not free as in speech. > Is it Open Source? Datomic binaries are provided under the Apache 2 license which grants all the same rights to a work delivered in object form. Datomic will continue to be developed at Nubank, where it is a critical piece of our infrastructure.

So...no, it is not open source. I wish they would just answer that in a straightforward way. "No, the source is not available, and the product will continue to be developed by us, internally. However, binaries are provided..."

Yeah the answer in the page is a total meme. Kind of disappointing, since I like Datomic a piece of tech. :(

Re: Datomic is Free

#277
post #209

For those who haven't followed the story: 2007 - the Clojure programming language is announced by Rich Hickey and gains quite a bit of traction over the next 5 or 6 years. It never becomes a "top 5" language, but it could still today be arguably considered a mainstream language. It's been endorsed as "the best general purpose programming language out there" by "Uncle" Bob Martin[1] (author of Clean Code) and Gene Kim…

The 2012 section seems not correct. In the time between 2012 and 2020 I deployed Datomic in various non AWS environments. Datomic was never particularly tied to AWS. I think your timeline also misses Datomic Cloud, which was an AWS exclusive product that launched much later than 2012.

Re: Datomic is Free

#278
post #219
post #193

Earlier quoted context omitted.

Rich Hickey has a great talk about how Objects are data structures with unique interfaces that are unnecessary complexity. He showed and example of a web server with a web request object with request headers etc etc. Doing simple things like collecting information out of that nested object structure is bespoke and harder than it should be for no real gain. If everything is a map or list or set, it becomes completely…

I think there is a need for objects. An active connection, talking to the GPU, etc are not data -- identity is essential for their operation. OOP is probably the best way to model such,.. well objects, allowing them a private, encapsulated state, and making it only modifiable, or even viewable through a well-defined public interface that enforces all its invariants.

Connection pools exist precisely because the code outside of the connection management piece shouldn’t have to care much whether or not there is an active connection. It’s all boilerplate, except for handling the “unable to connect” case.

When you call a connection or connection pool object, you’re querying its current state. This is absolutely data.

Re: Datomic is Free

#279

From experience: Datomic Cloud is slow, expensive, resource intensive, designed in the baroque style of massively over-complicated CloudFormation astronautics. Hard to diagnose performance issues. Impossible to backup. Ran into one scenario where apparently we weren't quick enough to migrate to the latest version, AWS had dropped support for $runtime in Lambda, and it became impossible to upgrade the CloudFormation t…

> Datomic Cloud is slow, expensive, resource intensive, designed in the baroque style of massively over-complicated CloudFormation astronautics. Hard to diagnose performance issues. Impossible to backup.

You should give TerminusDB a go (https://terminusdb.com/), it's really OSS, the cloud version is cheap, fast, there are not tons of baroque settings, and it's easy to backup using clone.

TermiusDB is a graph database with a git-like model with push/pull/clone semantics as well as a datalog.

Re: Datomic is Free

#280

Earlier quoted context omitted.

That's certainly not how it sells and markets itself. The first feature on benefits (and the only reason I've ever heard Datomic brought up and/or considered it myself for production workflows) is using that stuff in application workflows: https://docs.datomic.com/pro/time/filters.html#history Could be you're saying it in fact doesn't work well performance-wise, that'd (surprise me but) certainly explain why it's not…

Welcome to sales tactics ;) Datomic is great but as another commenter said, is good for "small-ish backoffice systems that never has to be web scale". You almost probably can rely on querying history for internal applications. I think their primary market was for companies to use it internally but they never made this clear.

> "small-ish backoffice systems that never has to be web scale". Doesn't production use of Datomic by Nubank and Netflix (to mention just two examples) belie this assertion?
Post reply on HN