SAP Australia User Group Conference 2017
On the 4th and 5th of September 2017 was the SAUG Conference, at the international Convention Centre in Darling Harbour. I gave two speeches, one on each day, and both in the “graveyard shift” i.e. the last slot. That is more problematic on the first day, as that puts me right in the way of the free drinks. I had to make sure I did not over run otherwise people would start walking out of the theatre before I had finished, when they started hearing the drinks call their name.
There were about thirty two booths in the exhibition area, and there was a little sheet you had to fill out where you had to visit every booth and get the sheet stamped, and then you could go in a draw for a “Google Home” device. At time of writing (midday on day one) I already have a bag crammed full of pens, hats, memory sticks and all sorts of assorted goodies – and I am only about 25% of the way through the booths, if that.
The theme of this year’s conference was “The Robots are coming to Get Us. First they will take our jobs, and then they will exterminate us”. As might be imagined all the delegates looked down their noses at this, the mere idea of robots replacing humans seemed ridiculous.
There was one proper keynote and one “sponsored” one i.e. an advert.
The proper one was by Kevin Tsai from SAP and he was talking about “data aware products” – that probably was not the actual title but that is how I perceived it. I suppose a talk from SAP is an advert of sorts, but it did not feel like one.
One quote was that it was predicted that by 2020 people would spend more talking to robots ( “bots” ) than they would to their spouses. As many people do not like talking to their spouses anyway that will not be a difficult prophecy to fulfil.
Now at this point I have to mention an important point about SAP conferences. You are given a big sheet before you go in filled with buzzwords, and any time one the speakers mentions a buzzword on the list the entire audience has to jump up and down and scream and go into a Mexican wave.
So when the speaker mentioned SELF DRIVNG CARS the crowd went wild jumping and screaming “Yes Michael!” at the top of their voice, in tribute to TV show “Knight Rider”.
The point was that products like a Tesla car suddenly get better out of the blue when a software update is downloaded wirelessly. In his example one evening he found his car could suddenly navigate his sloping driveway a lot better, as the bottom of the car could suddenly detect such a situation and raise itself out of the way so it did not scrape along the concrete any more. Such a car is an example of a “self-improving product”. I suppose such a car also improves whenever the UK (for example) replaces a coal fired power station with an offshore wind farm, the car gets “greener” but it is still the exact same car it was the day before. The UK a few months ago had its first day since the industrial revolution whereby no coal powered energy was used at all.
At this point the speaker said the magic word UBER and once again the audience went wild, setting off fireworks and singing “I Fought the Law” at the top of their voices.
The thrust of the argument is that to be a self-improving product, the (whatever it is) has to have access to data, and lots of it. Data about the habits of the consumer, about the world around it, about anything even remotely relevant.
Our data scientist at work tells me that he needs real time data about storms at sea (amongst a whole swag of other things) in order to have his AI model optimise its predictions about customer behaviour in relation to buying concrete. I suppose it is like the “butterfly principle” where you have to eat ten times your bodyweight every day to prepare for going into the cocoon and metamorphosing, oh hang on I mean the smallest change in one place has knock on effects everywhere else.
There were then three buzz words in a row:-
DATA LAKE! Cue people singing “Where do we go from here?”
INTERNET OF THINGS! Cue people clicking their fingers and singing the theme from “The Adams Family”
HYPER-AUTOMATE! Cue people screaming, pulling their hair out, and speaking in tongues.
The Paris police force are using HANA to sift through social media feeds amongst other sources and make much of the fact that this is absolutely nothing like the fil “Minority Report with Tom Cruise, where you can predict where a crime is going to happen and who is going to commit the deed, well in advance of it actually happening. What they are doing is nothing like that, nothing like that at all, except the example given was predicting which houses were going to get burgled, and when, and who by.
This all seems like black magic until you factor in the strange but true fact that many people like to boast on Facebook what they are about to do or have just done – before and after committing various sorts of crimes. Big Brother from 1984 had it really tough compared to the actual situation these days.
The next actual HANA example stemmed from the fact that the US healthcare industry currently faces all sorts of “constraints” (hence all the political hoo-ha I suppose) and is in desperate need of help from technology. This point is often made by SAP CEO Bill McDermott when he found this out first hand after he had his nearly fatal accident a few years ago. SAP is doing its level best to – wait for it – wait for it –
CHANGE THE GAME (crowd goes wild) in this area.
The next HANA example concerned a holiday that was invented in China by the company Ali Baba. This new holiday is called “Bachelor Day” and celebrates not being married yet by having one day where lots of products have massive discounts. This apparently puts similar days in the US like “Black Friday” and “Cyber Attack Monday” in the shade. HANA makes sure companies who sell on this day do not run out of stock and hence lose buckets of money.
The next slide went on about how open source SAP had become these days with HANA integrating to products like HADOOP, SPARK, TENSORFLOW, FACE, BA BARRACUS, MAD MURDOCH and HANNIBAL SMITH. It can also be used with a type of memory Intel has developed which I call “bubble memory” where the contents of an in-memory database do not get lost when the power goes off. That has an obvious usage for in-memory databases like HANA, but Doctor Who also found it useful in order to save the universe after the Master tried to destroy all of creation using a giant telescope.
One of the stated goals of SAP for the next five years is to make – wait for it – wait for it –
MACHINE LEARNING (Crowd goes wild, shouts of “Florence!” party poppers being let off everywhere)
- as ubiquitous in software as Java is nowadays.
On the 25th of September SAP CEO Bill McDermott will announce a new SAP product. He will be in New York I think, but the announcement is being live streamed to Las Vegas where all us TechEd attendees will be in a big room listening. This product will be like no other product from SAP ever before, it will transform the whole of reality into a glittering paradise, it will turn tears into laugher, lead into gold, bring about world peace, and have a product name that will change every hour, on the hour. Apart from that last bit, the other qualities will make it different from previous SAP products. No other details are forthcoming as to the exact nature of the product at this time, but rumour has it the working product title is “Commander Data”.
My guess is that it will be a product that helps SAP developers build robots that will take our jobs and then torture us to death slowly and painfully. I predict the actual initial product name will be “SAP HANA THE SHREDDER”.
The keynote ended with the prediction that all companies will become “internet companies” which is defined as a company which can change its business processes in real time….
STREAM AND STREAM AGAIN
Next up was SAP Mentor Henrik Wagner, this time in his day job as a salesman for VIRTUSTREAM which does cloudy infrastructure and cloudy OS/DB management and cloudy SAP BASIS things.
They say that things are moving faster than anyone could have predicted and by the end of 2017 no fewer than 50% of enterprises will be using public cloud platforms. Until recently one organisation I know had a global “no cloud” policy which was by order of King Canute.
The other important thing I learned was that in the USA Hershey chocolate operates out of a town called Hershey. I also notice both Coca Cola and Pepsi Cola use SAP to run their business. Isn’t that sweet?
Speakers lose points of running over in Toastmasters. The main keynote over ran by about 15 minutes which of course caused the advert to overrun as well.
No matter, back I went to playing the game where you had to visit every exhibitor booth. Upon entry to the conference all delegates were given a bar of chocolate (there is a theme developing here) with a jigsaw piece stuck to it. I went up to the company (TRICENTIS) and showed them my jigsaw piece and – hooray! – I won a “Nerd Box”. That contained not only obvious things like memory sticks and a coffee mug but a whole bunch of assorted things including Game of Throne trading cards, a Thor comic, a Batman comic, hence the name I suppose. I have only ever seen about three minutes of “Game of Thrones” but those three minutes featured a dragon and a naked woman, so I got the general idea.
Talking about giveaways the stall next door to the one where I one my prize seemed to be staffed by giant metallic men who emerged from honeycombed shaped cells where they had been hibernating the last thousand years, until woken up by the noise and activity of the SAUG conference. They put up a banner saying “Welcome to the Age of Steel” and were promising “free upgrades” to delegates. Anyone who accepted were taken into a back room and came back with an arm or a leg or even their head replaced with a cybernetic equivalent.
NSW GOVERNMENT DIGITAL TRANSFORMATION
Each speaker has a “facilitator” who tries to make sure the speech start and stops on time, and introduces the speaker. The speaker here was from the IT department of the NSW Government and during the introduction the facilitator said PARADIGM SHIFT which is the ultimate buzzword, so magic panels opened up in the ceiling showering the audience with dollar bills whilst lightning flashed and music played in their heads.
Now I described the speaker’s job as being in the NSW government (New South Wales – one of the states in Australia, where Sydney is) but in fact there are dozens of government departments all acting independently, all silos, all screaming “Not Invented Here”. That tells you the nature of the problem right off the bat and the solution is collaboration, with or without IT, but in fact IT (i.e. SAP) is going to be playing a big role here.
Some of the slides were far too complex, with about one million words on them. That is no good, because the audience tries to read them, thus blocking out everything the speaker might be trying to say.
The NSW slogan for IT was “We are crunchy on the outside, digital on the inside”.70% of government departments use SAP. By a coincidence the stated target is that by 2019 70% of all government transactions should be digital.
He noted that OCR is a step towards that goal, but only a step – a fully digital transaction has no paper invoice that needs scanning.
Then was a mention of the Albury Horror. Albury is a town on the NSW / Victorian border and it has to obey two conflicting sets of rules both at once, which makes a computer scream, because in essence you are telling a computer it must do task ABC at the same time you are telling the computer it MUST NOT do task ABC. To put this into context it is impossible for biscuit manufacturer Arnotts to make a biscuit packet which complies with the laws of every state in Australia, as what is compulsory in one state is illegal in the other, and both at once in Albury. I sometimes think 95% of the IT effort in my company revolves around the Albury concrete plant. I suggested burning it to the ground as a possible solution but was told that was not actually practical, and for some reason illegal as well. In which state, I wondered.
Anyway, in regard to government IT naturally every state has been doing things differently, as has the federal government. So an “interoperability framework” has been created to try and get systems talking to each other. As an example the health department has Oracle, the transport department has the latest version of SAP; the justice department has an older version of SAP and so on.
Here is the next problem – on NSW if I wanted to open a new café then I would need to apply for twenty seven (yes 27 is the actual number) of different permits and the process would take 180 days if I was lucky. Now in some senses that is not an IT problem, it is a red tape problem, but anyway, the goal is to not reduce the number – no government REMOVES rules – but make the transactions digital, to speed up the process.
The speaker than used the phrase CUSTOMER CENTRIC at which point the audience all started doing cartwheels and sang “Keep the Customer Satisfied” by Simon and Garfunkel whilst fireworks were let off.
So the current initiative is “e-invoicing” which is just suppliers (like the phone company) sending their invoices to government departments electronically, like the cement companies on the UK started sending electronic invoices (spreadsheets) to the UK concrete companies in 1980.
Anyway better late than never and there have been two takers for the sort of “best practices” (a term people tend to laugh at due to the strange way SAP define best practices) that are being implemented by the NSW government. One is the federal government, and the other is the New Zealand government (yes New Zealand is a different country to Australia).
The NSW government seems to be blaming SAP for helping foster the “silo” situation that is currently in place, which is a bit harsh, I imagine they were only doing what the various customers (departments) asked them to do, it is not SAPs fault if the departments do not talk to each other. Anyway the government want SAP “in the tent” with them to sort this out and provide a unified solution, I imagine SAP will be only too happy to (be paid to) help out here.
I had to bow out early but not before I learned what the acronym MOG stands for. It is not a cat, but rather “Machinery of Government” which gets rolled into motion whenever a change is required, and as may be imagined is agony and takes forever and I am not sure any amount of IT is going to change that. Watching “Yes Minister” would give you the general idea.
By this point I already had a bag full of toys from the various exhibition stalls. Note the “Captain America” socks.
I was facilitator for the next session, my main job was making sure the speech started on time, and of course I forgot what time it had to start. In fact at this conference there are five minutes between the sessions, and it takes more than five minutes to walk between the rooms, and so everything starts late, and ends late. In any event I did not use any buzzwords when introducing the speakers – Mentors Graham Robinson and John Patterson (John used to be a contract programmer for my company in the year 2000).
This was an attempt to fit two different two hour lectures into 45 minutes, and managed this task exceptionally well, finishing exactly 45 minutes after the delayed start.
John explained to the audience what CDS views were, and how the SAP programming model is to create a CDS view to read the database, and fill it with annotations that expose it as an ODATA service, which in turn can be read by a Fiori “smart template” meaning no coding on the UI side, or indeed on the application side.
CDS views come along as of ABAP 7.40 SPS05 and I like to write about them in my books. In fact John needed two views – a basic (interface)view to read the data, and a consumption view which consumed several such basic views and generated the ODATA service.
One lovely annotation is to mark a field in the CDS view such that it is to be displayed as a pie chart, and naturally that is what the UI layer will do.
The example UI application had an overview where you saw such pie charts and bar charts and other pretty representations of the data. When you clicked on a pie chart (for example) another screen was called up, what I would call an AV grid, but what is called a list page in UI5 speak. Once again, clicking on a cell in that grid called up the “object page” which is like drilling down into VA03 or whatever, but not in the SAP GUI. Note this is all generated for you by the smart template reading the annotations i.e. all development work is in SQL the Fiori App generated itself. It sounds too good to be true, and I have to confess I have only got this working partially in my experiments.
Graham also wanted to plug ABA Git so here is the URL https://abapgit.org
Here you can download all the code he talked about in this presentation to make it more real.
The second half of the presentation was Graham talking about his “design pattern” for how to code services in ABAP. As a disclaimer he asked several people to try this out in real life, and I used this design in anger when I wrote the Gateway service used your customers when they place a sales order online. It is not the way I would have written things, but I thought I would give it a go, and we have no complaints.
The first thing he stresses is not to use any SAP terms at all (e.g. KUNNR) in the service description. The API generated by the service should be self-describing and give no clue as to what technology is actually hiding underneath.
In Gateway services you have the CRUD operations, they are self-describing, and you have “function imports” for anything else, they are not self-describing so only use them when absolutely needed.
The data structures for the “objects” (entities) that the service represents should be bound to the DDIC to make life easy, but Graham suggests you remove the automatically generated label suggestions, otherwise text elements are generated, text elements which do not change if the underlying description of the data element changes. Without the “suggestions” the texts are determined at runtime.
The data type you should use for dates and times should be “EDN.DateTimeOffset” – strings are horrible, and the other date data types will be dead shortly with ODATA version 4. The “offset” is the time zone difference from Greenwich Mean Time. Oh I am terribly sorry I should called that UTC because some countries did not like the idea of having the world time zones based on the UK as the starting point. But UTC and Greenwich Mean Time are the same, like it or not.
More importantly at Greenwich observatory you have the “falling ball of Greenwich” which falls every hour.
Graham has two rules of re-usability when it comes to business logic – the first is to have all business logic relating to the entity in its own concrete class.
To put that into context, it is easy to have (say) the create logic in the CREATE ENTITY method in the Gateway data provide class, rather than outsourcing this task to a “model” class which is framework agnostic. I have been hauled over the coals on the internet for advocating the use of such “model” classes.
The second rule of re-usability, by the way, is to have all business logic relating to the entity in its own concrete class. That way many frameworks can use the same logic, not just an external consumer via Gateway, but any new framework that comes along, or workflow, or a transactional application in SAP using old fashioned DYNPRO, or the ALV, or WRITE statements, or (urrggghh) Web Dynpro.
The point is that there will be many “consumers” i.e. applications that need Gateway Services and they will all want to do CRUD operations on common entities like sales orders or customers. That it is why it is silly to put the same logic in dozens of DPC classes.
Instead Graham suggest each DPC method outsource the task to the re-usable entity (object) class via a common interface, which can be the same interface the DPC uses – but note that 95% of the signature of a DPC method is flagged as “obsolete”. There is pretty much just one big object which gets passed containing all pertinent information from the web front end.
Graham adds to that signature passing in an instance of the model class relating to the entity (as the generic interface does not know what type of entity we are dealing with) and passing back a message object so that any messages can get passed back to the UI layer in the web (mobile device).
I imagine many old school ABAP people are horrified you cannot just issue a MESSAGE statement anywhere in the code you feel like it.
Graham then noted that using the inline declarations that came in the ABAP language as of release 7.40 then the lines of code you need are somewhat dramatically reduced.
I personally cannot take advantage of the latest version of ABAP yet at work, though I hope we upgrade next year (an EHP is an upgrade).
Lunch was supplied by a company called “International Rescue” run by billionaire Howard Quartz, who has had 90% of his body replaced by machinery. Crucially the 10% of him remaining (his brain) is enough to qualify him as legally human, also earning him the nickname “Mr Ten Percent”.
The sandwiches and hot food were dished out by such luminaries as Ro-Jaws and Hammerstein who kept shouting “watch out, fleshy ones!” At this stage I was wondering where the normal waiters and waitresses were and it turned out they had all been murdered and thrown in a big pile outside, which is why the robots were serving the food.
JOCELYN DART – S/4 HANA UX
The point Jocelyn wanted to make in this presentation was that there was no point making the transition to S/4 HANA just because it is cool and groovy, there needs to be some added business value.
Something she said which I cannot really argue with is that given there are over 1000 standard Fiori apps, with more all the time, even companies like mine who would not normally touch anything “standard / out of the box” with a ten foot barge pole surely must be able to find at least ONE app that might be useful.
Then came a potted list of potentially the most useful standard apps like “Post Journal to G/L” and “Clear Incoming Payments”. I still say the only reason you should be manually posting journals these days is to correct something that got miscoded. Lots of SAP apps have their name start with “manage” as in “manage recurring journals” or other business objects.
Then there are the apps for “experts” which are called “action man cockpits” after the famous toy of the same name. I had one when I was a boy, he could grip hand grenades in his hand. These apps do not have tiny hand grenades or other toy weapons but they do have embedded analytics.
There is even an SAP “best practice guide” to tell you how to best create your own “action man” application to deal with your own custom business objects.
Then Jocelyn said the magic words PARADIGM SHIFT and of course the panels in the roof opened showering the audience with fairy dust whilst everybody stood on their chairs and all joined in a rousing chorus of depression era song “Buddy Can You Spare a Paradigm?”
The next slide said that the purpose of the latest generation of Fiori apps (these are replacements for those horrible old fashioned TCODES by the way) is not only to manage by exception but also to use MACHINE LEARNING (crowd goes wild) to enable PREDICTIVE ANALYTICS (crowd all take their clothes off, smash up the chairs in the lecture theatre and use them to build a big bonfire, and then dance round the fire in a conga waving their spears in the air and shouting war cries). That last reaction to a buzzword is a bit extreme, so I would urge further speakers to keep their mentions of predictive analytics to a minimum if at all possible, or refer to that technology obliquely. No-one could have predicted that sort of behaviour.
Speaking of horrible TCODES there is an SAP report which can analyse your current use of TCODES in production, and then suggest a list of Fiori apps which can be used instead. It occurred to me that would not work too well in my organisation as 99% of our TCODES start with the letter “Z”.
Moreover there is another tool which takes the results of this report (a spreadsheet) and turns those results into a dumbed down PowerPoint presentation, simplifying things so much that management can understand them.
She stressed the difference between the “end to end user experience” and the business process itself. The former can be fun; the latter is what it is. She wants companies to have a new role – the UX lead – so all processes have a coherent user experience. As we know the ultimate failure of this can be seen in the SAP GUI transactions where FI has an utterly different look and feel than CO, and SD is different yet again, as is MM.
Here is something interesting – the problem with replacing SAP GUI for Windows with SAP GUI for HTML is that you get a huge performance hit. I am all too horribly aware of this; performance of internet transactions is a huge mega elephant in the room, which is why UI5 had to be very different to the snail that was Web Dynpro.
However the usage of NWBC means many screens are rendered using Windows (i.e. your desktop) thus speeding them up dramatically compared to them executing in a browser. All this “zero footprint” stuff always seemed a false economy to me. You save fifteen minutes not installing the SAP GUI and then have to wait a minute extra every time you have a round trip with the ERP system, forever. After you have pressed your first fifteen buttons in an SAP application you are then worse off, and many users press thousands of button every day.
Another tip was that when designing your “tiles” on the Ferrari Launchpad (this UI technology is called Ferrari because it drives your business) do not use SAP speak like “material documents” as this sort of nonsense has confused end users for long enough.
The talk ended with a recap of the 54 different IDEs that developers need to create applications e.g. one for ABAP, one for UI5, one for HANA etc. For a brief golden moment there was just one IDE for all of this, but that did not last very long.
As the WEB IDE and what have you carries a licence fee, albeit not that staggeringly high, my main takeaway is that developing “cool stuff” costs money, developing in ABAP is dull but free. Given many companies are run by accountants, what do you think the end outcome is going to be?
Whilst wandering around the exhibition area eating afternoon tea I could not help but notice that some of the stall holders who give you pens and cuddly toys and the like seemed to have been replaced by mechanical versions of themselves. I walked passed the EMC Dell stall and the robot stallholders shouted out “Warning! Warning Will Robinson” whatever that meant.
I also saw a robot walking about shouting “I must not either through action or inaction, allow a human being to come to harm. Ha ha ha! That’s what YOU think!”
WHO IS NEXT? IT’S ME! IT’S ME!
Then it was my turn. I was a bit worried about my slot this day as I was the only thing standing between the delegates and the free drinks. I suspected that if I over-ran by even a few minutes I would see a mass exodus whilst I was still speaking.
My topic was “Preparing Z Code for S/4 HANA in the Real World”. I am giving the exact same speech in SAP TechEd Las Vegas in September 2017, so this was sort of a dry run for me. There were 13 SAP Mentors at the SAUG (pronounced “Sausage” by the way) event, and a lot of us are speaking in Las Vegas and doing this trick i.e. dry run. This does mean that delegates going to the SAUSAGE event get some of the same content they would get if they paid ten times the (conference admission) price and went to Las Vegas, leaving aside air fare and accommodation.
Time for the free drinks! Hooray! I told the people in my audience I did not want to stand in their way so I would do the Q&A on the show floor so people could not miss a minute of drinking. Instead people actually wanted to ask me questions in the lecture theatre, almost as if they were interested in what I had just been talking about. This continued even on the escalator on the way down to the show floor, and petty the first hour of the free drinks. I think I can count that as a successful speech, if no-one could have related to the problem I was given possible suggestions to solve then no-one would have asked me anything!
The party was really good in the evening, lots of “networking” though I noticed that some delegates instead of drinking beer and wine were sipping from pints of oil.
There was almost a disaster when one of the stallholders from the IBM booth accidentally got shot with a disintegrator gun, a fairly common occurrence at SAP conferences, but instead of being vaporised his metallic body absorbed the blast and grew to the size of King Kong whereupon he picked up a female delegate in his hand and started climbing up the Empire State Building whilst various SAP executives buzzed round him in bi-planes trying to shoot him down. Naturally the bullets bounced off his metallic casing.
Luckily a tall man in a scarf and hat drove by in an Edwardian Roadster and poured a bucket of virus laden water all over him which caused him to shrink back to normal size and then actually disintegrate.
I think this blog is so big it need to be split into two. I will leave it a day or two and then post the thrilling conclusion, in which you will not only learn about the content of some more informative SAP sessions from the second day of the conference but also learn if humanity triumphs over the masses of Androids, Cyborgs and plain old vanilla Robots massed on the sidelines, waiting to take over.
Link to SAUG Day Two:-