Skip to content

Instantly share code, notes, and snippets.

View ishahid's full-sized avatar

Imran Shahid ishahid

View GitHub Profile
@ishahid
ishahid / anagram.py
Last active January 3, 2016 07:29
Find all anagrams for a given word from a list of words.
def signature(word):
""" Returns the sorted word """
return ''.join(sorted(word))
def anagrams(word):
""" Returns a list of all anagrams for a given word """
words = [w.strip().lower() for w in open('words.txt')]
@ishahid
ishahid / dropbox_poc.py
Last active August 29, 2015 13:56
Dropbox File Transfer Comparison - Queue vs Parallel
#!/usr/bin/python
"""
Dropbox File Transfer Comparison - POC
This program compares the speed of uploading multiple files to dropbox using
both queued and parallel connections per file.
"""
import time
#! /usr/bin/env python
# -*- coding: utf-8 -*-
"""
Write tags to files
Usage:
tag.py "TagName" FileName1 FileName2
You can use wildcards for the file name. Use quotes if spaces in tags.
To check if it worked, use xattr -l FileName
@ishahid
ishahid / sort_json_array.js
Created February 26, 2014 03:26
Generic way of sorting JSON array by attribute
function sort_by(attr) {
return function(a, b) {
if( a[attr] > b[attr]) {
return 1;
} else if( a[attr] < b[attr] ) {
return -1;
}
return 0;
}
}
@ishahid
ishahid / docx.py
Last active August 29, 2015 13:56
Utility to replace variables enclosed in square brackets with the given value in Microsoft Word docx files. Based upon the following blog post. http://virantha.com/2013/08/16/reading-and-writing-microsoft-word-docx-files-with-python/
import os, re, zipfile, shutil, tempfile
from lxml import etree
class docx():
def __init__(self, docx_filename):
self.filename = docx_filename
with open(self.filename) as f:
self.zipfile = zipfile.ZipFile(f)
@ishahid
ishahid / git_commits_monthly
Created March 25, 2015 04:49
bash script to find monthly git commits by users on monthly basis
#/bin/bash
DATES=("2014-03-01" "2014-04-01" "2014-05-01" "2014-06-01" "2014-07-01" "2014-08-01" "2014-09-01" "2014-10-01" "2014-11-01" "2014-12-01" "2015-01-01" "2015-02-01" "2015-03-01")
let "counter = 1"
for i in "${DATES[@]}"
do
echo -n "$i"
echo
git shortlog -s -n --after=${DATES[counter-1]} --before=${DATES[counter]}
@ishahid
ishahid / api-key.py
Last active January 6, 2016 12:42
Generates a random API key
#!/usr/bin/python
"""Generate a random API key
https://gist.github.com/ishahid/54f0478e480234fa44ec
"""
import base64
import hashlib
import random
@ishahid
ishahid / quote.py
Last active February 8, 2016 02:32
Get quote from stock market using Google Finance
#!/usr/bin/python
"""Get quote from stock market using Google Finance
https://gist.github.com/ishahid/9f0823c19b6d387529f4
"""
try:
import os, sys
import json
import googlefinance as google

Keybase proof

I hereby claim:

  • I am ishahid on github.
  • I am ishahid (https://keybase.io/ishahid) on keybase.
  • I have a public key whose fingerprint is DD3B DD86 B1D3 AD6B 2F49 722E 1451 55DE 0BAD E780

To claim this, I am signing this object:

@ishahid
ishahid / .bash_profile
Last active September 20, 2017 23:54
# ---------------------------------------------------------------------------
#
# Description: This file holds all my BASH configuration and aliases
#
# Sections:
# 1. Environment Configuration
# 2. Make Terminal Better (remapping defaults and adding functionality)
# 3. File and Folder Management
# 4. Searching
# 5. Process Management