Creating RESTful APIs with App Engine Cloud Endpoints

App Engine Cloud Endpoints is a great way to quickly and easily create JSON API endpoints. What’s not clear is how to structure your Message code to support a RESTful create-read-update-delete (CRUD) API. This article will show the basic CRUD operations for one Resource. The results can easily be adapted to support a full REST API. ...

July 2, 2014 · 3 min · Kevin Sookocheff

Running Multiple App Engine Modules Locally with dev_appserver.py

The recently released App Engine Modules API allows developers to compartmentalize their applications into logical units that can share state using the datastore or memcache. ...

June 17, 2014 · 1 min · Kevin Sookocheff

Downloading directories of code from Github using the Github API

At VendAsta we frequently share libraries of code between projects. To make it easier to share this code I’ve developed a small package manager that downloads code within a directory from Github to be copied in to your current project. It’s a quick and dirty alternative to cloning an entire repository, grabbing the set of files you want and placing them in your project. ...

June 17, 2014 · 4 min · Kevin Sookocheff

How to bypass the auto_now property option during an ndb put

In App Engine the auto_now option sets a property to the current date/time whenever the entity is created or updated. This is a great feature for tracking the time when an entity was last updated. However, sometimes you may want to put an entity without updating an auto_now timestamp. This article will show you how. ...

May 28, 2014 · 2 min · Kevin Sookocheff

App Engine MapReduce API - Part 5: Using Combiners to Reduce Data Throughput

View all articles in the MapReduce API Series. So far we’ve looked at using MapReduce pipelines to perform calculations over large data sets and combined multiple pipelines in succession. In this article we will look at how to reduce the amount of data transfer by using a combiner. ...

May 20, 2014 · 4 min · Kevin Sookocheff

App Engine MapReduce API - Part 4: Combining Sequential MapReduce Jobs

View all articles in the MapReduce API Series. Last time we looked at how to run a full MapReduce Pipeline to count the number of occurrences of a character within each string. In this post we will see how to chain multiple MapReduce Pipelines together to perform sequential tasks. ...

May 13, 2014 · 2 min · Kevin Sookocheff

Installing lxml on OS X Mavericks

I recently tried installing lxml for use within an App Engine project on OS X Mavericks only to be hit with an error message from clang. ...

May 7, 2014 · 1 min · Kevin Sookocheff

App Engine MapReduce API - Part 3: Programmatic MapReduce using Pipelines

View all articles in the MapReduce API Series. In the last article we examined how to run one-off tasks that operate on a large dataset using a mapreduce.yaml configuration file. This article will take us a step further and look at how to run a MapReduce job programmatically using the App Engine Pipeline API. ...

April 28, 2014 · 7 min · Kevin Sookocheff

App Engine MapReduce API - Part 2: Running a MapReduce Job Using mapreduce.yaml

View all articles in the MapReduce API Series. Last time we looked at an overview of how MapReduce works. In this article we’ll be getting our hands dirty writing some code to handle the Map Stage. If you’ll recall, the Map Stage is composed of two separate components: an InputReader and a map function. We’ll look at each of these in turn. ...

April 22, 2014 · 11 min · Kevin Sookocheff

App Engine MapReduce API - Part 1: The Basics

View all articles in the MapReduce API Series. The first arcticle in this series provides an overview of the App Engine MapReduce API. We will give a basic overview of what MapReduce is and how it is used to do parallel and distributed processing of large datasets. ...

April 15, 2014 · 6 min · Kevin Sookocheff