Upgrading from Postgres 9.3 on OSX

One day I upgraded XCode, and I'm not sure how, but my Postgres version upgraded. This is how I discovered it: user@~/ $ pstart server starting user@~/ $ psql psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket…

Setting up GSuite GMail Custom Domains With AWS Route53

Do you want to send emails from your custom domain hosted on AWS? There's a few pitfalls that aren't well documented. The free, official "Check MX" tool will help you debug these issues, and you should use it, but it doesn't have Route53 specific instructions. 1. Log in to AWS…

How to Autocomplete ES Modules With Webpack in VSCode

Visual Studio Code is my preferred editor these days (supplemented with Vim, of course). VSCode is an IDE with decent Javascript autocompletion and intellisense. However, it's unable to resolve Webpack custom module paths out of the box. Before After Hovering over a symbol while holding down ⌘ now shows the correct…

Beware The Charismatic Founder

TL;DR A charismatic founder doesn't guarantee company success. I acknowledge my privileged position of being able to scrutinize companies before joining them. Not everyone has that luxury. So You're About To Join (or Fund!) A Startup You're early in your programming career. You're young, excited, and looking for The…

React, ES6, Autobinding, and createClass()

TL;DR React removed "autobinding" in ES6 component classes. The code onClick={ this.onClickHandler } could fail inside onClickHandler because it's not bound to anything. Let's see why. ES6 Classes? React has a utility method to create components called React.createClass(). It handles mixins and "autobinds" methods. The newest Javascript language…

You're Missing The Point Of JSX

TL;DR React was open sourced in 2013. Three years later, my blog posts still receive many false arguments about JSX. Let's get on the same page. "JSX Violates Separation Of Concerns" React is only the view layer. React is only the view layer. We're only in one concern. React…