Skip to content

Instantly share code, notes, and snippets.

View nornagon's full-sized avatar

Jeremy Rose nornagon

View GitHub Profile
@nornagon
nornagon / keybase.md
Created March 17, 2014 05:45
keybase.md

Keybase proof

I hereby claim:

  • I am nornagon on github.
  • I am nornagon (https://keybase.io/nornagon) on keybase.
  • I have a public key whose fingerprint is 50BB 3434 E762 B0A9 F932 D08E 802A 9C12 D805 6B7C

To claim this, I am signing this object:

@nornagon
nornagon / corrupt.rb
Last active August 29, 2015 13:57
Corrupt random bits in a string
str = "Zalgo, he comes! He rises from the deep, he consumes us"
str.split(//).map { |char|
char.ord.to_s(2).split(//).map { |bit|
if rand < 0.01 then ["0","1"][(rand*2).floor] else bit end
}.join.to_i(2).chr
}.join
# => "Zalgo, he comes! He rises bRom the deep, `e conwumes us"
@nornagon
nornagon / Serializer.scala
Last active August 29, 2015 13:59
Serializer for squants.Quantity
object Serialization {
object UnitSerialization {
val unitForSymbol = Map(
"millisecond" -> Milliseconds,
"celsius" -> Celsius,
"kelvin" -> Kelvin,
"meter" -> Meters,
"nanometer" -> Nanometers,
"second" -> Seconds,
"minute" -> Minutes,
@nornagon
nornagon / orbitals.jl
Created September 29, 2014 01:02
Hydrogen orbitals in Julia
# Cribbed from http://commons.wikimedia.org/wiki/User:Geek3/hydrogen
function LegendreP(l, m, x)
m = abs(m)
a = 1
if m > 0
fac = 1
c = (1 + x) * (1 - x)
for i = 1:m
a *= c * fac / (fac + 1)
@nornagon
nornagon / bug.json
Created September 29, 2014 04:57
boilerplate bug
{"71,23":"thinsolid","72,23":"thinsolid","73,23":"thinsolid","71,24":"shuttle","72,24":"shuttle","73,24":"thinsolid","71,25":"nothing","72,25":"shuttle","73,25":"thinsolid","74,25":"positive","75,25":"negative","76,25":"thinsolid","81,25":"thinsolid","82,25":"negative","83,25":"positive","72,26":"shuttle","73,26":"thinsolid","74,26":"thinsolid","75,26":"nothing","76,26":"nothing","77,26":"nothing","78,26":"nothing","79,26":"shuttle","80,26":"nothing","81,26":"nothing","82,26":"nothing","83,26":"thinsolid","70,27":"thinsolid","71,27":"shuttle","72,27":"shuttle","73,27":"thinsolid","70,28":"thinsolid","71,28":"nothing","72,28":"shuttle","73,28":"thinsolid","70,29":"thinsolid","72,29":"shuttle","73,29":"thinsolid","70,30":"thinsolid","71,30":"negative","72,30":"thinshuttle","73,30":"thinsolid","71,31":"positive","72,31":"shuttle","73,31":"thinsolid","72,32":"nothing","33,22":"thinsolid","45,24":"thinsolid","53,22":"thinsolid","33,26":"thinsolid","37,26":"thinsolid","37,22":"thinsolid","37,18":"thinsolid","33,18"
from foo import *
initialise()
print my_var
<html>
<head>
<title>blah</title>
<script src="../socket.io/socket.io.js"></script>
<script src="jquery-1.4.4rc2.js"></script>
<script src="main.js"></script>
<style>
canvas#canvas {
position: absolute;
left: 0;
@nornagon
nornagon / foo.test.js
Created February 21, 2011 03:15
Run node.js tests, each in their own node process.
var assert = require('assert')
, path = require('path')
function some_helper(foo) {
assert.equal(foo, 4)
}
module.exports = {
'test array length': function (test) {
some_helper([1,2,3,4].length)
@nornagon
nornagon / .vimrc
Created May 3, 2011 22:55
My .vimrc
" duh
syn on
filetype plugin indent on
" the only TRUE tab settings
set ts=2 sw=2 noet tw=79 ai smarttab
" keep 4 lines between the cursor and the edge of the screen where possible
set so=4
@nornagon
nornagon / thing.vim
Created May 13, 2011 08:04
threads, python, vim
function! Thing()
py << EOF
import vim, thread, time
def go():
time.sleep(2)
vim.current.buffer[0] = "foo"
thread.start_new_thread(go, ())
EOF
endfunction