View gist:923089083b5c603397d0
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import base64 | |
import uuid | |
import hashlib | |
def hash_password(password, salt=None): | |
if salt is None: | |
salt = uuid.uuid4().hex | |
hashed_password = hashlib.sha512(password + salt).hexdigest() |
View gist:4cee831a36cbd80a638c
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# show the contents of the index | |
git ls-files --stage | |
# look at contents of a git object | |
git show [hash] |
View da.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#http://stackoverflow.com/questions/2440692/formatting-floats-in-python-without-superfluous-zeros | |
#https://docs.python.org/2/library/string.html#format-specification-mini-language | |
'{0:g}'.format(3.140) |
View s.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#http://stackoverflow.com/questions/2295765/generating-recurring-dates-using-python | |
import dateutil.rrule as dr | |
import dateutil.parser as dp | |
import dateutil.relativedelta as drel | |
rr = dr.rrule(dr.MONTHLY,byweekday=drel.FR(3),dtstart=start, count=10) | |
print map(str,rr) | |
print map(str,rr[::2]) |
View fib.cpp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include<iostream> | |
// primary template | |
template<int i> | |
struct Fib { | |
static int const value = Fib<i-1>::value + Fib<i-2>::value; | |
}; | |
// specializations to stop recursion | |
// specialization is indicated |
View gist:17d5e2ba913b6e564693
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
sudo apt-get update | |
sudo apt-get install build-essential cmake | |
sudo apt-get install python-dev | |
#install vundle https://github.com/gmarik/Vundle.vim#about | |
git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim | |
#modify .virmc to use Vundle per https://github.com/gmarik/Vundle.vim#about | |
#Add a line like 'Plugin "Valloric/YouCompleteMe"' in bet | |
# run :PluginInstall to install all the specified plugins from VIM |
View gist:22b636302e79b8a64a30
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
sudo apt-get install nodejs | |
sudo apt-get install npm | |
sudo ln -s /usr/bin/nodejs /usr/bin/node | |
npm -g install phantomjs | |
pip install selenium |
View gist:5095b384db3595869ebb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cannot find vcvarsall.bat when trying to build Python libraries. Python 2.7 is built with the Visual Studio 2008 compiler and so extension modules must be build with the same compiler. So install VS C++ 2008 Express which will set the VS90COMNTOOLS environment variable. | |
http://go.microsoft.com/?linkid=7729279 - by default this version will only give you a 32-bit compiler - so it will only work for installing into a 32-bit Python. | |
http://stackoverflow.com/questions/2817869/error-unable-to-find-vcvarsall-bat | |
http://stackoverflow.com/a/18045219 | |
Update for x64 Compilers: By default this will only give you a 32-bit compiler. I learned (from here and here) that you can download specifically the Windows SDK for Windows 7 and .NET Framework 3.5 SP1 which gives you a x64 compiler for VC++ 2008 (VC++ 9.0) if you need it. Just when you are installed it, you can uncheck everything except Developer Tools >> Visual C++ Compilers which will keep you from installing all the extra SDK tools that you may not need. |
View lockfreestack.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void | |
Stack::push(int val) | |
{ | |
StackHead expected = head.load(); | |
StackItem *newItem = new StackItem(val); | |
StackHead newHead; | |
newHead.link = newItem; | |
do { | |
newItem->next = expected.link; | |
newHead.count = expected.count + 1; |
NewerOlder