Ian Lewis Ian Lewis is a web developer living in Tokyo Japan. His current interests are in Django, python, alternative databases and rapid web application development.
About Me...

Orchestration with Fabric #1

When figuring out how I wanted to deploy my website I had a few things that I knew I wanted. I wanted to be able to create my server(s), provision them, and deploy the app all from one tool. This will be the first in a series of posts about how I used Fabric to achieve that. Tools like Vagrant can be used to create servers and provision them, but deploying an app using a provisioning tool li[...]

Javascript Templating Languages

I have been looking at JavaScript templating libraries recently for a personal project and I'd like to write about my thoughts here. Up until now, I had only really needed to use JavaScript on the client side, in the browser. While most libraries will work on the server side as a matter of course, many aren't particularly good at rendering entire documents. I wanted something that would be e[...]

Pickling Objects with Cached Properties

Python descriptors allow you to create properties on python objects that are the result of executing some code. One of the simplest ways of doing that is using the `@property` decorator. Here, accessing the `myprop` will call the method and return the resulting `"data"`. class MyClass(object): @property def myprop(self): return "data" [...]

Some General Trends in Programming Languages

There are a number of next generation of languages that have come out and are becoming popular in recent years that are trying to use what has been learned from large development projects. Some of the more popular languages aimed at servers are Go, Rust and Haskell. Others like TypeScript, and Dart are targeting the client side as well as server side applications. There are some common threa[...]

New Year’s Python Meme 2014

Since everyone else was doing it I thought I'd write one up too.

App Engine Pull Queues and kombu

App Engine provides a pull queue API for accessing, leasing, and processing tasks outside of App Engine. I am a fan of Python and so I often use a task queue system called Celery. This system or framework provides a full task queue worker that can use a number of messaging exchanges for getting the tasks. This is achieved using a library called kombu which provides backends for a number [...]

PyCon APAC 2013

PyCon APAC 2013 is over! Thanks to everyone who helped make the conference a great success. Staff, speakers, attendees alike all contributed to making PyCon APAC 2013 the best PyCon in Japan ever.

Using jQuery deferreds with Backbone.js

Backbone.js is a neat little JavaScript model framework. It gives you nice way of making Models and allows you to fetch and save them to the server easily using a REST API. One of the nice things about Backbone is that for a while it has returned the the result of calling the ajax function back to the application, which if you are using jQuery is a jQuery deferred. This allows you to do cool [...]

Learning a Language as Muscle Memory

Note This post is cross-posted from my post on medium. I learned a lot from learning a second language. I started learning Japanese on my own and moved to Japan several years ago. I now work at a Japanese company where I spend most of my day speaking and writing Japanese. Most people think about learning a second language as a kind of rote learning. You memorize the vocabulary and grammar [...]

Testing the new Photo Sphere Widget

Testing out the new photo sphere widget. The widget below is a photo sphere of our trip to Great Falls Park. You can find out more about how to embed the widget here: https://developers.google.com/panorama/web Another working example is here: http://goo.gl/BbEpS