Diving Deep into PowerApps and PowerFX: A Journey with Microsoft's Joris de Gruyter

Diving Deep into PowerApps and PowerFX: A Journey with Microsoft's Joris de Gruyter

Diving Deep into PowerApps and PowerFX
Joris de Gruyter

FULL SHOW NOTES
https://podcast.nz365guy.com/485 

Ever reflected on how video games can affect our productivity in the digital workspace? That's a thought-provoking question we tackle with our accomplished guest, Joris de Gruyter, a seasoned program manager at Microsoft. As we journey through his intriguing career path from Belgium to the US, we find out how his hobbies like gaming, skiing, and sailing, have shaped his perspective on making business applications more engaging.

You'll surely get hooked as we move into the heart of our conversation – PowerApps and PowerFX. Learn first-hand from Joe about the creative alliance between the Excel and PowerApps teams that have helped in shaping Microsoft's robust Power Platform. As he breaks down the ins and outs of PowerFX, especially how its strongly typed nature offers a unique advantage when sending data to databases, you'll gain valuable insights into the realm of coding.

Brace yourself for a refreshing discussion on the complexities of UX design in PowerApps, the need for a universal formula bar, and the mammoth task of balancing the needs of ProDevs and new makers. As we venture into the challenges of code reuse in PowerFX, and the importance of user-defined functions, you'll start to see the art behind the science of coding. Finally, get a glimpse into the minds of MVPs in our vibrant discussion on customer requests, recognizing low-hanging fruit, and much more. This episode is your golden ticket to dive deep into the world of PowerApps, PowerFX, and the magic of Microsoft's Power platform.

AgileXRM 
AgileXRm - The integrated BPM for Microsoft Power Platform

Support the show

If you want to get in touch with me, you can message me here on Linkedin.

Thanks for listening 🚀 - Mark Smith

Transcript

Mark Smith: Welcome to the Power 365 show. We're an interview staff at Microsoft across the Power Platform and Dynamics 365 Technology Stack. I hope you'll find this podcast educational and inspire you to do more with this great technology. Now let's get on with the show. In this episode, we'll be focusing on building scalable apps with Power FX. Today's guest is from Seattle in the US not originally. Originally, he's from Brazil. He works at Microsoft as a senior program manager. He loves software and game development, technology in general and music. He's also a fan of the Oxford comma. I am as well. I love it. I love it. He has a long history in developing productivity developer tools and ALM in the Microsoft ecosystem. You can find links to his bio and social media etc. In the show notes for this episode, as well as anything that we discussed. If there's a hyperlink for it, we'll make sure we include it there. Welcome to the show, joes.

Joris de Gruyter : Glad to be on. You said Brazil. Is that just a way to tease me out, or what?

Mark Smith: No, no, did you say Brazil.

Joris de Gruyter : No, I said Belgium.

Mark Smith: Belgium. Where did I think Brazil In my mind? Even when you said it to me, I'm like ah, brazil. That explains to me why I thought that your name was French, because France, belgium it's, you know not yet a language. How often has that border moved over the centuries between?

Joris de Gruyter : the geography, especially Belgium. I think we've ruled by every person in the history books.

Mark Smith: Yeah, I don't know why I said Brazil it starts with a B. Tell us a bit about you. A bit about you from a non-technical perspective Food, family, fun, what you took you to the US. Tell us a bit about your life.

Joris de Gruyter : Well, maybe somewhat sadly, but a lot of it is related to work anyways. But yeah, I've contracted the tech bug when I was in middle school, high school and sort of everything flew from there. So I went to college and actually, coming out of that, I sort of landed a job in Dynamics. Had no idea, never heard of ERP, but you know it was a tech job so I was happy to take it. And so here we are. A fun fact out of that is I was always very interested in gaming, but gaming technology. So you know, in college I took graphics courses and stuff like that and I've always I still do I make video games as a hobby type of thing. But back then, you know, in college, I always thought that's what I was going to do. But in Belgium there was just nothing. You know, the internet was there but it was just in its infancy and nothing. So I always thought, well, the only way that to get into that would be move to the US, which seemed like this impossible thing to do. So I just took a job. But that job ultimately got me to the US anyway. So I was in consulting in Dynamics and then got here, was in MVP for several years actually in the Dynamics space, and then landed a job at Microsoft. So yeah, here we are.

Mark Smith: You're one of the ever-increasing numbers of MVP that go blue badge. You know over time.

Joris de Gruyter : Yeah, that's true. Yeah, I joined Microsoft in 2015, and I was just. I joined in June, so I just missed the renewal. For I was always annoyed because Murray you know Murray, I'm calling him out here Murray5, he joined like the first week of July and he got renewed. I was like so annoyed. I was like man, he got an extra year out of it. He cheated. But yeah, so I only have three years on my MVP. Yeah, gotcha.

Mark Smith: That MVP back in the day was your focus more on the finance biz-central CE. Where was your playing field?

Joris de Gruyter : Yeah, it was finances Dynamics AX at the time. So I was all there, yeah, okay. And then when I joined Microsoft as well, I joined in the solution architecture team, which is now sort of morphed into FastTrack and some other groups. And that was when FNO was in private. Beta is when I joined. So I worked with customers and then came back to the product team. So that's how I sort of got into product development, then moved from there into the DevTools, so X++ and all that kind of stuff. I was an engineer on that team, then ultimately became the program manager of the team and then a few years back I moved to Power.

Mark Smith: Apps Nice. What do you do when you're not Microsofting?

Joris de Gruyter : So, beyond making the video games, as I mentioned, I'm not necessarily a very sporty person, but I'm gonna sound like one. We love skiing, so I always go out skiing. I used to live in Colorado before I came to work for Microsoft, so we still do that around here in the Seattle area and up in Canada, and in the summer my wife is a big sailor, so I'm just a tourist on her boat. She does all the hard work and I love to take out my paddleboard. But yeah, it sounds more adventurous than it really is, but yeah.

Mark Smith: Nice. I mean you've got such a wonderful environment to do the outdoors there in Seattle.

Joris de Gruyter : Yeah, I always loved Colorado and it was a little apprehensive move into Seattle. I thought you know we have these great mountains here and all that. But honestly, seattle has more to offer. It's all sort of smaller scale. It's obviously not the Rocky Mountains, but you got a little bit of everything. You can go hiking, skiing, you can go on the water, which is either the big lake here, it can go on the I mean, it's a little bit of everything which is kind of cool.

Mark Smith: Yeah, very nice, very nice. You mentioned the development of gaming and there has been some critique of gaming over its course, around psychologists being involved to make it addictive, and I think it's just a wonderful idea that no one's applied to business applications. Why hasn't anybody sat down and said forget usability. Why don't we aim for addiction? Could we make our ERP system addictive Like that? Employees would just love to use it every day. Could we make dynamic CE addictive? You know that any one of those apps power apps. Could we add that you know addictive layer into it, because then there wouldn't be so much, you know resistance, so much from a change management perspective. Right, if people really really really fell in love with the software that they used every day at work. Yeah, I mean they're stupid about that. What are you doing about that?

Joris de Gruyter : Yeah, I feel like a couple of years ago there was this, or at least a lot of papers or I wouldn't say a push, but a lot of papers around the gamification of software. I think that's what you're referring to. I feel like nothing really came much of that, at least not in the app space. But comparing it to the gaming industry and the addictive, that's different. You've been there. I've done plenty of implementations before I joined Microsoft, especially on the ERP space. You usually came in there to replace something else that people had been using for forever potentially, and so people are naturally resistant to change. So I always felt like in most cases as a consultant, part of your job is implementing, but part of your job is just convincing people that it's really not worse than their last system. So I think it's kind of hard. Users already go in a lot of times with this negative like, oh, I have this mandatory training or oh, they're going to change this thing I've been doing. So it's kind of I don't think you can go straight in there with making it addictive. I think there's already too much work that you need to do to just convince them to try it at least. It's like feeding your kids a little bit. When you're like you know what, you just take one spoon now and in a few years, when you're an adult, you'll start liking this, you know.

Mark Smith: Yeah, as in, my thought wasn't in the area of gamification, although if you look at Duolingo, as in you know the language app, they do gamification well, right. I think they really build that in in a view to something that is practically skilled development but has that kind of gamification. But I'm thinking more. You know, in the games I've got into in my history, all of a sudden it's getting bright around me because the sun's coming up, right, because I've played all night long on a game and I haven't thought about well, you know, it's just you're so into it that time vanishes. And I just think that hopefully we'll get to the point that AI is so amazing that we'll give it the command and say please make Dynamics 365 supply chain addictive, and every employee will be, you know hard out on it.

Joris de Gruyter : Yeah, I mean, there's obviously plenty of discussion about how ethically correct all those things are to begin with, so but I think you're right, we're far away from having that discussion.

Mark Smith: Yeah, you know, I'm not even worried so much about ethics because I think it's an unattainable goal. You know, I can understand the ethics of it in a gaming perspective, when you're getting a kid addicted to it and they're losing skill development time in their life. But you know, for business, I just think, yeah, like you say, take your medicine and when you grow up you'll thank us for it and see the importance of it.

Joris de Gruyter : Yeah, I feel like I'm gonna get courted on this, but you know what I stand by what I said I like it, I like it.

Mark Smith: So, talking about PowerFX, what plot do you play in the PowerFX system at Microsoft?

Joris de Gruyter : Great question. So technically I am focused on PowerFX within PowerApps. So essentially it means the programming model of PowerApps. Now, with PowerFX still being sort of extracted out of PowerApps that's only been going for two years or so that there's a team of engineers that are as highly focused just on that. But the crossover is, I mean, there's no clear line of where one ends and the other starts, right, especially, you know, things get taken out of Power Apps, get generalized, and then we sort of have to push that back in. But also if we make any changes on the language specifically, I mean, everybody has a seat at the table, right, you know, because one change in the base of the core of PowerFX means it impacts PowerApps and now it's going to start impacting PVA and cards and all those other products as well. And since that team is at this point mostly comprised of engineers and an architect, they have a lean on us as well. So so, yeah, that's not really a very clear answer. But technically I'm focused on PowerApps. But in reality there's there's tons of crossover and a lot of discussions just on on the core and the base, and even even talk into some of the other teams that are new to PowerFX that are uptaken it to kind of say, ok, here's how we do it in PowerApps or here's how we see people using it. So I think, as as that progresses and we see more products taking it, I'm assuming there will have to be sort of more people on board and and more clear lines of responsibility. But at this point it's a huge collaboration all across.

Mark Smith: For the listeners that don't know what PowerFX is and what it plays in the Power Platform ecosystem, just, in your words, explain what it is, where you would use it, what's the use cases? What's the thinking from Microsoft behind PowerFX?

Joris de Gruyter : Right. So we'll start sort of with the definition a little bit. So it's a. It's a functional language that's declarative in nature. So what that means is you know a lot of people, even if you're not into programming. You may have heard of object oriented programming and there's other procedural programming, so this is a specific style of programming. The main reason that this was used as the concept for PowerApps and for low code specifically is because it's heavily modeled after Excel. In fact we have we have a direct line with the Excel team where when we want to introduce something that we haven't seen in Excel, we'll reach out and say, hey, if you guys ever thought about this, are you planning anything? And we're getting into that mode as well will they reach out to us and say, hey, we're going to do this, and so there's some collaboration. So the main point is that we can have advanced Excel users sort of take their skills and get into building apps with the low code and we're assuming the Excel team I mean obviously they've had tremendous success with their product and we've been want to build on top of that, of course. Now the declarative nature that I mentioned in the language is is actually also you can compare it to Excel, where you have different cells, you know one cell adds up to other ones, and then there's a third that the whatever and if you change one of these cells they all kind of automatically recalculate. And we have that same concept in PowerFX, and you see that very well in PowerApps, where one thing can depend on another and if you change it here, everything sort of automatically flows through what we call that data flow. And that's important because that means you know, compared to traditional programming where, say and you have that in PowerApps as well but we have a button, you click a button and then you create a program that says first do this, then do that, and then you're responsible to make sure things get updated and changed and set and whatnot, and you can do that. We have this called imperative logic. We support that as well, but for the most part we want to sort of take care of as much of that as possible. And you just say, hey, this is this, this is this, here's how they relate or depend on each other. And then and the beauty of that is that we can make a lot of and this is of course, what you want to talk about ultimately is, we can make a lot of improvements in performance as well, because the maker hasn't really decided on how things are when things get recalculated. They just said how things relate, which means that we can actually start optimizing and doing cool stuff without them even having to upgrade their app necessarily.

Mark Smith: So that's interesting. You mentioned the collaboration with the Excel teams. Is it a like for like comparison where we are right now between the what you get with PowerFX as opposed to Excel, or are we 10% of Excel, 100%, 20%, that's?

Joris de Gruyter : an interesting question From a parent to type the answer. I mean there are some clear differences, things that they don't have to worry about or don't worry about specifically typing, right? So PowerFX is strongly typed, which means if you, if you have a value somewhere, it is specifically a number or a text or something else. Excel doesn't really worry about that. I mean, obviously, as cell, you can give it a format. You say I want this formatted as a number, but in the back end they don't really care too much. We need to do this, be良. There's a lot of good reasons why you would or would not want to do that. There's just different scenarios. One of the things we have to worry about a lot is we don't just read data or present data. We can also push it back to databases, which means if you push something to SQL, it cares very much about what a data type you're dealing with. We have to be a lot more careful. We can have different data sources, so we need to be able to pull from SQL and send the SharePoint. There's all sorts of other reasons why you would want a strongly typed language, but that, to me, is one of the major differences that I see. Now, as far as parity goes, I think it's hard to. I actually don't know. We have a lot of things that they don't have, again because they don't worry about it. They don't have imperative logic because there's no button that if you do a button click, you want to update a record, a patch. They don't have those sets. I'm sure there's stuff that they have that we don't have, but I don't really know off the top of my head.

Mark Smith: In the developer union team are doing do you focus on? Is your lens on things primarily low code? You're creating experiences for fusion developers. I'll play the question out then you can pick it apart. I'm particularly looking for when you've got Procoders wanting to work with the Power Platform or Power Apps, and I'm hearing from Procoders that they love PowerFX as part of their mix. This is people with over 20 years NET development experience, which I think is very positive. However, one of the gaps that is seen is IDE. I mean I would do update via Visual Studio or VS Code and the full richness of what you get in that type of application. I mean I would step outside of the app creation experience with PowerFX. How much are you thinking of that full landscape of coders that are going to work on the platform from, yes, the low code that don't have the sophistication, maybe didn't even order 90 years, but then also accommodating those that are absolutely they're using this interface to plugins, scripts, all sorts of things much more and they want that rich toolset that they get from Visual Studio.

Joris de Gruyter : Yes, it's interesting, obviously, having been a Procoder myself, I was an engineer at Microsoft for being a PM and then being responsible for X++. Having done that for so many years, I low code was new to me as well. What I had not expected when joining this team is exactly that set of problems where you have to cater to both. In general, when we introduce on a language side, we introduce features, we always joke it's like WWED, what would Excel do? It's always our first question. Do they have any experience? If they would have, what would it look like? We want to really make sure those experiences are aligned as much as we can. But you're correct, there's always this like okay, but if a ProDev comes in here, how would they deal with it? So I think on the language side, sometimes I've struggled with that personally with X++, so we have to make language changes. It's similar there. You go and look at C-sharp or something, say how do they do it? Or do they even have it? Or how would they do it if they did? Here this duality is a very interesting set of problems. Sometimes Now, from an experience perspective, like from the UX in PowerApp specifically, you have similar problems. I think what you called out is exactly that. So the formula bar today is already based on Monaco, which is Visual Studio Code, essentially the web version, and we're doing more with that. So we have a team that's actually not under my responsibility. We have a separate team that's dedicated to those things formula bar and whatnot and so they're doing a lot of updates. You've seen, probably recently there's been a new version of the experimental formula bar. That's something that we'll have to roll out the thing with that as well. Again, we're looking at cross product usage of that. So that's part of this as well. By introducing this new universal formula bar, we can use that same formula bar in Dataverse and PDA and whoever wants to use PowerFX, even if you're outside of Microsoft, you can. So we were already using Monaco, but this new version will get us up to speed on the latest tech and we'll be able to introduce a lot of new features that are actually, as you point out, more geared towards ProDevs as well, by uptaking these latest ones. I think there has already been discussion about full screen or can we get a pop out so you can code on another monitor. Those things are, and we're hoping to standardize as much as we can on that Monaco editor, because we'll get a lot of those things for free. You see that already today, any language in Visual Studio Code, you'll get collapsing code and all these kinds of things. All of a sudden, all that stuff is on the table and it's more a question of what kind of priority do we have? But at least we can do it. But I feel like, you see, even with the co-pilots, you see the exact same questions. There's different expectations and we do a lot of user research around this as well. What are the expectations from a ProDev If they have a co-pilot in PowerApps? What do they want to do Versus, if you have a new maker or a citizen dev that's not very well-versed in PowerFX or whatnot, they may not even know how to get started. They're very different problem areas. So I think it's not just the language, it's just the product UX overall. And now this co-pilot layer on top of that, I feel like, adds another dimension as well. But we have to cater to both.

Mark Smith: Yeah, you know how in Excel, you open the Excel spreadsheet online and you get a lot of. You get, let's say, 90% of what you need to do, but then you can always go no, actually open it in the Excel app, right, and then I've got all the rich functionality. And I mean, I particularly notice it between people trying to edit a PowerPoint, for example, and PowerPoint online, as opposed to the tool set, is much more richer if you can open in the desktop app for PowerPoint. And I'm just wondering you know an icon like that which says, hey, actually open it in VS Code and let me work with it there as a potential option in the future. That aside, one of the things that I want to talk about is building scalable apps with PowerFX and what you're thinking. You know what you're thinking around the scalable challenge and how is that different from someone just building a single app? That might be a bit of form capture, you know, into a data that does very little but more complex enterprise scenario of app development. What are you, what's your thinking around that?

Joris de Gruyter : Yeah, I think you picked up on the keyword there, which is enterprise, and I think Ryan Cunningham has been using that a lot in conferences lately as well, talking about this enterprise scale that we need to need to handle. I think overall there's always been a discussion in Power Apps about the size of the apps and how that impacts performance and whatnot. But that's kind of a very vague statement, like size of the app. What does that mean? And I think in the past we've done a lot of or put guidance out there and people have talked a lot about, okay, number of controls or number of screens or number of data sources, and obviously anything that increases that kind of size just volume of things will impact right. But as we started getting into some very large customers and we have some of my colleagues have been working with some enterprise customers that have these I mean amazingly large and not just apps but even like a specific button on select that has thousands and thousands or even tens of thousands of rows of PowerFX. That's just not something that you know. Five years ago we saw much of right, so that means we are moving up the stack, people are taking this and it presents new challenges right, and so some research that some of my colleagues did I cannot claim any credit for this whatsoever, they've spent a lot of time on this is that it's not just the number of controls per se. A lot of it also depends on how much code is underneath all of these controls and it kind of goes back to a little bit of our own fault. I started earlier in our conversation. I talked about Excel and how you know you have one column that depends on the other, and so one of the things the drawbacks of making that parallel is that people have gotten into a habit of just like copy-pasting things right. Like you do in Excel. You just select a bunch of rows, copy it, paste it somewhere else and all the formulas and everything's there. That's great. But we're running into these issues where we do a lot of work specifically also around that type system where things whether it's a number or not we analyze Like you don't have to in PowerFX, you have to declare a variable. You don't have to say I'm going to create a variable called mark and it's going to be text, right? No, you just start typing and it works. But that means if you have copy-pasted this thing all over the place. We got to make sure it's always used in the same context, whether these things. There's a lot of analysis going on specifically in the authoring side of things, and so this copy-pasting, combined with people building larger and larger apps, is one of the things we're looking into, and it turns out that the amount of code that is across your whole application may heavily impact. And again, it depends, right. Some code may not be problematic at all, others are. So there's a lot of work going on there. One of the things you've seen recently is we have named, formalized it have come out. We're currently working on user-defined functions as well. Those are all essentially means to reuse things. You declare it once and then you use it everywhere. Now we realize, once these features are there again the ProDev, citizendev or Nubi, how did it even? I mean, they've never heard of reuse they go in and say why do I have to copy-paste this everywhere? And then somebody coming from Excel said copy-paste. And those are things we'll have to handle, but at least we're working hard to get the features out. But then our next phase will have to be okay. Now that we have all these things, how do we guide users If you copy a button that has a thousand lines of power effects and you paste it somewhere else. Maybe you should say, hey, how about we make a function for you, we'll put it in there and then you can use it wherever you want. That's sort of the things, the challenges that are ahead of us, to start helping Because, like I said, there's some beauty here in that there's an abstraction. We can do a lot for the user, but sometimes the way an app is built will obviously impact performance, and there's a lot on us. There's other work going on as well, just basically the backend of things and how we do some of this analysis. There's heavy work on, of course, improving those. There's always ways to with new data to figure out oh, we should have done it this way or that way. So those things are happening as well. But from my perspective from PowerFX, the reuse, those features, getting those out and then actually finding ways in the UX to guide people to use those that's a huge focus, because we've seen tremendous improvements in performance with some large customers.

Mark Smith: How far up does that concept of reuse go? And let me give you a use case. I've got a customer that's a large bank. They've got a heap of apps that they are migrating to the Power Platform. When I say heap apps, they could have been Excel, they could have been the Access databases, they could have been built in a point solution. But as we analyze those apps across, let's say, four departments, there's a range of apps let's say 30 of them that are. They're the same thing, they're all doing the same thing, except people did them at different times and they were built across, you know with. But when you look at it from an analysis point of view, they're the same thing. How far up does that reuse go? Because there's, you know, when we go and roll out and it's not that we're going to create this term now that's coming out a super app, you know, for that's meant to be the Swiss Army knife of everything. Because what I do love about the Power Platform is that you can have an app that does one thing and therefore the usability, the training of people though when someone picks it up they don't need to refer to a manual is brilliant. I like that, you know, when I came from the CE world and we used to convert you know, dynamics 365, what was sales, marketing and customer service into something else, what we called XRM. Back there, you still had all the other baggage that came with it, that people like what's this, what's this SLA feature? We don't have it, let's start playing with it, and it's like you didn't even need it. You know, as an example, when you look at reuse in this, are you talking about only within an app or are you talking at an environment level? Therefore, we could have 50 apps running in that environment that could reuse components. As I say, how far up is it at a tenant level?

Joris de Gruyter : That's a great question. I think we have some ambitions. I'll start with the beginning, right. So today I think the only reuse that we have within an app would be components. That's the biggest. Canvas components is the biggest thing and of course, have PCF components as well, but purely from a PowerFX or PowerApps point of view, I think, components that got taken into component libraries. It's a solution. You put your components in there and then you can import those into other apps. Now we're now talking about things like functions, user-defined functions. My expectation and now that I'm throwing it out there, that's probably a foregone conclusion, but my expectation is, once that feature goes into preview, people say, oh, this is great, but how do I now use that function in my other app? So we don't have a design for that, but something we need to come up with. Now we have an even more interesting challenge this time around, because Canvas components is PowerApps Canvas, but a PowerFX function. Why? Maybe I want to use that in PDA or in Dataverse or in Cards? So now that concept of reuse, like can we even apply that outside of PowerApps? So that's difficult. That's something that we will, because I expect that question almost immediately and for now it's just be hey, just copy paste it, unfortunately. But something I want to do and there's other efforts going on, of course, across the PowerPlatry or the PowerCatalog work that's going on. So those are all avenues that we're exploring to see what we can do. Now, again, a pro dev coming in here a lot of engineers have at least some background of thinking ahead and modularizing code and things like that. As a maker, I may not have that foresight because I don't have the experience or the education or whatever. I mean, it's something you learn as you go and usually it starts with maintainability, because we're talking about reusing in general and performance. There's also a maintainability problem where you start copy pasting and now you have to fix one and you have good luck finding all the places where you copied that too. So I think we can do a lot within an app to avoid duplication and help with reuse. Now, doing that across different apps, I think, is a whole other challenge, because those things are hard to do without planning ahead, and I think we're seeing a lot of grassroots uptake of PowerApps as well. We have larger customers that have a dedicated team and hey, we're going to build an HR app or whatever it may be, and that's great and there's some planning and maybe even have a Figma. We have the Figma text. We have the same thing where a couple of guys are in a conference room and they want to use, just copy the whiteboard they just did and get that into a design. It's a very different approach and as they go and they build and that's, I think again, we sort of have to cater to all of these and we'll have to make priorities, so we'll have to figure out what we do first. But I think there's something and I'll fully admit I feel like that's something we're lacking today. If you've built a component, a canvas component, there's no good way to get that into a library, and I think those are the things we'll have to start looking into. First, of course, we need the ability to share cross apps and potentially cross products. But then also, if I have built something, as we call it software engineering, refactoring we need some of that as well where you'd be able to say, ok, I have this piece of code and I have that in multiple buttons, how can I just collapse all that down and maybe put it in a library or just within? I think those are all very interesting. I see, as I'm talking, I keep my laundry list in my head gets longer. But I think those are all things we'll have to tackle. I think, first things first we'll just be within the app then trying to see how we can share. But I think that the next thing is again how can we guide people? Because that's the whole purpose here as well, is we're assuming that a large portion of our user base are not people that have not gone to college to build apps or do anything, so they might not even know this is possible or have never heard of the concepts, like maybe they know what they want to do but they don't even know what to put on Google or Bing because they don't know the terminology. So being able to guide people, I think, is a huge thing in the PowerApp Studio everywhere.

Mark Smith: We're well over time, but I want to close with this question. What are the top three requests that you're seeing coming through from the field and that could be community, could be partners, et cetera? What are the top three that are bubbling up, that are on your radar around requests in the PowerFX space?

Joris de Gruyter : There's two I can immediately think of, I think, what we're doing with user defined functions. I think it's huge. There's a lot of people that are trying to use components because that's the only kind of the functions you can create and reuse. So I think even on the Ideas website, if you go through, there's a lot of things that don't necessarily call for functions although some do but there's a lot of them that essentially are asking for user defined functions. So I think that's a big one and that's something we're working on and hopefully in the next few months you'll hear something about that. I think that's one and that's in the works. I think the other one and that's probably not unique to PowerFX. But people are asking OK, we have so much stuff in experimental state, when can I use this? I feel like that's a top three question for sure. It's like, ok, this all sounds great, but I'm not allowed to use it until you support it, which makes sense. And we have a lot of these sort of PowerApps moves fast Coming out of Dynamics. It's kind of night and day. This PowerApps is very much sort of a top of the edge, bleeding edge type of go fast thing. For sure people are asking there's a lot of things and components as well. It's been out for a while. We finally made some updates. I'm hoping that we can push that to preview NGA soon. So I think that's the other third trying to think.

Mark Smith: So it's good.

Joris de Gruyter : Yeah, I think the rest is just always very specific questions. That's usually what happens. They see that MVP summits as well. People come in and they have this very specific problem that they cannot solve. But we try to fit in some of these side things left and right. We've done the copy to Calibur copy function. I don't think we've widely publicized that, but that was an ask for ages on the idea. So we try to every now and then go through. It's like is there some low hanging fruit that if we look at it now we'll be like why have we never done this? So we try to do some of those as we have some time in between. Other things for sure.

Mark Smith: Nice, joris thank you so much for coming on the show. Yeah, glad to be here. Hey, thanks for listening. I'm your host business application MVP Mark Smith, otherwise known as the NZ365 guy. If there's a guest you'd like to see on the show from Microsoft, please message me on LinkedIn. If you want to be a supporter of the show, please check out buymeacoffeecom forward slash. Nz365 guy, how will you create on the Power Platform today? Ciao?

Joris de GruyterProfile Photo

Joris de Gruyter

Joris de Gruyter began his career as a Microsoft Dynamics technical consultant and developer in 2002. He is now a senior program manager at Microsoft, focusing on the open-source PowerFx functional language in Power Apps and the Power Platform. Over the years, he has worked on implementations and ISV products in Europe and the USA, taking on roles as a developer, architect, and engineering manager. At Microsoft, he has served as a solution architect, software engineer, and program manager. Joris was recognized as a Microsoft MVP in Business Applications in 2012, 2013, and 2014. He is a Microsoft Certified Trainer Alumni, public speaker, and blogger with a strong passion for Microsoft technologies. He has a particular interest in developer tools and processes, DevOps, and Dev ALM. Additionally, he is a hobbyist game developer.