Summary
For my stretch tech learning goal during the Mod3 - Mod4 intermission period, I chose to complete a tutorial on GraphQL. I had absolutely no clue what GraphQL even was, or what it pertained to. I just googled it on a whim while working on my intermission work and decided it was actually interesting enough to jump into.
GraphQL is a basically an advanced version of CRUD endpoints that we've been using up to this point in the Turing Curriculum. It replaces the need to manage very specific endpoints manually by allowing us to organize the data in the database in such a way where the developer can very dynamically call exact pieces of info that they might be looking for. A lot of this logic is then housed in the GraphQL express API as opposed to, say: Having to fetch a list of authors, and then doing another fetch call for books that the authors have written based on the authors you returned from the initial fetch call. With GraphQL, you could set it up so that this is done in one concise call to the API for the specific set of data I'm looking for.
How does this extend my current programming foundation?
I had little expectation for what GraphQL would do for me, but I honestly found it really interesting and helpful to know that people have been working on viable successors to the old fetch API and the standard CRUD endpoints we've been taught before. It seems like an extremely efficient and clean way to parse the exact data I need for a specific situation. It will be very nice when moving out of Turing and into the job world to be able to say that I can learn everything I need for using GraphQL and writing queries to a GraphQL database.
If I was asked in an interview about GraphQL, what would I want to highlight?
I'd want to highlight the speed and cleanliness of writing queries to the API as opposed to functions that loop through successive fetch API calls. A query that is designed for a very specific set of info looks so much cleaner to the developer once you understand the syntax.