Fork me on GitHub
#architecture
<
2018-05-17
>
Ivan08:05:56

REST and CRUD are fundamentally different

Ivan08:05:11

GraphQL is mostly an RPC interface

Ivan08:05:05

I wish we start seeing proper REST systems, but it is not something people seem to be interested in

Ivan08:05:36

I also hope we stop seeing CRUD systems, in favour of event sourcing and/or CQRS

Ivan08:05:51

CQRS is complex, it is not as simple as it reads

polymeris11:05:32

I can see GraphQL might help being more flexible with the Q part of CQRS, but so would SQL or datalog.

polymeris11:05:21

The CRUD/CQRS question is largly ortogonal to the query languange/protocol queston, I think.

đź‘Ť 4
jerger_at_dda12:05:50

Hi, do you know good papers about how to build good APIs in clojure?

Drew Verlee18:05:00

Well… what do you mean by API? Its a fairly general idea imo.

jerger_at_dda14:05:05

I mean the general API - so not REST or more special kinds ...

jerger_at_dda14:05:40

For example I describe data being consumed by our system using schema (https://github.com/DomainDrivenArchitecture/dda-user-crate#reference) I would call this a data-driven-api. But I assume, there are many more and probably more elegant ways to describe APIs in clojure?

Drew Verlee15:05:24

well if your looking to describe clojure data for the purposes of validation then i suppose Clojure Spec would help. Its similar in nature to spec, but spec can be used for generating data as well.

jerger_at_dda06:05:40

would say spec & schema are playing in the same field ... but spec will allow to autogenerate doc where schema is not able to ...