What are some particular trends that you are seeing in web development?
In web development in particular, the most exciting trends around around handling dynamicism. Especially since the most common device connecting to the web is a phone, not a laptop, dynamic content on the web on crappy devices with crappier connections lends itself to a lot of new problems to be solved. We're not there yet.
How was GraphQL spec born? Any inside scoops, interesting facts, anecdotes etc.. ? :D
GraphQL itself was born in 2012 while rebuilding News Feed on iOS. News Feed was rapidly growing more complicated, and we didn't have the right foundational technology to help it grow, especially as Facebook was itself growing the most in places with bad network connections.
Last year we decided to write a spec for GraphQL in large part because Relay was excited to open source and Relay without GraphQL doesn't make a lot of sense. We also realized that our GraphQL service was written in Hack, which most people outside Facebook aren't using (unless you're Wikipedia or Wordpress) and so the best way to share GraphQL would be in a language agnostic way.
After we decided to do that, we also realized that 3+ years of development at Facebook had left GraphQL with a lot of patched on additions and inconsistencies, so we also took a solid pass at simplifying it.
What are some challenges that GraphQL is having right now?
Two of the things I'm most excited about are 1) supporting more reactive or live-data servers, and 2) supporting more client-side tools like code generation or compiler integrations. We've relied on a lot of these kinds of tools at Facebook for a long time, but sharing them in their current form would be difficult.