Skip to content

Instantly share code, notes, and snippets.

@puentesarrin
puentesarrin / qualname.py
Created February 18, 2014 20:46
__qualname__
# http://www.python.org/dev/peps/pep-0395/
if sys.version_info >= (3, 3):
def qualname(obj):
if not hasattr(obj, '__name__') and hasattr(obj, '__class__'):
return qualname(obj.__class__)
return '.'.join((obj.__module__,
getattr(obj, '__qualname__', None) or obj.__name__))
else:
def qualname(obj):
@puentesarrin
puentesarrin / blocking_vertx.py
Last active August 29, 2015 14:01
vert.x: Samples of blocking and non-blocking Python Web Server
import time
import vertx
server = vertx.create_http_server()
@server.request_handler
def request_handler(req):
if request.uri == '/sleep':
time.sleep(60 * 1)
@puentesarrin
puentesarrin / week_1.txt
Last active August 29, 2015 14:02
M101J Week 1 & 2 Video List
M101J Week 1 Video List
https://www.youtube.com/watch?feature=player_embedded&v=FN10crzDOjk
https://www.youtube.com/watch?feature=player_embedded&v=ysg0vfgg6fI
https://www.youtube.com/watch?feature=player_embedded&v=q2iLKZ1LgjI
https://www.youtube.com/watch?feature=player_embedded&v=CAR42sMkXEo
https://www.youtube.com/watch?feature=player_embedded&v=-KIC1LXxcGM
https://www.youtube.com/watch?feature=player_embedded&v=IAvnMgvHuLw
https://www.youtube.com/watch?feature=player_embedded&v=swhH4q_2Ttc
https://www.youtube.com/watch?feature=player_embedded&v=f-lyGAMnNY4
@puentesarrin
puentesarrin / zsh.md
Created June 11, 2014 19:29 — forked from tsabat/zsh.md
import pymongo
db = pymongo.MongoClient().school
for student in db.students.find():
hws = {s['score']: i for i, s in enumerate(student['scores'])
if s['type']=='homework'}
index = hws[min(hws.keys())]
del student['scores'][index]
import motor
from functools import partial
from tornado import gen, ioloop, web
class MyHandler(web.RequestHandler):
@gen.coroutine
def get(self):
class BadgeManager(Manager) # This equals your BaseBadgeManager
def get_by_id(self, roar_id, id_or_ids):
pass
def drop(self, roar_id, badge_id):
pass
class BaseBadge(models.Model):
> db.collection.insert({primary_tag: 'dog', secondary_tags: ['dogs', 'doggy', 'puppy']})
> var tags = []
> db.collection.find({'$or': [{'primary_tag': {'$in': tags}}, {'secondary_tags': {'$in': tags}}]}).explain()
{
"cursor" : "BasicCursor",
"isMultiKey" : false,
"n" : 0,
"nscannedObjects" : 1,
"nscanned" : 1,
"nscannedObjectsAllPlans" : 1,
@puentesarrin
puentesarrin / gist:2927255
Created June 14, 2012 00:09
Simple cache for Tornado Handler using MongoDB
class CacheBaseHandler(tornado.web.RequestHandler):
def prepare(self):
cached = self.application.db.cache.find_one({"slug": self.request.path})
if cached is not None:
self.write(cached["content"])
self.finish()
def render_string(self, template_name, **kwargs):
html_generated = \
@puentesarrin
puentesarrin / gist:3020783
Created June 29, 2012 21:30
Logging Twisted WebProxy requests with MongoDB
from twisted.internet import reactor
from twisted.web import proxy, http
import datetime
import pymongo
db = pymongo.Connection()['proxy']
class LoggingProxyRequest(proxy.ProxyRequest):
def process(self):