Skip to content

Instantly share code, notes, and snippets.

View taptapdan's full-sized avatar

Daniel Fiore taptapdan

View GitHub Profile
@chantastic
chantastic / on-jsx.markdown
Last active May 22, 2026 08:30
JSX, a year in

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

// Node script to download the Code Combat systems source
var http = require('http');
var fs = require('fs');
var componentDir = __dirname+'/systems';
// Make sure the components directory exists
try {
fs.mkdirSync(componentDir);
} catch(e) {
@sstrudeau
sstrudeau / gist:f563dc72739e9e047de5
Last active March 7, 2016 18:52
AT Media product team overview, stack & tools

At AT Media we publish ApartmentTherapy.com and TheKitchn.com. This is our current engineering stack & toolchain as of 10/21/2015.

WE ARE HIRING.

Who We Are

Our engineering & design teams currently consist of 9 (incredibly talented, friendly & collaborative) engineers (3 senior, 3 junior), web designer, product manager and CTO/short stop. We're currently hiring a second product manager and designer.

Our team (and much of the company) works remotely. Slack has quickly become our critical communication channel. We make heavy use of Slack integrations including our own bot to manage code deployment & staging environments.

// Node script to download the Code Combat component source
var https = require('https');
var fs = require('fs');
var componentDir = __dirname+'/components';
// Make sure the components directory exists
try {
fs.mkdirSync(componentDir);
} catch(e) {
@vitorbritto
vitorbritto / rm_mysql.md
Last active July 17, 2026 19:39
Remove MySQL completely from Mac OSX

Remove MySQL completely

  1. Open the Terminal

  2. Use mysqldump to backup your databases

  3. Check for MySQL processes with: ps -ax | grep mysql

  4. Stop and kill any MySQL processes

  5. Analyze MySQL on HomeBrew:

    brew remove mysql
    
@domenic
domenic / 0-github-actions.md
Last active June 21, 2026 22:49
Auto-deploying built products to gh-pages with Travis

Auto-deploying built products to gh-pages with GitHub Actions

This is a set up for projects which want to check in only their source files, but have their gh-pages branch automatically updated with some compiled output every time they push.

A file below this one contains the steps for doing this with Travis CI. However, these days I recommend GitHub Actions, for the following reasons:

  • It is much easier and requires less steps, because you are already authenticated with GitHub, so you don't need to share secret keys across services like you do when coordinate Travis CI and GitHub.
  • It is free, with no quotas.
  • Anecdotally, builds are much faster with GitHub Actions than with Travis CI, especially in terms of time spent waiting for a builder.
@mikepea
mikepea / pr_etiquette.md
Last active June 26, 2026 02:34
Pull Request Etiquette

Pull Request Etiquette

Why do we use a Pull Request workflow?

PRs are a great way of sharing information, and can help us be aware of the changes that are occuring in our codebase. They are also an excellent way of getting peer review on the work that we do, without the cost of working in direct pairs.

Ultimately though, the primary reason we use PRs is to encourage quality in the commits that are made to our code repositories

Done well, the commits (and their attached messages) contained within tell a story to people examining the code at a later date. If we are not careful to ensure the quality of these commits, we silently lose this ability.

@bjorgvino
bjorgvino / yosemite ntfs read+write.txt
Last active September 22, 2025 15:45
osxfuse + ntfs-3g + Yosemite = NTFS R/W
Remove osxfuse if installed via homebrew:
> brew uninstall osxfuse
Install osxfuse binary and choose to install the MacFUSE compatibility layer:
http://sourceforge.net/projects/osxfuse/files/latest/download?source=files
Reboot (optional but recommended by osxfuse)
Install ntfs-3g via homebrew:
> brew update && brew install ntfs-3g
@andrashee
andrashee / .csslintrc
Last active August 29, 2015 14:02
Meteor JSHint / CSSLint Configuration
--exclude-list=.meteor/,packages/
@ajfisher
ajfisher / a_nodebot_over_wifi.md
Last active April 21, 2022 23:57
WiFi your nodebot

Taking your nodebot wifi

Controlling your nodebot using a USB cable is great and all, and obviously you could shell out and grab a sparkcore or some other dedicated controller but what if you've got a standard arduino and you want to take an existing nodebot wireless?

Bluetooth is an option and there's this excellent JohnnyFive wiki entry that will help you there. Bluetooth can be a bit flaky though and it's range is pretty lousy. You can also look at things like XBees and what not using point to point serial, but these are expensive and very fiddly to get working.

Really, what we want is a method of transferring data over a nice, simple, standard method, requiring little configuration, low cost and we can utilise a whole stack of the code we've already produced.

Enter the WiFi232 module. These little beauties are [available from AliExpress for $12 each](http://www.aliexpress.com/item/USR-WIFI232-T-wifi-to-uart-tt