Skip to content

Instantly share code, notes, and snippets.

View Derfirm's full-sized avatar

Andrew Grinevich Derfirm

View GitHub Profile
import xmlsec
from lxml import etree
from M2Crypto import X509
import StringIO
import inspect
# apt-get install libxml2-dev libxmlsec1-dev
# pip install --user xmlsec
# sudo apt-get install python-m2crypto
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from base64 import b64decode
from json import loads
import json
import requests
a = """
ewoJInNpZ25hdHVyZSIgPSAiQXBCZVh4ekROTnBpL05KVDBlTnlyOS9TMURZUTgyMmc4L2ozcEkrWGhVY2ZSeDBycnBJd2xLTC92ZDFRNGZ5MTlLTWJNL1Z1RElQZXV3TktIbCtnRkM1WDRZKzhVTzN0R3VNZzVkTit6SDFkRzh3WURhcDdOWjFFSEZRV05MNXMyN0V6LzhzNjY2WUthdXZIdTlMY1V4bGtVZVZlVTQ2RkVwRFpad3JTcmxyOEFBQURWekNDQTFNd2dnSTdvQU1DQVFJQ0NCdXA0K1BBaG0vTE1BMEdDU3FHU0liM0RRRUJCUVVBTUg4eEN6QUpCZ05WQkFZVEFsVlRNUk13RVFZRFZRUUtEQXBCY0hCc1pTQkpibU11TVNZd0pBWURWUVFMREIxQmNIQnNaU0JEWlhKMGFXWnBZMkYwYVc5dUlFRjFkR2h2Y21sMGVURXpNREVHQTFVRUF3d3FRWEJ3YkdVZ2FWUjFibVZ6SUZOMGIzSmxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1CNFhEVEUwTURZd056QXdNREl5TVZvWERURTJNRFV4T0RFNE16RXpNRm93WkRFak1DRUdBMVVFQXd3YVVIVnlZMmhoYzJWU1pXTmxhWEIwUTJWeWRHbG1hV05oZEdVeEd6QVpCZ05WQkFzTUVrRndjR3hsSUdsVWRXNWxjeUJUZEc5eVpURVRNQkVHQTFVRUNnd0tRWEJ3YkdVZ1NXNWpMakVMTUFrR0ExVUVCaE1DVlZNd2daOHdEUVlKS29aSWh2Y05BUUVCQlFBRGdZMEFNSUdKQW9HQkFNbVRFdUxnamltTHdSSnh5MW9FZjBlc1VORFZFS
class A:
def b(self):
pass
if A.b is A.b:
print("Python 3")
else:
print("Python 2")
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from mongoengine import *
from collections import namedtuple
import copy
connect('project1')
class Groups(Document):
{
"seatbid": [{
"bid": [{
"iurl": "http://md-nj.lfstmedia.com/direct/crv181565?adkey=a5c",
"nurl": "http://",
"cid": "cmp14199",
"crid": "crv181565",
"price": 0,
"adid": "crv181565",
"crtype": "HTML5",
import os
import logging
from settings import LOGS_DIR
loggers = {}
class Logger(object):
global loggers
file_name = None
from collections import defaultdict
def get_nested_default(d, path):
return reduce(lambda d, k: d.setdefault(k, {}), path, d)
keypath = ["a", "b", "c"]
seq = [
@Derfirm
Derfirm / latency.txt
Created January 16, 2017 21:47
Latency Numbers Every Programmer Should Know
Latency Comparison Numbers
--------------------------
L1 cache reference 0.5 ns
Branch mispredict 5 ns
L2 cache reference 7 ns 14x L1 cache
Mutex lock/unlock 25 ns
Main memory reference 100 ns 20x L2 cache, 200x L1 cache
Compress 1K bytes with Zippy 3,000 ns 3 us
Send 1K bytes over 1 Gbps network 10,000 ns 10 us
Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD
@Derfirm
Derfirm / colorize_ouput.py
Last active May 3, 2017 07:56
Colorize console output
class bcolors(object):
HEADER = '\033[95m'
OKBLUE = '\033[94m'
OKGREEN = '\033[92m'
WARNING = '\033[93m'
FAIL = '\033[91m'
ENDC = '\033[0m'
BOLD = '\033[1m'
UNDERLINE = '\033[4m'
DEBUG = '\033[94m'
#!/usr/bin/env python
# pylint: disable=invalid-name
"""
Validates files before they are committed to a git repository
Copyright (C) 2015-2016 Peter Mosmans [Go Forward]
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or