Skip to content

Instantly share code, notes, and snippets.

// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@drmikecrowe
drmikecrowe / results.md
Last active January 20, 2020 15:05
Time various loop structures

Base code/idea comes from this blog post

The output:

Testing vanilla:      4.1ms
Testing lodash:      25.4ms -- 518% slower
Testing es6-for-of:   7.3ms --  78% slower
Testing forEach:      6.1ms --  48% slower
Testing map: 9.2ms -- 125% slower
@drmikecrowe
drmikecrowe / README.md
Last active January 10, 2020 12:38
Using debug with xstate

For anyone else coming across this and wondering how this works, here's a summary.

NOTE: I'm still learning xstate, so there may be better ways to do this!

Step #1, install debug

debug is a small debugging library that can be used in the console or browser. In the screenshot above, each of the different colors comes from a different debug instance. For example, I instatiate the following in my console application:

const dbgM: debug.Debugger = require('debug')("fsm:master");
@drmikecrowe
drmikecrowe / test1-mutation-observer.js
Last active January 6, 2020 16:19
Watch elements as page loads
const targets = ["#top-header", "#main-header"];
const config = {
attributes: true,
attributeOldValue: true,
subtree: true,
childList: true,
};
function logAllEvents(target, myElement) {
@drmikecrowe
drmikecrowe / searchImdb.py
Created January 3, 2020 19:52
Rename ripped directory from ARM based on search
#!/home/mcrowe/Programming/Personal/imdb/.direnv/python-3.7.5/bin/python3
import sys
import imdb
import click
from os import listdir, system, rename
from os.path import isfile, join, getctime, basename
from lxml.builder import E
@drmikecrowe
drmikecrowe / machine.js
Last active November 29, 2019 12:07
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@drmikecrowe
drmikecrowe / machine.js
Created November 21, 2019 18:47
Generated by XState Viz: https://xstate.js.org/viz
const RETRY_INTERVAL = 2000;
const MAX_RETRIES = 3;
const initHardwareState = "initHardware";
const connectNetworkState = "connectNetwork";
const provisionState = "provision";
const retryState = "retry";
const fatalState = "fatal";
const connectedState = "connected";
@drmikecrowe
drmikecrowe / machine.js
Last active November 21, 2019 12:38
initializeMachine.js
const RETRY_INTERVAL = 2000;
const MAX_RETRIES = 3;
const initHardwareState = "initHardware";
const connectNetworkState = "connectNetwork";
const provisionState = "provision";
const retryState = "retry";
const fatalState = "fatal";
const connectedState = "connected";
@drmikecrowe
drmikecrowe / machine.js
Last active November 15, 2019 21:57
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@drmikecrowe
drmikecrowe / machine.js
Last active November 13, 2019 15:18
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
// - XState (all XState exports)