Skip to content

Instantly share code, notes, and snippets.

Avatar

James Lockwood jameslockwood

View GitHub Profile
@acdlite
acdlite / app.js
Last active Apr 19, 2020
Quick and dirty code splitting with React Router v4
View app.js
// getComponent is a function that returns a promise for a component
// It will not be called until the first mount
function asyncComponent(getComponent) {
return class AsyncComponent extends React.Component {
static Component = null;
state = { Component: AsyncComponent.Component };
componentWillMount() {
if (!this.state.Component) {
getComponent().then(Component => {
@OrcaXS
OrcaXS / ddns-start.sh
Created Jul 27, 2016
Google Dynamic DNS update script for Tomato firmware
View ddns-start.sh
#!/bin/sh
set -u
#set -x
U=username
P=password
H=hostname
IP="$(ip -o addr show ppp0 | awk '/inet / {print $4}')"
DIGIP="$(dig +short $H)"
View on-jsx.markdown

Hi Nicholas,

I saw you tweet about JSX yesterday. It seemed like the discussion devolved pretty quickly but I wanted to share our experience over the last year. I understand your concerns. I've made similar remarks about JSX. When we started using it Planning Center, I led the charge to write React without it. I don't imagine I'd have much to say that you haven't considered but, if it's helpful, here's a pattern that changed my opinion:

The idea that "React is the V in MVC" is disingenuous. It's a good pitch but, for many of us, it feels like in invitation to repeat our history of coupled views. In practice, React is the V and the C. Dan Abramov describes the division as Smart and Dumb Components. At our office, we call them stateless and container components (view-controllers if we're Flux). The idea is pretty simple: components can't

@trey
trey / happy_git_on_osx.md
Last active Aug 12, 2020
Creating a Happy Git Environment on OS X
View happy_git_on_osx.md

Creating a Happy Git Environment on OS X

Step 1: Install Git

brew install git bash-completion

Configure things:

git config --global user.name "Your Name"
git config --global user.email "you@example.com"
You can’t perform that action at this time.