28
Coding Effort Introspection, 2nd Quarter Workshops, Code Sessions, & Twitch Streaming Schedule
I began learning Vue.js with sincerity a few months ago. But I also started several other #100DaysOfCode efforts (Database Dev Work and GraphQL Design & Dev) at the same time. This, in hindsight wasn't the best idea. Since I was going to work on some of the #100DaysOfCode tracks outside of my regular day's workload tackling multiple language stacks, even with the experience and familiarity I have with so many existing stacks it didn't put me in a position to succeed.
But I digress, even in failure lessons have been learned and I'll be beginning new with a different plan just next week. Hopefully, not only will this plan work better, but it could tangibly be of much better use for anybody that would want to learn these things too!
With that, I present, the new plan!
Starting on the week 27th I'll start streaming on Wednesday at 5pm Pacific on Thrashing Code. On the Hasura HQ Channel I'll be streaming on Tuesday at 9am Pacific and Thursday at 9pm Pacific, scheduling on two time points to cover more of the globe. Instead of daily hour long segments, these will likely go on for a few hours and it'll be easier to join, ask questions, hang out, chat, and all the things that make a stream entertaining and euseful. The lagniappe of this schedule will allow me to more easily cut shorter segments for those that will find those useful, but can't really join for the longer session. It'll be a win win for me and the audience.
On the 14th of July, Russell Spitzer will be joining me to talk about tech stack, dev environment, and very likely a few things about ole' New Orleans! Join us for that conversation and let's dig into all the topics!
The music streams, alas, are again pushed further into the future. I've decided I'm going to put together a little bit more before I start streaming that, plus I'd like to get a little bit more into practice before shredding live on stream. For your sake and mine! đ€đ»
To join in on live sessions;
- Thrashing Code Channel on Twitch
- Thrashing Code VODs and Shorts on YouTube
- Hasura HQ Live Streams on Twitch or YouTube
- Hasura HQ VODs and Shorts on YouTube
Aside from the regularly scheduled things above, I've scheduled some workshops again as people found those useful. These workshops I've scheduled below. It is important to note that these are in addition to the workshops I will provide in the coming weeks and months through Hasura.
-
Getting Started with Hasura GraphQL API and Postgres (Click for tickets)
- Short introduction to GraphQL
- Server
- Client
- Architectural Overview of Hasura API Server and Tooling
- Instant GraphQL API
- CLI Tooling
- Building a GraphQL Schema with the Hasura Console
- Database Schema (vs GraphQL)
- Tables
- Data Types
- Relationships
- Overview of Migrations
- Using Postgres Functions
- Short identifiers
- Default columns (functions & triggers)
-
Full Migrations, Metadata, and Seeds Workflow with Hasura(Click for tickets)
- Migrations
- Setup for migrations workflow
- Versioning migrations.
- Metadata
- Setup metadata for workflow
- Versioning metadata
- Seeds
- Setup seeds for initial data loads
- Versioning seeds
- Peripheral Workflow Tools & Practices
- Docker & Local Database Environment
- Additional Tooling
- Visual Studio Code
- JetBrains DataGrip
- JetBrains Database Plugin
- Postgres pgAdmin
- SQL Server Enterprise Manager
Finally, a little help from you dear readers, below I've added a poll of several presentations and workshops that I'd like to give in the coming months and would like to get your suggestions on prioritization - i.e. which would the most of you find useful for me to focus on first?
Quick Link to Poll for Priority: https://docs.google.com/forms/d/e/1FAIpQLSdrxPEjPqDLn8GhG1pVOvrhMXP_0LEBqiJirIOUsLkQWA1_jw/viewform?usp=sf_link
-
SQL Coding (Click to vote) - An introduction to SQL coding. Covering the following material:
- Introduction to what SQL is and the history. Including, why it's pronounced sequal, not S, Q, L, and that it does not stand for "Standard Query Language" because nerds are funny about their naming of things, and naming is hard!
- The basic structure of SQL statements. How they're built from object, predicate, and verb formation.
- Putting together a database with SQL. Including creating a database, schema, table, columns, and how to alter these elements.
- How to go about editing and dropping the elements we created.
- A quick overview of database migrations.
- Query writing, joins, inner and outter, and the deluge of Cartesian products.
-
Data Modeling with Relational Databases (Click to vote) - A dive into the 3rd normal form, and the normalization and denormalization of data, including nuanced tips n' tricks to types and modeling.
- Basic data modeling, normal forms, and the implications of building schema around normalized forms.
- Denormalizing schema.
- Data types and their usage around data modeling.
- Data types and their implications within data modeling.
- Common tips n' tricks for using data types to build effective normalized or denormalized schema.
-
Advanced SQL Coding(Click to vote) - Going beyond the introduction material and delving into the depths of query writing, batch processing, transactions, and other advanced features of SQL.
- Writing a basic query and growing this complexity to advanced joins, views, and query options to make data available.
- Getting Cartesian products and ensuring we don't.
- Denormalizing data with SQL and some of the complexities of doing so once you have data, and especially with lots of data.
- Writing loops in SQL and why not to do this.
- Other SQL tips n' tricks to awesome SQL coding!
-
GraphQL Servers (Click to vote) - Need a custom GraphQL server? Not sure where to start? In this workshop I'll provide an introduction to writing GraphQL Servers. Somewhat a language agnostic workshop, but I will pick one to implement a server in for reference in the workshop. Ideally we'll pick one before the workshop and I'll use it based on what the students in the workshop would prefer.
- Introduction to GraphQL Servers and what they do and how they work.
- Elements of a GraphQL Server
- Schema
- Data Set
- Resolvers
- Query Operations
- GraphQL Types
- Aliases and Fragments
- Variables
- Query Nested Objects
- Directives
-
GraphQL Clients (Click to vote) - This workshop assumes you've got your GraphQL Server all setup and ready for use. Now we just need to ensure our clients are getting, and using the data from the server effectively.
- Client options for the various languages stacks; JavaScript, C#, Java, Go, and possibly other languages.
- Implementation of queries and mutations in;
- JavaScript via client and Node.js Server calls (server acting as client).
- C# and/or Java calls as clients.
- Go calls as systems client.
- How to deal with JSON results with JavaScript, C#, Java, and Go.
- JavaScript with JavaScript Object Notation.
- C#/Java options for managing JSON.
- Go options for managing JSON.
28