Yesterday I attended MongoDB World here in Manhattan. There was a huge turnout and excellent sessions but the most exciting part of the day for me was the announcement of MongoDB Atlas. Atlas is MongoDB as a service (part of the DBaaS, data base as a service, category). This means you no longer have to worry about configuring servers, you get backup with point-in-time recovery, and your cost is usage based.
The reason I am especially excited about this is because we are beginning to come back to the original vision. When we first invested in MongoDB (then called 10gen) in 2008 the company was building a complete platform as a service (PaaS). It turned out to be way ahead of its time – this was before Google announced App Engine! While 10gen PaaS had many attractive features it was too limiting for developers and MongoDB took off only once the database layer became available on a standalone basis.
With Atlas, MongoDB is now available in all forms from downloading it and running it on your laptop, to setting up a complex cluster yourself (possibly on premise if you are an enterprise customer), to fully managed in the cloud. This gives you maximum flexibility as a developer and as a customer does not lock you into any platform for computation. This ideally positions MongoDB to provide the global data layer for future applications.
So now it is interesting to return to the question of code execution. I no longer think that the traditional app server model is the most interesting. The future of programming most applications is writing glue code between different API calls. Therefore, I am interested in something that looks more like Amazon Lambda or Google Cloud Functions but again does not lock you into a particular compute cloud and is available as open source also (like MongoDB).