https://gist.github.com/tekton/9943256
brew install libmemcached
easy_install pip
pip install virtualenv
virtualenv VENV
source VENV/bin/activate
export CFLAGS=-Qunused-arguments
export CPPFLAGS=-Qunused-arguments
pip install pylibmc
https://gist.github.com/tekton/9943256
brew install libmemcached
easy_install pip
pip install virtualenv
virtualenv VENV
source VENV/bin/activate
export CFLAGS=-Qunused-arguments
export CPPFLAGS=-Qunused-arguments
pip install pylibmc
I make new VM’s all the time, and keep forgetting the commands to install guest addition:
sudo apt-get install virtualbox-guest-additions
sudo apt-get install virtualbox-guest-dkms
Previously I talked about how I was going to experiment with moving all of my text editing to Sublime Text; this has been completed. While I still have TextMate installed I only use it to keep a “pristine” copy opened when checking changes/versions, or copy-pasting information. The ease of having one editing platform on every major OS platform that I’m programing in has been amazing, far more than I previously thought.
Whilst I didn’t think of coding as a visual medium previously I’m starting to understand that side of things a bit more. When every screen has the same look and feel it actually makes transitioning easier. I still have to go between Command and Alt for a lot of things; but that’s more on the keyboard setups than on any given application. In tracking the time I spent converting from OSX to Windows, OSX to Linux, and Windows to Linux they all went from around 15 minutes to about 3 minutes over the course of the month; the only real change being the text editors.
Since the “bundles” in Sublime Text are based on TextMate bundles I was able to get some old ones up and running very quickly. Additionally there’s a package manager that’s maintained by the community that makes installing a lot of extensions far easier to use. Getting a python lint utility and Django syntax highlighting was a breeze and has made using Django that much easier.
All in all, a worth while investment for anyone looking for a new, light-weight, flexible text editor that can pretty much do it all.
Working on seeing if I can switch to Sublime Text on all platforms to make my life a little easier. So far on Linux and Windows is has held up well; OSX is a bit tricker as I still like TextMate and I’m just used to it visually for everything, which is more important than I thought before starting this experiment again.
For my test today and this next week I’m going to be loading three projects in to Dropbox and leaving the files open in three settings to go back and forth and see if it works well and if there’s less “transition” time when going between platforms/locations.
Criteria being evaluated for a successful transition:
When using Django in Python there’s these awesome things called QuerySets that are a full blown ORM to make it so I don’t have to think in SQL to get things in and out of a database! One of the things I didn’t find documented very well was case sensitivity vs insensitivity.
If you’re using the MySQL backend the case-sensitive is implied, i.e. using BINARY LIKE instead of just LIKE
series = Series.objects.filter(name__contains=srch_str) |
To make sure that you’re searching for some that’s case insensitive you can do the following:
series = Series.objects.filter(name__icontains=srch_str) |
If you want it to work case insensitive no matter the backend, collation, or collection type just use icontain, istartswith, iendswith, iregex, iexact.
One of things I had the hardest time finding was a good example of Template Tags in Django; so here is my basic template tags file I add to every new project (GPLv2). A lot of people have their own, and I’m sure in the future I’ll add on to my basics; but for now these get me by. One of the things I’ve been wanting to do is write a good small primer for beginning Django, consider this my first foray in to making that a reality.
from django import template from django.template import Variable, VariableDoesNotExist register = template.Library() @register.filter def gVal(object, attr): """Check the array, dict, etc for a value""" quasai = { 'object' : object } #print "gVal :: " + str(attr) +" - "+ str(quasai) try: value = Variable('object.%s' % attr).resolve(quasai) except VariableDoesNotExist: value = None return value @register.filter def xVal(a,b): """Since Python resolves left to right in template tags: pass value and then the dick to check; returns value or 0""" #print "xVal",a,b if b.has_key(a): value = b[a] else: value = "0" return value @register.filter def hexVert(value): """Removes all values of # from the given string and replaces with %23""" if value != None: value = value.replace("#", '%23') value = value.replace("!", '%21') value = value.replace("&", '%26') return value |