Might work. For some it might it might still be a bit too much at once.
For example, this line of code on the first page:
feed(type: FeedType!, offset: Int, limit: Int): [Entry]
It’s not immediately visible where the Entry
part comes from and what it means - I mean, I myself know that it’s likely a return value and returns an array of Entry
s
And on the next page, at the Entry
schema,
type Entry {
repository: Repository!
...
where does the Repository
come from and where is it defined? I mean, I can hunt it down but those are little stumbling blocks which throw you off a bit.
This CodeTour is something I’d propose as intermediate level learning. For real beginners, a step-by-step from fundamental principles and reduction to the most basic components would be appropriate. In my opinion, of course.
Also, the last bit There's more in this app that could be explained, for example how to load data from SQL
is a bit of a copout in my eyes, because while the GitHub API may be easier, it’s not something I myself am actually interested in. I myself would definitely want to know how to actually query a backend SQL db.
That part would probably benefit from branching: How to talk to REST backends like GitHub or Azure, how to talk to SQL databases, how to talk to NoSQL dbs and so on. And use that branching to show the backend agnosticism, that you could exchange MongoDB for PostgreSQL and still have the same frontend code, “only” needing to update the connector.
After all, isn’t that supposed to be the big advantage of Apollo?