Skip to content

Instantly share code, notes, and snippets.

View js-under-pressure.js
function doubleInteger(i) {
return i*2;
}
function isNumberEven(i) {
return i%2 === 0;
}
function getFileExtension(i) {
if(i.indexOf('.') >= 0) {
View Program.cs
using System;
using System.Numerics;
using System.Globalization;
using System.Text;
using System.Diagnostics;
using System.Threading;
namespace StringPaddingTest
{
View oh-the-schemas-you-can-scheme.md

#Oh the Schemas you can Scheme!

You can scheme about scaling
Of which SQL can only dream!
You can scheme about NoSQL
Oh the schemas you can scheme

Oh, the schemes you can scheme up
if only you try!
If you try, you can scheme up

@alexmoore
alexmoore / iso8601.erl
Last active Aug 29, 2015
Iso 8601 Timestamp Long format in Erlang
View iso8601.erl
%% Provides a timestamp like 2014-03-19T19:25:17.779905
DateTime = erlang:now().
{_,_,MicroSec} = DateTime.
{{Year,Month,Day},{Hour,Min,Sec}} = calendar:now_to_universal_time(DateTime).
DateString = io:format("~4..0B-~2..0B-~2..0BT~2..0B:~2..0B:~2..0B.~6..0B",
[Year, Month, Day, Hour, Min, Sec, MicroSec]).
DateString.
View greplogs.sh
unpack_riak_debugs () {
mkdir -p compressed
for file in `ls *riak-debug.tar.gz`
do
tar xzf $file
mv $file compressed
done
for file in `ls -1 | grep riak-debug`
do
View keybase.md

Keybase proof

I hereby claim:

  • I am alexmoore on github.
  • I am alexmoore (https://keybase.io/alexmoore) on keybase.
  • I have a public key whose fingerprint is ED5D 175E 29A7 478F 0D4F 7D57 1D71 6D67 A969 0E08

To claim this, I am signing this object:

@alexmoore
alexmoore / set_lager.erl
Created May 6, 2014
Set Debug / Info Log Levels Riak-CS
View set_lager.erl
SetDebug = fun() -> {node(), lager:set_loglevel(lager_file_backend, "/var/log/riak-cs/console.log", debug)} end.
SetInfo = fun() -> {node(), lager:set_loglevel(lager_file_backend, "/var/log/riak-cs/console.log", info)} end.
rp(rpc:multicall(erlang, apply, [SetInfo,[]])).
View Functional Core, Imperative Shell
http://www.infoq.com/presentations/Simple-Made-Easy
http://www.infoq.com/presentations/integration-tests-scam
http://blog.thecodewhisperer.com/2010/09/14/when-is-it-safe-to-introduce-test-doubles
http://youtu.be/yTkzNHF6rMs
http://pyvideo.org/video/1670/boundaries
http://skillsmatter.com/podcast/ajax-ria/enumerators
http://alistair.cockburn.us/Hexagonal+architecture
http://c2.com/cgi/wiki?PortsAndAdaptersArchitecture
http://www.confreaks.com/videos/977-goruco2012-hexagonal-rails
http://www.confreaks.com/videos/1255-rockymtnruby2012-to-mock-or-not-to-mock
View find_primaries.erl
FindPrimaries = fun(Bucket, Key, Ring) ->
BKey = {Bucket,Key},
DocIdx = riak_core_util:chash_key(BKey),
BucketProps = riak_core_bucket:get_bucket(Bucket, Ring),
[NValue] = [Y || {X1, Y} <- BucketProps, n_val == X1],
CHBin = chashbin:create(riak_core_ring:chash(Ring)),
Itr = chashbin:iterator(DocIdx, CHBin),
{Primaries, Itr2} = chashbin:itr_pop(3, Itr),
Primaries
end.
@alexmoore
alexmoore / large.sh
Created Sep 25, 2014
Find large Objects
View large.sh
#!/bin/bash
# For each node, search for reading large object messages, write to largeobject.read file
for NODE in 10.58.9*; do
IP=`echo "$NODE" | cut -d '-' -f1`;
cat $NODE/lo.r.console.log | sed "s/.*Reading large object of size \([0-9]*\) from \(<<.*>>\)\/\(<<.*>>\)/\{\"$IP\",\2,\3,\1\},/" | sort | uniq > $NODE/lo.r.list ;
done
# For each node, search for writing large object messages, write to largeobject.write file
for NODE in 10.58.9*;