Skip to content

Instantly share code, notes, and snippets.

Adam Shirey aeshirey

Block or report user

Report or block aeshirey

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 WikipediaArticle.cs
/// <summary>
/// Reads articles from a Wikipedia dump. The file currently must be BUnzipped. XML is assumed to be valid. <seealso cref=""/>
/// </summary>
/// <param name="filename">An unzipped Wikipedia dump</param>
/// <returns>An IEnumerable of articles from the XML file</returns>
public static IEnumerable<WikipediaArticle> ReadArticlesFromXmlDump(string filename)
var settings = new XmlReaderSettings()
ValidationType = ValidationType.None,
View WikipediaArticle.cs
/// <summary>
/// Writes a set of <see cref="WikipediaArticle"/>s to disk in a simple binary format consisting of the article title and the plaintext contents.
/// </summary>
/// <param name="articles">A set of articles, probably from <see cref="ReadArticlesFromXmlDump"/></param>
/// <param name="outputFilename">The filename into which articles should be saved</param>
/// <returns>The number of articles written</returns>
public static int WriteToDisk(IEnumerable<WikipediaArticle> articles, string outputFilename)
var numberOfArticles = 0;
using (var fh = File.Create(outputFilename))
aeshirey / Chrome, maybe.lnk
Last active Jan 26, 2017
Sick of how bloated Chrome is, I created an alternate Chrome shortcut to help Future Me remember to refrain from using it, if possible
View Chrome, maybe.lnk
C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -Command "if ((New-Object -ComObject Wscript.Shell).Popup('Remember how bloated Chrome is? Open Edge instead?',0,'Really?',0x1)) { start microsoft-edge: } else { start chrome.exe }" -WindowStyle Hidden
View MicrosoftCognitiveTranslator.fs
module MicrosoftCognitiveTranslator
open System
open System.Net
open System.Net.Http
open System.Web
type Translator() =
let AsyncGetAccessToken () =
let CognitiveServicesAccountKey = "<your cognitive services key>" // see
aeshirey / venn.min.js
Created Sep 13, 2018
A minified, publicly available version of
View venn.min.js
!function(t,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("d3-selection"),require("d3-transition")):"function"==typeof define&&define.amd?define(["exports","d3-selection","d3-transition"],r):r(t.venn={},t.d3,t.d3)}(this,function(t,C,r){"use strict";var w=1e-10;function x(r,t){var n,e=function(t){for(var r=[],n=0;n<t.length;++n)for(var e=n+1;e<t.length;++e)for(var a=k(t[n],t[e]),i=0;i<a.length;++i){var s=a[i];s.parentIndex=[n,e],r.push(s)}return r}(r),a=e.filter(function(t){return function(t,r){for(var n=0;n<r.length;++n)if(R(t,r[n])>r[n].radius+w)return!1;return!0}(t,r)}),i=0,s=0,u=[];if(1<a.length){var o=P(a);for(n=0;n<a.length;++n){var f=a[n];f.angle=Math.atan2(f.x-o.x,f.y-o.y)}a.sort(function(t,r){return r.angle-t.angle});var l=a[a.length-1];for(n=0;n<a.length;++n){var h=a[n];s+=(l.x+h.x)*(h.y-l.y);for(var x={x:(h.x+l.x)/2,y:(h.y+l.y)/2},c=null,g=0;g<h.parentIndex.length;++g)if(-1<l.parentIndex.indexOf(h.parentIndex[g])){var v=r[h.parentIndex[g]],p=Math.atan2(h.x-v.x,h.y-v.y),d=
View Keybase proof
### Keybase proof
I hereby claim:
* I am aeshirey on github.
* I am adamshirey ( on keybase.
* I have a public key ASBGD1ACCiGZ0YRRZCuMxEAZncMYrJI5_Ima7UdJqXYRogo
To claim this, I am signing this object:
View kegerator.c.ino
// Code accompanying my blog post on my kegerator setup, found here:
// 1.
#include <OneWire.h>
// 2.
#include <DallasTemperature.h>
#define LOGGING
View ESP8266_DHT11.c
#include <DHTesp.h>
#include "Adafruit_MQTT.h"
#include "Adafruit_MQTT_Client.h"
#include <ESP8266WiFi.h>
#define LOOP_MS 60000
#define DhtPin 14
DHTesp dht;
#!/usr/bin/env python
import paho.mqtt.client as mqtt
import json
import requests
TOPIC = "weather/renton"
URL = "<your api key goes here>"
API_DELAY_SEC = 60 * 10 # every 10 minutes
View ventilation.yaml
- id: '1234'
alias: ventilate_on
- payload: 'on'
platform: mqtt
topic: ventilate
condition: []
- data:
entity_id: switch.wind_tunnel
You can’t perform that action at this time.