Blog

Posts on software development, careers, and craft.

Commitments that radically increased my quality of life: 1

Commitments that radically increased my quality of life: 1. Work out daily. 2. No alarm. Sleep until I wake naturally. 3. Breakfast and dinner with...

There’s always somebody Richer Faster Smarter Stronger More popular Better...

There’s always somebody Richer Faster Smarter Stronger More popular Better looking More powerful Who cares. Run your own race. For your own reasons.

Two types of people: 1

Two types of people: 1. “I’ve gonna wait until I feel like it before I do it.” 2. “I’ve gotta do it so that I feel like it.” Mindset #2 is a life c...

Realization: I'm more productive on side projects because I step away when...

Realization: I'm more productive on side projects because I step away when I'm tired/bored/stuck. I come back when I have clarity and feel fresh. W...

So, think your eyes are fine

So, think your eyes are fine? So did I. Went to the eye doc for the first time ever...and now I have these. Text is now wildly crisp. I can finally...

Confession: Technology moves so fast these days that when someone recommends...

Confession: Technology moves so fast these days that when someone recommends something I haven't heard of, I typically ignore it. When the 2nd or 3...

I ❤️ Git

I ❤️ Git. But honestly, it intimidated me for years. I thought I needed to understand all its powerful features to be productive. I found that's no...

Learn one thing at a time

Learn one thing at a time. Example: People often try to learn React before learning modern JS. This leads to confusion, slows progress, and makes i...

Recruiter: "We hire the best people in the world...who are willing to work...

Recruiter: "We hire the best people in the world...who are willing to work on-site in San Francisco."

Jest 23.5 now supports .each statements: lay out multiple scenarios in a...

Jest 23.5 now supports .each statements: lay out multiple scenarios in a tabular format! Much more concise and readable than copy/pasting tests for...

My @ThatConference keynote is now up on YouTube: "The 7 Pillar Developer: A...

My @ThatConference keynote is now up on YouTube: "The 7 Pillar Developer: A Holistic Approach to Building an Exceptional Career". This one wasn't e...

I'm late to the party, but I just learned CSS grid in about 30 minutes via...

I'm late to the party, but I just learned CSS grid in about 30 minutes via this slick, simple game: Grid Garden REPL's like this are highly effecti...

Workflow tip: Topical browser windows

Workflow tip: Topical browser windows. (Open a new browser window for each new topic). 1. This aids focus - no unrelated tabs 2. It's easier to swi...

When I started coding my apps slowly became a house of cards

When I started coding my apps slowly became a house of cards. I couldn’t fully understand my own code. Too much complexity had to be loaded in my h...

React tip: Extract your lifecycle method logic to well named methods

React tip: Extract your lifecycle method logic to well named methods. Why? Because the lifecycle method's name only tells you when it runs. Good me...

Speaking healed my poor self-image by changing how I assumed other people saw me

Speaking healed my poor self-image by changing how I assumed other people saw me. By "leading" for an hour, speaking helped convince me that people...

Coding angry: Mostly fruitless

Coding angry: Mostly fruitless. Exercising angry: Highly fruitful. Frustrated? Walk away from the keyboard. Burn your frustration down while waitin...

TIL: You can easily grab all HTML form data like this: var data = new...

TIL: You can easily grab all HTML form data like this: var data = new FormData(document.querySelector('form')); This gives you key/value pairs that...

Just tried hosting GraphQL on Amazon's AppSync

Just tried hosting GraphQL on Amazon's AppSync. Impressed how simple they've made it to host a GraphQL server. 👍 They have starter apps for many p...

Sure, the definition of success is personal

Sure, the definition of success is personal. But the definition of failure is clear: Complaining about things you can control instead of acting. Ex...

Never rely on your co-workers or QA staff to find bugs in your code

Never rely on your co-workers or QA staff to find bugs in your code. Write and test your code as though it's going to production without another se...

Confession: I speak at conferences because I benefit immensely: 1

Confession: I speak at conferences because I benefit immensely: 1. It forces me to learn 2. It improves my confidence 3. I make new friends 4. I ge...

Coding gets less stressful over time

Coding gets less stressful over time. When I started coding and got an error: - I worried I was a bad coder. - I worried I would never find the ans...

Woah, just learned that in Node, values in package.json are automatically...

Woah, just learned that in Node, values in package.json are automatically accessible like this: process.env.npm_package_keyYouWantHere For example,...

Solid speaker tip: Be clear about the transformation you'd like to make in...

Solid speaker tip: Be clear about the transformation you'd like to make in your audience. I take this a step further. I announce the desired transf...

Specialize

Specialize. If you can’t quickly say what your specialty is, no one else can either. "A woodpecker can tap twenty times on a thousand trees and get...

Thanks for attending “Goodbye REST, Hello GraphQL”

Thanks for attending “Goodbye REST, Hello GraphQL”! Appreciated all the great questions! All (250!) slides and demos: https://github.com/coryhouse/...

On desktop, a user waits around 9 seconds before giving up

On desktop, a user waits around 9 seconds before giving up. On mobile, a user waits only around 3 seconds before giving up. So mobile performance i...

Hey React devs, here's a repo that shows the same React app written with 4...

Hey React devs, here's a repo that shows the same React app written with 4 different approaches: 1. Plain React 2. React with Redux and thunks 3. R...

With cross-cutting concerns, I like to begin with copy/paste

With cross-cutting concerns, I like to begin with copy/paste. I accept the duplication at first. Once I've copy pasted a few times and exercised th...