Wishlist for presenters to address the following

- GraphQL performance issues

- GraphQL makes tasks more complex

- GraphQL schemas confuse junior devs, higher entry level

- REST cache easier

- REST if you understand what you are doing ... can do the same

- REST is better for error handling and tooling

Notice nobody actually tackling the “performance issues” part of this, because that is the real problem most experience. A standard implementation gives you n+1 in many scenarios (assuming you don’t have GraphQL on top of a single SQL database or something along those lines).

So how do you fix that? Well you’ve got to do query introspection to resolve certain queries in a more optimized way. Which tends to be more complicated than just…doing exactly what you want to do via a REST endpoint.

Now I’m not saying this isn’t worth it. In many cases it probably is assuming the people implementing your GraphQL server are competent engineers that will be able to optimize where it matters and make it scale. IMO it’s just worth recognizing that it does take more skill to implement a GraphQL server well.

A dataloader implementation is your first step.

https://github.com/graphql/dataloader