Skip to content

Instantly share code, notes, and snippets.

View joelhooks's full-sized avatar
🍄

Joel Hooks joelhooks

🍄
View GitHub Profile
@joelhooks
joelhooks / drip_to_convertkit.js
Created January 10, 2019 23:58
This is a little node app that creates individual csv files for each tag in an exported Drip subscriber (people!) csv
const _ = require('lodash')
const fs = require('fs')
const csv = require('csv-parser')
const writer = require('fast-csv')
const csvFilePath = 'PATH_TO.csv'
const filesToBuild = {}
fs.createReadStream(csvFilePath)
@joelhooks
joelhooks / machine.js
Last active April 22, 2020 01:11
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@joelhooks
joelhooks / machine.js
Last active April 24, 2020 08:26
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@joelhooks
joelhooks / machine.js
Last active May 28, 2020 00:39
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@joelhooks
joelhooks / machine.js
Last active September 8, 2020 19:45
Generated by XState Viz: https://xstate.js.org/viz
const playerMachine = Machine({
id: 'player',
initial: 'loading',
context: {
retries: 0
},
states: {
loading: {
on: {
@joelhooks
joelhooks / progress.sql
Created October 10, 2020 19:18
access the individual user's progress through a list of lists via polymorphic join table
select lesson from (
with
-- root collection is a collection of collections (playlist of playlists) which use a polymorphic join table (tracklists) so we want to snag the ids of the sub-collection.
root_collection_ids as ( select tracklists.tracklistable_id id from playlists inner join tracklists on playlists.id = tracklists.playlist_id where playlists.slug = 'some-playlist-id' and tracklists.tracklistable_type = 'Playlist'),
-- the next layer are video resources (lessons) that are the tracklists of the tracklists
lesson_ids as (select tracklists.tracklistable_id lesson_id from root_collection_ids inner join tracklists on root_collection_ids.id = tracklists.playlist_id where tracklists.tracklistable_type = 'Lesson' )
-- we only care about completions so we can get the slug id for all of the video resources (lessons) the user has completed and sort display on the client accordingly
@joelhooks
joelhooks / egghead_CLA
Last active November 14, 2020 18:55 — forked from CLAassistant/SAP_CLA
egghead.io Individual Contributor License Agreement
### egghead.io Individual Contributor License Agreement
Thank you for your interest in contributing to open source software projects (“Projects”) made available by egghead.io, LLC or its affiliates (“egghead.io”). This Individual Contributor License Agreement (“Agreement”) sets out the terms governing any source code, object code, bug fixes, configuration changes, tools, specifications, documentation, data, materials, feedback, information or other works of authorship that you submit or have submitted, in any form and in any manner, to egghead.io in respect of any of the Projects (collectively “Contributions”). If you have any questions respecting this Agreement, please contact [email protected].
You agree that the following terms apply to all of your past, present and future Contributions. Except for the licenses granted in this Agreement, you retain all of your right, title and interest in and to your Contributions.
**Copyright License.** You hereby grant, and agree to grant, to egghead.io a non-exclu
@joelhooks
joelhooks / .gitconfig
Last active November 29, 2021 01:45
dotfiles
[user]
email = [email protected]
name = Joel Hooks
[core]
excludesfile = /Users/joel/.gitignore
editor = code
[init]
defaultBranch = main
[pull]
rebase = false

Basic zhs Developer Shell Setup for a New M1 Mac

These are notes about my personal setup for a new macOS computer. Some of the instructions might be incorrect for your environment

Getting Started

You'll need several things installed on your machine to proceed with configuring zsh beyond the defaults.

  • Xcode Command Line Tools: just run xcode-select --install. This is an SDK and tool for development in the command line environment. Lots of things depend on it and it's essential.
  • homebrew: https://brew.sh/ is the community standard package manager for macOS and des a lot of work installing and managing libraries and tools within your shell environment.
The Seven Tenets of the UbD Framework
1. Learning is enhanced when teachers think purposefully about curricular planning. The UbD framework helps this process without offering a rigid process or prescriptive recipe.
2. The UbD framework helps to **focus curriculum and teaching on the development and deepening of student understanding and transfer of learning** (i.e., the ability to effectively use content knowledge and skill).
3. Understanding is revealed when students autonomously make sense of and transfer their learning through authentic performance. Six facets of understanding—the capacity to explain, interpret, apply, shift perspective, empathize, and self-assess—can serve as indicators of understanding.
4. Effective curriculum is planned backward from long-term, desired results through a three-stage design process** (Desired Results, Evidence, and Learning Plan). This process helps avoid the common problems of treating the textbook as the curriculum rather than a resource, and activity-oriented teachin