Hacker News new | past | comments | ask | show | jobs | submit login

It's really simple. This was my first App Engine project. There's only one model, Tile, that has contents, namespace, and x/y coordinates. The contents field is a string representing the text in this tile. The namespace tells you what page the tile belongs to (e.g., /newsyc), and the coordinates are relative to the starting position. Namespace, x, and y are part of the keyname, so contents is the only model property. I don't create a tile until someone writes to that area.

I don't want to use cookies, but I'm thinking about implementing some kind of directions feature. ("Where am I?" "How do I get to X?") But I also want to keep the system really simple, so I don't know.




I assume you only construct a tile if someone types in it; not if someone simply scrolls over it?

How large are the tiles?


Correct, and 8x16.


Got it. I ask because the tile size will seem to directly impact the amount of data store contention (aka the number of db.TimeoutExceptions). It would be an interesting study to look at contention rates (percentage of failed datastore reads) vs. tile sizes when the app is under load.

(I also assume you make use of memcache, though I further presume that typing implies an immediate db put().)


Yeah. The tradeoff is that smaller tiles are harder on the client. I wasn't really rigorous in choosing the size, so it's likely not optimal. I actually don't use memcache yet.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: