When our customers and employees complain about our orrible user experience, a typical argument is that, ERP is designed for serious business and not for pleasing the user like a consumer app. But the UI reflects whay underneath. what I see under the ugly UI, is a huge, monolithic steaming pile of mess, smelling really bad. It is a rotting core, rigid, clumsy, you see broken windows everywhere, not being fixed year after year. SAP technology is so far the most challenging one in my career, I mean I really struggle a lot. The language,tools, editors, version control, various design constructs...almost everything is relentlessly punishing to work with. Fixing and Reinventing the CORE, shoud be the top priority, not the shiny XO, no matter how they sugar coat the story. Buy a comoany then claim growth and that we have out innovated everyone else? Who are we kidding?!
12 replies (most recent on top)
Objective C and Swift are open available (albeit not free) and modern with modern tools.
It is less about ABAP the proprietary language than first and foremost about ABAP the platform and the outdated, monolithic/centralized and unproductive way of development on this platform.
Version control? Ridiculous.
Refactoring support? Almost non-existent in 2019, ridiculous too.
Nonlinear, agile development processes, branching and merging? Not existent. All developers change the same code base.
Build-deploy-cycle? Continuos integration and deployment? No, but "transports" of code and other artifacts like clumsy BOPF tables.
Dependency management, library concept? Do not exist.
JUnit testing? Exists for at least a decade, but rarely used, hard to write due to lack of basic concepts of other languages like dependency injection.
You write "it can be modernized and SAP is doing it", but SAP did not invest at all into these urgent issues to make the ABAP platform at least less outdated and it is absolutely impossible that they ever catch up.
ABAP is based on COBOL.
Both are 4GL languages built in the 70s before there was a concept of the internet or browsers.
The problem isn't being open source or proprietary.
The problem with ABAP is that it was designed for client/server back office applications where you build a monolithic system using a single database. Developers have full access in the code to DB tables.
Modern development is distributed not centralised.
Code can't access tables directly. Everything is done via APIs and JSON.
That's why version control is non-existent in ABAP.
The entire mindset is obsolete if you want to hire someone to build a modern app for your company.
ABAP developers with 10+ years will never find jobs outside of SAP shops.
No one builds apps like this anymore.
As a SAP partner developer, I can assure everyone that ABAP, in any way, shape or form, s---s so incredibly much. It tries to be a event based system but does it in a very bad way. You define everything following a keyword to be a single event handler. Functions can ( and must, for the sake of your sanity ) be defined in new files. Almost all the keywords are english, the rest is german, like just about every SAP internal table. German names everywhere. You have to specify references and parameters both, when you define and invoke a function. It looks like SQL and feels very much like it. It is not predictable at all, and defining new "Data Types" ( not really ) s---s. It also is slow as f--- and there is no documentation on just about everything, aside from the SAP documentation, which s---s even more than having no documentation. It is so verbose yet delivers so little information on what it actually does or how to use it. Only using variables with up to 8 characters because certain features cannot work with longer names, case insensitivity in most places, but not all, the * IDE ( se80 ) which just recently had syntax highlighting added, is like Visual Studio, but so much worse. I mean just take a look at it. It just s---s in every possible way. Luckily (?) all SAP Applications will be written in SAPUI5 (html, css and js) in the future.
Those who are putting the blame on ABAP, let me ask a question why do we need open language. Apple has Objective C and Swift, Sales force has own language, Work Day has own language they are all proprietary. SAP has modernized the ABAP core platform. Now tell me Sales Force is not cloud and modern ?
The problem is not the dynpro screen that is old technology now we have Fiori and UI5 and SAP would have better used a UI technology element built in to the language but they decided to go like Java world- ABAP in back end and UI5 Front end.
Anyways again the problem is not ABAP, it can be modernized and SAP is doing it. Look for reasons why you were fired. ABAP is not the reason it is still there and evolving.
The SAP core functionality works and works well.
In terms of functionality, SAP is an excellent business control system.
The core platform, however, hasn't been modernized for over 25 years.
The core technology, ABAP, is outdated.
It works, like mainframes work with COBOL, but its decades behind everything else.
S/4HANA is built on the same outdated ABAP technology platform.
To the business, there are no compelling reason to re-implement ERP at great cost and risk.
The new UI (Fiori) has to be built by customers, at great cost and low fidelity, to create their own custom interface. The UI has to be bolted on not built into S4. The simplifications are marginal IT centric enhancements that mean nothing to business process.
That's why customers struggle to come up with a business case for S4.
That's why S4 adoption is so low after 11 years of HANA and 5 years of S/4.
That's also the reason SCP has poor customer adoption because ABAP is fundamentally incompatible with modern cloud technologies, methodologies, and architectures.
That's also why SAP and customers still struggle to integrate S4 with other cloud apps like SuccessFactors, Ariba, and Concur.
SAP core ABAP works just like mainframe COBOL but its holding SAP and customers back from moving forward.
Many of our colleagues are like you, they like to hear that SAP is perfect, if you talk about issues they will not like it, and some of them will start cursing and swearing just like you, which is very low.
But to solve problems, you have to admit they exist in the first place. The ones work in the trench know in first hand the situation. Wake up!
Very well said! But as they say, "how long can we play this short game?" The core has to be reinvented, and we will know what it takes once we get started, module by module. Tools can be invented to transpile ABAP code, frameworks can be created to migrate custom code and for data migration, for integrstion, for testing, only if we get started.
That was how the cloud, the big data etc started, from non existing to booming to domination. Innovations happen this way. They have a challenge, they face it, they set out to conquor it.
When we can not even get started, when we fool ourselves by calling it a "rock solid core", eveything looks impossible.
Innovate or die.
Guess you've never worked in Support or Consulting, nor in an end-user environment before to understand the real situation on the ground!
Correct. Rewriting the core in another programming language on a modern platform, getting rid of the ABAP platform should have top priority. (Where is a version control that deserves the name?)
They probably even know it. But the effort is too large. They could have started when they hyped Java but there is nothing to show yet.
The "innovation" in the ABAP platform is isolated and at the edges:
replacing the database, adding SQL 92 features and more up to date database functionality like views,
Replacing nasty aggregate tables by ad hoc views,
Adding a HTML 5 frontend named Fiori /Ui5, meanwhile outdated already, unproductive and proprietary compared to frameworks like Angular of React.
The core was never touched.
Several years ago, the questions were "Who will pay for this? How do we convince Wall Street that this is without any alternative?"
Now there is another question: Who can do this? There is no engineering culture left to master a large task like this.
It is too late.
The only way out of this dilemma is to distract by Xs and Os and keep on buying.
If you work at Sap, you know the core is tested by thousands of customers. You are full of it.
Truth hurts，and if we don’t face reality, reality will face us.
What you wrote here is the real steaming pile...and you're not "kidding" anybody that you're with SAP.
It’s functional and gets the job don..l