Rails was made for servers. From web servers to background jobs, orchestrating the complexity of Rails in our cloud's infrastructure is hard work. We can not Kubernetes our way out of it either. There is a better way...one that is not well understood. With AWS Lambda and event-driven methodologies, we can fundamentally reinvent our beloved framework. It can change, and indeed thrive, without servers.
AWS Lambda is a commoditized compute platform of the future. Deeply integrated within AWS, it allows your Rails architecture to be completely reimagined atop fully managed infrastructure resources like API Gateway, SQS, S3, CloudWatch, VPC NAT Gateways, IAM, and so much more. As we explore Rails on Lambda, a pattern of evaporating concerns will become a common theme.
Don't worry, I’m not here to pitch microservices or convince everyone to smash our Rails applications into hundreds of smaller function calls. AWS Lambda is a wonderful deployment target that can host your entire application, similar to Heroku, with little to no internal changes.
Rails has two hard problems to solve in the coming years. First, being a relevant choice in today's newer application framework options. Most are moving to, or are born from, serverless methodologies. Netlify & Amplify are great examples. We need to Railify Rails! The other is how we make that transition. Our community is steeped in a server-based mindset. One that views serverless as a microservices-first dogma. I can demonstrate that Rails with Lambda Containers is nothing like what most think. That serverless is ready for today's new, or legacy, application frameworks.
Principal Engineer at Custom Ink and AWS Serverless Hero. Ken focuses on growing Custom Ink's DevOps culture within the Ecommerce & Operations teams. Custom Ink is approaching its 21st year in business and is entering its second phase of Cloud adoption, where he helps a growing platform succeed using AWS-first well-architected patterns.
@metaskills Hi Ken! Saw your tweets. I do wish your talk had been accepted as well. It looks like yours and mine take very different approaches to the serverless question, and would have complemented each other nicely.
If I can offer a few suggestions for your next proposal. (I don't have actual experience on a review committee, but I've managed to get a few talks into both RubyConf and RailsConf over the years, so something must be working...)
In any case, I hope you'll still be at the conference. I'd love to get together to chat serverless!