#GraphQL
3 posts

Advice from a GraphQL Expert

GraphQL is a great query language to speed up client development. As a backend developer, you are no longer under pressure to build APIs specific to niche use-cases that client's demand.
Read more

Advice from a GraphQL Expert

GraphQL is a great query language to speed up client development. As a backend developer, you are no longer under pressure to build APIs specific to niche use-cases that client's demand. This post addresses some great advice from, Francesca Guiducci, a GraphQL expert.

  • Evaluate if GraphQL fits into your architecture. It can front a database and even a REST API.
  • Involve other people while designing the schema. The schema is your source of truth and needs to be well thought out.
  • Change your mental model to think in graphs. Most data is relational in nature, GraphQL schemas must be modeled to represent that relation.
  • Make the schema easy to evolve. Since GraphQL versioning is frowned upon, leverage keywords like @deprecated to evolve the schema. As far as possible, be forward thinking while constructing your schemas.
  • Be intentional while incorporating nullability into the schema. This leads to cleaner and simpler architectures.
  • Since pagination isn't implemented natively in GraphQL, design this carefully and incorporate it from Day 0. Reduces a lot of heartburn in the future.

Full post here, 9 mins read

Unique benefits of using GraphQL in microservices

The data structure in GraphQL allows for well-defined & delineated data ownership for each request. You can have great control over the data loading process and therefore control how data is transferred in a very granular way.
Read more

Unique benefits of using GraphQL in microservices

  • The data structure in GraphQL allows for well-defined & delineated data ownership for each request.
  • You can have great control over the data loading process and therefore control how data is transferred in a very granular way.
  • As GraphQL allows for request bundles composed of many requested resources, it can leverage a sort of parallel execution for data requests. This allows a single request to fulfill the requirements that would otherwise have been through multiple requests to multiple services over multiple servers.
  • GraphQL can budget requests, allows the server to prioritize requests and grant them where appropriate, and reduces timed out requests in the long run.
  • It saves ave processor time and effort because it utilizes Object Identifiers to cache often-requested data.

Full post here, 8 mins read

Why developers like GraphQL?

Multiple teams can work independently and in parallel, giving developers a pleasant experience without stalling their development work. There is no versioning of APIs.
Read more

Why developers like GraphQL?

  • Superior developer experience in comparison to alternatives.
  • Multiple teams can work independently and in parallel, giving developers a pleasant experience without stalling their development work.
  • There is no versioning of APIs. Adding new fields has no effect on the current client’s call to the APIs.- no pain of maintaining multiple versions of the API.
  • Declarative data fetching lets you ask for exactly what you need and get it.
  • GraphQL schema has several advantages including predictable code, schema acting as a contract between client and server, independent teams and early detection of errors.

Full post here, 6 mins read