Skip to content

Instantly share code, notes, and snippets.

Working from home

Phil Haack haacked

Working from home
Block or report user

Report or block haacked

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
haacked / index.js
Created Feb 9, 2019
Probot handler for the Why Not Both app
View index.js
module.exports = (app) => {
// Respond to new issue comments
app.on('issue_comment.created', async context => {
const message = context.payload.comment.body
// The following does a rough approximation of
// trying to find a question that proposes two
// alternatives. It's not very smart about it,
// but good enough for our case.
const dichotomy = message.toLowerCase()

Keybase proof

I hereby claim:

  • I am haacked on github.
  • I am haacked ( on keybase.
  • I have a public key whose fingerprint is BF14 9135 A9BB DB1E DF3B 0F27 51AC AFF3 A55E 8DE3

To claim this, I am signing this object:

haacked /
Last active Feb 24, 2017
A selection of articles and books that have inspired some of the topics in recent talks I've given.
haacked /
Created Sep 30, 2015
Raw notes from Creativity Inc. Someday I'll do something better with it. Someday.

Creativity, Inc.: Overcoming the Unseen Forces That Stand in the Way of True Inspiration

Ed Catmull, Amy Wallace

When it comes to creative inspiration, job titles and hierarchy are meaningless.

Sincerely believing that we were in an inclusive meeting, we saw nothing amiss because we didn’t feel excluded.

My willingness to do this reflected my world-view, forged in academia, that any hard problem should have many good minds simultaneously trying to solve it.

For all the care you put into artistry, visual polish frequently doesn’t matter if you are getting the story right.

haacked / download-nuget-licenses.ps1
Created Mar 31, 2015
A PowerShell script to download your NuGet package licenses as first seen in
View download-nuget-licenses.ps1
@( Get-Project -All |
? { $_.ProjectName } |
% { Get-Package -ProjectName $_.ProjectName } ) |
Sort -Unique |
% { $pkg = $_ ; Try { (New-Object System.Net.WebClient).DownloadFile($pkg.LicenseUrl, 'c:\dev\licenses\' + $pkg.Id + ".txt") } Catch [system.exception] { Write-Host "Could not download license for $pkg" } }
View encouragements.txt
😱 Seriously?
😷 That's a bad look.
Burn it to the ground! 🔥
😠 Torvalds frowns at you.
🚶 Have you considered another career?
You must hate your coworkers. 👹
😡 You must hate yourself.
Ha! Yeah, that'll work. 😄
😕 Are you just hitting keys at random?
You code like a PM. 😐
haacked / git-show-output
Created Feb 24, 2014
git show --cc cc5b002a
View git-show-output
commit cc5b002a5140e2d60184de42554a8737981c846c
Merge: 4d02bc5 34bdb41
Author: David Fowler <>
Date: Thu Nov 22 11:28:35 2012 -0800
Merge branch 'release' into dev
diff --cc tests/Microsoft.AspNet.SignalR.FunctionalTests/Client/HubProxyFacts.cs
index aaad4c4,8bf42fc..4979ab7
--- a/tests/Microsoft.AspNet.SignalR.FunctionalTests/Client/HubProxyFacts.cs
haacked / diff-tree-output
Created Feb 22, 2014
git diff-tree --cc cc5b002a on signalr/signalr
View diff-tree-output
diff --cc tests/Microsoft.AspNet.SignalR.FunctionalTests/Client/HubProxyFacts.cs
index aaad4c4,8bf42fc..4979ab7
--- a/tests/Microsoft.AspNet.SignalR.FunctionalTests/Client/HubProxyFacts.cs
+++ b/tests/Microsoft.AspNet.SignalR.FunctionalTests/Client/HubProxyFacts.cs
@@@ -36,11 -36,9 +37,11 @@@ namespace Microsoft.AspNet.SignalR.Test
- proxy.Invoke("Send", "hello").Wait();
View rx-pipeline-example.fs
open System
open System.Reactive
open System.Reactive.Linq
let seq = [1; 2; 3; 4].ToObservable()
// Add curryable versions of Rx methods
let select (selector:'TSource -> 'TResult) (source:IObservable<'TSource>) =
Observable.Select(source, selector)
haacked / Disqus.html
Created Dec 10, 2013
Disqus Jekyll template include
View Disqus.html
{% comment %} Load script if disquss comments are enabled and `page.comments` is either empty (index) or set to true {% endcomment %}
{% if site.disqus_short_name and page.comments != false %}
<script type="text/javascript">
var disqus_shortname = '{{ site.disqus_short_name }}';
{% if page.comments == true %}
{% comment %} `page.comments` can be only be set to true on pages/posts, so we embed the comments here. {% endcomment %}
// var disqus_developer = 1;
var disqus_identifier = '{% if page.disqus_identifier %}{{ page.disqus_identifier}}{% else %}{{ site.url }}{{ page.url }}{% endif %}';
var disqus_url = '{{ site.url }}{{ page.url }}';
var disqus_script = 'embed.js';
You can’t perform that action at this time.