Skip to content

Instantly share code, notes, and snippets.

View kirbysayshi's full-sized avatar

Drew Petersen kirbysayshi

View GitHub Profile
window.fluid.dockBadge = '';
setTimeout(updateDockBadge, 1000);
setTimeout(updateDockBadge, 3000);
setInterval(updateDockBadge, 5000);
function updateDockBadge() {
var navigation = document.querySelector('[role=navigation]')
var doc = navigation.contentDocument || navigation.ownerDocument;
@kirbysayshi
kirbysayshi / Delete Local Only Git Branches.md
Last active March 18, 2020 20:12
all the other ones on the internet either don't work, or only delete local tracking branches. If you have squash+merge enabled for a repo, those techniques won't work!

Hi.

@kirbysayshi
kirbysayshi / convert.sh
Last active May 17, 2019 16:35
Convert JavaScript React components to TypeScript
#!/bin/bash
# usage: ./convert.sh src/components
PATH_TO_JS=$1
git clone git@github.com:lyft/react-javascript-to-typescript-transform.git
pushd react-javascript-to-typescript-transform
yarn install
popd
@kirbysayshi
kirbysayshi / flatten_and_test.js
Last active May 14, 2019 15:31
flatten an object into a single depth using string keys
require('tap-browser-color')();
var test = require('tape');
test('it flattens!', function(t) {
var input = {
users: [
{ name: 'name1', id: 1, image: { '64x64': 'http://1' } },
{ name: 'name2', id: 2, image: { '64x64': 'http://2' } }
],
errors: [ new Error('err1') ],
@kirbysayshi
kirbysayshi / usb-install-howto.md
Created August 23, 2018 02:54
How to install Snow Leopard on a Dell Latitude D630. lol "easiest install ever"! From 2009-05-20, for posterity.

Welcome to the easiest install on a D630 EVER.

This method is contingent on two things: you must have access to a Leopard installation, and you must have an 8gb or larger USB key.

EQUIPMENT Chameleon RC1 Binaries: http://chameleon.osx86.hu/file_download/23/Chameleon-2.0RC1-r431-bin.tar.gz Chameleon RC1 Package: http://chameleon.osx86.hu/file_download/22/Chameleon-2.0-r431.pkg.zip Retail DVD/Image 8GB USB Key (or larger) Necessary Kexts: AppleACPIPS2Nub.kext, ApplePS2Controller.kext, Disabler.kext, dsmos.kext

@kirbysayshi
kirbysayshi / LICENSE.txt
Created October 14, 2011 04:51 — forked from 140bytes/LICENSE.txt
Signals in JS
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
Copyright (C) 2011 Andrew Petersen <http://kirbysayshi.github.com>
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
@kirbysayshi
kirbysayshi / perlin-noise.js
Last active March 5, 2018 03:31
Code adapted and cleaned up from the C# implementation here http://flafla2.github.io/2014/08/09/perlinnoise.html. Specific changes: conversion to JS, removal of classes and stateful classes.
// Hash lookup table as defined by Ken Perlin. This is a randomly
// arranged array of all numbers from 0-255 inclusive.
const permutation = [ 151,160,137,91,90,15,
131,13,201,95,96,53,194,233,7,225,140,36,103,30,69,142,8,99,37,240,21,10,23,
190, 6,148,247,120,234,75,0,26,197,62,94,252,219,203,117,35,11,32,57,177,33,
88,237,149,56,87,174,20,125,136,171,168, 68,175,74,165,71,134,139,48,27,166,
77,146,158,231,83,111,229,122,60,211,133,230,220,105,92,41,55,46,245,40,244,
102,143,54, 65,25,63,161, 1,216,80,73,209,76,132,187,208, 89,18,169,200,196,
135,130,116,188,159,86,164,100,109,198,173,186, 3,64,52,217,226,250,124,123,
5,202,38,147,118,126,255,82,85,212,207,206,59,227,47,16,58,17,182,189,28,42,
@kirbysayshi
kirbysayshi / index.js
Created February 20, 2013 06:05
voxel.js game
var createGame = require('voxel-engine')
function sphereWorld(x, y, z) {
// return the index of the material you want to show up
// 0 is air
if (x*x + y*y + z*z > 15*15) return 0
return 3
}
function flatWorld(i,j,k) {
@kirbysayshi
kirbysayshi / .gitignore
Last active January 9, 2018 22:55
testcast demonstrating rollup getting confused by the presence of "default" as a normal property.
node_modules
dist
package-lock.json
@kirbysayshi
kirbysayshi / lbp-serialization.js
Created January 2, 2018 23:54
Not the best JS (whoa global scope!) but I think this proves out the core ideas. Probably some bugs still.
// JS Implementation of https://yave.handmade.network/blogs/p/2723-how_media_molecule_does_serialization
// We have to make several changes due to JS's dynamic nature, and lack of type
// information, outlined below.
// The rules:
// 1) Every class/valuetype needs a `serialize_TYPENAME(version, serializer, datum)`
// function. This gets around JS not having function overloading as well as the
// implicit type annotation that function overloading (in the original C example)