QCon and the Future of Serverless
Last week I had the pleasure of exhibiting and speaking at QConSF. The event went smoothly and I even got to play with a Magic Leap headset. There were all kinds of talks on foundational technologies like MySQL and NPM, and a crowd ready to receive them. There were a handful of database vendors on hand, but our booth was the most fun. (The conference staff shirts were sponsored by Fauna, here are the QCon volunteers below.)
My talk, about consistency without clocks, comparing Google Spanner with FaunaDB’s approach, and making the argument that our deterministic transactions are more suited to real world deployments, had a strong audience for the end of the day. Tough questions were asked about the determinacy of raft consensus itself.
The future of Serverless
Being in the city gives me a chance to connect with local luminaries, and the conversations kept coming around to function-as-a-service runtimes and business models. As the creator of one of the original serverless APIs, I’ve watched this wave for almost a decade. It was fun to get plugged into the latest changes, and see a consensus emerging about what serverless means and where it is going.
Lambda already serves web applications, and it’s already a simpler choice for a lot of workloads that would have gone to Hadoop in years past. As the platform expands, especially with edge functionality like Cloudflare Workers, applications and frameworks are taking advantage of the new landscape.
Talking to Brian LeRoux and Ryan Block from Begin, a picture emerges of small functions, loosely joined. Lightweight functions can run faster and closer to the user than monolithic apps, and most importantly, depend on the smallest environment possible, lowering the surface area for features, bugs, and security updates. Small functions are faster, easier to develop, and safer to deploy.
Begin offers an opinionated approach to serverless application architecture that is in alignment with performance best practices. Their model means developers can transfer skills across an organization’s codebase, without restricting what an individual function can accomplish. You can read my hello world with FaunaDB and Begin here.
Further afield, talking to Mikeal Rogers from Protocol Labs, a picture emerges of an interplanetary NPM, where WebAssembly modules are addressed by content hash, and used to manipulate other web data. In this world, service providers compete on price and performance, while developers will have robust access to all the code ever published. Modules that are well used will acquire reputation, and the security landscape will become easier to audit.
Anywhere serverless goes, FaunaDB will be there, with our globally replicated ACID transactions. Read a tutorial here about hosting your FaunaDB app on IPFS.