Learning Kyma – Follow along on my Journey
|31.01.2021||Added links to episode 8|
|24.01.2021||Added links to episode 7|
|23.12.2020||Added links to episode 6|
|13.12.2020||Added links to episode 5|
|22.11.2020||Added links to episode 4|
|15.11.2020||Added links to episode 3|
|08.11.2020||Added links to episode 2|
In general the world of extending SAP solutions has become more diverse over the last years. In the “old days” dev-life was easy with respect to deciding on how and where to extend SAP solutions. This has changed over the last years and side-by-side extensions gained some traction especially as we should “keep the core (c)lean.“
Although I personally do not like this mantra as it can guide in the wrong direction, I am convinced that depending on the business scenario and its requirements side-by-side extensions can add incredible value.
However, going down that path puts some decision making up in front of us. The SAP ecosystem per se offers the SAP Cloud Platform as technological basis for this type of extensions. But on this platform you have several runtimes to build and operate side-by-side extensions namely:
- SAP Cloud Platform, Cloud Foundry runtime [Edited based on Comment by Marco Dorn]
- Serverless runtime (basically a managed Knative offering)
- Kyma runtime – a managed Kyma environment
- ABAP environment (aka Steampunk)
In my opinion Steampunk is a different kind of competitor when it comes to extensions. I definitely see the value of this runtime, but the target audience with respect to business scenarios as well as developers is quite different to the other options and, hence, I will not discuss it further.
Leaving Steampunk aside which area should we focus on? My personal favorite and recommendation is Kyma because:
- It is fully Open Source based and contributes back
- The technology stack embraces a rich and vibrant ecosystem in the cloud-native universe
- Development is platform agnostic (“sustainability” of SAP Cloud Platform environments and runtimes caused some headaches to customers in the past – this risk is mitigated)
- Broadest functional scope from Function-as-a-Service to microservices, from extensions to complete applications
Now the next question is: how to get started?
Here is my offer: I will publish my learnings about Kyma as videos on YouTube from zero to … wherever this journey will take me and you can follow along.
Some further background on Kyma and me: I got in touch with Kyma in its quite early days but somehow did not dig intensively into it basically because of the poor experience of local development on a windows machine and no work project in that area. Now the game has changed as the managed offering on SAP Cloud Platform is available on trial and for me it is time to hit the refresh button and start the learning journey.
Why another resource on that topic?
To be honest there is quite some information out there starting from the official documentation of the Kyma project to several blogs in the SAP Community to tutorials on developers.sap.com. I will not reinvent the wheel and pick up some of these assets for my learning path but from my experience the tutorials give you a clear guidance on how to get things running and if something goes wrong you are lost. This is good as you get started without too much frustration, but I often miss the explanation on what happens behind the scenes and why this is the case and why some things were done as presented. From my experience that is okay for a quick start but if you hit real life scenarios a decent understanding of the mechanics is essential. I hope I can achieve this with my contributions … we will see ?
When will content by published?
I aim to publish episodes regularly. Whenever a new episode is available I will push out the update on:
So follow me on any of the above channels (or on all of them ?) and you will get notified.
Overview of (planned) episodes
This is the current plan for my journey with Kyma:
|0||Introduction & Prerequisites||Link||Link|
|1||Setting Up Managed Kyma & Kubernetes/Kyma Basics||Link||Link|
|2||Deploying a sample app||Link||Link|
|3a||Deploying an Azure Function to Kyma||Link||Link|
|3b||The Horizontal Pod Autoscaler and KEDA||Link||Link|
|3c||Cleaning up Resources||Link||Link|
|4||Install Commerce Mock & Create Function Extension||Link||Link|
|5||Walk Through developers.sap.com tutorial||Link||Link|
|6||A bit about Security in Kyma||Link||Link|
|7||Function Deep Dive||Link||Link|
|8||Function Deep Dive – Part 2||Link||Link|
So let us get the journey started ?
- Securing your endpoints via OAuth
- Consuming resources via Open Service Broker
- Running Azure Logic Apps on Kyma
How to give feedback and contribute?
Certainly I will miss things or maybe overlook something. I am happy to receive feedback via issues in the GitHub repository. You can also propose new topics this way.
Detour – There is more than black and white when it comes to extensions
To make one thing clear: I am 100% sure that restricting yourself to the SAP ecosystem in case of side-by-side extensions is the wrong way in most cases. The magic will happen when combining the offering of SAP together with the PaaS offering of hyperscalers (and my preference with respect to hyperscalers is clear I guess if you look at some of my blog posts ?). My videos will reflect this.
I would even state that there are valid use-cases for side-by-side extension as I have highlighted in this blog. It is the business value and not the technology that you should focus on when it comes to extensions. But that is a different discussion.