Skip to content

Instantly share code, notes, and snippets.

View christopherdebeer's full-sized avatar

Christopher de Beer christopherdebeer

View GitHub Profile
@christopherdebeer
christopherdebeer / scrape_tweets.rb
Created March 25, 2012 14:50 — forked from stefl/scrape_tweets.rb
Download all tweets from the twitter search API for a given search term (limited to their maximum of 1500)
#! /usr/bin/env ruby
search_term = ARGV[0]
if search_term
time = Time.now
directory_path = File.dirname(__FILE__) + "/tweets/" + search_term + "_" + time.to_i.to_s
Dir.mkdir_p(directory_path)
directory = Dir.new(directory_path)
(1..15).each do |i|
`curl "http://search.twitter.com/search.json?q=#{search_term}&rpp=100&page=#{i}&include_entities=true&result_type=mixed" > #{directory.path}/#{i}.json`
end
@christopherdebeer
christopherdebeer / bio.json
Last active September 30, 2015 08:27
Christopher de Beer Bio
{
"Christopher de Beer": {
"Location": "Edinburgh, UK",
"Job" : {
"Company": "Amazon.com",
"Roles": [
"Web Develeopment Engineer"
],
},
"Social": {
var testJSON = {
div: {
attributes: {
class: ["wrapper"],
id: "wrapper",
},
innerHTML: {
h1: {
attributes: {
@christopherdebeer
christopherdebeer / HNtwit.js
Created October 6, 2011 14:12
Hackernews scan for users that mention a twitter username in their bio
(function(){
$("a[href^='user?id']").each(function(i,e){
var username = $(e).text();
$.get("/user?id=" + username, function(data){
//console.log(data);
var twitternames = data.match(/(?:twitter\.com\/([a-zAZ0-9]+))|(?:[^a-z,^A-Z,^0-9]@([a-z,A-z,-9]+))/gi);
if (twitternames) {
$.each(twitternames,function(i,e) {
twitternames[i] = twitternames[i].replace(/[^a-zA-Z0-9]+@([a-zA-Z0-9]+)/gi,"@$1");
twitternames[i] = twitternames[i].replace(/twitter\.com\//gi,"@");
@christopherdebeer
christopherdebeer / snippet.js
Created September 7, 2011 09:22
Node.js Express - Mobile detection
app.get('/', function(req, res){
var ua = req.header('user-agent');
if(/mobile/i.test(ua)) {
res.render('mobile.html');
} else {
res.render('desktop.html');
}
});
@christopherdebeer
christopherdebeer / tellmeaboutit.js
Created August 18, 2011 17:05
tell me about it
function loadScript(url, callback){
var script = document.createElement("script")
script.type = "text/javascript";
if (script.readyState){ //IE
script.onreadystatechange = function(){
if (script.readyState == "loaded" ||
script.readyState == "complete"){
script.onreadystatechange = null;
var a=document.getElementsByTagName('head')[0],b=document.createElement('script');
b.type='text/javascript';
b.src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js?'+Math.floor(Math.random()*99999);
a.appendChild(b);
var c=document.getElementsByTagName('head')[0],d=document.createElement('script');
d.type='text/javascript';
d.src='https://raw.github.com/gist/1141739/b5ae48df4eb615f0d523836c6d140f8660f2d450/jquery.raptorize.1.0.js?'+Math.floor(Math.random()*99999);
c.appendChild(d);
/*
* jQuery Raptorize Plugin 1.0
* www.ZURB.com/playground
* Copyright 2010, ZURB
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
*/
(function($) {
@christopherdebeer
christopherdebeer / modules.md
Created August 5, 2011 13:26
Node.js modules to remember

Node.js modules to remember

  • Optimist - Light-weight option parsing for node.js
  • http-server - a simple zero-configuration command-line http server
  • prompt - A beautiful command-line prompt for node.js
  • git - javascript git implementation
  • vows & assert(core) - for writing unit tests
  • everyauth - node.js auth package (password, facebook, & more) for Connect and Express apps
  • rocket - The rapid development framework for node.js/couchDB/mongoDB web apps
@christopherdebeer
christopherdebeer / annotated.js
Created June 9, 2011 10:32
LZW compression and decompression by @_sebastienp (not me)
/*
Copyright (c) 2011 Sebastien P.
http://twitter.com/_sebastienp
MIT licensed.
---