Announcing The GraphQL Guide

Loren Sands-Ramshaw
The GraphQL Guide
Published in
5 min readMar 14, 2017

Précis:

  1. I am writing a book about GraphQL.
  2. It’s gonna be good.
  3. Sign up for early access: https://graphql.guide

Background

I’ve always had a great respect for textbooks. My first Computer Science course in college was taught by Tom Cormen, the C in CLRS, which might be the most widely used algorithms textbook. And I thought to myself, “I want to be an author like him when I grow up!” 😃

The “CLRS” textbook
“The Wizard Book”

My next course followed another famous text — Structure and Interpretation of Computer Programs, aka “The Wizard Book”, the bible of Lisp/Scheme — and I dreamed of MIT, where it was written, and Paul Graham hacking his Lisp startup.

After I got out of school, when I wanted to learn more practical things, I turned to professional programming books and found Matz’s book on Ruby and DHH’s book on Rails. When I discovered AJAX and wanted to do some modern client-side coding, I picked up Flanagan’s JavaScript: The Definitive Guide (he was also a co-author on the Ruby book!), Crockford’s JavaScript: The Good Parts, and MacCaw’s JavaScript Web Applications. When I was unsatisfied with Backbone and wanted real-time data and code sharing between the client and server, I bought Sacha and Tom’s excellent Discover Meteor online book. With all of these, I gained a much more comprehensive understanding of the material than I would have by just reading the docs or tutorials.

So when I found GraphQL and decided to thoroughly learn it, I ordered the only book on Amazon on the topic! But I didn’t like the writing style, it was missing a lot of the topics I wanted to learn more about, and the GraphQL library it uses (Relay) is no longer the most popular solution — Apollo is. After talking with Sacha and Tom about their experience, I decided to write a book about it myself.

The book

I’m publishing both a print book and an online version. The former will be for those like me who get the most popular book on Amazon when they want to learn something, or for those who love old-fashioned paper, or those who just want an impressive bookshelf at work 😉. The latter will be a web app with the same content, but kept up to date, and with exercises.

Why me

I am a freelance dev who loves teaching and writing. I was a TA for nine CS courses at Dartmouth and have mentored many interns and bootcamp grads. I’ve written a thesis, a #1 Hacker News essay, and GraphQL tutorials; I was a tech reviewer for 11 programming books, and I am a maintainer of the Meteor Guide, Docs, and Apollo integration. As a freelancer, I’ve worked on gigs that used most of the technologies in the book. (I haven’t been hired to do a Swift or Angular project yet!) Freelancing also means that I have the freedom to cut back on paid work and spend the majority of my time writing!

Market

There’s a lot of educational material being written about GraphQL, and I’m doing my best to make this book the most complete reference and the most approachable tutorial with practical examples. I’ll introduce things from the very basics for junior devs, but I’ll have ample advanced content as well. I’ll have some great reviewers learning GraphQL from my drafts and helping to make the text as easy to understand as possible.

Just as REST has replaced SOAP, I believe GraphQL will replace REST, and the REST market is huge. Everyone uses REST now — websites, mobile apps, IoT, servers talking to other servers, etc — but I think GraphQL should be what is used for most data fetching and RPC situations between two computers.

Discover Meteor was the ubiquitous recommendation for learning the Meteor JavaScript framework and might be the most successful self-published programming book. While the Meteor community is large (#1 full-stack web framework on Github with 36K stars), the set of everyone who uses REST is quite a bit larger. That’s great to be in a larger market, but it’s going to be much harder to become the go-to reference, due not only to the size but also to the fragmentation — Meteor is a single company making a complete solution for JavaScript app developers, whereas GraphQL is a single technology in the stack, used by different languages and platforms.

Logo

Should a book have a logo? These days they seem to just have animals 😉. I like logos, and I figured even if I don’t get to put it on the cover of the print book, it would still be nice to have for the Guide website, Twitter, Medium, emails, and T-shirts 😊. I gave my favorite designer the direction, “a simple book with the graph dots all the other logos in the space have,” and he came up with this beauty:

GraphQL Guide logo

I think it fits very nicely with the other logos:

Name

My first idea was “GraphQL: The REST Replacement” because I like alliteration and want the title to tell you what GraphQL is (and saying that it serves the same purpose as REST is really the only succinct way of doing so). But “replacement” sounds negative, so “GraphQL: The New REST,” was the working title for a while, until I thought of “The GraphQL Guide” with the subtitle, “It’s the New REST.” While I run the slight risk of someone dismissing the book without reading the subtitle and realizing what GraphQL is, “The GraphQL Guide” sounds more like the practical reference that I’m going for, and “It’s the new REST” is more authoritative while also being fun and conversational. Some other ideas were:

  • GraphQL for the Full-Stack Dev
  • GraphQL Explained
  • GraphQL: Never REST Again

Up next

I’m talking through my proposal with publishers and writing the first couple chapters. If you have any suggestions for me—on book content, getting the word out to the GraphQL community, title, logo, website, etc. — please leave a comment below. I’m all ears! 👂😄👂

--

--