Skip to content

Instantly share code, notes, and snippets.

View buren's full-sized avatar

Jacob Burenstam Linder buren

View GitHub Profile

Keybase proof

I hereby claim:

  • I am buren on github.
  • I am buren (https://keybase.io/buren) on keybase.
  • I have a public key whose fingerprint is A7ED 5FE6 79AA 414B 405F E637 CCC5 6E36 265C 2FB3

To claim this, I am signing this object:

@buren
buren / language_wikimedia.js
Created March 23, 2016 17:29
and convert languages from Wikimedia to CSV
// Extract and convert languages @ below URL to CSV
// https://meta.wikimedia.org/wiki/Template:List_of_language_names_ordered_by_code
var langCode = [];
$('.wikitable tbody tr td:nth-child(1)').each(function(){
langCode.push($(this).text());
});
var enName = [];
$('.wikitable tbody tr td:nth-child(2)').each(function(){
@buren
buren / a-jsonapi-datastore.js
Last active March 29, 2016 16:10
Example jsonapi-datastore usage
var fs = require('fs')
var JsonApiDataStore = require('jsonapi-datastore').JsonApiDataStore;
function readExampleToObject(fileName, callback) {
fs.readFile(fileName, 'utf8', function (err, data) {
if (err) {
return console.log(err);
}
return callback(JSON.parse(data));
});
@buren
buren / gem_irb_session.rb
Created June 23, 2016 07:37
Start a IRB session with a gem loaded
# From http://erniemiller.org/2014/02/05/7-lines-every-gems-rakefile-should-have/
task :console do
require 'irb'
require 'irb/completion'
require 'my_gem'
ARGV.clear
IRB.start
end
@buren
buren / gem_inline_install.rb
Created August 7, 2016 22:53
Install gems on demand, in scripts, using Bundler inline.
require 'bundler/inline'
gemfile(true) do # `true` means install on demand
source 'https://rubygems.org'
gem 'sinatra'
end
@buren
buren / skills-sql-foo.sql
Created February 7, 2017 13:56
Map user skills to rule the world
SELECT "users"."id", "users"."email",
"user_skills1"."skill_id", "user_skills1"."proficiency", "user_skills1"."proficiency_by_admin",
"user_skills2"."skill_id", "user_skills2"."proficiency", "user_skills2"."proficiency_by_admin"
FROM "users"
INNER JOIN "user_skills" as user_skills1 ON "user_skills1"."user_id" = "users"."id" AND (user_skills1.skill_id = 1 AND (user_skills1.proficiency >= 3 OR user_skills1.proficiency_by_admin >= 3))
INNER JOIN "user_skills" as user_skills2 ON "user_skills2"."user_id" = "users"."id" AND (user_skills2.skill_id = 26 AND user_skills2.proficiency_by_admin >= 1)
@buren
buren / first_time_job_performers.sql
Created March 7, 2017 23:04
Total first time job performers between dates
-- First time job performers between dates
SELECT user_performed_in_range.user_id FROM (
SELECT
users.id as user_id,
COUNT(users.id) as user_performed_jobs_count
FROM "jobs"
INNER JOIN job_users on job_users.job_id = jobs.id AND job_users.will_perform = true
INNER JOIN users on job_users.user_id = users.id
WHERE (job_end_date >= {start_time} AND job_end_date <= {end_time})
AND cancelled = false
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@buren
buren / just-arrived-dev-machine-setup.md
Created May 12, 2017 12:05
Just Arrived - Dev machine setup

Just Arrived - Dev machine setup

  1. Install Homebrew

    First of all install Homebrew a.k.a brew (OSX package manager, like apt-get).

    Goto https://brew.sh/ and follow the instructions.

  2. Install Command Line Tools

@buren
buren / parse_documents.rb
Last active June 25, 2017 21:12
Parse documents with the yomu gem.
require 'yomu'
filename_or_stream = ARGV[0] # This could also be a tempfile or any object that responds to #read
parsed_document = Yomu.new(filename_or_stream)
metadata = parsed_document.metadata
result = {
title: metadata['title'],
created_at: metadata['meta:creation-date'],