It's May Day, which can only mean 1 thing ... the April challenge for SAP Build Apps is over ☹️
I hope you learned a lot, and had a little bit of fun along the way. Thanks for participating, and for the discussions as we together solved the puzzles, and thanks to my colleagues @eshrinivasan and @Rekha_DR for creating the last 2 challenges.
Everyone who completed at least one of the challenges will get a badge (similar to the one below).
Some stats:
- 35,000 views of the challenge post (combined)
- 397 replies (not written by me) + 65 kudos on the posts
- 78 people participated in the challenges
- 63 people completed at least 1 challenge successfully
- 16 people completed all 5 challenges
- 14 people completed 4 of the challenges
- 3 people completed 3 of the challenges
- 5 people completed 2 of the challenges
- 25 people completed 1 challenge
A shout-out to the 16 people who completed all the challenges:
To keep track of the stats for the contest and to check whether people submitted the correct hash, we created an app, in SAP Build Apps, of course, which included:
- Mash-up of 2 APIs (circumventing CORS with destinations)
- Complex logic (including looping) to check all responses and then check hashes, all without JavaScript
- Formatted layout to easily show results
- Download of CSV for awarding badges
This is a classic case of a citizen developer being able to create for themselves an app to help with their day-to-day work. We created the basic app in about a week, and embellished it throughout April. I will try to write a separate blog about the app.
To be honest, I thought I was showing you guys a thing or two about SAP Builds Apps, but found I learned so much about SAP Build Apps during April, including:
- How to get around CORS with destination
- How to get around CORS with headers (including pre-flight conditions)
- The 3 ways to open a web page in an app
- How to get the current users email (app and mobile)
- How to get the user's current location
- How to embed a map or YouTube video in a web app
- How to work with audio
- How to create a custom menu
- The 4 ways for spacing out components
- The default Authorization header sent when creating REST data resources with destinations (that I didn't realize was ruining my API call)
- The 2 ways for navigating
- How to use containers for layout
- How to do looping in logic flows
- How to download a CSV file
- ... and a few more things
Thanks for participating – I hope you enjoyed it.
Till the next challenge 😺