Just Because You Can, Don’t: The Potential Consequences of Changing Microsoft Dynamics 365 Business Central AL Code
Today (4/1/19) at Directions Asia, Microsoft announced that developers will soon be able to modify base AL code in the on-premises version of Microsoft Dynamics Business Central. For some, this might seem like it will be great: “We can still use our *crap* old school code!” For some, it might even change their mind about an early retirement.
But, for me and anyone even slightly loyal to industry "best practices," this announcement changes nothing. If you care about your customers, you still do not want to change the base code of any product you don't own.
Every developer knows that merging code is a nightmare. Merging Dynamics AL code is no exception. In the end, it is the largest impact on code debt, and this debt will need to be paid eventually—by the customer.
So, this “gift” from Microsoft simply perpetuates code debt for customers and postpones proper coding for developers based on industry best practice. Meanwhile, the customer unknowingly is being robbed of the opportunity to improve their path to the future.
At ArcherPoint, delighting customers is one of our core values, so we will make the best decision for each customer, regardless of this announcement, in the best interest of our customers, despite the complexity of this subject and perhaps the obfuscation of this code debt.
You owe it to your customers to not change base code and deliver your code as Extensions or other technology that doesn’t require modification to base code. If you have any questions, concerns, or doubts about how to handle customer requirements, please contact ArcherPoint—our experienced developers will be happy to discuss the scenario with you.