Краткая информация:

  1. Я пишу книгу о GraphQL.
  2. Все будет хорошо.
  3. Зарегистрируйтесь для раннего доступа: https://graphql.guide

Фон

Я всегда очень уважал учебники. Мой первый курс информатики в колледже читал Том Кормен, C в CLRS, который, возможно, является наиболее широко используемым учебником по алгоритмам. И я подумал про себя: Я хочу быть таким же писателем, как он, когда вырасту! 😃

Мой следующий курс последовал за другим известным текстом - Структура и интерпретация компьютерных программ, он же Книга волшебников, библия Лиспа / Схемы - и я мечтал о Массачусетском технологическом институте, где он был написан, и о Поле Грэме, взломавшем свой Лисп. запускать.

Когда я закончил школу, когда я захотел узнать больше о практических вещах, я обратился к профессиональным книгам по программированию и нашел книгу по Ruby Matz и книгу по Rails DHH. Когда я открыл для себя AJAX и захотел заняться современным кодированием на стороне клиента, я взял в руки JavaScript: The Definitive Guide Фланагана (он также был соавтором книги по Ruby!), Crockford JavaScript: хорошие части и Веб-приложения на JavaScript от MacCaw. Когда я был недоволен Backbone и мне потребовались данные в реальном времени и совместное использование кода между клиентом и сервером, я купил отличную онлайн-книгу Discover Meteor Sacha и Tom. Со всем этим я получил гораздо более полное представление о материале, чем если бы просто читал документы или учебные пособия.

Поэтому, когда я нашел GraphQL и решил его полностью изучить, я заказал на Amazon единственную книгу по этой теме! Но мне не понравился стиль письма, в нем не хватало многих тем, о которых я хотел узнать больше, а библиотека GraphQL, которую он использует (Relay), больше не является самым популярным решением - Apollo. Поговорив с Сашей и Томом об их опыте, я решил сам написать об этом книгу.

Книга

Я издаю как печатную книгу, так и онлайн-версию. Первый будет для тех, кто вроде меня получает самую популярную книгу на Amazon, когда хочет чему-то научиться, или для тех, кто любит старомодную бумагу, или для тех, кто просто хочет впечатляющую книжную полку на работе 😉. Последнее будет веб-приложением с тем же содержанием, но постоянно обновленным и с упражнениями.

Почему я

Я внештатный разработчик, который любит преподавать и писать. Я был TA на девяти курсах CS в Дартмуте и был наставником многих стажеров и выпускников учебных курсов. Я написал диссертацию, эссе №1 в Hacker News и учебные пособия по GraphQL; Я был техническим обозревателем 11 книг по программированию, и я сопровождаю Meteor Guide, Docs и Apollo integration. Как фрилансер, я работал на концертах, на которых использовалось большинство технологий, описанных в книге. (Меня еще не наняли для реализации проекта на Swift или Angular!) Фриланс также означает, что у меня есть свобода сократить оплачиваемую работу и тратить большую часть своего времени на написание!

Рынок

О GraphQL написано много учебных материалов, и я стараюсь сделать эту книгу наиболее полным справочником и наиболее доступным руководством с практическими примерами. Я расскажу о самых основах для младших разработчиков, но у меня также будет достаточно расширенного контента. У меня будут отличные рецензенты, которые изучат GraphQL по моим черновикам и помогут сделать текст максимально простым для понимания.

Так же, как REST заменил SOAP, я считаю, что GraphQL заменит REST, а рынок REST огромен. Сейчас все используют REST - веб-сайты, мобильные приложения, IoT, серверы, взаимодействующие с другими серверами и т. Д. - но я думаю, что GraphQL должен быть тем, что используется для большинства ситуаций выборки данных и RPC между двумя компьютерами.

Discover Meteor была повсеместной рекомендацией для изучения JavaScript-фреймворка Meteor и могла бы стать самой успешной самоиздаваемой книгой по программированию. В то время как сообщество Meteor велико (полнофункциональный веб-фреймворк №1 на Github с 36 тыс. Звезд), набор всех, кто использует REST, немного больше. Здорово быть на более крупном рынке, но стать эталоном будет намного сложнее не только из-за размера, но и из-за фрагментации - Meteor - это единственная компания, создающая комплексное решение для разработчиков приложений JavaScript, тогда как GraphQL - это единственная технология в стеке, используемая на разных языках и платформах.

Логотип

Должен ли быть логотип у книги? В наши дни у них, кажется, есть просто животные 😉. Мне нравятся логотипы, и я подумал, что даже если мне не удастся разместить их на обложке печатной книги, было бы неплохо иметь их для веб-сайта Руководства, Twitter, Medium, электронной почты и футболок 😊. Я дал своему любимому дизайнеру направление простую книгу с графическими точками, которые есть у всех остальных логотипов в пространстве, и он придумал такую ​​красоту:

Думаю, он очень хорошо сочетается с другими логотипами:

Имя

Моей первой идеей было «GraphQL: замена REST», потому что мне нравится аллитерация и я хочу, чтобы заголовок рассказывал вам, что такое GraphQL (и сказать, что он служит той же цели, что и REST, на самом деле единственный лаконичный способ сделать это). Но «замена» звучит негативно, поэтому «GraphQL: новый REST» какое-то время было рабочим названием, пока я не подумал о «Руководстве по GraphQL» с подзаголовком «Это новый REST». Хотя я рискую, что кто-то отклонит книгу, не прочитав подзаголовок и не поняв, что такое GraphQL, «Руководство по GraphQL» больше похоже на практическое руководство, к которому я стремлюсь, а «Это новый REST» более авторитетен, в то время как также быть веселым и разговорчивым. Некоторые другие идеи были:

  • GraphQL для разработчиков полного стека
  • Объяснение GraphQL
  • GraphQL: больше никогда не отдыхайте

Следующий

Я обсуждаю свое предложение с издателями и пишу пару первых глав. Если у вас есть какие-либо предложения для меня - по содержанию книги, информированию сообщества GraphQL, названию, логотипу, веб-сайту и т. Д. - оставьте комментарий ниже. Я весь во внимании! 👂😄👂