It is always fantastic to see how vibrant the Knative community is. This week I've participated in various conversations about great ideas to move the project forward. There are several proposals, demos and PoCs coming. I am pretty excited about the following ones:
- Knative Flows Working Group
- Knative Serving and Argo Rollouts
- Contributing to Knative Functions
- Appreciation and awesomeness!
Knative Flows Working Group
I've been working with Workflows for a long time, written books, designed frameworks and also led training about different workflow tools implementations; this topic is very close to my heart. I am looking forward to helping the Knative community to bring workflow constructs to enable application developers to define workflows/state-machines to orchestrate CloudEvents and Functions.
The Knative Flow Working Group is very new, and it is still not clear what the main goal of the group. Still, in this discovery phase, we are trying to figure out if the Serverless Workflow Specification is a good fit or starting point for Knative to think about workflows or if we better focus on behaviours and interfaces. Next Wednesday, we will have a short presentation from the founders of Direktiv.io, which is a workflow engine which uses and integrate with Knative Serving and Eventing, but it doesn't use the Serverless Workflow Spec.
My main concern right now is the complexity of the languages used to express these workflows, as they tend to build a large set of complicated features that help you to get started quickly but, in the long run, complicate the maintenance of the project by concentrating too many responsibilities in the workflow definition (integration, sequencing, data transformation, data storage, among others).
Knative Serving and Argo Rollouts
I've been playing with ArgoCD, and when looking at Argo Rollouts, I was very curious to see if they were integrating with Knative for implementing different release strategies. Unfortunately, this was not the case, but once again, someone reached out to the Knative Community to make this integration happen.
Personally, this means "LET'S COLLABORATE!". Check the issue where we will try to create a proposal to see if we can me this happen: https://github.com/knative/serving/issues/13024
Are you familiar with Argo Rollouts and Knative? We need your help!
Contributing to Knative Functions
This week I've started a new initiative on the Knative Functions WG. I want to ensure that we bring new people to help us with our language templates; as we are mostly Java and Go developers, it will be great to have people from Node, Rust and Python helping us with our function templates. I am really looking forward to starting to create more advanced templates to make developers' live easier. To kickstart this initiative, I've created a couple of #goodfirstissue on the Knative Function repository and tweeted about them. I was surprised with the feedback. You can check the thread here:
I personally know that I need to get better at creating issues that are accessible for community members, so I will do my best moving forward to include links and a short description of these issues every week. Here are the two issues that I've created this week:
- https://github.com/knative-sandbox/kn-plugin-func/issues/1062 (which I am happy to say that Matheus Cruz already closed it)
- https://github.com/knative-sandbox/kn-plugin-func/issues/1061 (Are you interested in fixing this one?)
Appreciation and awesomeness!
This week I received a mention on the changelog.com blog by Gerhard (follow his podcasts here), and I am still shocked to see the mention with the other folks in that blog post. I love the fact that the screenshot used is from the Knative Maintainer track that we did with Carlos Santana at KubeCon Valencia (the Knative Functions Quiz Game was on the screen!. 🥳🥳🥳🥳🥳🥳)
I want to highlight Gerhard's takeaways from KubeCon 2022 - Valencia which you can read in his changelog blog here: https://changelog.com/posts/kubecon-cloudnativecon-europe-2022