My stealth-ish startup, Boundless Learning, is building some very cool products, on top of some very cool technologies, and while the majority of our value will be user-facing, there is a fair chunk of interesting back-office systems that we’ve developed to support our bigger mission.
It’s important that we are able to rapidly produce & adjust those back-office systems, so that we can direct focus on making high-quality experiences for our users. One ‘trick’ we’ve developed, is to allow the browser-client layer to control the schema/data that is stored by a MongoDB back-end. The JS code sends JSON to the server-code, which (very nearly) blindly thunks it through straight to Mongo.
This allows us to eliminate an entire layer’s complexity/code, and gives us *huge* flexibility to rapidly iterate our models (Mongo is schema-less and requires no migration scripts for a vast majority of modeling changes). By keeping a hyper-thin server layer, you eliminate 1/2 of code you’d otherwise author. This is a big-win for “building the plane as it is being flown”.
If technical detail around this would be interesting to folks, I’d look forward to the chance to whip up some slides & tutorial around the nitty gritty of this particular rapid-prototyping approach.