Skip to content

Instantly share code, notes, and snippets.

Working from home

Marc Köhlbrugge marckohlbrugge

Working from home
View GitHub Profile
View get_discord_guilds_for_user.rb
# Make sure you have a .env file with DISCORD_CLIENT_ID set
require "dotenv/load"
require "http"
puts "Go to the following URL in your browser to authorize this application:"
puts "{ENV.fetch("DISCORD_CLIENT_ID")}&"
puts ""
puts "Paste the URL you were redirected to after authorization:"
marckohlbrugge / bookmarklet.js
Last active Dec 31, 2019
Shows all tweets with 25+ retweets of Twitter profile you're currently looking at.
View bookmarklet.js
javascript:(function() // window.location = `${document.location.href.match(/\/([a-z0-9_]+)/i)[1]}%20min_retweets%3A25&src=typed_query`
body { background-color: rgb(246, 246, 239); margin-top: 0 }
.title { font-size: 16px; padding-top: .6em; padding-bottom: .3em; }
.athing > .votelinks { padding-top: .8em }
.subtext { font-size: 12px; }
.comment { font-size: 16px; line-height: 1.5; }
marckohlbrugge / countdown.rb
Last active Oct 10, 2018
Calculates estimated time it takes for a block to return zero. Useful when running operations in parallel (e.g. migrations).
View countdown.rb
# Calculates estimated time it takes for a block to return zero. Useful when
# running operations in parallel (e.g. migrations).
# Usage:
# Run in IRB/Rake/whatever: add_slugs_to_each_post # example of long-running operations
# Run in parallel IRB session: countdown { Post.where(slug: nil).count }
# sleep_time parameter is optional. The higher the value the more accurate the
# results, but the longer the method takes to run.
marckohlbrugge / unread_only.js
Created May 3, 2018
Hides all read chats so you only see unread chats. Save this as a bookmarklet with and run on
View unread_only.js
$(".im_dialog_wrap").each(function(index, el){$(el).parents("li.im_dialog_wrap").addClass("ng-hide");});
marckohlbrugge / wip_graphql_demo.rb
Last active Sep 16, 2022
Ruby example of creating a todo and then completing it using graphql.
View wip_graphql_demo.rb
# NOTE: Be sure to set the API key further down in the code!
require "net/http"
require "uri"
require "json"
class WIP
def initialize(api_key:)
@api_key = api_key
View text_utils.rb
text = %{This validates there's a lot of attention and real business to be made targeting the nomad and remote work space. Even if nomads have previously had an image of low-income. There's money here.}
def garble(input, intro: 0)
length = input.length
output = []
for position in 0...length
percentage = (position / length.to_f)
output << if percentage < intro ||
percentage < rand ||
marckohlbrugge /
Last active Sep 26, 2020
ubersicht widget that pulls in next wipchat todo to work on
# This is a simple example Widget, written in CoffeeScript, to get you started
# with Übersicht. For the full documentation please visit:
# You can modify this widget as you see fit, or simply delete this file to
# remove it.
# this is the shell command that gets executed every time this widget refreshes
command: "whoami"
View com.marckohlbrugge.batchImportDvds.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "">
<plist version="1">
# - Make sure to make the script executable using chmod
# - chmod +x
# (chmod stands for change mode)
# (x stands for executable)
# This script builds upon the work of 'mrzarquon' found here: