Do you remember the Fiat Panda 30? It was released in the year 1980 and it was one of the best ever car models released from Fiat.
Fiat Panda 30 was one of the most appreciated models ever expecially because:
- it was a rock
- it goes everywhere (you can use it as a city car but also as a tractor)
- it was simple to maintain
- it just works (ready for every usage)
But today, do you ever want to buy a Fiat Panda 30 again if you think on your future new car? Probably someone could answer yes (oh my god!) but I’m quite sure that for the main part of you the answer is NO.
Yes, you can trick your old Fiat Panda in order to appear as a modern car, but this is only an exterior appearance. Under the hood you don’t have a modern car, its technology is always old.
In year 2019, we want a modern car, with more features and a real new technology under the hood.
This is called evolution and evolution is an aspect that covers all fields in your life with more or less speed. If you think on the software world, this is where the evolution speed is more increased.
Now think a bit to the software inside your company and expecially to your ERP. Do you want a Fiat Panda 30 as your ERP now? Or do you prefer a modern ERP?
Why this post and this question?
Expecially for these two main reasons:
- in the past events I’ve managed, I’ve received a very large number of requests from partners in order to suggest them what road to embrace and what they could do now with Dynamics 365 Business Central and their ISV solutions and their customers base.
- I often listen and read people that also nowadays continue to suggest to “stay with the past”, that in this case it means stay with the C/AL solutions.
Stay with the past is in my absolutely personal opinion the worst choice you can do now in the Microsoft’s ERP world.
Microsoft Dynamics NAV was and IS a great product and C/AL was and IS a great language for the platform. But C/AL has a big main limitation: extensibility. You can do what you want with C/AL but C/AL is not born to be extendible. Ok, now we have events also in C/AL but your code is always in the same big box and upgrading is not just a one click operation.
With Dynamics 365 Business Central and the new Modern Development platform, Microsoft for the first time offers us a great way to enhance an extend our ERP. This is the first real step, not the final one. But this is a step in terms of evolution.
Start change your mind, detach it from the old monolythic C/AL. The platform has absolutely to change in this era and a jump must be done in all layers, from Microsoft to Partners to Customers.
Stop thinking on conversion of code, but instead start thinking on rearchitecturing and refactoring your codebase. This is a big investment I know, but in a long term it will be a big advantage for you to have all your codebase as extensions.
My few suggestions:
- Embrace the extension’s world as soon as possibile.
- Try to avoid as much as possible the mixed world (C/AL and AL together).
- Develop all your new implementations as extensions starting from now.
- Start rearchitecturing your existing codebase and when doing that, remember to think on extensibility also for your solution (it’s not only the MS codebase that must be extendible, but also your addons if you need to propose them to different customers)
- The SaaS must be your reference model when developing extensions: don’t create extensions for the on-premise (target = Internal) if you’re not strictly forced to do that! The SaaS is the extension’s model to go also if actually you’ve never planned the real move to the cloud.
Is the C/AL going to an end? Yes. No way. Customers and solutions that will still remain on the C/AL platform are like the Fiat Panda 30: they just works (and also in a great way), but they will not be future ready.
Will Microsoft support an actual C/AL platform in the future? Yes and no. They will receive cumulative updates until the maintenance period but no mayor features or platform improvements. The future has another direction, print it on your mind.
The actual Extension’s model will be improved in the following years for sure, this is only the beginning, but the road is now tracked.
What about the decision to cut the C/AL in the October ’19 release? I think it’s the best choice to do. The ideal way to start the platform evolution is a platform R-evolution and the new major release must have a clear cut with the past. On or off, on board or not. It could sound too hard, but it’s the more reasonable choice.
Few suggestions to Microsoft for the next years:
- Please stop the object IDs limitations
- Please start thinking on more OO features
- Please work on the per-tenant extension (PTE) model. Actually it’s too much painful and there are no valid reasons for that limitations.
- I’m not an AppSource big big fan and I don’t think that ALL ISV solutions must be forced to be on that store. I would like to see more flexibility on this aspect.
- Please work always more on localizations as extensions
- Please give us a real Report Designer tool. A modern ERP must absolutely have an integrated Report Designer that can be usable also for the end user and actually we’re far away from this.
- Please work always more on cross product integrations with the Dynamics 365 and Office families.
As I said to all partners and customers I had the pleasure to meet during this year: invest on your evolution. The Fiat Panda era is finished.