3 ms·
I would replace 'Boring' with 'Tried and True'. I was going to question the cost of an 'innovation token' for MongoDb and NodeJS, but I realized just now that
by shroompasta 5y ago
I would replace 'Boring' with 'Tried and True'.
I was going to question the cost of an 'innovation token' for MongoDb and NodeJS, but I realized just now that this article was written in 2015.
For every greenfield project that I came to build, I always gave considerable thought to finally using GraphQL as opposed to REST, just for the hype and growth.
Don't get me wrong, I understand the use-cases of GQL, especially in the context of multiple types of clients that don't obtain the same responses, but my appetite and longing to use GQL was always because the guy next door was using it and I didn't want to get left behind.
Furthermore, it's not like I can't implement some form of 'data shaving' through query params or detecting mobile / pc through user agent, or just simply adding another endpoint (or a couple), which basically solves what GQL has to offer.
That being said, I always went back to REST because it just worked - a request to and endpoint which hit the db, was simple, tried, and true.
A lot of new technologies nowadays are solving problems that we didn't know we had, and a lot of it is due to hype with young engineers catching the wave simply because it's got a classy and fashionable looking landing page, when really the favorable solution is the tried and true tech.
But hey, sometimes the wave does build, and sometimes, we do have to get on board or get left behind.
- BackBlast 5y agoI pick REST over GQL and such also. GQL has some distinct disadvantages that people seem to gloss over. Front end architecture seldom is oriented around making efficient queries. My last slot that used it as glorified REST and didn't shrink the number of queries to the backend. It does make more sense if you have a variety of consumers of the data, but meh, after my experience I still wouldn't use GQL. Higher complexity in the backend. Our GQL backend was schema stitched together microservices. Highly complex, random services would bring the whole thing down, and it was not understood why. The schema stitching happened on every request and seemed very "heavy and slow" to me. Not all of that was the fault of GQL, but, it definitely provided more room to mess things up. Caching nightmare. Heavier client library. And on and on. Grass is not greener IMHO.