Skip to content

Instantly share code, notes, and snippets.

data = """
Make, Model
Jag, X-type
Merc, CL
"""
csv = d3.csv.parse(data)
columns = Object.keys(csv[0])
# Create the actual body of the table
@jamesduncombe
jamesduncombe / testing_erlang.erl
Last active August 29, 2015 14:01
Playing with Erlang
#!/usr/bin/env escript
main(_) ->
List = [1,2,3,4,5,6,7,8,9],
NewList = reverse(List),
io:format(NewList),
shifter("This should not pass correctly"),
%% list comprehension, because they are cool in Erlang
Comprehended = [ N bsl 4 || N <- List, N =/= 1 ],
@jamesduncombe
jamesduncombe / erb2slim.sh
Last active August 29, 2015 14:03
ERB to Slim command
gem install html2haml && gem install haml2slim
# then... convert and remove original erb files:
find ./app/views -name '*.erb' | xargs -I file sh -c \
'html2haml --erb file | haml2slim > $(echo file | sed 's/erb/slim/') && \
rm file'
@jamesduncombe
jamesduncombe / rename.sh
Last active August 29, 2015 14:06
How to batch rename...
# rename all scss files...
find *.scss | xargs -I file sh -c 'mv file $(basename file | sed 's/scss/sass/')'
@jamesduncombe
jamesduncombe / vocab_parser.js
Last active August 29, 2015 14:06
Duolingo vocab parser for Words page
/* Pulling out vocab from Duolingo's Words page */
var raw,
cleaned,
filtered,
xhr = new XMLHttpRequest;
var parser = function(data) {
raw = JSON.parse(data);
cleaned = raw.vocab_overview.filter(function(word) {
SELECT users.username,
((CASE WHEN quizzes.quiz_type = 1 THEN 'M' ELSE 'B' END) ||
(CASE WHEN user_answers.practical_id IS NULL THEN '' ELSE 'P' END) ||
quizzes.challenge_number || 'Q' || questions.question_number)
AS quest,
SUM(result) As score
FROM "user_answers"
INNER JOIN "users" ON "users"."id" = "user_answers"."user_id"
@jamesduncombe
jamesduncombe / base64.go
Last active August 29, 2015 14:10
Quick base64 convertor in Go
package main
import (
"encoding/base64"
"flag"
"fmt"
"io/ioutil"
"mime"
"path/filepath"
"strings"
@jamesduncombe
jamesduncombe / haversine.sql
Last active August 29, 2015 14:11
Haversine formula in SQL
/*
6371 for Kms
3956 for Miles
$lat, $lng are passed in
*/
SELECT *,
( 3956 * acos( cos(radians($lat)) * cos(radians( lat.field_latitude_value )) *
cos(radians( lng.field_longitude_value ) - radians($lng)) + sin(radians($lat))
* sin(radians( lat.field_latitude_value )) ) )
@jamesduncombe
jamesduncombe / .docker-aliases
Created September 2, 2015 15:26
Docker Aliases
alias dc="docker"
alias dr="dc run"
alias ds="dc stop"
alias di="dc images"
alias drmi="dc rmi"
alias drm="dc rm"
alias dip="dc inspect -f '{{ .NetworkSettings.IPAddress }}'"
@jamesduncombe
jamesduncombe / xml_to_json_array.rb
Created October 4, 2012 17:51
Script to convert a series of XML documents into an Array of Hashes then to a JSON file
#
# Read a series of XML documents into a large Array of Hashes
# export as JSON
#
# assign some constants to handle file names / paths
PATH_TO_XML_FILES, EXPORT_FILE = ARGV.first, ARGV.last
# argument validation
raise ArgumentError, 'You must specify a path from which to read the XML documents' if PATH_TO_XML_FILES.nil?