As we celebrate the 3rd OpenFaaS Birthday, I look back over the past three years and towards a 2020 vision
I started OpenFaaS with a single commit back in 2016. Since its inception the community of users and contributors has grown at a steady rate. Join me in this blog post to celebrate the 3rd birthday of OpenFaaS. I’ll give a short history of the project, share our online celebration, talk about the future and congratulate the SWAG contest winners. You’ll also get a few links at the end on how to get involved in time for our next birthday.
Back in 2016 I wanted to explore Serverless and started out with AWS Lambda, it worked well, but I wanted a way to run my functions on my own hardware using Docker containers. My first attempt was called funker-dispatch, which built upon some prior art by a Docker employee and was written in Node.js. I quickly hit the limits of funker and so went back to the drawing-board. Justin Cormack from Docker invited me to the Cambridge office for a day and we brainstormed some ideas and came up with the “watchdog” concept.
The first version was called “faas” (Functions as a Service). faas lived in my personal GitHub account as alexellis/faas, I wrote a blog post about it in 2017, which received a lot of interest and encouraged me to keep pushing: Functions as a Service (FaaS).
the opportunity felt like a once-in-a-lifetime thing
In mid-2017 I won a competition to present in Dockercon’s keynote in Austin and wrote up a new blog post showing off “faas-cli” - the opportunity felt like a once-in-a-lifetime thing and resulted in me getting a promotion to Principal-level at work.
“the success of the project was dependent on more than just my personal contributions and it felt great”
As more contributors joined the project, the success of the project was dependent on more than just my personal contributions and it felt great to see new features being developed by the community. In that time we gained a documentation site, got permission to list end-user logos from dozens of companies, event-triggers, spoke at dozens of conferences and collected hundreds of blog posts and tutorials. I also started OpenFaaS Cloud - a platform to offer a managed, multi-user experience for teams. The Community Cluster gives free access to developers in the community, and gives a very similar experience to Google’s Cloud Run product, but with CI/CD and secrets management built-in.
Shortly after that the community rallied around and helped me
In early 2018 VMware offered me a job and asked me to come onboard as a Senior Staff Engineer. I built up a small team to continue my work with OpenFaaS whilst retaining rights to the project. I learned a lot over those 12 months and made some good friends, but left in March when the company put their serverless program on hold. One of my highlights was giving a talk with Vision Banco at KubeCon on how they’d put OpenFaaS intro production for their home-banking service. Shortly after that the community rallied around and helped me launch a new openfaas.com website with a professionally-designed theme and styled-blog.
I’ve focused on OpenFaaS Ltd, joined the CNCF Ambassadors and launched new OSS projects
Since leaving VMware I’ve focused on OpenFaaS Ltd which offers Cloud Native consulting, OpenFaaS support, product feedback, and developer-marketing. This past year has also seen me start new projects like k3sup for installing Kubernetes apps and k3s clusters and inlets for tunnelling services out from behind NAT and firewalls. Both projects are complimentary to OpenFaaS and share contributors with the main project.
Throughout these past three years, the community of users and contributors has grown as has the The Pressures of Leadership and the demands of doing Open Source without sustainable funding. The GitHub sponsors program is currently funding less than 1 day per month of my time. All individuals who sponsor get exclusive access to weekly digests from me on all my OSS work, blog posts, tutorials and updates for OpenFaaS.
I want to thank each one of you that has contributed, especially the Members and Core Team, this project is far too big to do alone and I’m grateful of your help.
I also want to say a thank you to our current OpenFaaS.com homepage sponsors:
DX - implementation, R&D, and ongoing commercial support of OpenFaaS Cloud for monolith and green/brown-field microservices at scale
Humio - DX feedback and product marketplace design for enterprise index-free logging product
OpenFaaS Ltd’s first year of business coincided with the OpenFaaS 3rd birthday and that brings us to the video celebration in the next section.
It’s our birthday!
OpenFaaS 3rd Birthday Celebration!
I presented my top 5 things from 2019 including PLONK, k3sup, node12 async template and more
Martin Dekov showed us the new npm install for the faas-cli and other CLI enhancements for making the workflow easier
Lucas Roesler gave us a deep dive on logs and multiple-namespace support
Alistair Hey showed off OpenFaaS Cloud 0.12.0 which adds runtime logs and additional UX enhancements
I’ll be planning a number of other community meetings this year. If you have an idea or a project that uses OpenFaaS, or have contributed a feature, then please let me know if you’d like to present.
It’s not a proper birthday without presents, so as promised, I’ll be sending out free swag to the top 5 Tweets with the #TeamServerless hashtag during our Birthday week. If you missed out, then you need to be following @openfaas on Twitter so that you’re ready for our next promotion.
If you’d like to order an OpenFaaS or inlets hoodie or t-shirt, then send an email to email@example.com with your size and full address. For UK orders you’ll pay via bank transfer (faster payments) and for world-wide via PayPal.
Here’s a couple of our happy customers with their hoodies shipped all the way to San Francisco.
What’s next for OpenFaaS?
As you’ll hear at the end of the video, I’m inviting you to help us drive the roadmap for OpenFaaS. I’ll be compiling a 2020 vision along and spending time with the OpenFaaS Members and Core team to condense that down into a roadmap and a “compass bearing”.
After getting some initial feedback we’re considering SDKs for the OpenFaaS REST API to enable enterprise teams to integrate with ease, request-signing from asynchronous invocations and event-triggers to enable non-repudiation for fintech and banking customers, an API for long-running batch-jobs, and improvements to OpenFaaS Cloud’s bootstrap process. We’ll also continue to explore faasd which combines containerd and CNI to build an efficient and fast functions platform without the need for Kubernetes and clustering.
OpenFaaS Ltd is now hosting the project, covering any costs, providing commercial support, and building commercial add-ons for enterprise users.
The first three products are:
Commercial support which offers backlog and PR prioritization, support via e-mail, and implementation of OpenFaaS / OpenFaaS Cloud.
The plugin provides OIDC Connect / OAuth2 authentication for the gateway UI, CLI, and for CI/CD. It comes with first-class support for Auth0 and GitLab IDPs and has been used by some early customers to integrate with LDAP.
Inlets PRO builds upon the success of inlets, the open-source tunnel for HTTP/s traffic enabling companies to tunnel and proxy L4 TCP traffic such as databases, TLS, and SSH.
The aim of commercial software is to contribute towards the huge R&D costs involved in running a project like OpenFaaS which has been adopted by dozens of companies in production. The first two products have a clear enterprise target market and don’t take functionality away or restrict the experience for community developers. We will continue to support multi-arch Docker images expanding automation and support for ARMHF and ARM64.
In 2020, OpenFaaS Ltd will also explore commercial add-ons for OpenFaaS Cloud and look into a hosted version of OpenFaaS Cloud. If there are features you’d like to see, or could use at work, then please do reach out.
Beyond 2020, I’d like to develop the OpenFaaS Ltd business and hire full-time staff to maintain and support the project for customers and the community, whilst continuing to explore opportunities to improve the open source and serverless ecosystem for Kubernetes and Cloud Native.
Make a resolution you can keep
Since we’re still in January you are still allowed to make one or two new resolutions, especially if they’re ones you can keep. Why don’t you start by trying out OpenFaaS and join the Slack community? OpenFaaS with PLONK covers both microservices and functions and makes Kubernetes easier to approach by providing a slick developer experience and sane defaults.
k3sup is a super easy way to get started with Kubernetes using k3s, or to install popular apps packaged with helm, for instance: openfaas, nginx-ingress, kubernetes-dashboard, istio, linkerd, minio, postgresql, inlets-operator, and many more. Each app can be automated with a single command such as k3sup app install metrics-server
Your input and feedback is welcome. Please join the community Slack workspace and bring any comments, questions or suggestions that you may have.
Finally, feel free to reach out if you need help with any cloud native problems you’re trying to solve, or if you could use an external perspective on what you’re building from OpenFaaS Ltd: firstname.lastname@example.org. If you’d like to amplify your brand in 2020, then check out the Sponsorship prospectus for OpenFaaS.com.