IRC: The Secret Weapon of Developers

TL;DR When I was a junior developer, I wish I knew about Internet Relay Chat. Use IRC to get fast answers to tricky problems. If you haven't used it before, please read the etiquette guide below. IRC? IRC stands for Internet Relay Chat. It's a protocol, like HTTP. IRC…

How to Create Custom iTerm2 Window Arrangments

TL;DR Create a custom keyboard shorcut to automatically spawn a set of windows and splits with processes running. iTerm2 is very useful software, but this process is complicated. I've attempted to document known pitfalls. How to Create a Custom Window Arrangement Close all iTerm2 windows. We'll be using the…

You Wouldn't Understand

TL;DR Err on the side of believing someone who has experienced something you haven't, even if you initially disagree with it. Knowing vs. Understanding The "Smarter Every Day" YouTube Channel released a remarkable video, The Backwards Bicycle. It features a bicycle with a gear that reverses the action of…

The ReactJS Controller View Pattern

TL;DR Making a top level component that holds all state and passes it to children as props is really nice. Not to be confused with MVC, a "view controller" or "controller view" is a top level component that holds all state and passes it to children as props. For…

How to use ES6 in NodeJS

TL;DR require('babel-register'); at app entry point. The Backstory While converting an app from Rails to Node, I searched for how to use ES6 in NodeJS. Some responses recommend using node --harmony, others recommend starting your script with babel-node, or precompiling your app. We'll look at all of those…

How to Copy Only Changed Files With Gulp

Recently I had to keep two folders in sync with gulp. I needed to copy all files from one folder to another, and keep them up to date when changes were made. The easy way is just to copy the entire folder every time. gulp.task('watch-folder', function() { gulp.watch(…