Skip to Content

This is going to be a completely non-technical blog post, but still one that might give you interesting insight you normally don’t get when looking at SAP and the SAPUI5 library from outside.

It is no secret that SAP bets big on SAPUI5/OpenUI5, building hundreds of UI5 applications with more than thousand developers. But let’s have a look behind the scenes – what does this mean for the development of UI5?


One sign of that big investment is the continuous growth around UI5:

  • The “original” UI5 teams developing the core and controls in Walldorf (and about 90% of what is available in OpenUI5) have grown almost monthly and now finally been split into teams focusing on the core (data binding, MVC,…), on controls (desktop and mobile), and on consumption topics (best practices, demo applications etc.). These teams have new abbreviated names, according to their responsibilities: we call them team “co”, team “co” and team “co”. Nah, that was a joke, we are actually struggling over the names right now. 🙂

Constantly getting new young developers into the team is for sure keeping us agile and making sure that UI5 evolves and stays up-to-date and we don’t get lazy. One example for such new ideas is the OPA test framework, which was initiated and developed by such a new team member.


  • In addition to these teams, there are now additional teams in Sofia (Bulgaria) being staffed that tightly collaborate with the Walldorf teams to continue development of this very heart of UI5, mainly in the area of UI controls. That’s a very talented and enthusiastic bunch of people and I’m sure we’ll see great things coming from there.  Among the first results of their work there will be “High Contrast” theme support for the sap.m controls and a very useful new layout. They are still hiring, see the last section of this post.


  • Over time, a growing number of other teams all over the world have developed more and more UI5 content. Some of that is in the sap.m library, a lot went into other control libraries that are not part of the OpenUI5 Open Source package or not even of SAPUI5, usually because the content is specific for certain application areas or for usage with SAP systems, so it is not useful for external users. But this is a lot of content!


  • The effort to make JavaScript (and UI5) development more efficient was started in a small but quickly growing “UI5 tools” team and has now extended to several teams working on theSAP Web IDE(formerly known as “SAP River RDE”).


  • There are many others I usually tend to forget because they are not writing code, but there is a big job done by interaction and visual designers to make UI5 look and feel great, there are accessibility experts, documentation developers,… so many people paid by SAP to make UI5 better and easier to use – and you profit from that when using SAPUI5 or OpenUI5.

So you see there is a lot going on around the core of UI5, and this significant investment for sure indicates how serious SAP is about SAPUI5 and OpenUI5.

Still, despite of all that growth around UI5, those of us in the center of the storm are focused on developing SAPUI5/OpenUI5 as a useful standalone UI library. This was our plan from the first day and is witnessed by all the efforts going into the OpenUI5 Open Source version. One consideration is always: how can we make it better for that developer with nothing but a text editor and a web server?

Anyway… I digress… I mentioned that UI5 is hiring! The new teams in Sofia are still growing and have several open positions ranging from Junior Developers to Architects and also including Infrastructure Engineers. They have created a very nice web page introducing SAPUI5, their teams and detailing the job offers:

https://sapuisofia.bg  – it’s even worth a look when you are not looking for a job.

If you want to be part of this success story, you just need to move to Sofia… 😉


And if not, after reading this blog post you can at least move on with the warm feeling that lots of people are doing their best to make UI5 better for you. 🙂

To report this post you need to login first.

7 Comments

You must be Logged on to comment or reply to a post.

  1. John Patterson

    Hi Andreas

    Thanks a lot for sharing, insights like these give good context into what it takes to develop and maintain UI5. Hope we see more blogs like this in the future.

    The OPA test framework looks very interesting, found this cool example OPA Tests for Navigation, looks very simple to use and very effective when used with MockServer.for OData services.

    Where can we find more?

    eg Where does it fit in, is it a JS client side alternative to Selenium  Comparing OPA to Selenium,  when should it be used / not used?


    Sorry for the questions, this feature looks like it fills a much needed gap and i am keen to find out more – will there be a session on this and other upcoming features at DCode?

    Thanks again

    JSP

    (0) 
      1. Kimmo Jokinen

        Hi Tobias,

        I’ve managed to get OPA running locally on this example in the browser. However, I’m trying to automate the tests using PhantomJS and Grunt task runner but cannot get it to work. I get error “ReferenceError: Can’t find variable: jQuery” and it comes in this line: jQuery.sap.require(“sap.ui.thirdparty.qunit”);

        I think it is related to loading the scripts asynchronously using jQuery.sap.require. Here’s a link to an issue on that. I tried to replace jQuery.sap.require with script tags but it didn’t work. I think that is because there are many more jQuery.sap.requires inside the loaded scripts.

        Any idea how I could get it working?

        Regards,

        Kimmo

        (0) 
        1. Tobias Oetzel

          Hi Kimmo,

          by default jQuery.sap.require does not load scripts in an async way. Its sync.

          With the error you got i suspect the sap-ui-core.js script tag is not loaded yet, since with the core the jQuery object is loaded.

          Did you check if phantom js can resolve the sap-ui-core.js script tag?

          Maybe we should move out of here since this is a bit off-topic 🙂

          Best regards,

          Tobias

          (0) 
  2. Jan Penninkhof

    Nice to hear about the internal organization. Thanks for this insights!

    These teams have new abbreviated names, according to their responsibilities: we call them team “co”, team “co” and team “co”. Nah, that was a joke, we are actually struggling over the names right now. 🙂

    I guess that proves Phil Karlton’s point when he said:

    There are only two hard things in Computer Science: cache invalidation and naming things.

    Cheers,

    Jan

    (0) 

Leave a Reply