https://raw.githubusercontent.com/ajmaradiaga/feeds/main/scmt/members/developer-advocates/rileyrainey.xmlSAP Community - Riley Rainey2025-08-05T11:30:27.759928+00:00python-feedgenRiley Rainey in SAP Communityhttps://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-sap/the-2023-sap-business-experts-insights-survey-charts-findings-and-more/ba-p/13577596The 2023 SAP Business Experts Insights Survey: Charts, Findings, and More Charts2023-12-08T16:01:12+01:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919This fall, we surveyed Business Experts in the SAP Community about the tasks the perform and the tools that they use. This blog post is a report on the survey results.<BR />
<H1 id="toc-hId-834963776">Introduction</H1><BR />
SAP application implementation teams are composed of folks with a mix of skills. Developers are present, to be sure, but these teams also traditionally include functional business experts. These business experts provide knowledge that is essential to a successful implementation.<BR />
<BR />
Earlier in the fall, we ran our first Business Experts survey. That survey is an offshoot of our annual survey of developers. We have consistently uncovered useful information through the developer survey and we were curious if we could find actionable insights about business domain experts.<BR />
<H1 id="toc-hId-638450271">Key Findings</H1><BR />
We ran the survey for four weeks in September and October. We had 1,333 respondents. Of those, approximately 670 completed all questions in the survey.<BR />
<BR />
We asked questions on a variety of topics: the tasks that business users perform, and the tools specific to such tasks. Data analytics and business process modeling were two such focus areas. Since this audience also might also be users of Low Code / No Code (LCNC) application development tools, we asked a series of detailed questions to respondents who said they'd been users of such technology.<BR />
<BR />
Among the results we found most interesting:<BR />
<UL><BR />
<LI><STRONG>Low Code / No Code application development is not yet clearly understood by many potential users </STRONG>– A portion of our survey explored Low Code / No Code tool familiarity and use. We approached this from an industry-wide point of view, not focusing exclusively on SAP products. Roughly half of respondents agree that they understand the concept behind LCNC application development. The remaining half did not. There is an opportunity to educate those folks who are unfamiliar.</LI><BR />
<LI><STRONG>Motivation for using LCNC app dev tools lines up well with analyst expectations</STRONG> – For folks who have worked with these tools, the top reason for starting a LCNC-base app dev project was, “I got results faster than if I’d waited for someone else to do the work.” (40%). Individual learning also was a factor here: “Doing it for the learning experience” came in second place (24%).</LI><BR />
<LI><STRONG>LCNC App Dev projects are generally considered successful</STRONG> – Of the respondents who developed and deployed LCNC applications, 73% of them agree that they believe the business outcome from developing the application themselves was better for their company than if someone else did the work.</LI><BR />
<LI><STRONG>But There is Relatively Low Activity of Among True Citizen Developers</STRONG> – <EM>only 4% of Customer respondents say they have developed a production LCNC app</EM> – while that number seems quite low, there is strong interest in exploring these tools (65%) among the same group.</LI><BR />
<LI><STRONG>Low Code / Node Code Tools are being employed more by Partner and Freelance Consultants</STRONG> – LCNC tools are not just for Citizen Developers – Pro-developers can and do use LCNC tools: Roughly 10% of respondents among Partners and Freelance Consultants say they have developed production LCNC apps. And where they have, they tend to produce significantly more applications per person than those from Customers.</LI><BR />
<LI><STRONG>LCNC app dev tools are quite popular as a simpler way to deliver Smartphone and Tablet apps</STRONG> - 56% and 37%, respectively, for all LCNC app dev projects that were part of the survey.</LI><BR />
</UL><BR />
<H1 id="toc-hId-441936766">More Background</H1><BR />
In the past, our team’s external research has focused on professional developers. A major part of that research has been invested in the annual SAP Developer Insights Survey (<A href="https://developers.sap.com/insights-survey-results-2023.html" target="_blank" rel="noopener noreferrer">2023 report link</A>)<BR />
<BR />
With the introduction of the SAP Build portfolio in late 2022, SAP’s technology focus related to application development expanded to include support for Citizen Developers – folks completely outside Customer IT organizations and Partners. This expansion shifts the line where developer tools are relevant and it motivated us to explore LCNC products as part of this survey.<BR />
<H1 id="toc-hId-245423261">Results and Analysis</H1><BR />
<H2 id="toc-hId-177992475">Chart Notation Used in this Report</H2><BR />
We asked respondents to tell us about their relation to SAP. We use that in our analysis to help identify patterns. Customers, Partners, Freelance Consultants, and sometimes SAP employees all are represented in this report in different contexts. To be as clear as possible, we will include a legend to show which subgroups make up each chart’s source data.<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.20.57 AM.png" height="199" width="447" /></P><BR />
<P class="image_caption" style="text-align: center;font-style: italic">Chart Notation</P><BR />
<BR />
<H1 id="toc-hId--147603749">Respondent Demographics</H1><BR />
SAP Community is composed of people from different organizations: Customers, Partners, and SAP employees all participate. We asked about this relationship:<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.22.57 AM.png" height="212" width="460" /></P><BR />
For the remainder of this report, unless we state otherwise, employees of SAP will be excluded from all reporting. Excluding SAP employees from the same question gives us an idea of the external constituent groups:<BR />
<P style="overflow: hidden;margin-bottom: 0px;padding-left: 80px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.24.02 AM.png" height="202" width="469" /></P><BR />
From this we see that Customers make up about a third of our external community.<BR />
<BR />
We also asked about the industry of their employer:<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.27.16 AM.png" /></P><BR />
We asked about their age. We have no industry data applicable to business users to compare here, so we can’t draw any conclusion about the relative age of SAP business experts.<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.29.37 AM.png" /></P><BR />
A breakdown of geography is consistent with our past surveys of SAP Developers.<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.30.26 AM.png" /><STRONG style="font-size: 1rem"> </STRONG></P><BR />
<BR />
<H1 id="toc-hId--344117254">Tasks Performed by Business Experts</H1><BR />
Early in the survey, we asked a series of questions exploring the tasks performed as part of the respondent’s job. Within the survey, this task inventory was formulated in this way:<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.33.08 AM.png" height="367" width="469" /></P><BR />
This series of questions listed thirteen task areas:<BR />
<P style="padding-left: 40px"><STRONG>Data Analysis</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Process Modeling</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Project Management</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Creating Business Cases</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Requirements Gathering</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Documenting User Stories and Use Cases</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Stakeholder Management</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Cost/Benefits Analysis</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Quality Assurance</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>User Acceptance Testing</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Risk Assessment</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Market Analysis</STRONG></P><BR />
<P style="padding-left: 40px"><STRONG>Vendor Evaluation</STRONG></P><BR />
The questions were composed to provide a simple gauge whether a task might be part of their role. We didn’t expect particularly accurate results if we asked a respondent to estimate the actual time or percentage of their work devoted to each task, so we limited responses to “significant”, “sometimes”, “rarely”, and “never”.<BR />
<BR />
We guessed that responses from Customers might be different than from Partners, so we plotted each group independently:<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.35.31 AM.png" /></P><BR />
<P class="image_caption" style="text-align: center;font-style: italic">Customer Tasks</P><BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.37.02 AM.png" /></P><BR />
<P class="image_caption" style="text-align: center;font-style: italic">Partner Tasks</P><BR />
The differences in these two charts are not dramatic. Some tasks that might be related more to consulting do appear more prevalent for Partners: Requirements Gathering, Creating User Stories or Use Cases, QA, UAT.<BR />
<BR />
There’s an opportunity for deeper analysis here. For example, we might look at the tasks performed by specific job roles (we asked about roles later in the survey). Such analysis remains to be explored but, for now, what seems plain is that no task dominates when we group all business folks together.<BR />
<BR />
From this point in the survey, we branched out into three distinct lines of questions. For those that said Data Analysis was part of their work, we asked about the tools that they use. We did the same thing for Process Modelers. And, since Low Code / No Code (LCNC) application development might be performed by anyone, we asked everyone a series of questions about their familiarity and use of LCNC application development products.<BR />
<H1 id="toc-hId--540630759">Analytics Tool Use</H1><BR />
We composed a list of common tools representing a range of sophistication. Everything from basic tools like Excel to more elaborate, data science-oriented tools such as Python and R frameworks appeared in our list of choices. Respondents were asked to select all that they had used in the past year.<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.39.41 AM.png" /></P><BR />
S/4HANA and ECC appear prominently in these results, as does SAP Analytics Cloud, and Business Objects.<BR />
<H2 id="toc-hId--608061545">Process Modeling Tool Use</H2><BR />
As with Data Analytics, we chose a list of popular Process Modeling tools with a range of capabilities. Everything from Visio and Lucidchart – limited to visual mapping and flowcharting – to SAP Build Process Automation and SAP Signavio. We also included platform-specific offerings for comparison: Salesforce, and ServiceNow.<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.48.09 AM.png" /></P><BR />
Visio comes in first, which might demonstrate that there’s an opportunity to convert such users to true automation tools. SAP tools figure prominently in the results, too. SAP Build Process Automation is not far behind Visio, in fact.<BR />
<BR />
As follow-up research, it might be interesting to explore any overlap between those using simpler versus more automated tools: to what extent are folks using both? And – if so – why?<STRONG> </STRONG><BR />
<H1 id="toc-hId--933657769">Low Code / No Code Application Development</H1><BR />
We started with a basic question: does the respondent know what the terms Low Code / No Code mean?<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.50.54 AM.png" /></P><BR />
So, 83% of our external audience have at least heard the term. Only half, though, feel like they completely understand. That’s an opportunity for education.<BR />
<BR />
Of that 83%, we asked more questions. Do they think these tools might be relevant to them – or perhaps they have already jumped in and developed an application – here’s the breakdown:<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.52.11 AM.png" /></P><BR />
There’s two points that stand out in this: first almost 60% of respondents express interest in these tools but have not yet explored them. Clearly that’s an opportunity to engage. Also, only 10% of the audience has actually developed an application (and that number is lower still when you consider that this is among the ~80% that said they’d been exposed to LCNC app dev, at least conceptually). Moreover, we are asking about LCNC app dev in general here. Given that LCNC application development tools have been in the market for quite some time, this calls into question how universally useful LCNC tools might be to business users.<BR />
<BR />
For those stating that they had developed one or more applications, we asked a longer series of questions: How many of these applications have they developed in the last year? What tool did they use on their last project? What was their motivation and general experience?<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.53.34 AM.png" /></P><BR />
<P class="image_caption" style="text-align: center;font-style: italic">LCNC Applications Developed - All non-SAP Respondents</P><BR />
Close to half the people in this group responded saying they had developed four or more applications. That’s an unexpectedly large number of applications per person. We are considering both Customers and Partners/Freelancers here. What if we just consider Customers?<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.55.05 AM.png" /></P><BR />
<P class="image_caption" style="text-align: center;font-style: italic">LCNC Applications Developed - Customers only</P><BR />
So, Customer business experts are generating fewer applications in the same time span. That makes sense.<BR />
<BR />
What about the most popular tools for Low Code / No Code application development?<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.57.56 AM.png" /></P><BR />
SAP Build Apps comes in at the top by a comfortable margin. The ”Other…” response appeared prominently here and respondents were permitted to specify the unlisted tool. Those responses were:<BR />
<P style="padding-left: 40px">SAP Analytics Cloud 2</P><BR />
<P style="padding-left: 40px">Neptune Software 1</P><BR />
<P style="padding-left: 40px">CAP <EM>(not an LCNC tool) </EM> 1</P><BR />
<P style="padding-left: 40px">Boomi 1</P><BR />
<P style="padding-left: 40px">BRFPlus 1</P><BR />
Another aspect worth noting is that the list of popular products was short. We had selected a list of thirteen candidate products to appear in the survey: most highly rated by analysts. Only four products appear more than once in the responses: SAP Build Apps (14), Microsoft Power Apps (3), SAP Analytics Cloud (2), and Mendix (2). Given the relative maturity of the LCNC product category, we would have expected more diversity in this list.<BR />
<H2 id="toc-hId--653834198">Target Devices</H2><BR />
Many LCNC Tools provide out-of-the-box support for mobile phone or tablets. Was that a consideration here?<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-9.59.17 AM.png" /></P><BR />
So, the answer is probably, “yes” – over half the apps were developed to target mobile phones. Significantly, tablets were a target over a third of the time.<BR />
<H2 id="toc-hId--850347703">Motivation for Using LCNC App Dev Tools</H2><BR />
We were curious what factors motivated folks to develop their own app. We asked this question a couple of ways. First, we asked for the top three factors. We then asked which of those was most important. The most important factor stacked up this way:<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-10.00.06 AM.png" /></P><BR />
<BR />
<H2 id="toc-hId--1046861208">Approved Product List?</H2><BR />
In corporate settings, users sometimes are restricted to choose from a list of products that have been formally evaluated and pre-approved for use. We were interested in knowing if that was the case for LCNC app development products. We asked the folks who had developed an application:<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-10.04.26 AM.png" /></P><BR />
Almost half said, “yes”. It’s a bit funny that almost a third reported that they were unsure if the company maintained such a list.<BR />
<H2 id="toc-hId--1243374713">Required Development Interactions and Outcome</H2><BR />
To be successful, reports from several industry analyst groups suggest that Citizen Developers will require active support and perhaps even some level of governance from traditional IT. We wondered how much this was happening and asked a few questions along these lines.<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-10.05.24 AM.png" /><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-10.05.43 AM.png" /></P><BR />
Finally in this line of questions, we asked whether the application builder felt the project was worthwhile:<BR />
<P style="overflow: hidden;margin-bottom: 0px"><IMG class="migrated-image" src="/legacyfs/online/storage/blog_attachments/2023/12/Screenshot-2023-12-07-at-10.07.24 AM.png" /></P><BR />
<BR />
<H1 id="toc-hId--1146485211">Organizational Roles</H1><BR />
Are there clusters of roles for Business Experts within an organization?<BR />
<BR />
We asked each respondent to select the part of the organization where they work and the role within that organization. Here’s a breakdown. There’s probably a more detailed analysis that we could perform here. For example, you can see that Consulting Services and IT roles appear frequently. As we include Partners in this table, that is maybe no surprise.<BR />
<PRE><CODE><STRONG>Project Management </STRONG><BR />
<BR />
Program Manager 4<BR />
<BR />
Project Manager 3<BR />
<BR />
Other 3<BR />
<BR />
Project Analyst 3<BR />
<BR />
Project Engineer 2<BR />
<BR />
Project Coordinator 1<BR />
<BR />
<STRONG>Finance and Accounting </STRONG><BR />
<BR />
Other 13<BR />
<BR />
Financial Analyst 8<BR />
<BR />
Finance Manager 4<BR />
<BR />
Accounts Receivable/Payable Clerk 3<BR />
<BR />
Accountant 1<BR />
<BR />
Payroll Specialist 1<BR />
<BR />
<STRONG>Consulting Services</STRONG><BR />
<BR />
Functional Consultant 72<BR />
<BR />
Technical Consultant 54<BR />
<BR />
Project Manager 12<BR />
<BR />
Business Process Consultant 10<BR />
<BR />
Other 9<BR />
<BR />
Consulting Services Manager 7<BR />
<BR />
Management Consultant 6<BR />
<BR />
Business Development Consultant 3<BR />
<BR />
Business Strategy Consultant 1<BR />
<BR />
<STRONG>Information Technology </STRONG><BR />
<BR />
IT Architect 44<BR />
<BR />
IT Specialist 42<BR />
<BR />
Software Developer 32<BR />
<BR />
IT Manager 18<BR />
<BR />
Other 17<BR />
<BR />
Systems Administrator 7<BR />
<BR />
<STRONG>Research and Development </STRONG><BR />
<BR />
Product Developer 3<BR />
<BR />
R&D Manager 1<BR />
<BR />
Other 1<BR />
<BR />
<STRONG>Sales and Marketing </STRONG><BR />
<BR />
Other 5<BR />
<BR />
Sales Manager 3<BR />
<BR />
Marketing Manager 2<BR />
<BR />
Sales Representative 1<BR />
<BR />
<STRONG>Procurement and Purchasing </STRONG><BR />
<BR />
Procurement Analyst 5<BR />
<BR />
Procurement Manager 3<BR />
<BR />
Supply Chain Analyst 3<BR />
<BR />
Other 3<BR />
<BR />
<STRONG>Human Resources </STRONG><BR />
<BR />
HR Specialist 6<BR />
<BR />
Other 6<BR />
<BR />
HR Manager 4<BR />
<BR />
<STRONG>Production and Manufacturing </STRONG><BR />
<BR />
Other 8<BR />
<BR />
Production Manager 2<BR />
<BR />
Manufacturing Engineer 2<BR />
<BR />
Production Worker 1<BR />
<BR />
<STRONG>Supply Chain and Logistics </STRONG><BR />
<BR />
Other 9<BR />
<BR />
Supply Chain Manager 5<BR />
<BR />
Logistics Manager 2<BR />
<BR />
Warehouse Supervisor 2<BR />
<BR />
Inventory Specialist 2<BR />
<BR />
<STRONG>Security and Compliance </STRONG><BR />
<BR />
Security Manager 1<BR />
<BR />
<STRONG>Administrative Services </STRONG><BR />
<BR />
Administrative Assistant 1<BR />
<BR />
Office Manager 1<BR />
<BR />
<STRONG>Quality Assurance and Control </STRONG><BR />
<BR />
QA/QC Manager 1<BR />
<BR />
Quality Improvement Associate 1<BR />
<BR />
Other 1<BR />
<BR />
<STRONG>Strategic Planning </STRONG><BR />
<BR />
Management Consultant 2<BR />
<BR />
<STRONG>Customer Service and Support </STRONG><BR />
<BR />
Support Specialist 3<BR />
<BR />
Help Desk Technician 1</CODE></PRE><BR />
<H1 id="toc-hId--1342998716">Conclusions</H1><BR />
This is our first iteration to survey this group within SAP Community. The response rate was good – primarily driven by web site intercepts. We called out several interesting patterns in the results and there are probably opportunities for both deeper analysis of this year’s data as well as opportunities to go deeper in future surveys of this same group.2023-12-08T16:01:12+01:00https://community.sap.com/t5/sap-stammtisch/dallas-community-12-13-23-stammtisch/ec-p/307096#M182Re: Dallas Community - 12/13/23 Stammtisch2023-12-11T14:14:09.072000+01:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>I'll be there!</P>2023-12-11T14:14:09.072000+01:00https://community.sap.com/t5/dallas-discussions/end-of-2023-stammtisch-at-legacy-hall/m-p/307097#M43Re: End of 2023 - Stammtisch at Legacy Hall2023-12-11T14:14:39.565000+01:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>I'm planning to be there!</P>2023-12-11T14:14:39.565000+01:00https://community.sap.com/t5/technology-blog-posts-by-sap/2024-s-sap-developer-insights-survey-is-ready-for-you/ba-p/135754102024's SAP Developer Insights Survey is Ready for You2024-01-15T05:36:44+01:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<STRONG>Attention SAP Developers!</STRONG><BR />
<BR />
The 2024 SAP Developer Insights Survey starts today and will be running for the next six weeks. It will take about twelve minutes of your time to complete.<BR />
<BR />
2024 marks the fifth consecutive year for this survey. <STRONG>If you design, develop, or test software for SAP applications, platforms, or data: we have questions for you.</STRONG><BR />
<H3 style="text-align: center" id="toc-hId-1093068417"><A href="https://sapinsights.eu.qualtrics.com/jfe/form/SV_ebrXAMcrS6svpsy" target="_blank" rel="nofollow noopener noreferrer"><STRONG>Take the 2024 SAP Developer Insights Survey now</STRONG></A></H3><BR />
The information we gather in the survey is important to us. It is a key resource we use to understand who you are and what you do. These data play an important role in shaping channels, programs, and to focus new content on your needs.<BR />
<BR />
We also publish the results back to you. If you are curious, have a look at the <A href="https://developers.sap.com/insights-survey-results-2023.html" target="_blank" rel="noopener noreferrer">report describing last year’s survey results.</A><BR />
<BR />
The survey period begins today, January 15th. It will continue for six weeks, ending around March 1st. Our report on this 2024 survey will be released a few weeks after that.<BR />
<BR />
Help us help the SAP Community. Your contribution is important.2024-01-15T05:36:44+01:00https://community.sap.com/t5/technology-blog-posts-by-sap/2024-s-sap-developer-insights-survey-is-ready-for-you/bc-p/13575412#M166315Re: 2024's SAP Developer Insights Survey is Ready for You2024-01-15T15:02:31+01:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919Hi Devraj,<BR />
<BR />
Thank you for taking the survey and for your kind words. It's also been interesting to analyze the results that come back -- it has helped in on numerous occasions.<BR />
<BR />
Riley2024-01-15T15:02:31+01:00https://community.sap.com/t5/technology-q-a/shadow-user-in-btp/qaa-p/13675185#M4826315Re: Shadow user in BTP2024-04-18T21:24:26.759000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>The only method I'm aware of to get "automatic user provisioning" is to utilize the create shadow user functionality. Our team has used it inside SAP to allow us to authenticate users without requiring addition of specific scopes (and the associated manual provisioning of users). In our use case, we add a middleware function to the appprouter designed to verify that the user's e-mail is associated with a specific domain - we only have to take that extra step as our IDP can source non-SAP accounts. There's probably variations to that you could apply as well.<BR /><BR />Is there a reason you wish to avoid the create shadow user capability, though?</P><P>(and -- if it would help -- I can provide an example of the middleware function).</P>2024-04-18T21:24:26.759000+02:00https://community.sap.com/t5/technology-q-a/shadow-user-in-btp/qaa-p/13678241#M4826604Re: Shadow user in BTP2024-04-22T15:32:08.927000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919tskwin,2024-04-22T15:32:08.927000+02:00https://community.sap.com/t5/technology-q-a/shadow-user-in-btp/qaa-p/13678275#M4826611Re: Shadow user in BTP2024-04-22T15:56:49.322000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>Hi,</P><P>I can't seem to reply directly to your comment about shadow users being discouraged, so I'll drop some comments here:</P><P><FONT color="#000000">From <A href="https://help.sap.com/docs/btp/sap-business-technology-platform/switch-off-automatic-creation-of-shadow-users?q=shadow%20user" target="_self" rel="noopener noreferrer">a passage in SAP Help</A>: "<EM>Usually, you want your administrators to be fully aware of which users they allow to log on. If you’ve switched off automatic creation of shadow users for a certain identity provider, you enforce that only those users can log on where shadow users have been created explicitly. You can create them in the <SPAN class="">SAP BTP</SPAN></EM><SPAN><EM> cockpit, typically when you assign the first role collection to them.</EM>"</SPAN></FONT></P><P><FONT color="#000000"><SPAN>The reasoning described there is sound, but I'd point out that there is a class of usage where the designer might not need to dole out specific scopes/roles for the majority of users. In our case, we were exposing an internal-only Docusaurus-based site -- our objective was to give the widest possible distribution while still limiting access to company employees. In such a case, we can leverage the IdP and xsuaa, to authenticate the user -- and that authentication alone is adequate to meet our security needs for such "read access".<BR /><BR />I can't say whether that pattern would meet your application needs, though.<BR /><BR />I need to figure out how to best package the sample code - let me point out the places where we added it and you might be able to see the solution faster than I can package the snippets.<BR /><BR />First, we are using version 14 of approuter (specified in package.json). Probably any contemporary version of approuter will work.<BR /><BR />In our case, the site is all static content, so we packaged it into the approuter build itself. The xs-app.json looks like this (the "build" subdirectory holds our content, but such a route could be directed almost anywhere to fit your layout):</SPAN></FONT></P><DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier"><SPAN>{</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-60px" style="padding-left : 60px;"><FONT face="courier new,courier"><SPAN>"welcomeFile"</SPAN><SPAN>:</SPAN> <SPAN>"</SPAN><SPAN>index.html</SPAN><SPAN>"</SPAN><SPAN>,</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-60px" style="padding-left : 60px;"><FONT face="courier new,courier"><SPAN>"routes"</SPAN><SPAN>:</SPAN> <SPAN>[</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier"><SPAN> {</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier"><SPAN> "source"</SPAN><SPAN>:</SPAN> <SPAN>"</SPAN><SPAN>^(.*)$</SPAN><SPAN>"</SPAN><SPAN>,</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier"><SPAN> "target"</SPAN><SPAN>:</SPAN> <SPAN>"</SPAN><SPAN>$1</SPAN><SPAN>"</SPAN><SPAN>,</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier"><SPAN> "authenticationType"</SPAN><SPAN>:</SPAN> <SPAN>"</SPAN><SPAN>xsuaa</SPAN><SPAN>"</SPAN><SPAN>,</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier"><SPAN> "localDir"</SPAN><SPAN>:</SPAN> <SPAN>"</SPAN><SPAN>build</SPAN><SPAN>"</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier"><SPAN> }</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier"><SPAN> ]</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier"><SPAN>}</SPAN></FONT></DIV><DIV> </DIV><DIV><FONT face="arial,helvetica,sans-serif"><SPAN>The approuter.js file looks like this:</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><DIV><DIV><FONT face="courier new,courier" size="2"><SPAN>'</SPAN><SPAN>use strict</SPAN><SPAN>'</SPAN><SPAN>;</SPAN></FONT></DIV><BR /><DIV><FONT face="courier new,courier" size="2"><SPAN>/// See <A href="https://help.sap.com/docs/btp/sap-business-technology-platform/extending-application-router" target="_blank" rel="noopener noreferrer">https://help.sap.com/docs/btp/sap-business-technology-platform/extending-application-router</A></SPAN></FONT></DIV><BR /><DIV><FONT face="courier new,courier" size="2"><SPAN>let</SPAN> <SPAN>userEmailCheck</SPAN> <SPAN>=</SPAN> <SPAN>require</SPAN><SPAN>( </SPAN><SPAN>'</SPAN><SPAN>./email-authorization-middleware</SPAN><SPAN>'</SPAN><SPAN> )</SPAN><SPAN>;</SPAN></FONT></DIV><DIV><FONT face="courier new,courier" size="2"><SPAN>let</SPAN> <SPAN>approuter</SPAN> <SPAN>=</SPAN> <SPAN>require</SPAN><SPAN>(</SPAN><SPAN>'</SPAN><SPAN><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/1387241">@Sisn</a>/approuter/approuter.js</SPAN><SPAN>'</SPAN><SPAN>)</SPAN><SPAN>;</SPAN></FONT></DIV><BR /><DIV><FONT face="courier new,courier" size="2"><SPAN>var</SPAN> <SPAN>approuterInstance</SPAN> <SPAN>=</SPAN> <SPAN>approuter</SPAN><SPAN>()</SPAN><SPAN>;</SPAN></FONT></DIV><BR /><DIV><FONT face="courier new,courier" size="2"><SPAN>approuterInstance</SPAN><SPAN>.</SPAN><SPAN>beforeRequestHandler</SPAN></FONT><FONT face="courier new,courier" size="2"><SPAN>.</SPAN><SPAN>use</SPAN><SPAN>(</SPAN><SPAN>'</SPAN><SPAN>/</SPAN><SPAN>'</SPAN><SPAN>,</SPAN> </FONT></DIV><DIV><FONT face="courier new,courier" size="2"><SPAN> function</SPAN> <SPAN>(</SPAN><SPAN>req</SPAN><SPAN>,</SPAN> <SPAN>res</SPAN><SPAN>,</SPAN> <SPAN>next</SPAN><SPAN>)</SPAN> <SPAN>{</SPAN></FONT></DIV><DIV><FONT face="courier new,courier" size="2"><SPAN> return</SPAN> <SPAN>userEmailCheck</SPAN><SPAN>(</SPAN><SPAN>req</SPAN><SPAN>,</SPAN> <SPAN>res</SPAN><SPAN>,</SPAN> <SPAN>next</SPAN><SPAN>)</SPAN></FONT></DIV><DIV><FONT face="courier new,courier" size="2"><SPAN>}</SPAN><SPAN>)</SPAN><SPAN>;</SPAN></FONT></DIV><BR /><DIV><FONT face="courier new,courier" size="2"><SPAN>approuterInstance</SPAN><SPAN>.</SPAN><SPAN>start</SPAN><SPAN>()</SPAN><SPAN>;</SPAN></FONT></DIV><DIV> </DIV><DIV><FONT face="arial,helvetica,sans-serif" size="2"><SPAN>The actual function is contained in "<FONT face="courier new,courier" size="2">email-authorization-middleware.js<FONT face="arial,helvetica,sans-serif">")</FONT></FONT></SPAN></FONT></DIV><DIV> </DIV><DIV><DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT size="1 2 3 4 5 6 7"><SPAN><FONT face="courier new,courier">const</FONT></SPAN><FONT face="courier new,courier"> <SPAN>EMAIL_SUFFIX</SPAN> <SPAN>=</SPAN> <SPAN>"</SPAN><SPAN><a href="https://community.sap.com/t5/user/viewprofilepage/user-id/1387241">@Sisn</a>.com</SPAN><SPAN>"</SPAN><SPAN>;</SPAN></FONT></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>const</SPAN> <SPAN>extendedLogging</SPAN> <SPAN>=</SPAN> <SPAN>false</SPAN><SPAN>;</SPAN></FONT></DIV><BR /><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>module</SPAN><SPAN>.</SPAN><SPAN>exports</SPAN> <SPAN>=</SPAN> <SPAN>function</SPAN> <SPAN>userEmailCheck</SPAN><SPAN>(</SPAN><SPAN>req</SPAN><SPAN>,</SPAN> <SPAN>res</SPAN><SPAN>,</SPAN> <SPAN>next</SPAN><SPAN>)</SPAN> <SPAN>{</SPAN></FONT></DIV><BR /><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>const</SPAN> <SPAN>domainLength</SPAN> <SPAN>=</SPAN> <SPAN>EMAIL_SUFFIX</SPAN><SPAN>.</SPAN><SPAN>length</SPAN><SPAN>;</SPAN></FONT></DIV><BR /><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>if</SPAN><SPAN> (</SPAN><SPAN>extendedLogging</SPAN><SPAN>) </SPAN><SPAN>{</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>console</SPAN><SPAN>.</SPAN><SPAN>log</SPAN><SPAN>( </SPAN><SPAN>"</SPAN><SPAN>REQUEST session object: </SPAN><SPAN>"</SPAN> <SPAN>+</SPAN> <SPAN>JSON</SPAN><SPAN>.</SPAN><SPAN>stringify</SPAN><SPAN>(</SPAN><SPAN>req</SPAN><SPAN>.</SPAN><SPAN>session</SPAN><SPAN>.</SPAN><SPAN>user))</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>}</SPAN></FONT></DIV><BR /><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>var</SPAN> <SPAN>isAuthorizedEmailDomain</SPAN> <SPAN>=</SPAN> <SPAN>false</SPAN><SPAN>;</SPAN></FONT></DIV><BR /><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>// old session object: email in 'userId'</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>if</SPAN><SPAN> (</SPAN><SPAN>typeof</SPAN> <SPAN>req</SPAN><SPAN>.</SPAN><SPAN>session</SPAN><SPAN>.</SPAN><SPAN>user</SPAN><SPAN>.</SPAN><SPAN>userId </SPAN><SPAN>!==</SPAN> <SPAN>'</SPAN><SPAN>undefined</SPAN><SPAN>'</SPAN><SPAN>) </SPAN><SPAN>{</SPAN></FONT></DIV><BR /><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>const</SPAN> <SPAN>email</SPAN> <SPAN>=</SPAN> <SPAN>req</SPAN><SPAN>.</SPAN><SPAN>session</SPAN><SPAN>.</SPAN><SPAN>user</SPAN><SPAN>.</SPAN><SPAN>userId</SPAN><SPAN>.</SPAN><SPAN>toLowerCase</SPAN><SPAN>()</SPAN><SPAN>;</SPAN></FONT></DIV><BR /><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>const</SPAN> <SPAN>n</SPAN> <SPAN>=</SPAN> <SPAN>email</SPAN><SPAN>.</SPAN><SPAN>length</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>const</SPAN> <SPAN>start</SPAN> <SPAN>=</SPAN> <SPAN>n</SPAN><SPAN>-</SPAN><SPAN>domainLength</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>if</SPAN><SPAN> (</SPAN><SPAN>start</SPAN> <SPAN>>=</SPAN> <SPAN>0</SPAN><SPAN>) </SPAN><SPAN>{</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>isAuthorizedEmailDomain</SPAN> <SPAN>=</SPAN> <SPAN>email</SPAN><SPAN>.</SPAN><SPAN>substr</SPAN><SPAN>(</SPAN><SPAN>start</SPAN><SPAN>) </SPAN><SPAN>==</SPAN> <SPAN>EMAIL_SUFFIX</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>}</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"> </DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>}</SPAN></FONT></DIV><BR /><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>// new session object: email in 'name'</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>if</SPAN><SPAN> (</SPAN><SPAN>isAuthorizedEmailDomain</SPAN> <SPAN>==</SPAN> <SPAN>false</SPAN> <SPAN>&&</SPAN> <SPAN>typeof</SPAN> <SPAN>req</SPAN><SPAN>.</SPAN><SPAN>session</SPAN><SPAN>.</SPAN><SPAN>user</SPAN><SPAN>.</SPAN><SPAN>name </SPAN><SPAN>!==</SPAN> <SPAN>'</SPAN><SPAN>undefined</SPAN><SPAN>'</SPAN><SPAN>) </SPAN><SPAN>{</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>const</SPAN> <SPAN>name</SPAN> <SPAN>=</SPAN> <SPAN>req</SPAN><SPAN>.</SPAN><SPAN>session</SPAN><SPAN>.</SPAN><SPAN>user</SPAN><SPAN>.</SPAN><SPAN>name</SPAN><SPAN>.</SPAN><SPAN>toLowerCase</SPAN><SPAN>()</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>const</SPAN> <SPAN>n</SPAN> <SPAN>=</SPAN> <SPAN>name</SPAN><SPAN>.</SPAN><SPAN>length</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>const</SPAN> <SPAN>start</SPAN> <SPAN>=</SPAN> <SPAN>n</SPAN><SPAN>-</SPAN><SPAN>domainLength</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>if</SPAN><SPAN> (</SPAN><SPAN>start</SPAN> <SPAN>>=</SPAN> <SPAN>0</SPAN><SPAN>) </SPAN><SPAN>{</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>isAuthorizedEmailDomain</SPAN> <SPAN>=</SPAN> <SPAN>name</SPAN><SPAN>.</SPAN><SPAN>substr</SPAN><SPAN>(</SPAN><SPAN>start</SPAN><SPAN>) </SPAN><SPAN>==</SPAN> <SPAN>EMAIL_SUFFIX</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>}</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>}</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"> </DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>if</SPAN><SPAN> (</SPAN><SPAN>isAuthorizedEmailDomain</SPAN><SPAN>) </SPAN><SPAN>{</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>next</SPAN><SPAN>()</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>}</SPAN> <SPAN>else</SPAN> <SPAN>{</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>let</SPAN> <SPAN>error</SPAN> <SPAN>=</SPAN> <SPAN>new</SPAN> <SPAN>Error</SPAN><SPAN>(</SPAN><SPAN>"</SPAN><SPAN>You are not authorized to access this site.</SPAN><SPAN>"</SPAN><SPAN>)</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>error</SPAN><SPAN>.</SPAN><SPAN>status </SPAN><SPAN>=</SPAN> <SPAN>403</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>next</SPAN><SPAN>(</SPAN><SPAN>error</SPAN><SPAN>)</SPAN><SPAN>;</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>}</SPAN></FONT></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"><SPAN>};</SPAN></FONT></DIV></DIV></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><FONT face="courier new,courier" size="1 2 3 4 5 6 7"> </FONT></DIV><DIV><FONT face="courier new,courier" size="1 2 3 4 5 6 7"> <FONT face="arial,helvetica,sans-serif">I apologize to the lost indentations.</FONT></FONT></DIV></DIV></DIV></DIV>2024-04-22T15:56:49.322000+02:00https://community.sap.com/t5/technology-q-a/cap-authentication/qaa-p/13678553#M4826658Re: CAP authentication2024-04-22T19:27:11.692000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>Technically speaking, CAP typically relies on approuter/xsuaa instances to oversee authentication. That's maybe most common but<SPAN> that's not an absolute. </SPAN></P><P>Assuming that your CAP application deployment is front-ended by approuter, you should have a look at <A href="https://community.sap.com/t5/technology-blogs-by-sap/using-postman-for-api-testing-with-xsuaa/ba-p/13442516" target="_self">this post by Marius Obert</A>, I haven't used this in a while, but I expect the mechanism still works. Marius writes up an important caveat on the technique -- it will not work universally -- so read carefully.</P>2024-04-22T19:27:11.692000+02:00https://community.sap.com/t5/technology-q-a/reading-external-odata-api-from-cap/qaa-p/13679664#M4826788Re: reading external (OData) API from cap2024-04-23T16:52:17.077000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>That's not a Content Type that you should get back from a successful OData API service call - hence the error.</P><P>My gut tells me that you might be getting an error during the call and that the API might be poorly implemented enough to be emitting HTML-based error messages. You might want to verify that you can call the service using something like Postman. If the call succeeds, you can verify the content type is something like "application/xml", or "text/xml" (different OData service providers will use one of several XML or JSON content types here). You can force an error, too, to expose the difference.</P><P>If this is looking like what's happening, working around it will depend upon the API that you are using to make the call.</P>2024-04-23T16:52:17.077000+02:00https://community.sap.com/t5/technology-q-a/reading-external-odata-api-from-cap/qaa-p/13681365#M4827029Re: reading external (OData) API from cap2024-04-24T21:04:52.816000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919If you don't mind, please elaborate on what fixed your issue -- it will likely help others in the future.2024-04-24T21:04:52.816000+02:00https://community.sap.com/t5/technology-blog-posts-by-sap/the-2024-developer-insights-survey-the-report/ba-p/13686151The 2024 Developer Insights Survey: The Report2024-04-30T03:48:33.552000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<DIV class=""><DIV><DIV class="lia-indent-padding-left-60px" style="padding-left : 60px;"><EM><FONT size="2">We normally publish the annual external report for our annual SAP Developer Insights Survey directly on SAP Developer Center. This year we encountered an unfortunate process issue that delayed publishing this report on that site: rather than delaying it further, I'm posting a copy of the report here for Community review and discussion. We'll post the final copy on developers.sap.com as soon as practical.</FONT><BR /></EM><STRONG><EM><BR /><BR /></EM></STRONG></DIV><DIV class=""><EM><EM><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.16.22 AM.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103326iBC85E7933F44189C/image-size/large?v=v2&px=999" role="button" title="Screenshot 2024-04-29 at 9.16.22 AM.png" alt="Screenshot 2024-04-29 at 9.16.22 AM.png" /></span></EM></EM></DIV><DIV class=""> </DIV><DIV class=""><EM>Role Overlaps for external SAP developers</EM></DIV></DIV></DIV><H2 id="toc-hId-993565403">Part I: Introduction and General Information<A class="" title="Direct link to Part I: Introduction and General Information" href="http://localhost:3000/external-report-2024#part-i-introduction-and-general-information" target="_blank" rel="noopener nofollow noreferrer"></A></H2><P>Welcome to the 2024 SAP Developer Insights Survey report. This annual survey targets SAP’s existing external developer audience. It is used to track demographics, usage patterns, and trends within that population. 2024 is the fifth year we have conducted the survey. The survey program is led by the SAP Ecosystem and Community team. Key support is provided by the SAP Global Experience Management Office. Several other SAP teams provide advice and inputs to survey content. Those teams are listed at the end of this report.</P><P>This year's survey was open for six weeks - from mid-January through the end of February.</P><P>Each year's survey is composed of a mix of new topic questions and repeat select questions from past years to track trends.</P><H3 id="toc-hId-926134617">Key Findings from the 2024 Survey<A class="" title="Direct link to Key Findings from the 2024 Survey" href="http://localhost:3000/external-report-2024#key-findings-from-the-2024-survey" target="_blank" rel="noopener nofollow noreferrer"></A></H3><UL><LI><P><STRONG><EM>SAP Low Code / No Code Use is Increasing</EM></STRONG><SPAN> </SPAN>- this is true both on production Extension projects and proportional to competitor Low Code / No Code products</P></LI><LI><P><STRONG><EM>Increasing Presence of Solution Architects</EM></STRONG><SPAN> </SPAN>- this is a trend we noted last year and it continues this year. 42% of respondents now report that they acted in the role of Solution or Application Architect in the last year -- this proportion has been consistently rising and is up by a net 20% in the past two years. This role is probably underserved in our current external outreach and is likely a good area to focus upon for new programs.</P></LI><LI><P><STRONG><EM>SAP Developer Satisfaction is flat or slightly declining</EM></STRONG><SPAN> </SPAN>- 70% of respondents report they are “very satisfied” or “satisfied” with their development work with SAP. This is down from 75% in 2023 -- lower, but just within the margin of error for responses to this question.</P></LI><LI><P><STRONG><EM>Back-to-Office trend slowing</EM></STRONG><SPAN> </SPAN>- we have been tracking these numbers since 2021. Additional 2024 respondents report settling back into a tradition office work environment, but the rate of the shift has slowed.</P></LI><LI><P><STRONG><EM>BTP Developers Guide - limited awareness</EM></STRONG><SPAN> </SPAN>-- this important guidance document was announced at TechEd this past November, but barely half of respondents were aware of its existence.</P></LI></UL><P>These topics will be covered in more detail in the rest of the report.</P><H3 id="toc-hId-729621112">General Topics<A class="" title="Direct link to General Topics" href="http://localhost:3000/external-report-2024#general-topics" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>We included a number of general questions in the survey covering such topics as age, work location and status, as well as role.</P><H4 id="toc-hId-662190326">Employment Status and Relation to SAP<A class="" title="Direct link to Employment Status and Relation to SAP" href="http://localhost:3000/external-report-2024#employment-status-and-relation-to-sap" target="_blank" rel="noopener nofollow noreferrer"></A></H4><DIV class=""><DIV><DIV class=""><DIV><STRONG>Employment</STRONG></DIV><DIV><SPAN class=""><EM>"What is your current employment status?"</EM></SPAN> </DIV><DIV><DIV class=""><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.58.31 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103359iEA2A795AEE94893C/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.58.31 AM.png" alt="Screenshot 2024-04-29 at 9.58.31 AM.png" /></span></DIV><DIV class=""> </DIV></DIV></DIV></DIV><DIV><DIV class=""><DIV><STRONG>SAP Developer Community Composition</STRONG></DIV><DIV><DIV><DIV class=""><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.58.43 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103360i2AEAA460636C107F/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.58.43 AM.png" alt="Screenshot 2024-04-29 at 9.58.43 AM.png" /></span></DIV><DIV class=""><SPAN>We have seen no significant change in these breakdowns from year to year.</SPAN></DIV></DIV></DIV></DIV></DIV></DIV><H4 id="toc-hId-465676821">SAP Developer Community Age Distribution</H4><H4 id="toc-hId-269163316"><A class="" title="Direct link to SAP Developer Community Age Distribution" href="http://localhost:3000/external-report-2024#sap-developer-community-age-distribution" target="_blank" rel="noopener nofollow noreferrer"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.21.32 AM.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103340iE5721F4CC4CA9D34/image-size/large?v=v2&px=999" role="button" title="Screenshot 2024-04-29 at 9.21.32 AM.png" alt="Screenshot 2024-04-29 at 9.21.32 AM.png" /></span></A></H4><P>There is a modest decrease this year in the two eldest age categories. There is a corresponding increase in the 35-44 bucket. We cannot produce an accurate median age from the way that we currently gather this information.</P><H2 id="toc-hId--185515627">Part II. Narrowing the Response Set<A class="" title="Direct link to Part II. Narrowing the Response Set" href="http://localhost:3000/external-report-2024#part-ii-narrowing-the-response-set" target="_blank" rel="noopener nofollow noreferrer"></A></H2><P>A primary objective of our survey is to build a model of our community's usage patterns. It helps us build more effective programs. With that goal in mind, in the remainder of the report we will narrow the data we'll consider in these ways:</P><UL><LI><STRONG><EM>External Developers Only</EM></STRONG><SPAN> </SPAN>- we exclude responses from SAP employees, and others (students, analysts, etc.)</LI><LI><STRONG><EM>Recent Development Experience</EM></STRONG><SPAN> </SPAN>- we only include responses from those who stated that they had been part of an SAP extension or integration project within the past year</LI></UL><H4 id="toc-hId--123863694"> </H4><H4 id="toc-hId--320377199">Workplace and Trends</H4><H4 id="toc-hId--516890704"><A class="" title="Direct link to Workplace and Trends" href="http://localhost:3000/external-report-2024#workplace-and-trends" target="_blank" rel="noopener nofollow noreferrer"></A></H4><DIV class=""><DIV><DIV class=""><DIV><STRONG>Office Location</STRONG></DIV><DIV><SPAN class=""><EM>"As of right now, where do you primarily physically work from?"</EM></SPAN> </DIV><DIV><DIV class=""><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.51.55 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103357iA14C01687B19DD4B/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.51.55 AM.png" alt="Screenshot 2024-04-29 at 9.51.55 AM.png" /></span></DIV></DIV></DIV></DIV><DIV><DIV class=""><DIV><STRONG>Year-to-year trend in Workplace</STRONG></DIV></DIV></DIV></DIV><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.52.07 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103358i6670F6C992E41F11/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.52.07 AM.png" alt="Screenshot 2024-04-29 at 9.52.07 AM.png" /></span></P><P>This shows a slowing trend of employees moving back to conventional offices from home. From a past Developer Survey, 29% of respondents reported they had primarily worked at home prior to the pandemic.</P><H3 id="toc-hId--917718297">Where are the Developers?<A class="" title="Direct link to Where are the Developers?" href="http://localhost:3000/external-report-2024#where-are-the-developers" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>We asked,<SPAN> </SPAN><EM>"Which country are you based in?"</EM></P><TABLE><TBODY><TR><TD><DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.26.14 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103341i8D4C04C15020E40F/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.26.14 AM.png" alt="Screenshot 2024-04-29 at 9.26.14 AM.png" /></span></DIV><DIV> </DIV></DIV></TD><TD>Respondent Count <TABLE><TBODY><TR><TD width="73.2422px" height="30px"><STRONG>Position</STRONG></TD><TD width="121.539px" height="30px"><STRONG>Country</STRONG></TD></TR><TR><TD width="73.2422px" height="30px">1</TD><TD width="121.539px" height="30px">India</TD><TD width="40px" height="30px">108</TD></TR><TR><TD width="73.2422px" height="30px">2</TD><TD width="121.539px" height="30px">Germany</TD><TD width="40px" height="30px">93</TD></TR><TR><TD width="73.2422px" height="30px">3</TD><TD width="121.539px" height="30px">United States</TD><TD width="40px" height="30px">29</TD></TR><TR><TD width="73.2422px" height="30px">4</TD><TD width="121.539px" height="30px">Turkey</TD><TD width="40px" height="30px">18</TD></TR><TR><TD width="73.2422px" height="30px">5</TD><TD width="121.539px" height="30px">Australia</TD><TD width="40px" height="30px">16</TD></TR><TR><TD width="73.2422px" height="30px">6</TD><TD width="121.539px" height="30px">Spain</TD><TD width="40px" height="30px">15</TD></TR><TR><TD width="73.2422px" height="30px">7</TD><TD width="121.539px" height="30px">Canada</TD><TD width="40px" height="30px">12</TD></TR><TR><TD width="73.2422px" height="30px">8</TD><TD width="121.539px" height="30px">Italy</TD><TD width="40px" height="30px">8</TD></TR><TR><TD width="73.2422px" height="30px">9</TD><TD width="121.539px" height="30px">Brazil</TD><TD width="40px" height="30px">7</TD></TR><TR><TD width="73.2422px" height="30px">10</TD><TD width="121.539px" height="30px">Denmark</TD><TD width="40px" height="30px">7</TD></TR><TR><TD width="73.2422px" height="30px">11</TD><TD width="121.539px" height="30px">Mexico</TD><TD width="40px" height="30px">7</TD></TR><TR><TD width="73.2422px" height="30px">12</TD><TD width="121.539px" height="30px">Switzerland</TD><TD width="40px" height="30px">6</TD></TR><TR><TD width="73.2422px" height="30px">13</TD><TD width="121.539px" height="30px">Austria</TD><TD width="40px" height="30px">6</TD></TR><TR><TD width="73.2422px" height="30px">14</TD><TD width="121.539px" height="30px">Chile</TD><TD width="40px" height="30px">5</TD></TR><TR><TD width="73.2422px" height="30px">15</TD><TD width="121.539px" height="30px">Czech Republic</TD><TD width="40px" height="30px">5</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><P><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.22.36 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103343i0F5B275922F1F0B8/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.22.36 AM.png" alt="Screenshot 2024-04-29 at 9.22.36 AM.png" /></span></P><P>By country, India has the largest number of respondents and probably the densest geographic concentration, followed by Germany, and then the USA. When grouped by SAP region, however, EMEA North is largest.</P><H3 id="toc-hId--1114231802">Development Job Roles<A class="" title="Direct link to Development Job Roles" href="http://localhost:3000/external-report-2024#development-job-roles" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>We asked respondents which common development-related roles they perform.</P><P><EM>"Which roles describe your day-to-day work? (Select all that apply)"</EM></P><DIV class=""><DIV><DIV class=""><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.29.13 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103347i69B12D2BC8DD4E6D/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.29.13 AM.png" alt="Screenshot 2024-04-29 at 9.29.13 AM.png" /></span><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.19.53 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103348iECF9B5F39EE3F658/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.19.53 AM.png" alt="Screenshot 2024-04-29 at 9.19.53 AM.png" /></span></DIV></DIV></DIV><P>Respondents often "wear multiple hats" in their job. This question is asked in "select all that apply" form to capture that information.<BR />The Venn diagram on the right depicts the relative overlaps of the top seven roles reported by respondents. The area of each overlapping region reflects the count respondents performing the overlapping roles. For example, from this we can seel that all (UX) "Designers" are also "Developers". Most but not quite all "Enterprise Architects" also are "Solution Architects".</P><P>It is unsurprising that the "Developer" role leads. Architecture roles as a group have increased each year. Solution/Application developer shows roughly a ten percent increase, year to year. This probably corresponds to SAP Developers' steady move to the Cloud -- cloud extensibility offers more choices in solving a given business problem, and Solution Architects are the role responsible most often for making such decisions.</P><H3 id="toc-hId--1310745307">Development Domains<A class="" title="Direct link to Development Domains" href="http://localhost:3000/external-report-2024#development-domains" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>For respondents selecting "Developer" as one of their roles, we were interested in the specific application domains they work in:</P><P><EM>"Which of the following development domains describe your day-to-day work? (select all that apply)"</EM></P><P><EM><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.31.33 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103349iA12A0A9A72A0B502/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.31.33 AM.png" alt="Screenshot 2024-04-29 at 9.31.33 AM.png" /></span></EM></P><P>Year to year, Integration came in higher than we expected. Mobile web front-end development is more common than native mobile application development. This isn't completely unexpected, but worth noting.</P><H3 id="toc-hId--1507258812">Recent SAP Project Experience?<A class="" title="Direct link to Recent SAP Project Experience?" href="http://localhost:3000/external-report-2024#recent-sap-project-experience" target="_blank" rel="noopener nofollow noreferrer"></A></H3><DIV class=""><DIV><SPAN class=""><EM>"Have you developed integrations or extensions for any SAP products or technologies in the past 12 months?"</EM></SPAN> </DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.32.26 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103350i1102344E36BCC227/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.32.26 AM.png" alt="Screenshot 2024-04-29 at 9.32.26 AM.png" /></span></DIV><P>Extension and Integration are key scenarios for developers working with SAP applications. We wanted to focus on developers with recent experience in these areas. Roughly 70% of developers answered "Yes" here.</P><H3 id="toc-hId--1703772317">Popular Programming Languages<A class="" title="Direct link to Popular Programming Languages" href="http://localhost:3000/external-report-2024#popular-programming-languages" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P><EM>"Which programming languages have you used in your development work over the past 12 months? Please select all that apply."</EM></P><P><EM><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.32.39 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103351i2A44BEDB17230F5F/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.32.39 AM.png" alt="Screenshot 2024-04-29 at 9.32.39 AM.png" /></span></EM></P><P>This was posed as a multiple response question. ABAP dominates, as it has in every year of our survey. JavaScript is very popular as well, which could be attributed to its use in both SAPUI5 and CAP. Java and Python are roughly tied for third place. The relative positions of these top four languages hasn't changed much, year to year.</P><P>We extended our survey beyond just language use to ask about popular frameworks.</P><H3 id="toc-hId--1900285822">Popular Programming Frameworks<A class="" title="Direct link to Popular Programming Frameworks" href="http://localhost:3000/external-report-2024#popular-programming-frameworks" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>We asked respondents who are Developers to pick which common front and back-end frameworks they have worked with in the past year.</P><DIV class=""><DIV><DIV class=""><DIV><STRONG>Front-Ends</STRONG></DIV><DIV><STRONG><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.34.53 AM.png" style="width: 392px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103352iEF154825D0915944/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.34.53 AM.png" alt="Screenshot 2024-04-29 at 9.34.53 AM.png" /></span></STRONG></DIV></DIV></DIV><DIV><DIV class=""><DIV><STRONG>Back-Ends</STRONG></DIV><DIV><STRONG><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 9.35.01 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103353i9376EA891FC9215A/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 9.35.01 AM.png" alt="Screenshot 2024-04-29 at 9.35.01 AM.png" /></span></STRONG></DIV></DIV></DIV></DIV><H3 id="toc-hId--2096799327">Application and Business Technology Platform Architectures<A class="" title="Direct link to Application and Business Technology Platform Architectures" href="http://localhost:3000/external-report-2024#application-and-business-technology-platform-architectures" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>SAP applications can be extended using any one of several architectural approaches. These can be grouped into two major classes: on-stack (in-app) and side-by-side (essentially, BTP-based).</P><P>We were wondering which approaches are most popular.</P><DIV class=""><DIV><STRONG>Popular Extension Architectures</STRONG></DIV><DIV><SPAN class=""><EM>"For the most recent extension project that you were part of, what was the principal runtime architecture of the back-end elements?"</EM></SPAN> </DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 10.01.23 AM.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103361iA11646F6EA58D686/image-size/large?v=v2&px=999" role="button" title="Screenshot 2024-04-29 at 10.01.23 AM.png" alt="Screenshot 2024-04-29 at 10.01.23 AM.png" /></span></DIV></DIV><P>We don't distinguish between newer and older applications (e.g., S/4HANA vs. ECC) -- this likely explains the dominance of "on-stack ABAP". Aside from the obvious dominance of ABAP, we can also see that CAP is relatively popular. We also, somewhat unexpectedly, see that Low Code/No Code products like Build Apps and Build Process Automation have quickly grown in popularity -- this question is asking about real production projects, and seeing those two account for roughly 10% is an interesting surprise. Basically, they have only been available in the last year.</P><P>ABAP and CAP both have style or language variants in their respective frameworks.<BR />ABAP can be programmed as "ABAP for Cloud Development" or "ABAP Standard". CAP is available in JavaScript or Java language variants.<BR />Where the respondent selected ABAP or CAP, we asked about the variant used on the project:</P><P> </P><DIV class=""><DIV><DIV class=""><DIV><STRONG>ABAP Variants</STRONG></DIV><DIV><STRONG><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 11.00.09 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103389iBBAE6C4387EEFF50/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 11.00.09 AM.png" alt="Screenshot 2024-04-29 at 11.00.09 AM.png" /></span></STRONG></DIV><DIV> </DIV></DIV></DIV><DIV><DIV class=""><DIV><STRONG>CAP Variants</STRONG></DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 11.00.15 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103390i16EBFE0C62C4A721/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 11.00.15 AM.png" alt="Screenshot 2024-04-29 at 11.00.15 AM.png" /></span></DIV><DIV><SPAN>The roughly 50-50 breakdown of ABAP styles is consistent with responses elsewhere in the survey. It reflects that roughly half of the ABAP projects are ECC or very early forms of S/4HANA.</SPAN></DIV></DIV></DIV></DIV><P>CAP/JavaScript if plainly most popular for CAP projects. It was curious that CAP/Java wasn't used all by itself and this gave us pause to go look at the data carefully. Recall that these results apply to external SAP Developers only. When we consider SAP employees as well, we do see projects that are CAP/Java-only. We have no explanation for why external developers might use both concurrently on a project. That's something maybe for follow-up investigation.</P><H3 id="toc-hId-2001654464">Popular IDEs<A class="" title="Direct link to Popular IDEs" href="http://localhost:3000/external-report-2024#popular-ides" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>We are always curious about general work patterns of developers. We asked about developer's most commonly used editors. While it would be difficult in such a survey of all developers to add many questions, we were particularly curious about most popular IDE or editor.</P><DIV class=""><DIV><STRONG>Preferred IDE or Editor</STRONG></DIV><DIV><SPAN class=""><EM>"Which IDE or text editor do you most commonly use for development tasks?"</EM></SPAN> </DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 11.03.20 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103391iD6CAF879B519E261/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 11.03.20 AM.png" alt="Screenshot 2024-04-29 at 11.03.20 AM.png" /></span></DIV></DIV><P>The editor of choice will depend on the language. For example, BAS does not currently support ABAP. This might contribute to its relatively low preference. At the same time, SAP GUI and -- arguably -- Eclipse are the primary editors for ABAP, so it's maybe no surprise that they are reflected as most popular. As a follow-on, we might look at the editor choices here for CAP/JS, CAP/Java, and ABAP developers separately.</P><H3 id="toc-hId-1805140959">Potential / Use of Generative AI for Developers<A class="" title="Direct link to Potential / Use of Generative AI for Developers" href="http://localhost:3000/external-report-2024#potential--use-of-generative-ai-for-developers" target="_blank" rel="noopener nofollow noreferrer"></A></H3><DIV class=""><DIV><STRONG>Generative AI for Developers</STRONG></DIV><DIV><SPAN class=""><EM>"Generative AI (GenAI) has been an exciting topic for developers in 2023. Looking forward, which of these GenAI capabilities do you expect will be useful in your work? Select the choice that best describes your interest or use for each technology area."</EM></SPAN> </DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Screenshot 2024-04-29 at 11.13.47 AM.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103392iCF46267675880DF3/image-size/large?v=v2&px=999" role="button" title="Screenshot 2024-04-29 at 11.13.47 AM.png" alt="Screenshot 2024-04-29 at 11.13.47 AM.png" /></span></DIV></DIV><P>As these capabilities were not generally available in SAP products at the time of the survey, we posed a series of questions intended to gauge their interest in particular features that might be based on Generative AI technologies. Since one or more of these features might be available in non-SAP products, we included choices in each category for the respondent to state that they have either evaluated such a capability or are even using it today.</P><P>An brief explanation of each category was included in the survey and is shown below:</P><P><STRONG><EM>Code Generation and Autocompletion:</EM></STRONG><SPAN> </SPAN>GenAI tools can generate code snippets, complete lines of code, or suggest entire functions based on the context provided by the developer.</P><P><STRONG><EM>Bug Detection and Code Review:</EM></STRONG><SPAN> </SPAN>AI models can be trained to identify potential bugs and vulnerabilities in the code. They can also suggest improvements in code quality, best practices, and code consistency.</P><P><STRONG><EM>Automated Testing and Test Data Generation:</EM></STRONG><SPAN> </SPAN>GenAI can be used to create test cases, which can help in thoroughly testing software applications. This includes generating test data that covers edge cases, potentially reducing the time and effort in manual testing.</P><P><STRONG><EM>Documentation Generation:</EM></STRONG><SPAN> </SPAN>AI can assist in generating and updating technical documentation. It can interpret the code and create comprehensive documentation, which is crucial for maintaining and scaling software projects.</P><P><STRONG><EM>Natural Language Processing (NLP) for Code:</EM></STRONG><SPAN> </SPAN>AI models can translate natural language queries into code, allowing developers to express their intent in plain language. This can be particularly helpful for novice developers working with unfamiliar frameworks.</P><P><STRONG><EM>Customized User Experience Design:</EM></STRONG><SPAN> </SPAN>AI can help generate user interface designs to enhance user experience.</P><P><STRONG><EM>AI-Powered Development Tools:</EM></STRONG><SPAN> </SPAN>Integration of AI in IDEs for real-time assistance, such as suggesting optimizations, refactoring code, or even predicting the next steps in development.</P><P><STRONG><EM>Automated Code Refactoring:</EM></STRONG><SPAN> </SPAN>AI can assist in code refactoring by suggesting or even implementing improvements in code structure.</P><P><STRONG><EM>Software Design and Architecture:</EM></STRONG><SPAN> </SPAN>AI can help in generating software design patterns or architectural models based on specified requirements. This can speed up the initial stages of development and ensure adherence to best practices.</P><P><STRONG><EM>Enhanced Security Protocols:</EM></STRONG><SPAN> </SPAN>Generative AI can be used to develop advanced security protocols and encryption methods, providing robust security solutions in software applications.</P><H3 id="toc-hId-1608627454">Use of Select SAP Technologies<A class="" title="Direct link to Use of Select SAP Technologies" href="http://localhost:3000/external-report-2024#use-of-select-sap-technologies" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>In past surveys we asked questions around the awareness and use of select SAP technologies. The list changes year to year. This year we asked more specific questions elsewhere, so the list is short.</P><P> </P><DIV class=""><DIV><DIV class=""><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 10.04.29 AM.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103362i6626C8292B9E2F6C/image-size/large?v=v2&px=999" role="button" title="Screenshot 2024-04-29 at 10.04.29 AM.png" alt="Screenshot 2024-04-29 at 10.04.29 AM.png" /></span></DIV></DIV></DIV><DIV><DIV class=""> </DIV></DIV></DIV><H3 id="toc-hId-1580297640">Developer Satisfaction with SAP<A class="" title="Direct link to Developer Satisfaction with SAP" href="http://localhost:3000/external-report-2024#developer-satisfaction-with-sap" target="_blank" rel="noopener nofollow noreferrer"></A></H3><DIV class=""><DIV><STRONG>SAP Development Satisfaction</STRONG></DIV><DIV><SPAN class=""><EM>"For your recent experience developing an integration or extension, how would you describe your overall satisfaction with SAP?"</EM></SPAN> </DIV><DIV> </DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Screenshot 2024-04-29 at 10.05.40 AM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103363i9DAE6E2144960CCD/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 10.05.40 AM.png" alt="Screenshot 2024-04-29 at 10.05.40 AM.png" /></span></DIV></DIV><P>Roughly 70% of respondents report they are “very satisfied” or “satisfied” with their development work with SAP. This is down from 75% reported in 2023 -- a lower number, but just within the margin of error for responses to this question.</P><H3 id="toc-hId-1383784135">BTP Developers Guide<A class="" title="Direct link to BTP Developers Guide" href="http://localhost:3000/external-report-2024#btp-developers-guide" target="_blank" rel="noopener nofollow noreferrer"></A></H3><DIV class=""><DIV><STRONG>Awareness and Use of the BTP Developers Guide</STRONG></DIV><DIV><SPAN class=""><EM>"A new BTP Developers Guide was announced at SAP’s TechEd this past November. Which statement best described your level of familiarity with this document?"</EM></SPAN> </DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Screenshot 2024-04-29 at 11.14.56 AM.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103393iA7C780D234C02B44/image-size/large?v=v2&px=999" role="button" title="Screenshot 2024-04-29 at 11.14.56 AM.png" alt="Screenshot 2024-04-29 at 11.14.56 AM.png" /></span><P> <SPAN>Nearly half of respondents were unaware of this document's release. Raising awareness for this and other related BTP framework documents would be a good goal for 2024.</SPAN></P></DIV></DIV><H3 id="toc-hId-1187270630">Cloud Insights<A class="" title="Direct link to Cloud Insights" href="http://localhost:3000/external-report-2024#cloud-insights" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>We first asked respondents if they used any cloud providers for their projects. For those that answered, "yes", we asked about the use of several major providers, including SAP BTP. We also asked if their use included SAP or non-SAP projects. This information was condensed into a chart depicting the relative use of each cloud provider.</P><P>Similar to the earlier questions around BTP Environments, these numbers do not reflect a tally of projects for each platform - instead it reflects developer exposure to each.</P><P> </P><DIV><STRONG>Using Cloud Providers?</STRONG></DIV><DIV><SPAN class=""><EM>"Are you using any cloud providers for your development projects?"</EM></SPAN> </DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 12.58.14 PM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103442iFB80C36035EB3C8F/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 12.58.14 PM.png" alt="Screenshot 2024-04-29 at 12.58.14 PM.png" /></span></DIV><DIV>We asked, "Which cloud providers are you using for development projects?" and we asked in a way to separate SAP-related projects from more general use.</DIV><P> </P><DIV class=""><DIV><DIV class=""><DIV><STRONG>SAP Business Technology Platform</STRONG></DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 1.02.54 PM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103444i24F20391DBE2067F/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 1.02.54 PM.png" alt="Screenshot 2024-04-29 at 1.02.54 PM.png" /></span></DIV></DIV></DIV><DIV><DIV class=""><DIV><STRONG>Microsoft Azure</STRONG></DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 1.03.46 PM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103445i7D7F1A44A532D164/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 1.03.46 PM.png" alt="Screenshot 2024-04-29 at 1.03.46 PM.png" /></span></DIV></DIV></DIV><DIV><DIV class=""><DIV><STRONG>Amazon Web Services</STRONG></DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 1.04.27 PM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103446iA5BAC3144C450C45/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 1.04.27 PM.png" alt="Screenshot 2024-04-29 at 1.04.27 PM.png" /></span></DIV></DIV></DIV><DIV><DIV class=""><DIV><STRONG>Google Cloud Platform</STRONG></DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 1.05.23 PM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103447iF0517BE80CBBAE2B/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 1.05.23 PM.png" alt="Screenshot 2024-04-29 at 1.05.23 PM.png" /></span></DIV></DIV></DIV><DIV><DIV class=""><DIV><STRONG>Alibaba Cloud</STRONG></DIV><DIV><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 1.06.00 PM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103448iF5892AE27808E66E/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 1.06.00 PM.png" alt="Screenshot 2024-04-29 at 1.06.00 PM.png" /></span></DIV></DIV></DIV></DIV><H3 id="toc-hId-990757125">Low / No Code Tools<A class="" title="Direct link to Low / No Code Tools" href="http://localhost:3000/external-report-2024#low--no-code-tools" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P>This is the third consecutive year in which we've asked questions around Low Code and No Code products. The list was composed of leaders in the Gartner LCNC Magic Quadrant Report and select SAP products. SAP Process Automation -- now Build Process Automation -- was not yet announced at the time of the 2022 survey, so it only appears in the more recent data.</P><P>For each product, we asked respondents to select the most applicable category reflecting their awareness or use of the product (e.g., "I am aware of the product", "We plan to use the product", "We are currently using the product in production", ...). We normalized the tallies for each year to adjust for the annual variation in overall survey response counts. We then filtered down to just examine productive use:</P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"> </P><TABLE><TBODY><TR><TD><STRONG>Productive use of Product</STRONG></TD><TD><STRONG>2022</STRONG></TD><TD><STRONG>2023</STRONG></TD><TD><STRONG>2024</STRONG></TD></TR><TR><TD>Vendor A</TD><TD>36%</TD><TD>33%</TD><TD>28%</TD></TR><TR><TD>SAP Build Process Automation</TD><TD>0%</TD><TD>8%</TD><TD>22%</TD></TR><TR><TD>SAP Build Apps</TD><TD>4%</TD><TD>14%</TD><TD>20%</TD></TR><TR><TD>Vendor B</TD><TD>24%</TD><TD>19%</TD><TD>13%</TD></TR><TR><TD>SAP Signavio</TD><TD>9%</TD><TD>10%</TD><TD>8%</TD></TR><TR><TD>Vendor C</TD><TD>12%</TD><TD>8%</TD><TD>5%</TD></TR><TR><TD>Vendor D</TD><TD>4%</TD><TD>2%</TD><TD>2%</TD></TR><TR><TD>Vendor E</TD><TD>5%</TD><TD>3%</TD><TD>1%</TD></TR><TR><TD>Vendor F</TD><TD>5%</TD><TD>3%</TD><TD>1%</TD></TR></TBODY></TABLE><H3 id="toc-hId-794243620"> </H3><H3 id="toc-hId-597730115">Learning and Help Resources<A class="" title="Direct link to Learning and Help Resources" href="http://localhost:3000/external-report-2024#learning-and-help-resources" target="_blank" rel="noopener nofollow noreferrer"></A></H3><P class="lia-indent-padding-left-30px" style="padding-left : 30px;">We were interested in preferences in the format or media type of learning resources by respondents.</P><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>Preferred General Technical Resources</STRONG></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><SPAN class=""><EM>"When learning new skills or technical subjects over the past 12 months, what resources did you tend use the most? Please select up to three resources."</EM></SPAN> </DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Screenshot 2024-04-29 at 1.06.45 PM.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103451i0E97003DC560D8B6/image-size/large?v=v2&px=999" role="button" title="Screenshot 2024-04-29 at 1.06.45 PM.png" alt="Screenshot 2024-04-29 at 1.06.45 PM.png" /></span></DIV></DIV><P class="lia-indent-padding-left-30px" style="padding-left : 30px;">On the topic of Help, we shifted in this next question from formats to specific web sites.</P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"> </P><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>Top SAP Help Resource Sites</STRONG></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><SPAN class=""><EM>"What is your preferred resource if you need help, or have a challenge with the SAP technology / tool you are working with?<SPAN> </SPAN>"</EM></SPAN> </DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="Screenshot 2024-04-29 at 1.08.00 PM.png" style="width: 999px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103452i7758BC61B49EBCB5/image-size/large?v=v2&px=999" role="button" title="Screenshot 2024-04-29 at 1.08.00 PM.png" alt="Screenshot 2024-04-29 at 1.08.00 PM.png" /></span></DIV></DIV><P class="lia-indent-padding-left-30px" style="padding-left : 30px;">Almost sixty percent of respondents say they use organic search or SAP Community as their primary source of SAP help. This is consistent with past years. This continues to demonstrate good visibility of the Community site overall and likely speaks well for the usefulness of the site content.</P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;"> </P><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>SAP Learning Hub Subscribers</STRONG></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><SPAN class=""><EM>"Do you have a subscription to SAP Learning Hub?"</EM></SPAN> </DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 1.08.58 PM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103453iCB838C1F5CEFF9CB/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 1.08.58 PM.png" alt="Screenshot 2024-04-29 at 1.08.58 PM.png" /></span></DIV></DIV></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>Technical Certifications</STRONG></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><SPAN class=""><EM>"How many technology-related certification programs have you completed within the past four years?"</EM></SPAN> </DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 1.10.28 PM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103454iD4640D1951B738CA/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 1.10.28 PM.png" alt="Screenshot 2024-04-29 at 1.10.28 PM.png" /></span></DIV></DIV></DIV></DIV><H3 id="toc-hId-401216610">Satisfaction with SAP Learning Hub<A class="" title="Direct link to Satistaction with SAP Learning Hub" href="http://localhost:3000/external-report-2024#satistaction-with-sap-learning-hub" target="_blank" rel="noopener nofollow noreferrer"></A></H3><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><STRONG>Overall Learning Hub Satisfaction</STRONG></DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><SPAN class=""><EM>"How would you describe your overall satisfaction with SAP Learning Hub?"</EM></SPAN> </DIV><DIV class="lia-indent-padding-left-30px" style="padding-left : 30px;"><span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot 2024-04-29 at 1.11.08 PM.png" style="width: 400px;"><img src="https://community.sap.com/t5/image/serverpage/image-id/103455iCDC2AFF1B0B46B48/image-size/medium?v=v2&px=400" role="button" title="Screenshot 2024-04-29 at 1.11.08 PM.png" alt="Screenshot 2024-04-29 at 1.11.08 PM.png" /></span></DIV></DIV><H2 id="toc-hId-498106112">Survey Methodology<A class="" title="Direct link to Survey Methodology" href="http://localhost:3000/external-report-2024#survey-methodology" target="_blank" rel="noopener nofollow noreferrer"></A></H2><P class="lia-indent-padding-left-30px" style="padding-left : 30px;">This report is based on a Qualtrics web-based survey of 979 respondents from 56 countries. The survey ran for six calendar weeks between January 15th and March 1st, 2024. Ninety percent of the respondents invested ten minutes or less with the survey.</P><P class="lia-indent-padding-left-30px" style="padding-left : 30px;">The survey was promoted via the SAP Community website and the SAP Developer Center, sap.com pop-up intercepts, social media posts.</P><H4 id="toc-hId--285213407">Other References<A class="" title="Direct link to Other References" href="http://localhost:3000/external-report-2024#other-references" target="_blank" rel="noopener nofollow noreferrer"></A></H4><P class="lia-indent-padding-left-30px" style="padding-left : 30px;">The annual<SPAN> </SPAN><A href="https://survey.stackoverflow.co/2023/" target="_blank" rel="noopener noreferrer nofollow">Stack Overflow Developer Survey</A><SPAN> </SPAN>is an excellent (and no-cost) reference for industry-wide habits of developers.</P>2024-04-30T03:48:33.552000+02:00https://community.sap.com/t5/technology-blog-posts-by-members/build-full-stack-applications-in-sap-btp-cloud-foundry-as-multi-target/bc-p/13689992#M167364Re: Build Full Stack Applications in SAP BTP Cloud Foundry as Multi Target Applications (MTA)2024-05-02T21:09:49.460000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>Hi there. Thanks for this post. It describes a lot of the details of adding requisite packaging and security elements for a BTP Cloud Foundry deployment. <BR /><BR />Maybe I missed it, but there's an important element that seems to be missing for this example: anything other than public APIs should also be verifying that the requestor has proper authorization to make the call. Most often, it isn't sufficient to set up authentication/authorization at the approuter. Technically speaking the Node.js instance here will be running as a separate CF application and any requests to that application's enpoint must have authorization for the data to be truly secure.<BR /><BR />Typically this involves passing JWT-based authorization scopes (which requires a slightly different approuter configuration of the API endpoint(s)). The Node.JS API middleware must then also inspect and validate the JWT cookie when it receives the request. <BR /><BR />I realize that your example focuses on an existing Angular/Node app -- it's worth pointing out that CAP has facilities that make inclusion of such API authorization especially easy -- and you could still expose such APIs that via an Angular front end.</P>2024-05-02T21:09:49.460000+02:00https://community.sap.com/t5/technology-q-a/create-destination-service-in-the-global-account/qaa-p/13690028#M4828189Re: Create destination service in the global account.2024-05-02T22:30:54.900000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>A BTP Global Account is basically just a container for Subaccounts. Subaccounts contain almost everything else, including Destinations. <BR /><BR />Have you considered automation as the solution here? -- It's possible to create destinations automatically in an app deployment MTA (see Gregor Wolf's comment here: <A href="https://community.sap.com/t5/technology-q-a/btp-destination-creation-using-rest-endpoints-cli/qaq-p/12572464" target="_blank">https://community.sap.com/t5/technology-q-a/btp-destination-creation-using-rest-endpoints-cli/qaq-p/12572464</A>). You might also be able to create destinations (destination service instances) via the btp CLI (<A href="https://developers.sap.com/tutorials/cp-sapcp-getstarted.html" target="_blank" rel="noopener noreferrer">https://developers.sap.com/tutorials/cp-sapcp-getstarted.html</A>)</P>2024-05-02T22:30:54.900000+02:00https://community.sap.com/t5/technology-blog-posts-by-sap/the-2024-developer-insights-survey-the-report/bc-p/13708036#M172581Re: The 2024 Developer Insights Survey: The Report2024-05-21T16:15:31.073000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>Hi <a href="https://community.sap.com/t5/user/viewprofilepage/user-id/15251">@ABAPMarty</a> , <a href="https://community.sap.com/t5/user/viewprofilepage/user-id/312">@vladimirs_semikins</a> is right -- the BTP Developer's Guide <STRONG><EM>is</EM></STRONG> part of help.sap.com (<A href="https://help.sap.com/docs/btp/btp-developers-guide/what-is-btp-developers-guide" target="_self" rel="noopener noreferrer">link</A>). Something we missed here or confusion we created in a tutorial? Let us know.</P>2024-05-21T16:15:31.073000+02:00https://community.sap.com/t5/technology-q-a/facing-an-issue-with-btp-cap-application-deployment-service-instance-xxxxx/qaa-p/13712147#M4830705Re: Facing an issue with BTP CAP application deployment -...2024-05-24T18:13:54.247000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>I'd start by inspecting your project's MTA file. Does the literal '<STRONG>xxxxx-metadata' </STRONG>appear there? If so, what service it referencing?</P>2024-05-24T18:13:54.247000+02:00https://community.sap.com/t5/dallas-events/2024-early-fall-stammtisch-legacy-hall/ec-p/13862534#M3Re: 2024 Early Fall Stammtisch @ Legacy Hall2024-09-11T16:21:10.132000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>Be there!</P>2024-09-11T16:21:10.132000+02:00https://community.sap.com/t5/dallas-events/2024-early-fall-stammtisch-legacy-hall/ec-p/13863892#M6Re: 2024 Early Fall Stammtisch @ Legacy Hall2024-09-12T15:09:13.801000+02:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>It was great to see so many folks at the event yesterday! Good conversations. Thanks to all of you who were able to attend. And if you are based in the DFW area and weren't there, stay tuned. </P>2024-09-12T15:09:13.801000+02:00https://community.sap.com/t5/technology-blog-posts-by-sap/the-2025-sap-developer-survey-is-live-contribute-now/ba-p/13993753The 2025 SAP Developer Survey is Live - Contribute Now2025-01-23T03:52:59.925000+01:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P><FONT size="4"><SPAN><STRONG>Attention SAP Developers!<BR /></STRONG><BR /><EM>The 2025 SAP Developer Insights Survey starts today and will be running through the first week in March. It will take about twelve minutes of your time to complete.</EM></SPAN></FONT></P><P><FONT size="4"><SPAN>2025 marks the sixth consecutive year for this survey. </SPAN><STRONG>If you design, develop, or test software for SAP applications, platforms, or data: we have questions for you.</STRONG></FONT></P><H3 id="toc-hId-1209375491"><FONT size="4"><A href="https://sapinsights.eu.qualtrics.com/jfe/form/SV_6AxTBFzfczfuoJg?Source=announcement_post" target="_self" rel="nofollow noreferrer noopener"><STRONG>Take the 2025 SAP Developer Survey now</STRONG></A></FONT></H3><P><FONT size="4">As always, the survey data in anonymous. The information we gather is important to us. It is a key resource we use to understand who you are and what you do. These data play an important role in shaping channels, programs, and to focus new content on your needs.</FONT><BR /><BR /><FONT size="4"><SPAN>We also publish the results back to you. If you are curious, have a look at the </SPAN><A href="https://community.sap.com/t5/technology-blogs-by-sap/the-2024-developer-insights-survey-the-report/ba-p/13686151" target="_blank">report describing last year’s survey results.</A></FONT><BR /><BR /><FONT size="4"><SPAN>The survey period begins today, January 23rd. It will continue for six weeks, ending around March 7th. Our report on this 2025 survey will be released a few weeks after that.</SPAN></FONT><BR /><BR /><FONT size="4"><SPAN>Help us help the SAP Community. Your contribution is important.</SPAN></FONT></P>2025-01-23T03:52:59.925000+01:00https://community.sap.com/t5/dallas-discussions/call-for-speakers-sit-dfw-spring-2025/m-p/14017474#M63Re: Call for Speakers (SIT DFW) - spring 20252025-02-14T21:57:27.175000+01:00rileyraineyhttps://community.sap.com/t5/user/viewprofilepage/user-id/8919<P>For my part, I'd be happy to talk on any one of a range of topics: Internal experimental use of Agents and LLMs inside SAP Community, tips on running LLMs locally, or a review of the 2025 SAP Developer Survey Results.</P>2025-02-14T21:57:27.175000+01:00