Seemingly long gone are times where one monolith application on server was responsible for handling all the data. Likewise, nowaday releasing just web application without mobile counterpart does not seem like a good idea from business perspective - and those several client applications, although doing roughly the same thing, may have different business requirements. Couple that with separation of concerns on the server side, and a big headache is inevitable.
During this talk, I will go through one, relatively new solution to above issues - GraphQL. Coming from Facebook, it makes working with the API a really pleasant experience for the clients, as communication with server is declarative, not imperative. It also helps keep things in check on the server's side by providing a schema language. We will cover basic concepts, see how querying looks like from client's side (and why it is so good), as well as look at example implementations for pure Python, Django and SQLAlchemy.