Transpiling GraphQL instead of writing c...
GraphQL is an excellent query language for clients because it specifies *what* data and response shape is needed without worrying about *how* to get and reshape that data. At Twitter, we take the next step and automatically compile GraphQL queries into code at runtime that efficiently specifies *how* to retrieve the data as well! Developers are able to expose new or existing data through our GraphQL API without writing code or deploying new software. Come see how we transpile our GraphQL queries into code that retrieves and composes data distributed across many services and databases to exactly satisfy each query while generically handling batching, errors, access control, and operational concerns—without our engineers writing a single resolver. We'll discuss how we leverage information from our existing distributed data access layer to power our predictable and uniform API that lets product developers easily get the data they need. Outline: Intro: GraphQL is *What* not *how* Resolvers: Specifying *how* by hand Problems with resolvers Generating resolvers Resolving with a non-GraphQL query Leveraging existing data access systems Transpiling GraphQL Exposing new data Generating a GraphQL API and implementation A sketch of what this enabled for us