{
    "componentChunkName": "component---src-pages-index-js",
    "path": "/",
    "result": {"data":{"site":{"siteMetadata":{"title":"your friend Joel's digital garden","description":"Articles and notes from a collaborator at egghead.io. Musings on software, business, and life from a skilled virtual assistant.","author":{"name":"Joel Hooks"},"keywords":["Video Blogger"],"canonicalUrl":"https://joelhooks.com","image":"https://joelhooks.com/images/ogImage.png","organization":{"name":"egghead.io LLC","url":"https://joelhooks.com","logo":"https://joelhooks.com/images/ogImage.png"},"social":{"twitter":"@jhooks","fbAppID":""}}},"file":{"childMdx":{"body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"p\", null, \"Hi there \\uD83D\\uDC4B\"), mdx(\"p\", null, \"My name is Joel Hooks. I'm a skilled virtual assistant, software developer, and a collaborator at \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://egghead.io/s/dtccr\"\n  }, \"egghead.io\"), \".\"), mdx(\"p\", null, \"This is my personal site where I drop notes and articles about things that I am interested in. Generally speaking this journal will capture thoughts I have about building bootstrapped business, raising kids, learning, teaching, and my endless obsession with media and gear.\"), mdx(\"p\", null, \"The entries on this page aren't all complete thoughts. It's a space for me to post what I like and I try not to hoard drafts like some sort of digital Smaug. Instead I choose to just let things fly and circle back to them later if I feel like it.\"), mdx(\"p\", null, \"If you'd like to get in touch with me \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"mailto:joelhooks@gmail.com\"\n  }, \"email\"), \" and \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://twitter.com/jhooks\"\n  }, \"twitter\"), \" are your best channels.\"), mdx(\"p\", null, \"Also on \", mdx(\"a\", {\n    rel: \"me\",\n    href: \"https://hachyderm.io/@joelhooks\"\n  }, \"Mastodon\"), \".\"), mdx(\"p\", null, \"If you like something you read here, please feel free to share it and let me know. It's always nice to get feedback.\"), mdx(\"h3\", null, \"Some Personal Favorites\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/digital-garden\"\n  }, \"\\uD83C\\uDF31 My blog is a digital garden, not a blog\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/dSLR-webcam-for-live-streaming\"\n  }, \"\\uD83D\\uDCF8 Using a dSLR as a Webcam for Live Streaming\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/hip-hop\"\n  }, \"\\uD83C\\uDFA7 A Child's Totally Inappropriate Introduction to Hip-Hop\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/using-egghead\"\n  }, \"\\u2B50\\uFE0F how to use egghead.io to level up as a web developer\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/knowledge-adventure-club\"\n  }, \"\\u2694\\uFE0F Knowledge Adventure Club\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/pdf-expert\"\n  }, \"Using PDF Expert to Highlight and Summarize Non-Fiction Books on the iPad Pro and Mac\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/blog/2016/04/08/setting-goals-for-my-version-of-success\"\n  }, \"Setting goals for (my version of) success.\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/blog/2018/02/15/how-we-work-at-egghead-dot-io\"\n  }, \"How we work at egghead.io\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/blog/2017/10/26/why-we-hire-consultants-to-help-build-egghead-dot-io\"\n  }, \"Why we hire consultants to help build egghead.io\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/blog/2014/12/24/bootstrapping-egghead-dot-io-to-feed-my-family-2014-in-review\"\n  }, \"Bootstrapping egghead.io to feed my family: 2014 in Review\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/blog/2013/06/06/my-sketchnotes-and-thoughts-from-baconbizconf-2013\"\n  }, \"My Sketchnotes and Thoughts from BaconBizConf 2013\"))), mdx(\"h3\", null, \"Book Summaries\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\u2B50\\uFE0F \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/badass-making-users-awesome-by-kathy-sierra\"\n  }, \"Badass: Making Users Awesome by Kathy Sierra\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/the-checklist-manifesto\"\n  }, \"The Checklist Manifesto - Atul Gawande\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/review-of-thinking-in-systems-a-primer\"\n  }, \"Thinking in Systems: A Primer\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/blog/2012/08/28/practical-object-oriented-design-in-ruby-is-a-really-good-book\"\n  }, \"Practical Object Oriented Design - Sandi Metz\"))), mdx(\"h3\", null, \"Email Marketing\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/self-paced-email-course-convertkit\"\n  }, \"Self-Paced Email Course and Evergreen Product Pitch using Convertkit Automations\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"\\uD83E\\uDDE0 \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/how-i-think-about-sending-a-lot-of-email\"\n  }, \"How I think about sending a lot of email.\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/shadow-newsletter-for-evergreen-emails-in-convertkit\"\n  }, \"\\uD83C\\uDF32 Shadow Newsletter for Evergreen Emails in ConvertKit\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"/export-drip-tags-for-convertkit\"\n  }, \"Exporting Drip Tags for Import into Convertkit\"))));\n}\n;\nMDXContent.isMDXComponent = true;"}}},"pageContext":{}},
    "staticQueryHashes": []}