Skip to content

Instantly share code, notes, and snippets.

View kmarsh's full-sized avatar

Kevin Marsh kmarsh

View GitHub Profile
AAL Terminal 1 Aalborg Airport Lounge
AAQ Domestic Terminal Business Lounge
AAQ Main Terminal VIP Lounge
AAR Main Terminal Aarhus Airport Executive Lounge
ABA Main Terminal Abakan Airport Business Lounge
ABJ Main Terminal Aeria Lounge
ABV Domestic Terminal Airspace Lounge
ABV Domestic Terminal @9tysix Lounge
ABV Domestic Terminal Lounge One
ABV International Terminal The Gabfol Lounge
@kmarsh
kmarsh / countries.topo.json
Last active March 3, 2017 18:25 — forked from moklick/countries.topo.json
Maps with TopoJSON & Leaflet
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@kmarsh
kmarsh / README.md
Last active December 28, 2015 15:51

In Toledo, 101.5 The River plays continuous Christmas music all day long from November to the day after Christmas.

After listening for a while, I swore the same songs played in a very short amount of time. So it got me wondering exactly what songs were played and how much. So I decided to collect some data.

Metadata

I needed a way to get a log of everything the station played. I tried messing around with the JSON on their site but it didn't seem to have the data I needed. I think most of it drives the Flash player which pulls the rest.

I found the station has a stream and there is a little utility called streamripper that will dutifully download and cut up everything that plays, including metadata. I didn't care much about the audio (although it did prove useful for checking the resulting data and a source of annoyance for my wife as I replayed the most-played songs over and over again.)

Mark 11-12

The Triumphal Entry

11:1 Now when they drew near to Jerusalem, to Bethphage and Bethany, at the Mount of Olives, Jesus sent two of his disciples 2 and said to them, "Go into the village in front of you, and immediately as you enter it you will find a colt tied, on which no one has ever sat. Untie it and bring it. 3 If anyone says to you, 'Why are you doing this?' say, 'The Lord has need of it and will send it back here immediately.'" 4 And they went away and found a colt tied at a door outside in the street, and they untied it. 5 And some of those standing there said to them, "What are you doing, untying the colt?" 6 And they told them what Jesus had said, and they let them go. 7 And they brought the colt to Jesus and threw their cloaks on it, and he sat on it. 8 And many spread their cloaks on the road, and others spread leafy branches that they had cut from the fields. 9 And those who w

#!/usr/bin/env ruby
require 'open-uri'
require 'json'
require 'uri'
require 'pp'
# search-spotify
#
# Takes a bunch of songs, in `Artist - Title` format from STDIN and searches
# Spotify for them, one-by-one, outputting track URIs on STDOUT. Suitable for
var isFunction = function(o) {
return typeof o == 'function';
};
var bind,
slice = [].slice,
proto = Function.prototype,
featureMap;
@kmarsh
kmarsh / bench_direct.rb
Last active August 29, 2015 13:57
Benchmarking accessing ElasticSearch via JRuby
#!/usr/bin/env ruby
require 'java'
import org.elasticsearch.client.transport.TransportClient
import org.elasticsearch.common.transport.InetSocketTransportAddress
import org.elasticsearch.common.settings.ImmutableSettings
import org.elasticsearch.action.search.SearchResponse
import org.elasticsearch.action.search.SearchType
import org.elasticsearch.index.query.FilterBuilders
import org.elasticsearch.index.query.QueryBuilders
require 'rubygems'
require 'active_support'
require 'carrierwave'
require 'sinatra'
require 'sqlite3'
require 'sequel'
require 'carrierwave/sequel'
require 'mini_magick'
# Example app to demonstrate issue as seen in https://github.com/jnicklas/carrierwave/issues/436
#!/usr/bin/env ruby
require 'rubygems'
require 'right_aws'
require 'optparse'
#
# check_s3_backups
# Nagios script to check S3 for backups
begin
#!/usr/bin/env ruby
require 'rubygems'
require 'mechanize'
if ARGV.size != 2
puts "Usage: #{$0} ups_username ups_password"
exit 1
end
a = Mechanize.new do |agent|