Skip to content

Instantly share code, notes, and snippets.

View lukeasrodgers's full-sized avatar

Luke Rodgers lukeasrodgers

View GitHub Profile
@lukeasrodgers
lukeasrodgers / quickrubyprof.rb
Created October 15, 2015 17:15
quick ruby profiling
# Gemfile
gem 'ruby-prof'
# code to profile
require 'ruby-prof'
RubyProf.start
# run code
result = RubyProf.stop
printer = RubyProf::CallStackPrinter.new(result)
@lukeasrodgers
lukeasrodgers / mysql_export_import.sh
Last active December 12, 2015 10:18
mysql dumping and importing
mysqldump DB -hHOST > OUTFILE.sql
# copy to local
rsync -avPz --progress USER@HOST:/PATH/TO/OUTFILE.sql .
# import to local db
mysql -uroot -p -DDATABASE < OUTFILE.sql
@lukeasrodgers
lukeasrodgers / DOMSubtreeModified_logger.js
Last active December 12, 2015 10:19
log dom subtree modifications to the console (works in Chrome, not sure of other browsers)
document.body.addEventListener('DOMSubtreeModified', function(e) { console.log(e.target); });
@lukeasrodgers
lukeasrodgers / deep-detect.js
Last active December 14, 2015 17:49
recursive deep detection in javascript with underscore and try/catch statements, inspired by ruby's throw/catch. jsperfs http://jsperf.com/deep-detect and http://jsperf.com/deep-detect-last-success
var deepDetect = function(list, iterator, context) {
var _deepDetect = function(list, iterator, context) {
if (_.isArray(list[0])) {
_.each(list, function(sublist) {
return _deepDetect(sublist, iterator, context);
});
}
else {
var res = _.detect(list, iterator, context);
if (!_.isUndefined(res)) {
@lukeasrodgers
lukeasrodgers / load_script.js
Created April 3, 2013 20:40
function to load javascripts, based on https://gist.github.com/getify/603980
load_script = function (url, callback) {
var oDOC = document;
var head = oDOC.head || oDOC.getElementsByTagName("head");
// loading code borrowed directly from LABjs itself
setTimeout(function () {
if ("item" in head) { // check if ref is still a live node list
if (!head[0]) { // append_to node not yet ready
setTimeout(arguments.callee, 25);
return;
@lukeasrodgers
lukeasrodgers / spec.js.coffee
Created April 7, 2013 16:34
sample of jasminerice spec manifest
#= require ./before_src/sinon-1.4.2
#= require application
#= require backbone_base
#= require buckets_dashboard
#= require racking
#= require service_order
#= require dashboard
#= require matters
#= require_tree ./
@lukeasrodgers
lukeasrodgers / constructor_getter.js
Last active December 16, 2015 09:29
Helper to determine the constructor for an instance, given a namesapce
var constructor_getter = (function() {
var parser = function(ns, instance) {
for (var key in ns) {
try {
if (instance instanceof ns[key]) {
return key;
}
} catch (err) {}
}
};
@lukeasrodgers
lukeasrodgers / GridFilteringExtensions.js
Created April 24, 2013 20:47
Extensions to Ext.grid.GridPanel to make it easier to do programmatically hook into grid filtering.
Ext.grid.GridPanel.prototype.getFeatures = function() {
return this.view.featuresMC;
};
Ext.grid.GridPanel.prototype.getFilters = function() {
var features = this.getFeatures();
if (features && features.items) {
for (var i = 0; i < features.items.length; i++) {
if (features.items[i].ftype === 'filters') {
return features.items[i];
@lukeasrodgers
lukeasrodgers / vagrant_ssh.log
Created January 9, 2014 15:54
Vagrant ssh issues log output
VAGRANT_LOG=debug vagrant ssh
INFO global: Vagrant version: 1.3.5
DEBUG global: Loading core plugin: /Applications/Vagrant/embedded/gems/gems/vagrant-1.3.5/plugins/commands/box/plugin.rb
INFO manager: Registered plugin: box command
DEBUG global: Loading core plugin: /Applications/Vagrant/embedded/gems/gems/vagrant-1.3.5/plugins/commands/destroy/plugin.rb
INFO manager: Registered plugin: destroy command
DEBUG global: Loading core plugin: /Applications/Vagrant/embedded/gems/gems/vagrant-1.3.5/plugins/commands/halt/plugin.rb
INFO manager: Registered plugin: halt command
DEBUG global: Loading core plugin: /Applications/Vagrant/embedded/gems/gems/vagrant-1.3.5/plugins/commands/help/plugin.rb
INFO manager: Registered plugin: help command
@lukeasrodgers
lukeasrodgers / movies.grapml
Created January 22, 2016 19:52
neo4j movies.graphml export using neo4j-shell-tools
<?xml version="1.0" encoding="UTF-8"?>
<graphml xmlns="http://graphml.graphdrawing.org/xmlns" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
<graph id="G" edgedefault="directed">
<node id="n0" labels=":Movie"><data key="labels">:Movie</data><data key="tagline">Welcome to the Real World</data><data key="title">The Matrix</data><data key="released">1999</data></node>
<node id="n1" labels=":Person"><data key="labels">:Person</data><data key="name">Keanu Reeves</data><data key="born">1964</data></node>
<node id="n2" labels=":Person"><data key="labels">:Person</data><data key="name">Carrie-Anne Moss</data><data key="born">1967</data></node>
<node id="n3" labels=":Person"><data key="labels">:Person</data><data key="name">Laurence Fishburne</data><data key="born">1961</data></node>
<node id="n4" labels=":Person"><data key="labels">:Person</data><data key="name">Hugo Weaving</data><data key="born">