ShowMyCode – Politics & Microsoft Dynamics 365 Business Central

Opinion, by Marije Brummel

Before I continue where I left of with the previous post (I’ve prepared all the parts) I like to say a few words.

This is by far the most difficult blog I’ve ever published. It was not hard to write. It’s something that agravates me for a long time. I still feel bad about it.

Why am I hanging out the dirty laundy? Simply because anything else failed. The problem I am raising here is something that must be discussed.

Not everybody likes that. After my previous post I’ve changed the rules on my blog about rating and comments. I’m sorry I had to do that but aparently some people cannot behave themselves properly.

This is not the final piece. There is more and I will ventilate my opinion until I am finished. After that we are going back to techie stuff both for Business Center but also for Asp .Net Core and Angular as I am no longer putting all my eggs in one basket. I’m happy to be learning new stuff.

The Yes, but not if…

Why could Business Center fail… which I hope won’t happen.

Let me start this section with an example. I know of at least four partners that have a certified food solution for NAV and I have worked with and for all of them. It’s interesting to compare those solutions and see how they fixed problems in the industry. An example is palletizing or containerizing inventory. They’ve all implemented that in their solution and all in a different way. Needless to say, they all claim to have the best solution.
Meanwhile Microsoft is not implementing this feature in the core application even though it’s not only a requirement in food but in many other business cases.
All of these four partners struggle to implement this feature as an extension but I doubt any of them formally request Microsoft to take their solution and promote it as a standard feature.

Why is that?

I think our ecosystem, or “community” is starting to work against us and Microsoft does nothing to stop this. In fact, Microsoft is part of it.

Microsoft as a whole has always failed to understand the true value of Navision ever since they acquired the company. I’ve been an MVP for Microsoft for eleven years and three months and it has been incredibly fascinating to be able to get close enough to see how this maze of different departments “work” together and eventually it has led me to decide to quit last year. I’ve actively asked Microsoft to retire me as am MVP and it was both one of the hardest decisions in my life as a no-brainer.

I’ll elaborate more with another example.

Mow many people do you know that own a successful NAV practice with a decent number of employees that are aged under 50. Right. Me too.

If you talk to members of NAVUG about how they came to buy NAV the story is almost always identical. After an RFI Dynamics NAV was shortlisted and at the end two or three partners competed for the project. One wins the deal, takes the customer live and in half of the cases the customer switches partners or hires a freelancer within a few years or sometimes months after the deal.

Our ecosystem has a maze of freelancers and small service companies because this is big business in a failing ecosystem.

NOTE: There are exceptions. There is a handful of terrific partners out there that can prove these statements wrong.

How is this possible, and why is this more of a rule than an incident?

Out of the box Dynamics NAV (and thus Business Center) is not feature complete. Things that that are perfectly normal in competing products like Exact Online don’t work with NAV. Trust me, I actually switched my own accounting to test that.

Most NAV Var’s have been in business for over 20 years. They have all developed their own solution on top of NAV and often this includes regulatory local features like bank interfaces or government requirements.
These partners don’t want Microsoft to develop these enhancements because that would mean they would lose their competitive edge.

The Dynamics NAV ecosystem is probably the most conservative community in the software industry. It’s very closed and hard for newcomers to penetrate.

If you attend events like Directions in Europe or North America I invite you to stand at the back of the room and judge the age of the attendees by the color or amount of their hair. Young entrepeneurs do not join our platform.

In short. We have a problem in our ecosystem.

So why is Microsoft not changing this? They have the power, right? They should be able to force some changes to our community?
Well, it’s not as easy as it looks. This is where politics and ego enter the arena and more important: money.

I can’t help thinking that if I wrote a book about what I’ve learned about or ecosystem nobody would believe me. They would say this would only happen on Netflix.

Truth is that we are holding each other ransom and as a result none of us are going anywhere.

Let’s make an analysis of Microsoft Dynamics 365 Business Central

It’s Navision! Or not quite…

To Be Continued…



  1. GrumpyNAVdev says:

    The main selling point of NAV has never been the amazing Financial or Sales or any other module in NAV. It has always been the very open source code and extremely easy way to customize it to fit any customers need. The reason for customers not constantly upgrading, is not just because it is expensive but also because it rarely gave any noticeable value. I still haven’t seen any customer getting more productive switching from classic to RTC, nor have I seen any customer having any features from a new NAV version on their need2have list – at best it was at their nice2have list. Well, a few technical features, like support for new Windows and Office versions has been need2have, but that doesn’t really count for Microsoft current arguments.

    I’m currently working on a NAV2018 project to re-implement only the need2have features from an old and heavily customized NAV2009 classic solution with several add-ons. We have currently identified approx. 160 needed customization and working on re-implementing them. We quickly gave up using the full extension approach, but are trying to minimize changes to standard objects using events as much as possible. Still, so far only approx. 10% of the need2have requirements seems to be possible to solve using events. In the beginning we tried forcing us to use events and forbid change of standard objects and quickly ended in awful solutions. We had to copy a lot of functionality to our own objects, instead of making simple customizations in standard object. We had to use all sort of workarounds using OnBeforeValidate and OnAfterValidate to trick standard validation code to not notice our hacks. We had to forget everything we normally preach about ensuring transaction consistency. We had to accept the performance is awfull due to how table extensions are created in SQL and the limited ability to make proper indexes. In short: We had to make crappy solutions if we were to make them into extensions, I and can only fear if many of the extensions in AppSource have the same awful foundation in their hidden source code.

    I don’t understand why Microsoft does not split the future of NAV in two paths. The limited extension path is suitable for some customers, where the open and fully customizable path is suitable for others. It does not prevent the underlying solution being the same and I believe they could co-exist for many years to come.

    Liked by 1 person

    1. Miguel says:

      hear hear!

      trying to implement something recently and trying to avoid adding any code to CU80, I went and checked how similar functionality worked on other localizations… well, basically the standard W1 is bastardized without any kind of concern, which for me, is a clear example of “do as I say not as I do”…

      I think some of these changes are really nice and make sense, but how can trust the path when it keeps being redesigned?…much more confusion than evolution…

      and yes, having worked on a number of upgrades… my biggest motivation, if I was a client, would be the need to keep in sync with the latest OS and hardware, not RTC, word integration or the ease to upgrade.

      There’s a number of usual need2haves that were brought to standard (like emailing customer-facing documents) but the functionality is still very much behind what some partners have done on their addons.

      let’s hope MSD365BC really is the way!

      Liked by 1 person

  2. Bryan Christian says:

    We actually had a long discussion about this at our last NAVUG meeting. As an under 40 amateur NAV developer, I see the problem all too clearly. Lots of older people in our development sessions, but not much young blood. I think the development environment changes are going to help, but it will take more than that to encourage younger developers to get in. There’s tons of materials about NAV, but as someone who was there not too long ago, coming in from the outside is daunting. Strikes me as funny since MS seems to be pushing it so hard, but doesn’t seem to be doing much to help bring people to the platform on the implementation side. Given how many of the companies that do implementations seem to be starved for staff and our discussions about the issues with employee retention at Focus last year the jobs obviously seem to be there. The question is getting people trained to do those jobs.

    I think to an extent, it’s also up to us as developers to recruit this next generation. NAV just isn’t something you dream of doing development in, nor is it something you’re going to be taught in school. Given those two facts, we have to sort out how to work around that. I’m going to have to think on it a bit, but I might reach out to my alma mater and see if I can’t speak to some of the ones with a year or so left and point them our direction. I’m close enough I can go and meet them or even have them come shadow me. Any thoughts?

    Liked by 1 person

    1. Jens Glathe says:

      In my experience, it’s more the other way round. You’re getting exposed to NAV and it’s choosing you 🙂 Happened to me some 20 years ago. The development interface is fairly different now, I think. It is harder to get exposed to it, and ways harder to start on your own. Heck it’s near impossible to set up a working develompment entvironment without knowing some of the quirks.

      Liked by 1 person

      1. Bryan Christian says:

        Not going to disagree, that’s how I came into NAV myself. I’m just thinking we may need to change that if we want to end up bringing in younger developers. The problem with letting people just fall into NAV is that in many cases they’re half way through their career or more before that happens so our average age is already going to be higher. Additionally what’s done right now feels like expecting the customer base to generate people who flow over to the consulting side.


  3. I see a lot of handwringing about getting new developers into this.
    Do you really think .NET will do that when there are way sexier platforms and programming languages? When I started I thought the programming language was easy and the accounting was boring (and I still think some of that). But I loved the variety of customers and the challenges they presented.
    Either way, I don’t see why any young person should choose to learn NAV programming (sexy or not): (custom) programming is being phased out and it is all about prebuilt pieces being put together . Unless you end up being a programmer for a company making an App for D365 (and they won’t need too many or care about them much) where will your skills be consistently and reliably needed in the long term.
    The writing is on the wall and I know and love NAV but I would switch in a heartbeat if I wasn’t too old and too wise to know nowhere will be better 🙂

    Liked by 2 people

    1. Yep Cristi this is exactly what we are all thinking right now.


Leave a Comment

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.