Skip to Content
Event Information

Hands-on SAP dev with qmacro – new live stream series

I live stream on a regular basis, and have been doing so since early 2019, first on Twitch, and now on YouTube. I have an approximately weekly schedule, with episodes on SAP development topics. The show is called “Hands-on SAP dev with qmacro” and you can join to watch and take part live on my YouTube channel, usually on Fridays. This post tells you what else you might need to know. 

Update 17 Jun 2020

I’ve been keeping this blog post up to date since I started streaming at the start of 2019 and it’s served us well, but it’s time to retire it in favour of other ways of helping you find and join upcoming live streams, not least because it’s not only me but my colleagues such as Max, Tom and Kevin that are streaming too. 

So here are new ways of finding, being reminded of and joining upcoming live stream episodes:

  • Head over to and hit that red SUBSCRIBE button
  • Use the “SET REMINDER” buttons on upcoming streams you’d like to watch


  • Add the publicly available calendar to your calendar system for automatic reminders

Don’t forget to do this for Max, Tom and Kevin’s channels too – you can find links to them in the Featured Channel section of my channel (see the right hand side of the screenshot above).

We’re looking forward to seeing you online! 

(end of update)

If you’re looking for the recordings of the live streams, jump down to the Catch the replays section below.

This post has multiple sections – here are quick links to them all: Background | Live streamingHow to watch | Catch the replaysUpcoming episodes | Updates.

This post is also available via the short link


One subject I’ve been thinking about for a while, especially in the context of my Monday morning thoughts series last year (in particular the learning continuum, growth is upwards and learning media and mechanisms posts) is how I take on new information.

One of the ways is to watch videos, and for me that is a medium that is easy and enjoyable to consume.

A wonderful bonus for me is the side effect of getting inside the heads of developers, learning, on a high level, how they operate, and noticing, on a low level, how they work on a day to day basis. On many occasions, the things I’ve learned have been serendipitous and only partially connected to the subject at hand. How a developer goes about editing, what tools they use, and what workflows they employ, deliberate or otherwise.

Live streaming

One of the consumption styles in this vein is to watch live streams, where folks work on stuff, figuring things out, building up solutions piece by piece, or sharing knowledge or experience in specific areas … in full view of an audience who are present there with that host, over the Internet. Moreover, in the live streams I’ve joined, it’s two-way. The viewers can interact with each other and with the host, via chat and other mechanisms.

It’s a fascinating idea, and one that caught my imagination last year, so much so that I thought I’d give it a try.

How to watch

I used to stream on Twitch (in 2019), but I now stream on YouTube. All you need to do is visit my channel and subscribe (so you get updates and notifications):

If you’re signed in to YouTube when you join a live stream, you’ll be able to chat and take part in the live stream discussions, which is great! 

Catch the replays

If you missed a live episode, you can watch the recording, which will be available on my channel pretty much straight after the the live episode finishes.

Each recording is then also available on the SAP Developers channel organised in a playlist Hands-on SAP dev with qmacro – by the way, don’t forget to subscribe to this channel too!

Annotated links: For each recording on YouTube, there will be annotated hh:mm:ss links so you can jump straight to the part you’re looking for. One annotations blog post per episode – and the links are in the rightmost column in the table. This tweet shows an example of how you might use the annotated links feature.


Ep. Date Title & description with link to full video recording
0 Friday
18 Jan 2019

Ep.0 – Getting our feet wet

In this initial episode of the “Hands-on SAP dev with qmacro” series, we take a brief look at what using SAP’s Cloud Application Programming Model in a Node.js context means for us JavaScript developers, and warm our brains up by solving some puzzles with a bit of ES6 flavoured code (with some functional aspects thrown in for good measure).

Watch replay on YouTube

Read annotations

1 Friday
25 Jan 2019
Ep.1 – Setting up for the Node.js flavoured version of SAP’s Cloud Application Programming Model

While we warmed our grey matter up in the previous episode, in this episode we set up what we need to build with the Node.js (JavaScript) flavoured version of SAP’s Cloud Application Programming Model (CAPM). This version allows us to build locally, with tools on our own machines, so that’s what we’ll be doing.

Therefore, we use the SAP NPM registry to find & install the command line tool ‘cds’ that we can use to generate and manage Node.js based CAPM projects and also install the CDS language support for the VS Code editor, which comes in the form of an VS Code extension. Then we set up our Cloud Foundry environment on SAP Cloud Platform and install the ‘cf’ command line tool which we can use to interact with that environment.

Watch replay on YouTube

Read annotations

2 Friday
01 Feb 2019

Ep.2 – Starting to build a bookshop backend service with CAPM

In the previous episode we set up our tools and development environment ready for some SAP Cloud Application Programming Model (CAPM) action of the Node.js (JavaScript) flavour. So now we’re ready to start exploring our first data and service definitions in the language of CAPM, i.e. CDS (Core Data & Services).

We follow the “Create a Business Service with Node.js using Visual Studio Code” tutorial on the SAP Developers tutorial navigator and start to explore what CAPM and CDS can do for us.

Watch replay on YouTube

Read annotations

3 Friday
08 Feb 2019

Ep.3 – Special guest edition: Interview with core CAPM developers from the mothership!

This episode is rather special, in that I interview Christian Georgi from the core CAPM development team at the mothership in Walldorf. We talk CAPM, have some Q&A Christian shows us some cool live demos.

Watch replay on YouTube

Read annotations

4 Wednesday
13 Feb 2019

Ep.4 – Debugging CAPM and a look at the cds REPL

We take a look at how we can use VS Code debugging facilities to debug CAPM services, and also start to explore the cds command line tool’s REPL (Read Evaluate Print Loop) environment.

Watch on YouTube

Read annotations

5 Friday
15 Feb 2019

Ep.5 – Continuation of the CAPM Node.js bookshop tutorial

We continue working our way through the tutorial “Create a Business Service with Node.js using Visual Studio Code” on the SAP Developer Centre.

Watch replay on YouTube

Read annotations

6 Friday
22 Feb 2019

Ep.6 – Extending the CAPM bookshop tutorial – hacking & learning

We’re pretty much at the end of the tutorial as it stands. But there’s always more to learn by hacking on it, to tweak and extend it. We do that in this episode, uncovering more features of CAPM and CDS.

Watch replay on YouTube

Read annotations

7 Wednesday
27 Feb 2019

Ep.7 – Digging into the language server protocol, cds-lsp and Vim

One of the things we looked at briefly in the previous episode was the language server protocol (LSP) implementation for the CDS language, in the VS Code extension. In this midweek episode we explore getting a Vim LSP client working and connected to the cds-lsp server.

Watch replay on YouTube

Read annotations

8 Friday
01 Mar 2019

Ep.8 – Using Axios, ES6, promises & pure functions to grab data

In Episode 6 we set out creating our mini Northwind service, called Northbreeze, and started to write some code to grab the Northwind data, exploring Axios as an HTTP client library that supports promises and (therefore) dot chaining. In this episode we continue on towards completing this code to produce CSV files as input to our CAP model, exploring pure functions along the way.

Watch replay on YouTube

Read annotations

9 Wednesday
06 Mar 2019

Ep.9 – Continuing with data retrieval for Northbreeze

In episode 8 last Friday we were constructing the data retrieval script using Axios and promises. In this episode we continue to build that out, and then convert the data thus retrieved to CSV for loading into the database with cds deploy.

Watch replay on YouTube

Read annotations

10 Thursday
07 Mar 2019

Ep.10 – Finishing off the data retrieval mechanism in Node.js

Following the previous episode there’s a bit more work to do to finish off the data retrieval mechanism we have been building to extract data from the original Northwind service and turn it into CSV files that can be loaded into a persistence layer with ‘cds deploy’. In this episode we finish this off and load the data.

Watch replay on YouTube

Read annotations

11 Friday
08 Mar 2019

Ep.11 – A CAP project for “Geonames” & funcprog style with Chris Whealy

In this episode we have developer Chris Whealy as a guest, taking us through his personal project making use of Geonames data and built using CAP with Node.js. Along the way we look at Chris’s programming style which takes a lot from the functional programming world.

Watch replay on YouTube

Read annotations

12 Friday
15 Mar 2019

Ep.12 – Exploring and understanding parts of @sap/cds JS – code & style

I had an itch to scratch, in that I wanted to be able to filter out columns in CSV files. In this episode we take a look at some of the JavaScript within the @sap/cds module – what it offers and how it’s written. We then see how some of that was useful in building a simple CSV filter mechanism.

Watch replay on YouTube

Read annotations

13 Wednesday
20 Mar 2019

Ep.13 – Stdio-ifying the CSV filter mechanism

In the previous episode (Ep.12) we looked at a simple CSV filter utility. In this episode we improve it by giving it the ability to read from STDIN and write to STDOUT so it plays nicely in pipeline contexts. Then we’ll be ready to use it to finalise our data for our CAP based “Northbreeze” service.

Watch replay on YouTube

Read annotations

14 Friday
22 Mar 2019

Ep.14 – Exploring CAP service level features and annotations

After a pleasant detour hacking together some CSV related utilities with Node.js we return to our Northbreeze CAP project and take a look at some of the service level features, looking how they can complement the data model, and playing around with some of the annotations available to us, to see what effect they have. We also take a look at fixing the issue we had with the boolean property :-0 back in Ep.10.

Watch replay on YouTube

Read annotations

15 Friday
29 Mar 2019

Ep.15 – Starting to look at a frontend for our Northbreeze app

This session comes to you from the location of the SAP CodeJam event in the AOK offices in Frankfurt. In this episode we investigate at a few more cool features of CAP and CDS and start to look at a user interface for our Northbreeze app, and even get to serve it from the CAP runtime itself.

Watch replay on YouTube

Read annotations

16 Wednesday
03 Apr 2019

Ep.16 – Getting to a basic frontend with Fiori Elements, and sandbox launchpad

Following on from the previous episode broadcast from the SAP CodeJam in Frankfurt, we continue moving towards a first UI using a sandbox Fiori launchpad and a basic Fiori elements app driven by a small set of annotations.

Watch replay on YouTube

Read annotations

17 Friday
05 Apr 2019

Ep.17 – Digging into the annotation driven UI

We take a look at the simple UI that we created in the previous episode and look a little bit behind the scenes, to learn a bit more about annotations, OData calls and more.

Watch replay on YouTube

Read annotations

18 Friday
12 Apr 2019

Ep.18 – A first look at CAP with Java

In this episode we take a break from Node.js and JavaScript, and take a first look at the SAP Cloud Application Programming Model with Java. Developer Evangelist Max is our expert for the episode, for an interesting and fun overview of what CAP with Java is all about.

Watch replay on YouTube

Read annotations

19 Wednesday
17 Apr 2019

Ep.19 – Some fun with CAP related tooling

This being a midweek episode, we allow ourselves a little bit flexibility and look into developer tooling; we look a bit more at syntax highlighting in Vim, some more LSP usage and try to come up with a workflow for setting up to answer CAP questions on the SAP Community Q&A site.

Watch replay on YouTube

Read annotations

20 Friday
19 Apr 2019

Ep.20 – Continuing with CAP and Java

Following on from Ep.18 where we took a first look at CAP with Java, in the SAP Web IDE, we continue our journey and look more closely at adding hooks and debugging. As a bonus, this is again led by our friend and my colleague Max!

Watch replay on YouTube

Read annotations

21 Friday
26 Apr 2019

Ep.21 – CAP, Java, Maven and the cloud

This episode brings a selection of related topics. With Max we continue where we left off in the previous episode and then dig a little bit into Maven tooling. After that we switch back to our Northbreeze service and look at deploying to the Cloud Foundry environment on SAP Cloud Platform.

Watch replay on YouTube

Read annotations

22 Wednesday
01 May

Ep.22 – Live stream community share – dotfiles and Google Cloud Run goodness

In this midweek episode we enjoy a little off piste activity with two special guests from the #HandsOnSAPDev community. Ronnie Sletta describes his setup and takes us through his dotfiles for new machine setups, and Nabheet Madan shows us how he deployed a CAP project to Google Cloud Run.

Watch replay on YouTube

Read annotations

23 Friday
03 May 2019

Ep.23 – Digging in to the sitregcapm project

In this episode we take a closer look at the project to rewrite the SAP Event Registration app backend using CAP, in the form of the sitregcapm repo on GitHub.

Watch replay on YouTube

Read annotations

24 Friday
10 May 2019

Ep.24 – Going from local CAP to cloud CAP with MTA based deployments

In this episode we have Marius Obert who takes us on a journey from our local CAP development environment to the cloud. Specifically he shows us how to deploy a simple CAP project to SAP Cloud Platform Cloud Foundry environment and gives us some tips and tricks along the way.

Watch replay on YouTube

Read annotations

25 Friday
24 May 2019

Ep.25 – System reset

The past week has been a little bit hectic and distracting, so I use this episode as a sort of “system reset” to figure out where things are, what we want to work on, and share some items that have come up recently.

Watch replay on YouTube

Read annotations

26 Wednesday
29 May 2019

Ep.26 – Vim CDS plugin with new @sap/cds-lsp package

Now that the @sap/cds-lsp package is published to the public SAP NPM registry, it’s a good time to look how we can incorporate that into the Vim CDS plugin. Plus more SAP Cloud Platform Workflow goodness too!

Watch replay on YouTube

Read annotations

27 Friday
31 May 2019

Ep.27 – Continuation of the Cloud Platform Workflow project

In this episode we continue where we left off in Ep.25, to build out the workflow scenario on SAP Cloud Platform, exploring features as we go for service and script tasks, and more.

Watch replay on YouTube

Read annotations

28 Wednesday
05 Jun 2019

Ep.28 – Digging into Workflow user task UIs

Continuing on from the previous episode, we dig in a little deeper to user task UIs, looking at the Workflow API and task info, as well as the My Inbox API, to understand how the generic UI component actually works.

Watch replay on YouTube

Read annotations

29 Friday
05 Jul 2019

Ep.29 – Restarting – catchup and stretching

This is the first episode for a few weeks, so it’s worth spending some time catching up with where things are, and having a bit of a warmup and stretch, brain-wise, so we can get back into things the right way, including a first look at mocked authorisations in CAP.

Watch replay on YouTube

30 Friday
19 Jul 2019

Ep.30 – More on CAP auth and Fiori Elements features

Following on from the previous episode we continue with digging into CAP authorisations and start to take a look at the new built-in Fiori Elements rendering feature in CAP 3.13.

Watch replay on YouTube

31 Wednesday
24 Jul 2019

Ep.31 – Digging into CAP’s fiori-preview

With 3.13 we saw the appearance of a nifty little feature available in the services via HTTP – the “Fiori preview”. In this episode we dig in a little bit to find out how that works. Express middleware? Yes please!

Watch replay on YouTube

32 Friday
26 Jul 2019

Ep.32 – Annotations to power the CAP fiori-preview

Now that we’re familiar with the fiori-preview feature in CAP, and understand (from the previous episode) how it actually works underneath, we now look a bit deeper at annotations that we can use to power the dynamically rendered Fiori Elements based displays.

Watch replay on YouTube

33 Friday
02 Aug 2019

Ep.33 – More CAP exploration

Following on from the previous couple of Friday episodes, we continue to explore CAP features, to see what we can find. As an experiment this episode’s description remains deliberately loose until we get down to it during the actual stream, so we can just follow our noses and see where we end up.

Watch replay on YouTube

34 Friday
23 Aug 2019

Ep.34 – Exploring actions and functions in CAP

In this episode we explore the “dark side” of the otherwise RESTful OData protocol (that’s fighting talk, I know!) and dig in a little bit to actions and functions. If you’ve encountered function imports in OData before, you’ll feel right at home.

Watch replay on YouTube

35 Friday
30 Aug 2019

Ep.35 – More on actions and functions in CAP

In this episode we pick up where we left off in the previous episode and continue to dig into actions and functions.

Watch replay on YouTube

36 Wednesday
11 Sep 2019

Ep.36 – Actions and value help in CAP

We get to look a bit more at the orthogonal parts of OData V4 in the form of actions (remember: may have side effects and may (might) not return data) and perhaps investigate value help with code lists.

Watch replay on YouTube

37 Friday
20 Sep 2019

Ep.37 – Digging into annotations

In this episode we dig into annotations to get closer to an understanding of how value help works. There’s a long way to go, but we know the journey will be pleasant and interesting. Come along and enjoy the ride!

Watch replay on YouTube

38 Friday
04 Oct 2019

Ep.38 – Converting API EDMX metadata to CSN

In this episode we take a look at how OData metadata information, in the form of EDMX, can be converted to Core Schema Notation (CSN), and take a look at some SAP API Hub features along the way.

Watch replay on YouTube

Read annotations

39 Sunday
06 Oct 2019

Ep.39 – Looking at process substitution

This is an impromptu live stream where we look briefly at process substitution in the shell, a powerful construct useful for command line processing.

Watch replay on YouTube

Read annotations

40 Friday
18 Oct 2019

Ep.40 – Catchup from SAP TechEd

We’re in the midst of the SAP TechEd season – in this episode we catch up with what’s been going on and dig into whatever takes our fancy.

Watch replay on YouTube

Read annotations

41 Friday
25 Oct 2019

Ep.41 – Business Rules API on the BTP

Continuing on from where we left off in Ep.40, we dig further into the Business Rules APIs and start our journey to the Cloud Foundry environment.

Watch replay on YouTube

Read annotations

42 Friday
01 Nov 2019

Ep.42 – Impromptu stream on GitHub CAP Community work

After being unable to stream well enough since the Catalina upgrade I took the opportunity to investigate Lightstream, a Chrome extension for streaming. In this impromptu, unplanned stream I work through an issue assigned to me on the CAP Community repository (please forgive the video quality, working on improving that).

Watch replay on YouTube

Read annotations

43 Tuesday
19 Nov 2019

Ep.43 – SAP TechEd Functional Programming recap

At SAP TechEd 2019 in Bangalore we had the session “Write Solid Code with Functional Programming Techniques” where, using JS, we covered some functional programming aspects such as higher order functions, composition and reuse, partial application and immutability. It was a popular session and was repeated the next day. This episode gives us all the chance to look at the content of this session, and some related FP goodness.

Watch replay on YouTube

Read annotations

44 Friday
22 Nov 2019

Ep.44 – Business Rules in Cloud Foundry – setting things up

In previous recent episodes we’ve taken a look at the Business Rules service on Neo, and kicked the tyres with a simple rules service. Now it’s time to move to Cloud Foundry and set things up there. Let’s go!

Watch replay on YouTube

Read annotations

45 Wednesday
27 Nov 2019

Ep.45 – Cool initiatives and projects with CAP with Tom Jung

In this episode Tom Jung is going to join us and show us some of the cool stuff he’s been hacking on in the CAP area. Tom has always got some fascinating tech to share, so make sure you tune in!

Watch replay on YouTube

Read annotations

46 Friday
29 Nov 2019

Ep.46 – The SAP Business Application Studio with Marius Obert

In this episode we take a look at the new IDE from SAP – the Business Application Studio. We have an old friend of the stream Marius Obert to tell us about it and demo it live too. Don’t miss this!

Watch replay on YouTube

Read annotations

47 Friday
06 Dec 2019

Ep.47 – ABAP and SAP Cloud Platform functions for Advent of Code

It’s December and many of us are furiously hacking away on solutions to the excellent Advent of Code daily puzzles. We’re using different languages, platforms and tools, for different reasons; in this episode we get Hendrik Neumann and Gregor Wolf to show us how they’re solving the puzzles with SAP tech.

Watch replay on YouTube

Read annotations

48 Friday
13 Dec 2019

Ep.48 – Continuing with the Business Rules service on CF

In this episode we continue on from where we left off in Ep.44 and dig further into the Business Rules service on SAP Cloud Platform Cloud Foundry environment.

Watch replay on YouTube

Read annotations

49 Friday
03 Jan 2020

Ep.49 – Defining our first Business Rules project

Now we have the admin “Manage Projects” UI (and understand how the magic works) it’s time to create our first Business Rules project.

Watch replay on YouTube

Read annotations

50 Friday
17 Jan 2020

Ep.50 – Calling our Business Rule via the runtime API

We have a simple business rule defined – now it’s time to use the runtime API to call it. As it’s on Cloud Foundry and authentication is via OAuth, we’re in for a fun and interesting episode!

Watch replay on YouTube

Read annotations

51 Fri 31 Jan 2020

Ep.51 – More fun with Business Rules API and OAuth

In the previous episode we got as far as staring at the OAuth Bearer token that we could use to authenticate calls to the API. In this episode we see how far we can get in using one of those tokens to do so. Perhaps even a bit of JavaScript with Axios might be nice to look at too – promises promises! (geddit)

Watch replay on YouTube

Read annotations

52 Fri 07 Feb

Ep.52 – Tidying up the JS script for Business Rules OAuth flow

In Ep.51 we finished on a cliffhanger – having retrieved a bearer token by authenticating using the resource owner password credentials grant flow, we made the call to the runtime API endpoint, but got a 401. Find out why in this episode, and work with me on making the script neater and more reusable.

Watch replay on YouTube

Read annotations

53 Fri 14 Feb

Ep.53 – Starting to construct a HandsOnSAPDev info API

In previous episodes, and particularly in Ep.52, we chatted about introducing a way to programmatically search for episodes of this series, by title, tag, date, or some other metadata. We talked about the possibility of an OData service (CAP-powered, of course) and / or an NPM module on the GitHub package registry. In this episode we’ll make some first steps towards this goal.

Watch replay on YouTube

Read annotations

54 Fri 21 Feb

Ep.54 – Continuing with the HandsOnSAPDev API

In the previous episode we took our first steps towards a multi-faceted API for this live stream series. In this episode we continue our exploratory journey into OData V4 options, conjunction tables with CDS and more.

Watch replay on YouTube

55 Fri 28 Feb

Ep.55 – Getting set up with Workflow on Cloud Foundry

Taking a quick break from our HandsOnSAPDev API adventure, we’ll use this episode to take a look at how to get started with Workflow on SAP Cloud Platform, and specifically in the Cloud Foundry environment. There’s a lot to cover, and it’s all fascinating!

Watch replay on YouTube


56 Fri 06 Mar

Ep.56 – Continuing our Workflow on Cloud Foundry setup journey

In the previous episode we took our time over the juicy details of the Multi-Target Application that will give us our Workflow tools in a Fiori Launchpad. In this episode we continue that journey of discovery.

Watch replay on YouTube

57 Fri 13 Mar

Ep.57 – Setting up our first Workflow definition on CF

Now we have our Workflow tools set up on Cloud Foundry, it’s time to put them to use, with a simple workflow definition that we’ll create and deploy. What’s more, we dive into a little OAuth 2.0 adventure of discovery!

Watch replay on YouTube

Read annotations

58 Fri 20 Mar

Ep.58 – Digging deeper into OAuth 2.0 for CF APIs

In the previous episode we put the pieces together on how the Client Credentials Grant flow works with the API Hub and the CF Workflow APIs. Now it’s time for us to dig even deeper and look into alternative flows. Buckle up!

Watch replay on YouTube

Read annotations

59 Wed 25 Mar

Ep.59 – Apple’s Mac Catalyst and the SAP Cloud Platform SDK for iOS 5.0

In this special episode we get to hear about and see the SAP Cloud Platform SDK for iOS version 5.0 and its Mac Catalyst support. Our iOS/Mobile advocate Kevin takes us through creating a Mac Catalyst-ready Xcode project using the SAP CP SDK for iOS. There are important considerations of bringing your app to Mac which he covers too.

Watch replay on YouTube

60 Fri 27 Mar

Ep.60 – App router and the “simplest thing that could possibly work”

Now that we have a good understanding of how OAuth 2.0 is used in the context of CF APIs, we turn our attention to some other fundamentals – in this episode it’s how we can access a remote SAP system using “the simplest thing that could possibly work” (with a hat tip to the great Ward Cunningham), causing us to explore the app router, and destination & connectivity services on CF.

Watch replay on YouTube

61 Wed 01 Apr

Ep.61 – Continuing to dive into the approuter on CF

In the previous episode we started to take a deep dive into how we could access a remote system from the Cloud Platform in Cloud Foundry. We ended on a wonderful cliffhanger – why is the “shopinfo” destination not recognised? Find out the answer to this, and more, in this continuation episode.

Watch replay on YouTube

62 Fri 03 Apr

Ep.62 – What else can we learn about the approuter?

As we’ve seen in the previous two episodes, the approuter is not only an essential component, it’s quite an impressive one too. Let’s use this episode to see what else we can learn about it.

Watch replay on YouTube

63 Fri 10 Apr

Ep.63 – Tracing the OAuth 2.0 Authorisation Code grant type with approuter and CF

Continuing with our deep dive into approuter we finally get to the part where we can see how it provides us with the Authorisation Code flow to allow users access to protected resources. Let’s dig into that together!

Watch replay on YouTube

64 Fri 17 Apr

Ep.64 – Providing CF comfort in the terminal

We wrap up the approuter’s OAuth flow with a bit more hard-core debugging, then turn our attention to some terminal skills that can make our lives in the Cloud Foundry more comfortable.

Watch replay on YouTube

65 Fri 24 Apr

Ep.65 – Custom Workflow UIs on CF

Riffing off what we saw briefly in Ep.63 with the cf html5 plugin, we turn our attention to how that might be useful in a practical context. So we start building a custom Workflow UI to deploy and use in Cloud Foundry.

Watch replay on YouTube

66 Fri 01 May

Ep.66 – Continuing our journey to a custom task UI on CF

We continue our journey towards getting a custom task UI up on the CF environment for our Workflow context, exploring juicy and interesting details of everything we see along the way.

Watch replay on YouTube

67 Fri 08 May

Ep.67 – Hacking an existing Custom Task UI on CF

At the end of the previous episode, we got to the stage where we were ready to take a look at the existing Custom Task UI from the sample project. In this episode we dig in further.

Watch replay on YouTube

68 Wed 20 May

Ep.68 – Data pipelines and HANA HDI containers

In this episode we have special guest Witalij Rudnicki with his Data Engineer hat on, building data pipelines and connecting them to a HANA HDI container. This continues the journey he started over on Max’s channel in Ep.8.

Watch replay on YouTube

69 Fri 22 May

Ep.69 – Construction begins of our own custom task UI

We’ve looked at an existing workflow definition and a related custom task UI, and now it’s time to start to build our own. Let’s go!

Watch replay on YouTube

70 Fri 29 May

Ep.70 – Finalisation of our custom task UI

In Ep.69 we started building a custom task UI for our Workflow definition on CF, using the Inbox API and the Workflow API. In this episode we finalise that.

Watch replay on YouTube

Upcoming Episodes

You can get reminders for upcoming episodes by adding this public Google Calendar (available at to your own calendar system – entries in that calendar will be added  as appropriate, and each entry will have default reminders settings so you won’t forget. Also, you can get reminders by subscribing to my YouTube channel – hit the big red subscribe button and the notification bell too. Thanks!


17 Jun 2020: Retiring this post (see note at the top)

31 Dec 2019: Added updates to reflect the move from Twitch to YouTube, and removed a few now-redundant sections.

17 Jan 2019: I’ve created a public Google calendar that you can subscribe to and from where you receive event reminders, which are set to fire 1 day and 30 mins before the event starts: Hands-on SAP dev with qmacro Calendar.

I’ve also set up a series on Twitch and I’ll define each episode as an event in this series. You can go to Twitch, see the upcoming events, view the details and request reminders.

23 Jan 2019: Added an “Upcoming episode” section.

25 Jan 2019: Added a “Feedback” section.

12 Feb 2019: Reworked the “Schedule” section to include the new occasional midweek slot schedule and moved the episode replay links into the “Replays” section.

13 Feb 2019: Added the link to this post (

20 Feb 2019: Reworked the Catch the replays section, adding links to the new annotated descriptions.

28 Feb 2019: Improved the Catch the replays section, adding each episode’s description, and separate links to the recordings on Twitch. Eventually we will have links to the recordings on YouTube also.

05 Mar 2019: Added a note about the annotated links blog posts to the Catch the replays section.

05 Apr 2019: Updated the Feedback section with a link to a new episode-specific feedback form.

12 Apr 2019: Changed the occasional midweek slot to a regular fortnightly cadence.

You must be Logged on to comment or reply to a post.
  • This is cool! I've been thinking about doing some live streaming of architecture conversations and diagrams, and twitch seemed a great platform. I'll be curious to see how you get on.

  • Hi DJ. I just watched the stream for the first time this morning and I only have one word: AMAZING! Digging into what's behind the tutorials is super interesting and useful, I really like this format and I can't wait for the next stream!

    • Hey Pierre, first of all thanks so much for joining the live stream this morning and participating too, I really appreciate it. And thanks also for the feedback, that makes me very happy that you found this interesting and useful. Looking forward to seeing you join the next episode!


  • Hi DJ,

    Not sure when you can read this comment, but you may have floated the idea how twitch is helpful/useful in your most recent episode (August 23rd) and that got me thinking and respond here.

    How about making mp4 files downloadable somewhere, including here or on wiki, assuming both technical and privacy issues are taken care of?

    most of all, thank you for providing great content and driving the SAP ecosystem interaction.

    cheers, gm

    • Hi Gregory, that's something that I try to do, albeit indirectly. Here's the process, in a nutshell:

      1. broadcast episodes live on Twitch ->
      2. recordings of those episodes immediately available on Twitch -,
      3. a pointer is added to this post to each episode's details as well, including a link to the video, in the 'Catch the replays' section ->
      4. in the meantime, the recordings also exist locally to me as MP4 files
      5. I then annotate those MP4 recordings to create blog posts, which I publish, and the recordings themselves are then uploaded to YouTube to a playlist in the SAP Developers channel ->
      6. the links in the 'Catch the replays' section of this post are then updated with the YouTube video link and the annotation blog post link

      The key thing to realise that throughout this process, you can download the videos whenever you want, either from Twitch or from YouTube, with the youtube-dl utility program.

      Hope that helps - share & enjoy!


  • DJ,

    indirect is fine as long as the source is open and if i end up using the shareware i will also pay for it. cloud as it is, whether AWS, GCP, or any other, is not always available, so personal backups help to recover from the disasters.

    thank you for responding with a little bit of home work, gm


    • Cheers Greg. Note - youtube-dl is public domain software, not shareware. You can donate of course, if you wish, via the link.