Saturday, October 15, 2016

My two cents on Dynamics NAV Extensions

Today morning I was reading few blog posts from Microsoft Dynamics NAV MVPs on Dynamics NAV future. In most of blog posts they have focused on the extensions and freezing Dynamics NAV code. Some of them have talked positive about it and some of them have talked against it. 

Even though I do not attend any of the Dynamics NAV conferences due to the unavailability of budget, I always tried to follow them closely. 

This year most of the Dynamics NAV conferences end up with a mix feeling because of the topic Extensions

Extension :
If a person ask from me that "what is the best 5 things you like about Microsoft Dynamics NAV", I am pretty sure open source code will be in that top 5 list. Most probably it will top the top 5 list. So the freezing of the source code is bit of disturbing news for me as it is one of the most loved things about Dynamics NAV. 

Even though it is not good to do here and there modifications into the system core, I am sure most of us were doing it during our job to fix issues or to achieve customer requirement. In near future it will be a day that we will no longer be able to do a small fix to the existing code. 

Question is how we going to do such a change in Dynamics NAV. Answer is using extensions. 

What is the big deal then? 
Extension code also freeze and you cannot see the inside of it. That means if a one partner do a critical extension for a customer and then customer will be locked (most probably) into that partner forever as other partners will not be able to modify or provide support on the extension. 

It is like a black box and no one, except the original partner knows what is going on inside. 

You put the coin into vending machine and press the coca cola button, but you may get a sprite, but the nearest technician will not be able to help you and you might have to stay entire time till the original technician comes to fix the issue. If the original technician is no longer available, then you will be end up with a sprite. 

Earlier it was not like that, even though add-on source code is protected, other partners had the chances of looking into the code and figure-out what is going on inside. But with the new extensions things will be totally different. 

Question from a customer: 
During my previous employment, I used to attend to many of the pre-sale meetings which allows me interact with many of the future direct users of Dynamics NAV. During the time most of these companies were using custom build applications from a local vendor. After doing all the chit chat, presentations on the new product, functionalities, showing fancy PowerBI dashboards, RTC and all; they all ask a one question. 
"What will happen to our new ERP if your company was no longer there or if you stop selling Dynamics NAV"
We had a very small answer for that all the time and from that answer they all got satisfied and was happy to offer the implementation to us. Answer was :
"Microsoft Dynamics NAV Code is 100% open and any modification we do to the code is well documented and agreed prior. So anytime you feel like we are not doing a good job you can always change the partner and go with a different one."
Even some of the customers who was comparing custom build application (with 100% required functionalities as the customer dreamed of) with Dynamics NAV deiced to go ahead with Dynamics NAV (even without some of the key functionalities they required) because application was partner independent. 

Above is a one small example I took and there are many questions customers will ask with the new code freeze and extensions and as partners most will have to find new answers. 

Option : 
What I think is "everyone should have a option"

If you take Microsoft Dynamics NAV 2009 version, people had the option of using classic client or RTC or both during their business activities. 

When people say classic client UI is not looking fancy and look like SQL, we show them RTC (which was not stable at that time - my opinion). When people complain RTC is slow we showed them the classic client. Everyone had a option at the initial stage. 

During that time some of the partners were only doing the modifications to the forms and they did not touch the pages, unless it is required by a web services. 

Eventually Microsoft push everyone to the RTC and then introduced the web client  (again not stable at the initial stage - my opinion). Again we had options

While looking back at the past I have a feeling (once again my view) that Microsoft will stop the RTC pretty soon (as soon as Web Client has all the features) and left us with the web client. Wait a minuite, isn't that the Dynamics 365!! 

Coming back to the topic, I feel it will be good to have options, If a partner want to go build a extensions and sell it to a client, and client is willing to pay and get the extension then it should be allowed. Same way if a customer want to go ahead with the current process of open code then is should be allowed as that what makes Dynamics NAV great (My idea). So we have option. Currently we have this option and hopefully Microsoft will keep it like that in the future as well. Hopefully!!!! 

Final Thought :
Saying all these, my final thought is we should not rush to grab a seat on the sides of extensions. Let's wait, because all these years Microsoft gave some exciting things with Dynamics NAV and most of the time it payed off! Hope extensions will too! 

May be one day, there will not be sides on Extensions and will only be a one side (Hopefully on the positive side of extensions)

PS : I love the new development environment on VS because VS is the tool I used for programming for around 7 years and it is back with VS Code extension.

I said a penny for your thoughts, but I got two pennies' worth (Hope not)


Please provide your feedback with a comment. 
Thank you and Regards,
Tharanga Chandrasekara

1 comment:

  1. may be good to know that they talk about a Directions APAC

    ReplyDelete