Skip to content

Instantly share code, notes, and snippets.

Michael Blume MichaelBlume

Block or report user

Report or block MichaelBlume

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View tumblr android crash
01-10 16:12:36.311 15315 15315 D AndroidRuntime: Shutting down VM
01-10 16:12:36.320 15315 15315 D HockeyApp: Writing unhandled exception to: /data/user/0/com.tumblr/files/202aa2c9-7325-4ec6-a2f1-45f96266dd92.stacktrace
01-10 16:12:36.332 15315 15315 W System.err: java.lang.AbstractMethodError: abstract method "int android.text.ParcelableSpan.getSpanTypeIdInternal()"
01-10 16:12:36.332 15315 15315 W System.err: at android.text.TextUtils.writeToParcel(
01-10 16:12:36.332 15315 15315 W System.err: at android.os.Parcel.writeCharSequence(
01-10 16:12:36.332 15315 15315 W System.err: at android.view.accessibility.AccessibilityNodeInfo.writeToParcel(
01-10 16:12:36.332 15315 15315 W System.err: at android.os.Parcel.writeTypedList(
01-10 16:12:36.332 15315 15315 W System.err: at android.view.accessibility.IAccessibilityInteractionConnectionCallback$Stub$Proxy.setFindAccessibilityNodeInfosResult(IAccessibilityInteractionConnectio
MichaelBlume / Chat.hs
Last active Jan 3, 2016
Transforms gchat logs into tumblr chat posts
View Chat.hs
#!/usr/bin/env runhaskell
module Main (main) where
-- When you copy a conversation out of your google chat logs, it looks like
-- this
-- Alice
-- hi
-- how are you
-- Bob Smith
MichaelBlume / gist:6968441
Last active Dec 25, 2015
obj: reify for python
View gist:6968441
# Writing some unit tests in Python, I found myself homesick for Clojure's `reify`.
from functools import partial
class Blank(object): pass
def obj(*fs):
o = Blank()
for f in fs:
setattr(o, f.func_name, partial(f, o))
MichaelBlume / babel.hs
Last active Dec 18, 2015
prints the library of babel
View babel.hs
import Control.Monad
chars :: [Char]
chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ,.'\"-;:?!()"
incrementS :: [[Char]] -> [[Char]]
incrementS [] = [chars]
incrementS ([_] : r) = chars : (incrementS r)
incrementS ((c:cs) : r) = cs : r
View split-with.clj
(defn my-split-with [pred coll]
(let [p (promise)
passes ((fn step [c]
(if-let [[x & xs] (seq c)]
(if (pred x)
(cons x (step xs))
(do (deliver p c) nil))
(do (deliver p nil) nil))))
View rebase-error
Initialized empty Git repository in /Users/michael.blume/workspace/git/t/trash directory.t3400-rebase/.git/
expecting success:
git config core.logAllRefUpdates true &&
echo First >A &&
git update-index --add A &&
git commit -m "Add A." &&
git checkout -b force-3way &&
echo Dummy >Y &&
git update-index --add Y &&
git commit -m "Add Y." &&
View returning.clj
(ns honeysql.extensions.returning
[honeysql.format :as f]
[honeysql.helpers :as h]))
(defmethod f/format-clause :returning [[_ fields] _]
(str "RETURNING " (f/comma-join (map f/to-sql fields))))
(f/register-clause! :returning 225)
MichaelBlume /
Created Oct 27, 2012
Beeminder writing check
#!/usr/bin/env python
import envoy
import requests
import time
r ="find /Users/mike/Dropbox/writing | grep -v DS_Store | xargs wc -c")
count = r.std_out.split()[-2]
kb_written = int(count) // 1024
url = ""
MichaelBlume / escroll.hs
Created Oct 26, 2012
Cute script for drawing attention to errors in scrolling log output
View escroll.hs
#!/usr/bin/env runhaskell
import Data.List
import Control.Concurrent
import System.IO
takeBlock :: [String] -> (String, [String])
takeBlock (firstLine:moreLines) = (block, restLines) where
block = intercalate "\n" (firstLine:indLines)
(indLines, restLines) = span (isPrefixOf " ") moreLines
MichaelBlume / gist:3921530
Created Oct 20, 2012
Transformations on JSON schemas. Also strictness.
View gist:3921530
def rec_schema_transform(transform):
def recur(schema):
if not isinstance(schema, dict):
for k, v in schema.items():
if k in ("properties", "patternProperties", "dependencies"):
for _, subschema in v.items():
elif k in ("additionalProperties", "additionalItems") and v:
You can’t perform that action at this time.