Forum Discussion
Why has Microsoft created 3 new languages for Power BI?
- 7 years ago
Software languages are built to solve problems.
Power Query is a transformational tool that needs to deal with (primarily) Tabular data. M is a functional language that is designed to do that task, and do it well. Other languages were not well suited.
The Vertipaq engine inside Power BI is a column store database. This is a brand new DB design that stores data in columns, not rows. They needed a new language to take advantage of the benefits of the new design. They also wanted a functional language so that it would be easy for Excel users to learn.
Microsoft did not create R. It is an industry standard stats language that has its roots from “S” and “s-Plus”
if you want to consider the alternative, look no further than Microsoft trying to make Windows the operating system for mobile phones. Someone no doubt said “why do we need a new OS when we already have one?” One reason Power BI is such a game changing product is because it has no ties to legacy systems.
I agree, from an Excel user point of view, this is annoying. But that is why the GUI allows you to do so much with no coding.
M is data handelling programming language, this does require a fundimentally different approach.
Could they have done, more, most likely, but given the speed of development required, and the GUI this tool is amazing
That's probably a fair summary, Matt.
As a trainer, I hear a fair amount of grumbling about Microsoft software, including Power Query/Power BI, but it's important (for both me & my students) not to lose sight of how powerful PQ/PBI are, even if M can be bit of a dog to work with if you need functionality that the UI can't provide.