Skip to content

Instantly share code, notes, and snippets.

@jamesottaway
jamesottaway / .gitignore
Last active September 26, 2022 10:06
SumoLogic JS bug
node_modules/
@jamesottaway
jamesottaway / shell.nix
Created October 5, 2020 03:20
TypeScript Functors, Applicatives and Monads in Pictures
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
}

Keybase proof

I hereby claim:

  • I am jamesottaway on github.
  • I am jms (https://keybase.io/jms) on keybase.
  • I have a public key ASDrBAY_mdkRlk_f67CwRnKuF2m29A1tbG7G0bd1JeoFPQo

To claim this, I am signing this object:

@jamesottaway
jamesottaway / 50585.xml
Last active January 7, 2018 10:54
Morning
<ContentItem source="INTERNET_RADIO" location="50585"/>
version: '2.0'
services:
couchpotato:
image: linuxserver/couchpotato
ports:
- 5050:5050
volumes:
- couchpotato:/config:rw
- movies:/movies:rw
- downloads:/downloads:rw
@jamesottaway
jamesottaway / Gemfile
Created April 9, 2015 05:05
RSpec::Its#38
source 'https://rubygems.org/'
gem 'rspec-rails', '~> 3.2'
gem 'rspec-its', '~> 1.2'
module ArrayRefinements
refine Array do
def head
self.first
end
def tail
self[1..-1]
end
end
@jamesottaway
jamesottaway / overview.md
Created December 11, 2013 00:28
YOW! 2013

Safety not Guaranteed

  • Interesting examples from companies applying alternative product management practices
  • Nothing overly practical to apply immediately, but it gives some good references to refer back to when considering how this applies to your team on the ground
  • Attend if you like hearing about alternative product management techniques

Beyond the JVM

  • Overly technical deep dive into changes needed to be made to the JVM to better support dynamic and interpreted languages
  • Structured as responses to criticisms of the JVM from Charles' followers on Twitter, which was a nice way to go through the content
@jamesottaway
jamesottaway / sample.cs
Created September 19, 2012 05:46
.NET CryptSharp PBKDF2 with HMACSHA512
var password = "password";
var salt = "saltsalt";
var iterations = 50000;
var passwordBytes = System.Text.Encoding.UTF8.GetBytes(password);
var saltBytes = System.Text.Encoding.UTF8.GetBytes(salt);
var hashSize = new System.Security.Cryptography.HMACSHA512().HashSize / 8;
var hashedPassword = new byte[hashSize];
var sha512Callback = CryptSharp.Utility.Pbkdf2.CallbackFromHmac<System.Security.Cryptography.HMACSHA512>();
@jamesottaway
jamesottaway / bootstrap.rb
Created September 22, 2011 06:36
Bootstrapping Personal Babushka Deps
dep 'babushka deps cloned' do
requires 'github has my public key'
setup {
set :babushka_deps_dir, '~/.babushka/deps'.to_fancypath
define_var :github_username, :message => 'What is your GitHub username?'
define_var :babushka_deps_repo_name, :message => 'What is your Babushka deps repo called?', :default => 'babushka-deps'
set :babushka_deps_repo, "git@github.com:#{var :github_username}/#{var :babushka_deps_repo_name}.git"
}
met? { var(:babushka_deps_dir).directory? && shell("(cd #{var :babushka_deps_dir} && git remote -v)")[var :babushka_deps_repo] }
meet { shell "git clone #{var :babushka_deps_repo} #{var :babushka_deps_dir}" }