gems:
- gem 'capybara', '2.10.1'
- gem 'selenium-webdriver', '3.0.3'
Download the following repositories and run yarn install in each:
There was a [great article][1] about how react implements it's virtual DOM. There are some really interesting ideas in there but they are deeply buried in the implementation of the React framework.
However, it's possible to implement just the virtual DOM and diff algorithm on it's own as a set of independent modules.
| // 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) { |
| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <meta name="description" content="A better browser console log"> | |
| <meta charset="utf-8"> | |
| <meta name="viewport" content="width=device-width"> | |
| <title>JS Bin</title> | |
| <style id="jsbin-css"> | |
| .console-container { | |
| position: absolute; |
| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <meta name="description" content="A better browser console log"> | |
| <meta charset="utf-8"> | |
| <meta name="viewport" content="width=device-width"> | |
| <title>JS Bin</title> | |
| <style id="jsbin-css"> | |
| .console-container { | |
| position: absolute; |
| require "net/http" | |
| def start_server | |
| # Remove the X to enable the parameters for tuning. | |
| # These are the default values as of Ruby 2.2.0. | |
| @child = spawn(<<-EOC.split.join(" ")) | |
| XRUBY_GC_HEAP_FREE_SLOTS=4096 | |
| XRUBY_GC_HEAP_INIT_SLOTS=10000 | |
| XRUBY_GC_HEAP_GROWTH_FACTOR=1.8 | |
| XRUBY_GC_HEAP_GROWTH_MAX_SLOTS=0 |
Heil PR40 Package - http://www.bswusa.com/Dynamic-Microphones-Heil-Sound-PR40-Package-P7628.aspx
This is a great deal, and is a perfect mic for this stuff.
OC White Boom - http://www.ocwhite.com/broadcast-arms/proboomtm-elite-extended-reach-mic-arm-with-riser-45-reach-12-vertical-riser.html
The kit comes with a boom. It is decent, I guess, but this OC White boom is badass prostyle with a 4' reach and a 15" riser that lets it live behind my monitor.
| 'use strict'; | |
| define(['phaser'], function(Phaser) { | |
| function Gesture(game) { | |
| this.game = game; | |
| this.swipeDispatched = false; | |
| this.holdDispatched = false; | |
| this.isTouching = false; |
| /// <summary> | |
| /// Extension method that turns a dictionary of string and object to an ExpandoObject | |
| /// </summary> | |
| public static ExpandoObject ToExpando(this IDictionary<string, object> dictionary) | |
| { | |
| var expando = new ExpandoObject(); | |
| var expandoDic = (IDictionary<string, object>)expando; | |
| // go through the items in the dictionary and copy over the key value pairs) | |
| foreach (var kvp in dictionary) |