The Boring Enterprise Nerdletter #23: Fight Club, ZSAP, Data Mesh, ERPNext, SAP Development Iceberg, Adept AI
Hi there,
The leaves are turning fall colors, and some are already falling. Summer has ended.
But not the heat! We're bringing you a sizzling serving of the best nerdy write-ups around, at an unbeatable price. Smash that like and/or dislike button and tell us how we're making your life better and/or ruining your inbox!
-Jelena and Paul
SAP Fight Club
An article describing SAP for those unaware popped up on Hacker News. The most interesting part isn't the article itself, it's the hundreds of comments it generated on the site. The Hacker News crowd has a LOT to say about SAP things. Some love, some hate; as someone who has done SAP things for a majority of my career, I feel like weighing in on a couple things.
The commenters bring some hard truths.
This comment contextualizes ABAP development for any arrogant ABAPers out there, as well as those who don't understand the particular kind of value ABAP development brings. It's about the $$$.
This commenter has some scars from SAP, but they're unfortunately right about UI5: "No one knows UI5 except people who work in this business, so companies are forced to hire consultancies like mine, because no normal web developer has ever worked with it(nor would they want to look at it in their spare time)."
This commenter's similar point about OpenUI5 is well-taken. SAP has opened up UI5, but adoption outside of SAP circles is minimal at best.
In other cases, the hate is a little misguided.
This commenter defends against some of the ABAP hate - it actually is a nice language these days. And yes - you really can be agile with SAP, if you so desire! Not every place that runs SAP seems to think so.
This one complains about SAP being down often. I've worked in places where SAP seemed more rock-solid than other systems running…I kind of think that complaint can really depend on the skill of systems administrators rather than the software itself.
I am glad to see SAP occasionally pop up on a site where I go for other types of tech news, and frankly I'm also glad to see a balance of positive and negative comments. Keeps me out of my bubble. PM
ZSAP: Unusual Suspect
ZSAP is how we jokingly describe an SAP ERP system that has been customized up to eyeballs (“Z” is the prefix for custom objects). ZSAP crimes are typically blamed on the stubborn, “that’s how we’ve always done it” customers and clueless consultants. But there is another, unusual suspect: SAP SE.
To do stuff in SAP, customers must use standard functions/APIs: BAPIs, global classes, web APIs, etc. Sadly, these APIs are sometimes missing features or just plain don’t exist. SAP’s approach seems to be “we give you what we think you need and, if anything is missing, just enhance or create your own”. However, SAP notoriously underestimates the customer needs and then thousands of customers are creating the same Z-things. Examples? 14 years of editable SALV, the crusade for a Purchasing Organization API, missing associations in standard CDS views, and many more.
While this might look like the perfect case for an open-source project, not all customers are open to open-source (no pun intended). It also raises the 1 million USD question of who would be responsible for maintenance of such software?
There ought to be a better way for SAP to identify what customers need and deliver it as standard functionality instead of becoming a ZSAP crime accomplice. JP
Data Mesh Sandwich
Data mesh has been generating buzz as a “hot topic in enterprise software” and “more than just hype”. But what even is “data mesh”?
The term’s creator Zhamak Dehghani defines it as “socio-technological concept”. Her 2020 article describes 4 main principles that I think can be interpreted in simple terms with… a grilled cheese sandwich. Hear me out on this.
1) “Domain-oriented decentralized data ownership and architecture.” It makes sense for the bread data to be owned by the bakers and cheese data by the dairy folks. In the real world, this can be a tricky architecture and “ownership” of anything in big enterprises is a minefield.
2) “Data as a product”. Imagine ordering a grilled cheese sandwich and getting a loaf of bread and a hunk of cheese? But that’s exactly how data delivery works in many enterprises. Wouldn’t you prefer to get what you ordered?
3) “Self-serve data infrastructure as a platform” – since the self-order kiosks got installed at Panera Bread, I haven’t spoken to a single person there (an introvert's dream!). Being self-sufficient is empowering.
4) “Federated computational governance” – there should be a general agreement on what a grilled cheese sandwich consists of. Not an easy task since many people are super passionate about their regional recipes. And governance is where projects go to die.
Overall, I think data mesh is an interesting concept that goes well with tomato soup… err… event-based and microservice architecture. It might not be for everyone but is worth considering. JP
Open-Source ERP 2: Judgment Day
I wrote about Odoo last issue, and in true Baader-Meinhof fashion quickly encountered another open-source ERP: ERPNext. Juicy tidbits:
Pricing is straightforward and a nice model: if you use the self-hosted open-source version, it's simply free. You get no support or anything like that…but I think that's in the spirit of this endeavor. Going to hosted and supported versions kicks up the price.
Built with the Frappe framework. There are lots of other products available built on that same framework.
Documentation for core modules and for developer extensions seems well put together - that's nice…because I don't really believe that you can have a touchless, vanilla ERP.
I like a lot of what both Odoo and ERPNext have to offer. If I was in the position of choosing an ERP for a business…I don't know whether I'd go open-source or to some of the more traditional ERP solutions. At this point, I think they may be a good choice if your company is suffused with software lovers and other employees who enjoy a strong, deep, hands-on ownership of their processes.
ERPs as open-source software also satisfies a little bit of my the-world-needs-creation-for-its-own-sake desire. I'm glad the solutions exist, I'm glad that the people who made them exist - even if the solutions never realistically challenge other players for market share. PM
SAP Development Iceberg
New Fireship video God-Tier Developer Roadmap described a programming language “iceberg” as a roadmap for development skills. I thought it would be neat to have our little "SAP iceberg" too.
Just like three secrets of French cuisine are butter, butter, and butter, SAP’s secrets are: ABAP, ABAP, and ABAP. It’s the language SAP core ERP systems are written in and it’s what the customers use to enhance and supplement SAP standard. Most recently, however, CDS views are invading ABAP’s turf and have become a must-have development skill.
Above the water line, we have UI/UX stuff: SAP UI5 (must know to create serious custom SAP Fiori applications), the web development workhorse JavaScript, and potentially, many other UI languages and platforms. These days, if you can consume an OData service, you can create a web application to work with an SAP ERP.
And high in the Clouds, soars SAP CAP (Cloud Application Programming model). It's an interesting beast and I’m not sure many customers quite figured out what to make of it. JP
Ultimate Taskmaster
I can't let an issue go by without commenting on another interesting landmark of AI progress. This time, I'm looking at the Action Transformer (ACT-1) model, available from Adept. It takes what we've been seeing from DALL-E, Imagen, GPT-3, AlphaCode, and other remarkable recent advances with transformers to map them to user actions on a computer.
This allows you to give natural-language instructions to a computer and have it figure out what you wanted to do, and then go do it. At this point it's limited to a browser, but to look at the examples Adept shows gives you a great sneak peek at where they think this will go. It takes the form of simply typing in a request into a text box, such as "find me a house in houston that works for a family of 4. My budget is $600k". Then, like magic, it navigates the various features of Redfin to perform the search and use filters to find a matching house. Seriously, just go read the article and look at the examples.
This is a hint at automation that doesn't necessarily need to be shown exact steps for every permutation of its tasks. I love the idea that (eventually) I could say "search the web for interesting drawings of Spider-Man, and save the best (up to 1GB) on a folder labeled 'Spidey Pics' on my desktop". Maybe this thing could or maybe it couldn't fulfill that specific request…but the path is clear to a world where you can tell your computer to do things harder and more interesting than reading out the day's weather report. PM
Support Starving Artists
Do you love this newsletter, but are disappointed you can’t give the writers loads of cash? Worry no more! We’d love your support!