- cross-posted to:
- [email protected]
- cross-posted to:
- [email protected]
I spent the better part of a year and a half writing automation for an integrated stack that included D365. (RSAT wasn’t an option since we had to also interact with other systems and sql databases and what not to perform end-to-end flows across multiple systems.) It was literally the biggest resource and time suck of all the stuff we had to interact with – and we had to interact with some really hoky stuff. But D365 took the cake. At least two people quit over it.
I did a similar project back in 2003. MS CRM 1.2. MS Great Plains. Integrating with an OS/390 via DB2 and MQSeries. Fun stuff. I survived. MS CRM wasn’t even the biggest pain points!
Is it just me or does the third panel person pointing slightly look like an alligator
Like those crocodiles from Pearls Before Swine
With a mustache
i guess i’m happy i don’t know wtf this is.
Normalized objects for microsoft compatibility is how I understood it but it’s been a while.
Pray you never do
deleted by creator
Against every developer’s advice, management has moved our entire stack to Microsoft Dynamics 365. It took over a year of prep, millions in ISV consulting charges, and it performs like trash. Now management is constantly complaining about outages, Microsoft nickles and dimes us for tens of thousands more than the estimates, and they are constantly jerking us around to half-baked tech by removing support for anything that actually works. “Want data out of F&O? We’re killing everything except Synapse Link. You spent months migrating yet it drops data? That’s not surprising since we fired everyone working on it. You should be on Fabric! No, that’s not finished either, but we need to test it on someone!”
I’m very bitter.
My company is making exactly the same mistake right now. I simply can’t understand how a European company can still make itself so dependent on Microsoft at this point. We Devs have raised the issue to our bosses, but there are still a lot of old MS fanboys around. Some people have to learn it the hard way.
When we finally onboarded the D365 ERP replacement, management wanted to run perf testing on it told them we could do it in JMeter, and we already had JMeter code that we’d used for the older systems, and we’d learned more than enough from including it in integration automation, that I was sure we could do it.
Instead they hired two chodes from an agency and told them to use some odd tool. Literally a month into that project one of the contractors asked me straight up why we weren’t just using JMeter.
They eventually cut those guys because they weren’t able to produce, and then went with some kookball Akamai solution (Cloudtest?) They didn’t even seem to realize that by going with that solution, they were going to be beholden to paying Akamai every time they wanted to run it. They somehow managed to cajole Akamai into giving us a standalone version of the tool, but they didn’t seem to comprehend that when you run it that way you don’t get the cloud.
It’s funny, someone asked me the other day why I quit that job, and I’m now suddenly starting to remember why.
It was actually a pretty good company, it just wasn’t a software company, so its tech decisions were often really bonkers. But that aside, it was actually a good company, and part of me kicks myself for leaving it – I’d probably still be working there four years later.
I might have needed a lot of therapy in the meantime, though
I’ll tell you how. My company has been moving to solutions developed and/or hosted in EU for privacy reasons, but at the same time continue to go deeper and deeper into M$ ecosystem because the management believes XYZ product sounds cool and/or works better than the alternatives we’re using. I’m just waiting for this circus to fall apart.
What the fuck does Dynamics do? Is it some kind of shitty database?
I wish! It’s more of a loose collection of random business softwares in various states of abandonment. D365 CE is a platform for Sales teams to organize and track leads, quotes, contracts, etc. D365 BC is an ERP platform born out of the ashes of NAV, the core of which Microsoft bought decades ago. D365 F&O, D365 S&M, and others are various flavors of AX, another ERP platform Microsoft bought over a decade ago. They are direct competitors to D365 BC for some reason. None of these softwares can communicate directly with each other, and none allow direct access to the Azure SQL. Occasionally Microsoft will throw a bone towards integration stuff like DualWrite or Synapse or Fabric, but they can never seem to commit and eventually abandon those too.
I would actually be much happier if it was just crummy databases instead of an archipelago of rotting digital islands.
D365 CE is a platform for Sales teams to organize and track leads, quotes, contracts, etc.
Huh, I would have thought “CE” stood for “compact edition” like it did for Windows CE back in the day. Which was unironically called “WinCE” by Microsoft.
Frankly it’s a bit like HyperCard.
One of the things we learned early on in trying to integrate a D365 system into our UI integration test automation, was that when you changed pages, the previous page was actually still in the DOM and so if you didn’t update your locators to the new “context” or screen, you’d be trying to interact with things from two screens ago. I dunno honestly what they would have done without someone like me who could actually RE that. The guy that had seniority over me was completely lost.
wtf is it with managers and pushing shitty microsoft products?
everyone hates teams and outlook but somehow every single manager is forcing us to use it.
Salesmen
Because Microsoft knows if it can sell the product to your manager, that’s all that really matters
Synapse link is a pain too if you’re doing everything with as much private networking as possible. Actual setup is quick, but you need a windows machine for the PowerShell libraries needed for the dynamics side of the link, and if you’re just added as a guest to a client tenant, the cmdlets won’t let you login on their tenant, always uses the default tenant as far as I recall and there’s no tenant flag. I’ve set it up a handful of times and once it’s up it works really well, just an annoyance sometimes getting there. Think doing it through event hub has some similar irritations too.
I’ve not had the pain of dealing with fabric extensively, most of the engineers and data scientists I work with hate working with it, everything seems like a halfbaked implementation of stuff in synapse, adf and Power BI premium but somehow worse, and their documentation is increasingly unhelpful.
Fun fact, making extensions for this requires you to learn a new language called X++ that is based on .net framework 4.7. Development is done only on azure-hosted VMs that contain the application code and sql server and web host and visual studio with the special X++ build tools, all on one host that runs like shit at your expense.
I have been developing plugins for dynamics 365 crm for the last few years and have never heard of x++. Plugins for the crm are developed in c#/.NET 4.6.2.
The only x++ reference I could find in the Microsoft documentation with a quick search was referencing the finance and operations apps. So there seems to be some variance in the products.
X++
I searched it up so you don’t have to (it’s surprisingly hard to find example code for, the first one I found was literally a screenshot on a Microsoft blogpost.)
You really couldn’t just use C# for this Microsoft? REALLY???
You really couldn’t just use C# for this Microsoft? REALLY???
no. how else would a middle manager pad his CV with “lead the development of an important new programming language used by millions of customers”?
How funny. I worked with Dynamics CRM years ago and we did use C#. What the actual fuck are they doing now…
Wait, this isn’t satire?
Sadly not.
Yeppers. When I worked on a D365 transition we were upgrading from a 1980s era DOS based thing (D3 aka Pick). We literally had like one of the last Pick developers left on earth. He ended up training his two kids on the system so they could take over for him. They all ended up having to learn X++ instead. I wonder which was worse to deal with.
I think I just suffered a mild stroke reading this.
This sounds like something a programmer would come up with as a joke, but because it’s Microsoft, I believe you.
I just went through that for a while and saw nothing that doesn’t look exactly like C#. If it’s based around .NET and looks exactly like C#, why the fuck not just use C#?
As somebody who first started coding BASIC on an Apple IIe in 1981, I am just so tired of new languages. They all do basically the same shit and there’s just no real point to any of them.
Imagine JS and C# had a baby, and it was mentally challenged.
We had that in 1999 - JScript
I thought jscript was just javascript, but called that because of ✨Trademark Issues✨
No. No. No. No. No MS. No!
That doesn’t sound like any fun at all!
X++? What happened to AL?
Couldn’t tell you, I don’t know what AL is. Dynamics is actually a bunch of different enterprise apps loosely lashed together with twine, so X++ might only be for Finance & Operations.
Ah ok. Microsoft and their naming things… But interesting to know :)
We used it for ERP, including sales, CSR, and inventory. But we still had a separate WMS, and we had to build glue to sync the WMS inventory data with the D365 data, bidirectionally.
Fuck everything about this.
deleted by creator
What the fuck is even that?
You don’t want to know.
If you really want to know
Microsoft Dynamics 365 is an integrated suite of enterprise resource planning (ERP) and customer relationship management (CRM) applications offered by Microsoft. -Wikipedia
The entire summary on Wikipedia is sales guy bullshit. It’s barely comprehensible.
allowing businesses to streamline their operations, improve customer engagement, and make data-driven decisions. The platform is highly customizable, enabling organizations to tailor it to their specific needs and industry requirements. Dynamics 365 is designed to help businesses unify their processes, gain insights into their operations, and foster better relationships with customers.
Bruh you dropped this: synergize
I understand what they’re saying but I still don’t know what it means.
Sadly not even the worst I’ve ever used as an end-user
Workday?
Qlikview
Try Epicor. Now that is a steaming pile.
God damn you. I had Epicor seared from my memory and now you reminded me that it exists
I don’t know what app you’re using, but that spoiler tag isn’t part of the spec.
Right, thank you for pointing it out!
I was using Eternity, but it seems to be no longer maintained, so I’m currently trying out some other alternatives.
Anyway, the comment should now be fixed.
D365 ain’t really even that bad. It is just model driven power platform app. It is actually quite expandable, you can code it with plain javascript or more complex components on React. Backend is OData which is quite flexible.
Old Dynamics AX and onprem CRM were shit shows.
What in the holy fucking late capitalistic non sense is this?
I was going through azure web app services, who the f names this things.
Automatic scaling and autoscale are two different things. WTF.
Microsoft always has 20 variants of the same name for maximal confusion. It’s deep in their culture.
This is SO true!
Razor pages extension? .cshtml Blazor component? .razor
Also true the other way around, things that sound like the same but are actually different:
.NET Core, .NET Framework, .NET Standard, .NET
Bonus points for Microsoft also often using the term “framework” for labeling .NET (Core). And then there of course also is ASP.NET because of course.
Just great.
I thought at some point they dropped all those and it’s just .net now?
Edit: nope, you’re right. Here’s the explanation from Microsoft
There are multiple variants of .NET, each supporting a different type of app. The reason for multiple variants is part historical, part technical.
.NET implementations:
- .NET Framework – The original .NET. It provides access to the broad capabilities of Windows and Windows Server. It is actively supported, in maintenance.
- Mono – The original community and open source .NET. A cross-platform implementation of .NET Framework. Actively supported for Android, iOS, and WebAssembly.
- .NET (Core) – Modern .NET. A cross-platform and open source implementation of .NET, rethought for the cloud age while remaining significantly compatible with .NET Framework. Actively supported for Linux, macOS, and Windows.
How else are they going to get you to buy a support contract. If it was easy, you wouldn’t need it.
WTAFF is that supposed to be anyway?
Atleast it’s not as terrible as SAP, although I hate browser-based ERPs as well
Satan’s Accounting Program
My university recently switched most of the student enrollment and stuff to SAP, even though they had a very nice system that was launched only a couple of years prior. SAP is so awful, my god. Apparently the switch was mandated by the government or some crap like that. I’m honestly baffled.
The advantage browser-based ones have is it’s generally easy to copy/paste any text you need. I used one that ran as its own desktop software and made many of the key text fields uneditable, instead of letting you copy text from them but refusing to save any changes to those fields that must not change. Want to grab the order number for this customer? Too bad! Type it yourself or export it to PDF and copy it from there! I was so happy when I discovered a little program that lets you copy any text on the screen by effectively taking a screenshot, running OCR on the screenshot, and putting the output onto your clipboard. Still took more effort than simply right-clicking the text and hitting copy, though, or double-clicking and hitting Ctrl-C.
I dont think that poor UI programming for dedicated programs is an argument for browser based solutions.
I have issues with poorly programmed UIs in browser based tools all the time.
Tbh it kinda is, because the browser gives the end user more control, since you have extensions and access to the underlying html. You can get around most stupid UIs with little effort, but on desktop you’re doomed
Only if you’re bad with computers
I don’t see how being good with computers helps
Desktop apps are easy to navigate, focus on the program via HWND and target whatever control is needed, then either get the data or set the data
That’s not the issue here. And that relies entirely on them being implemented well.
Just like the web
That’s fair, and I think a lot of the problems with that software was the internal developer/administrator for the software (I think it marketed itself as Open Source but was probably more accurately Source Available to customers) had taken it hostage with no one else allowed to touch it. I think it had become the proverbial million lines of undocumented spaghetti code that had guaranteed a permanent job for this guy because if he left the entire business would fall apart, including an inability to bring in revenue. Everyone knew he was a problem, except perhaps his boss, the CFO. When our companies merged they were originally supposed to join us on NetSuite (not without its problems of course but definitely better than the other software) but the hostage taker supposedly convinced the CFO that NetSuite wouldn’t be able to produce a report the CFO liked and we wound up moving to theirs instead. It was also supposed to save money by having lower user licensing costs. They brought in an outside consultant for our transition because the internal guy was too busy but then it turned out the internal guy was doing a bunch of non-standard stuff that didn’t work with the consultant’s design and the internal guy had to redo it anyways. When I left two and a half years later the company had spent millions on the transition and two different additional major pieces of software (the second replacing the first) trying to replicate what we’d had in NetSuite but was still lacking much of that functionality.
I have used 3 different ERPs and every one is worse than the other. I am almost curious enough to try dynamics to see what kind of flavor of ERP BS has Microsoft managed to produce