Skip to content

Instantly share code, notes, and snippets.


Tahir H. Butt majorgreys

View GitHub Profile
majorgreys / grapevine.yaml
Last active Aug 29, 2015
The Grapevine dataset ( dataset in YAML format
View grapevine.yaml
# Grapevine Project state-level summary data on state appropriations FY1960 to FY2014
# Transcribed by Tahir Butt <>
- fiscalyear: 2014
sourcefile: tables/FY14/Table6f_GPV14.xlsx
note: Column E Total State Support (Less Returns and Portions of Multi-Year Appropriations
total: 76238167052
AL: 1440862304
AK: 383128100
majorgreys / Makefile
Last active Aug 29, 2015
pandoc bibliography formatting issues
View Makefile
all: pandocpdf pandoctexcsl pandoctexbiblatex
pandoc -s -S --bibliography=test.bib -o pandocpdf.pdf
pandoc -s -S --bibliography=test.bib -o pandoctexcsl.tex
pdflatex pandoctexcsl.tex
majorgreys / index.html
Created Oct 29, 2012
Experiment using D3.js to create a logo for HMNY 2013. View at
View index.html
<script src=""></script>
<link href='' rel='stylesheet' type='text/css'>
body { font-family: 'Arvo', serif; }
div#logo1 { font-family: 'Helvetica'; }
div#logo2 { font-family: 'Arvo'; }
majorgreys / stopcunycuts.tex
Created Mar 23, 2016
Latex file for generating PDF that I used to create posters for a rally. I projected the PDF onto a wall using an LCD projector and then traced the letters onto poster board.
View stopcunycuts.tex
% \usepackage{fontspec}
% \usepackage{xunicode}
% \usepackage{xltxtra}
% \setmainfont[Mapping=tex-text]{Lucida Sans Unicode}
majorgreys /
Last active Apr 4, 2016
tufteify pandocfilter

% An appealing title % Tahir

Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper.^[See the following note.] Aenean ultricies mi vitae est. Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, commodo vitae, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. Donec non enim in turpis pulvinar facilisis. Ut felis. Praesent dapibus, neque id cursus faucibus, tortor neque egestas augue, eu vulputate magna eros eu erat. Aliquam erat volutpat. Nam dui mi, tincidunt quis, accumsan porttitor, facilisis luctus, metus.

majorgreys / Dockerfile
Last active Nov 29, 2016
Headaches with docker-compose and xdebug
View Dockerfile
FROM wordpress
RUN yes | pecl install xdebug \
&& echo "zend_extension=$(find /usr/local/lib/php/extensions/ -name" > /usr/local/etc/php/conf.d/xdebug.ini \
&& echo "xdebug.remote_enable=on" >> /usr/local/etc/php/conf.d/xdebug.ini \
&& echo "xdebug.remote_autostart=off" >> /usr/local/etc/php/conf.d/xdebug.ini
majorgreys / reclaimWindows10.ps1
Created Jan 8, 2017 — forked from alirobe/reclaimWindows10.ps1
"Reclaim Windows 10" turns off a bunch of unnecessary Windows 10 telemetery, removes bloatware, and privacy invasions. Review and tweak before running. Scripts for reversing are included and commented. Fork via (different defaults)
View reclaimWindows10.ps1
# Win10 Initial Setup Script
# Author: Disassembler <>
# Version: 1.7, 2016-08-15
# dasm's script:
# This script leaves more MS defaults on, including MS security features.
# Tweaked based on personal preferences for @alirobe 2016-11-16 - v1.7.1

In order to migrate from Trello to Wunderlist, the following simple steps can be used to create Wunderlist tasks for each Trello card in a board:

  1. Find the short link for Trello board: e.g., => yzDiOoCC
  2. Download<SHORT_LINKE>.json after logging into Trello in a web browser
  3. $ cat <SHORT_LINK>.json | jq -r '.cards[] | select(.closed == false) | .name' | wunderline add --stdin

Of course you will need to have jq and wunderline installed:

$ sudo apt install jq
majorgreys /
Created Feb 8, 2017
CA and NY public systems mapping for IPEDS

I could not figure out how to get a mapping table for IPEDS ID to system out of the IPED data center. So instead I had to rebuild it by downloading data from NY and CA and adding the "System" varaible in the output. From there I used the following in R to create a "cleaned" system value since it was clear the IPEDS data system didn't provide exactly the system labels I was hoping for:

df %>% 
    system_cleaned = case_when(
      (str_detect(tolower(.$system), 'state university of new york') | 
         str_detect(tolower(.$system), 'suny')
       ) ~ 'SUNY',
 (str_detect(tolower(.$system), 'city university of ny') |
majorgreys / .dockerignore
Last active Mar 28, 2017
setting up a docker environment for CAC