Skip to content

Instantly share code, notes, and snippets.

View also's full-sized avatar

Ryan Berdeen also

View GitHub Profile
@also
also / wave.js
Created April 2, 2011 23:50
Generate WAVE file headers in JavaScript
// https://ccrma.stanford.edu/courses/422/projects/WaveFormat/
function buildWaveHeader(opts) {
var numFrames = opts.numFrames;
var numChannels = opts.numChannels || 2;
var sampleRate = opts.sampleRate || 44100;
var bytesPerSample = opts.bytesPerSample || 2;
var blockAlign = numChannels * bytesPerSample;
var byteRate = sampleRate * blockAlign;
var dataSize = numFrames * blockAlign;
@also
also / utf-16.js
Created April 10, 2011 22:17
Decode JavaScript UTF-16 arrays
// http://www.ietf.org/rfc/rfc2781.txt
function decodeUtf16(w) {
var i = 0;
var len = w.length;
var w1, w2;
var charCodes = [];
while (i < len) {
var w1 = w[i++];
if ((w1 & 0xF800) !== 0xD800) { // w1 < 0xD800 || w1 > 0xDFFF
charCodes.push(w1);
@also
also / README.md
Created September 27, 2021 16:29

If the imports in entry.mjs are sorted, running node entry.mjs will fail with

node entry.mjs 
file:///Users/rberdeen/work/scratch/test-import-circular-order/b.mjs:5
export default { name, other: other.name };
                                    ^

ReferenceError: name is not defined
 at file:///Users/rberdeen/work/scratch/test-import-circular-order/b.mjs:5:37
@also
also / gist:7729708
Last active June 1, 2021 09:02
how does /usr/libexec/java_home work?
# /usr/libexec/java_home -X
$ sudo opensnoop -n java_home
UID PID COMM FD PATH
501 79809 java_home 3 /System/Library/PrivateFrameworks/JavaLaunching.framework/Versions/A/JavaLaunching
501 79809 java_home 3 /dev/dtracehelper
501 79809 java_home 4 /System/Library/CoreServices/SystemVersion.bundle//English.lproj
501 79809 java_home -1 /System/Library/CoreServices/SystemVersion.bundle//Base.lproj
501 79809 java_home 4 /System/Library/CoreServices/SystemVersion.bundle/English.lproj/SystemVersion.strings
501 79809 java_home -1 /System/Library/CoreServices/SystemVersion.bundle/English.lproj/SystemVersion.stringsdict
501 79809 java_home 3 /usr/share/icu/icudt51l.dat
@also
also / gregor.py
Created October 3, 2014 20:54
split kafka log files into chunks that kafka can actually read
# written in anger at 4AM. it's a bad idea to use this.
import struct
import sys
import glob
import os
source = sys.argv[1]
dest = sys.argv[2]
topic = sys.argv[3]
function testVersion(v) {
const prefix = process.version + ': 1.' + v;
const https = require('https');
const req = https.request(
{
host: 'tls-v1-' + v + '.badssl.com',
port: '101' + v,
path: '/',
method: 'GET',
},
(function webpackUniversalModuleDefinition(root, factory) {
if(false && typeof exports === 'object' && typeof module === 'object')
module.exports = factory(require("fs"), require("path"));
else if(typeof define === 'function' && define.amd)
define(["fs", "path"], factory);
else if(typeof exports === 'object')
exports["sourceMap"] = factory(require("fs"), require("path"));
else
root["sourceMap"] = factory(root["fs"], root["path"]);
})(typeof self !== 'undefined' ? self : this, function(__WEBPACK_EXTERNAL_MODULE_10__, __WEBPACK_EXTERNAL_MODULE_11__) {
# setting up a rust dev environment to try
# https://github.com/fitzgen/source-map-mappings/blob/master/CONTRIBUTING.md
brew install rustup
rustup-init
# open new terminal
cd source-map-mappings
cargo build
package test;
import javax.script.Bindings;
import javax.script.ScriptContext;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
import javax.script.SimpleScriptContext;
public class ScopeLeak {
@also
also / package.json
Created November 29, 2018 19:58
using @hs/webpack-graphql
{
"devDependencies": {
"@hs/webpack-graphql": "9.0.3",
"webpack": "3",
"webpack-dev-server": "2"
}
}