OData was nice on paper and very impractical in reality. I strongly fear that this is just Facebook reinventing it, making the same mistakes, but taking thousands of developers along with them because it's by Facebook and not Microsoft.
The big issue with OData is that it is highly flexible, and as such rather difficult to make cover all cases and keep it performant.
But maybe the real problem was simply that no good OData servers existed, barring the one from MS that tied directly with their ORM and thus your data model.
I really suspect that the flexibility that GraphQL gives immediately translates to complexity on the server side.
It feels like this is ORMs all over, just now between the frontend and the backend instead of the backend and the database. Give it a couple of years and we'll see the REST-version of the "just use plain SQL!" blog posts: "just hand-craft highly specific REST endpoints for exactly what your frontend needs!"
The big issue with OData is that it is highly flexible, and as such rather difficult to make cover all cases and keep it performant.
But maybe the real problem was simply that no good OData servers existed, barring the one from MS that tied directly with their ORM and thus your data model.
I really suspect that the flexibility that GraphQL gives immediately translates to complexity on the server side.
It feels like this is ORMs all over, just now between the frontend and the backend instead of the backend and the database. Give it a couple of years and we'll see the REST-version of the "just use plain SQL!" blog posts: "just hand-craft highly specific REST endpoints for exactly what your frontend needs!"