Raw Data By P3 Adaptive
Robotic Process Automation for All, w/ Microsoft’s Ashvini Sharma
Group Program Manager-Power Automate RPA, MicrosoftListen Now:
Ashvini Sharma is one terrific human being and he knows a LOT about Robotic Process Automation (RPA). As the Group Program Manager of Power Automate RPA at Microsoft, there is no better source of information about automation than from Ash!
If you want real-world examples of what Power Automate can do, this is the episode you need to listen to.
- 2:05 – How could anyone live without air conditioning?!, Maintaining the work/life balance is difficult
- 11:20 – Ash goes to the Excel Team and faces the challenges of his new role head-on, The Magic and Soul of Excel
- 21:05 – Ash’s next pivot is RPA (Robotic Process Automation), the benefits of RPA, and some brilliant (and 1 possibly illegal) examples of RPA
- 34:05 – A Power Automate history lesson and some explanation on what it is and what it can do
- 47:30 – A little insight on how RPA was built and the cost of keeping company secrets
- 55:40 – A new segment called N Questions-Rob asks some burning questions, rapid-fire style..and some very interesting answers come out of it!
- 1:07:20 – Ash explains a “Hello World” scenario that will help many of you listening regarding automation of Export to Excel so that Power BI can pick up the refresh
- 1:13:20 – What’s next for Power Automate?
Rob Collie (00:00:00): Welcome back friends. This week's guest is Ashvini Sharma, former colleague of mine back on project Gemini, the PowerPivot team back in the day, and hands down just one of the finest human beings I ever worked with. I think you'll hear this, I think it will come across in the conversation just what a warm and genuine human being he is, in addition to being one top notch software professional.
Rob Collie (00:00:25): So of course, we take a stroll or two down memory lane, but we also talk quite a bit about his latest project at Microsoft. The product in question is power automate, and specifically, robotic process automation, just let it flow off the tongue RPA. I think that power automate and in particular robotic process automation represents almost this crucial last mile in a lot of the data analysis and reporting, a lot of the BI that we need to do.
Rob Collie (00:00:57): And if you haven't heard about it, I highly recommend looking into it, especially after listen to this conversation. And because I think this robotic process automation, which is really just macro recorder for the mouse and keyboard, because I think that is such a crucial thing for the citizen developer BI people to learn, we took the unusual step in this conversation of actually verbally walking through how you would get started. We also talk about how something as simple as a button up shirt can be the boundary between work and life in the work-life balance.
Rob Collie (00:01:30): All this and more, certainly a very enjoyable conversation as usual. Hope you enjoy it as well. So let's get into it.
Announcer (00:01:39): Ladies and gentlemen, may I have your attention, please.
Announcer (00:01:43): This is the Raw Data by P3 Adaptive Podcast with your host, Rob Collie. Find out what the experts at P3 Adaptive can do for your business. Just go to p3daptive.com. Raw Data by P3 Adaptive is data with the human element.
Rob Collie (00:02:05): Welcome to the show. Ashvini Sharma, how are you?
Ashvini Sharma (00:02:09): Thank you, Rob. I'm great. I'm doing wonderful. It's not so hot in Seattle. I am living the dream, right?
Rob Collie (00:02:17): Oh, yeah, you guys were up to 110 Fahrenheit or close to it.
Ashvini Sharma (00:02:22): Yeah. That's true.
Rob Collie (00:02:22): Which is insane.
Ashvini Sharma (00:02:24): That's right. Yeah. And these are the times where you hear from the news all these random facts about the things you would never think of before. In Seattle there were three days in the last century that were over 100 degrees, it's like, "Wow." And they were two just a couple of weeks back also. So it's just not usual.
Rob Collie (00:02:45): I'm sure it's coincidence, it's just normal variation, it has nothing to do with human activity or anything of the sort.
Ashvini Sharma (00:02:50): No.
Rob Collie (00:02:51): Do you have air conditioning at your house?
Ashvini Sharma (00:02:53): Yeah. Since we got into this house in '98, I think. '98 summer was quite hot and we decided, I don't care if I have a garage or not. I don't care if I have one less bathroom in the house. We need air conditioning in our next home. So yes, that poor AC was working hard.
Rob Collie (00:03:11): I bet.
Ashvini Sharma (00:03:13): Yeah.
Rob Collie (00:03:14): I mean, so for those who don't know, still to this day a majority of homes in Seattle do not have air conditioning. It's just historically not necessary. And yeah, my house in Kirkland from '99 to '05 did not have air conditioning. We had heat, but not air conditioning. And oh, my God, five to six nights a year, did you just hate life and Upper 90s. You all were over 105.
Ashvini Sharma (00:03:47): Yeah, that's right.
Rob Collie (00:03:49): And I saw Joe [inaudible 00:03:50] on Facebook. He doesn't have air conditioning. It's like, "Wow."
Ashvini Sharma (00:03:55): Yeah, I think there was another factor, maybe 70% of the homes have air conditioning, 30% don't. And people were going into work. It's the night that really gets to you, but the day you can somehow manage.
Rob Collie (00:04:08): Yeah.
Ashvini Sharma (00:04:08): Oh, my gosh, sleeping in the night.
Rob Collie (00:04:10): You can't sleep in that temperature. It's really, really tough, especially in a two story house. All the heat pulls upstairs with the bedrooms. And it's brutal. That's interesting that it's up to 70%. I bet that's a significant change over time.
Ashvini Sharma (00:04:24): Mm-hmm (affirmative).
Rob Collie (00:04:24): When I flew out to Microsoft to join full-time in 1996, I got on the plane in Florida at my parents house in Florida. And it was 96 degrees there in July, as you would expect. And I got off the plane in Seattle, and it was about 96 degrees in Seattle in July, as you would expect if you're me.
Rob Collie (00:04:44): And I got to my temp housing, my apartment and I went to the air conditioning controls and I turned it on and all I got was heat. And I even called maintenance at the apartments said, "Hey guys, the air conditioning isn't working here." And he just laughed at me. He said, "There's no air conditioning in these apartments.
Ashvini Sharma (00:05:00): [crosstalk 00:05:00]-
Rob Collie (00:05:00): I was like, "What the hell?" And then a week later, it was 55 degrees and raining in July. And I go, "Oh, what have I done? What have I gotten myself into?" Very interesting.
Ashvini Sharma (00:05:14): Yeah. As you know, I grew up in Dubai, right? For a few years. And we had something, I had a surreal experience, which is you turn on the hot water tap and cold water comes out, then if you turn on the cold water tap, because it's coming from the outside.
Rob Collie (00:05:28): Oh my gosh.
Ashvini Sharma (00:05:29): Right? So it is a surreal experience. I thought this left was for a hot, is it left for cold. Which one is which? So yeah, you ended up going through this evaluation of your-
Rob Collie (00:05:39): Oh, wow.
Ashvini Sharma (00:05:39): ... basic skills.
Rob Collie (00:05:41): So yeah, the water that's laying dormant in the hot water line between you and the heater is still quite a bit colder than what's coming from the cold water.
Ashvini Sharma (00:05:49): That's right.
Rob Collie (00:05:51): No, actually I don't think I knew or remembered that you grew up in Dubai. I had no idea.
Ashvini Sharma (00:05:56): Yeah.
Rob Collie (00:05:56): You appeared to me and my life fully formed. You were already grown and professional.
Ashvini Sharma (00:06:05): I was wearing buttoned down shorts by then. Yes, that's right.
Rob Collie (00:06:08): Yes. You were.
Ashvini Sharma (00:06:08): That's right.
Rob Collie (00:06:10): In your earlier Microsoft career, did you struggle maintaining work-life balance? Is that something that I remember correctly about you?
Ashvini Sharma (00:06:16): Probably I still do. It's not easy, man. I have a few structured things I do, which is I wear a button down shirt. When I have this on, I'm working. When I don't have this on, I'm not working. When I leave this room, I'm not working. I just have to put those things into place. Otherwise, it just leaks all the way through.
Rob Collie (00:06:35): See, I had that vague memory that the button down shirt was connected to that. I remember, and you're not the only person by the way, to tell me stories like that at Microsoft. Actually, Shishir mentioned to me. He works for Coda now. He wore a tie to work every day to remind himself that he was at work.
Ashvini Sharma (00:06:52): Interesting. I don't remember. He was my manager for maybe a year or so when we started the in memory project. Maybe I do remember him in tie once in a while.
Rob Collie (00:07:04): Okay, no, so Shishir has hired another Microsoftie, whose name is Mike. But I worked with him when I worked on the ill-fated office designer project, which we don't want to talk about, the exchange local store alternative to SharePoint that we killed. It was a mercy killing of that product.
Rob Collie (00:07:25): And so I got to know this guy, who was an Outlook dev lead at the time, but I think they work together on a project Gideon, he and Shishir cross paths. Anyway, this habit, this structure of wearing a more formal style of clothing than what you would normally choose to. I'm not sure that I've ever seen you in anything other than a button down shirt. I probably skipped the pool parties. The Gemini pool parties, and things like that.
Ashvini Sharma (00:07:52): Yeah, probably not. I have a work life and non work life. There are some people that span both, but I guess we just never. Yeah, could be.
Rob Collie (00:08:02): Right. At the same time, though. I was thinking about this beforehand, one of the things I would say about you is that and maybe you've just had me fooled all these years. But I was going to say that I think a few people that I worked with at Microsoft sort of bring their entire humanity to work in the same way that you do.
Rob Collie (00:08:20): And so it's interesting that you've got this actual physical totem of a boundary that you put in your life with these shirts, right?
Ashvini Sharma (00:08:29): Mm-hmm (affirmative).
Rob Collie (00:08:29): While at the same time, I always felt like you were 100% just you at work. You weren't coming to work and putting on the suit of armor with a mask, you know? So it's a very interesting duality with you.
Ashvini Sharma (00:08:45): Yeah, it's interesting. I haven't processed this myself.
Rob Collie (00:08:49): That's why were here.
Ashvini Sharma (00:08:50): Yeah, I should get on a couch and just lay down.
Rob Collie (00:08:53): Yeah, we're going to talk about your childhood.
Ashvini Sharma (00:08:55): Oh, boy. Okay. Yeah, I know. I do believe in being authentic. It's just more juicier this way to be a fully human and appreciate each other in all our humanity, right? All the flaws and all the strengths, and it just makes life so much more interesting.
Ashvini Sharma (00:09:12): This structure that I have is just to remind me to stop when I want to stop. Because otherwise, yeah, as you said, I was just talking to my wife the other day, "Where did our 20s go? Where did our 30s go?" And it was just a blur. I just spent so much time working without any stop. So we just had to put some structure in place. Otherwise-
Rob Collie (00:09:34): Yeah, my wife and I have been talking about that lately, as well. And my answer to it, I think I hope this is true as much as I think this is true, I think it's a little of both. These are just the years that do that. It's the most leveraged years in your career, while simultaneously being some of the most demanding of the child responsibility years.
Ashvini Sharma (00:09:56): That's true.
Rob Collie (00:09:56): Our kids, my kids, the ones I followed across the country, one of them's going to college in the fall, and the other one is one school year away. And I'm like, "Oh, yeah." I'm licking my chops. I mean, I'm going to miss them. But the last decade plus of responsibility has been particularly acute in my life.
Rob Collie (00:10:19): Anyway, so that's something for those of you who are listening. This is something that Ash and I didn't work together for really that long, it was maybe two years. But because of that authenticity that I'm talking about, I feel like I can see you after a five year outage, and it's just like, pick up in the middle of the conversation.
Rob Collie (00:10:36): And whether I consciously chose this or not, I think that at Microsoft, I was similarly transparent. I certainly didn't come to work projecting some sort of professional facade. That wasn't the move.
Rob Collie (00:10:52): So we met working on project Gemini that ultimately became PowerPivot. Of course, PowerPivot ultimately morphed into the thing that's Power BI today. And that was a fun time. We had a lot of fun in that project, for sure. Then I left Microsoft. And you all went and finished what you started in PowerPivot, released after I left, and sometime after that you ended up on the Excel team, right?
Ashvini Sharma (00:11:20): Yeah, that's right.
Rob Collie (00:11:21): How'd that go down?
Ashvini Sharma (00:11:22): How it started was, we at that time we still believed in this model of the trinity, right? Have the best front end for BI is Excel, that's where people spend time. I love Excel, that's the right place for data. The best engine for it to have that be, all the Amir's of the world, all the, really the deep engineers from SQL Server, Analysis Services have that define what the engine can do.
Ashvini Sharma (00:11:52): And then from sharing perspective, bring it to SharePoint because that's what it was about.
Ashvini Sharma (00:11:57): So after we ship PowerPivot, then we had a reorg of sorts. And what we want to do is bring the ships closer across office in SQL Server, Analysis Services. And I remember Kamal at the time, and Amir asked me to go over to Excel, "We need somebody on the Excel side that is really deep in the BI space and understand what it's like on the other side. To make sure the ships remain close together."
Rob Collie (00:12:22): They were going to plan you as a sleeper agent.
Ashvini Sharma (00:12:24): That's right. They got Alan in reverse, right? They got Alan from the other side.
Rob Collie (00:12:28): Are you watching the TV show, The Expanse. They do a crew swap of one member each between these two ships because they don't trust each other. Right?
Ashvini Sharma (00:12:36): Uh-huh (affirmative).
Rob Collie (00:12:38): And if you get betrayed one of your friends is now with the enemy. That sounds familiar. So if I recall, there's I think it's this old story. I don't know if it was a true story or not. But the Archbishop of Canterbury, where the King of England in order to gain better control over the church turns his carousing, drinking womanizing friend, takes him and makes him the Archbishop.
Ashvini Sharma (00:13:02): Wow.
Rob Collie (00:13:02): Again, he's like, "Okay, now I'm going to have," but as soon as the robe and scepter go on this guy, suddenly, he starts playing the role like it's-
Ashvini Sharma (00:13:12): Yeah, [crosstalk 00:13:13].
Rob Collie (00:13:12): ... supposed to be played, right?
Ashvini Sharma (00:13:13): Yeah.
Rob Collie (00:13:14): He pushes back a lot. The king's upset about this. I think that the Excel robes as soon as they went on, suddenly, you know.
Ashvini Sharma (00:13:21): That is actually true. I wasn't conniving or womanizing before, we were just... Just to be clear.
Rob Collie (00:13:26): Yeah. The metaphor is partially relevant.
Ashvini Sharma (00:13:30): Yeah, fair enough.
Rob Collie (00:13:31): Let's be clear.
Ashvini Sharma (00:13:35): But yeah, you're right, the responsibilities on the Excel team are so different than the responsibility on a [v1 00:13:41] that you've just built. Everything has to be measured seven times. And as you know, the implications of releasing some new feature and how it works with everything else, that people may be familiar with Excel for the last 20 years of their use, it carries so much weight, that the responsibility is really severe.
Ashvini Sharma (00:14:00): Yeah, those robes come on, and they're heavy.
Rob Collie (00:14:02): Yeah, they're very, very heavy. In fact, I'm going to tell you something that's almost a little bit uncomfortable. But I came back and visited at one point, and it was over, this is when you're on Excel. And I was visiting the halls of whatever that building was 34, that where Gemini, Power BI, PowerPivot, whatever, Analysis Services that team.
Rob Collie (00:14:20): I was bouncing in and out of offices, and I was sitting down with one person, who I will not name and it wouldn't be necessarily be your first instinct either. And I said, "So how's it working out with Ash as your sleeper agent over there?" And this person goes, "Well, that's turned out to be a disappointment." And I go, "Aha, he's taking it seriously then."
Rob Collie (00:14:42): That's when I knew you were doing a good job, is when the AS team didn't feel like they'd gotten proper pay off on the swap." I'm like, "Yeah, he's doing a good job of it."
Ashvini Sharma (00:14:52): Yeah. It's just very different, man. What we require of... Because I've built v1 products. So many, right? It's the fifth one I've just built. And to take someone with that DNA and ask them to join a v15, at the time, oh my gosh, this different skill, different, you just can't expect this same anything, really.
Rob Collie (00:15:13): Yeah, the two things that are so difficult about working on Excel, when you're new to it, that I remember, number one, it took me a year and a half to stop coming up with ideas about capabilities as if they were new. And having someone say, "Yeah, we've got that already."
Ashvini Sharma (00:15:30): Yes, "There's a spec somewhere for it." Or, "In 2008, we wrote the spec and go look at it." Yes.
Rob Collie (00:15:36): Yeah, it's very, very, very hard to have an original idea on Excel. And the second one is, of course, that everything you do has so many rippling implications that you can't just go and do something. You have to do something and then consider, this just incredible number of permutations of impact that's going to have both to the user experience, the object model, the recalc chain, it's just...
Rob Collie (00:16:01): There's some ideas that you just couldn't do, like you wouldn't think about it this way. But it's okay to have conditional formatting, right? So a recalc, changes values. And then in light of that recalc, because the number is changed, maybe the formatting of the number changes, you get a different length bar or something like that.
Rob Collie (00:16:18): However, vice versa, is terrifying. Having a formatting change that triggers a recalc. When I suggested a feature like that one time, everyone looked at me like, "No, we're going to kick you off the island. And it makes sense, when you really get into it. You've got to tiptoe through everything.
Ashvini Sharma (00:16:36): Yeah. You know what really helped? I went on this journey to understand what is the soul of Excel? Yeah?
Rob Collie (00:16:43): It sounds like a really bad, bad movie. But a movie. Let's go, let's make this.
Ashvini Sharma (00:16:51): It took me a while because it was so many things you could do. You can build your applications, it shows up on mobile, we were right at the time of you could collaborate also, and people could work on the same spreadsheet together. And we were doing exploration on charting. And we were looking at new types of interactions on the charting model.
Ashvini Sharma (00:17:09): Of course, the data model was there as well. And you could do all the magic with DAX, as well as part of that. So really, what is the soul of Excel? So that took me quite a while to get to. And one of the things that helped was a blog you had written about the composability of Excel. I forget, it's been a few, maybe a decade now. I don't remember what-
Rob Collie (00:17:28): [crosstalk 00:17:28]. The network effect of Excel, composability.
Ashvini Sharma (00:17:28): The network effect. And at the end of this, the answer was simple. The soul of Excel is the grid, and the calculation, the formula language that goes around with it. Because everything lifts from the grid and [crosstalk 00:17:45]-
Rob Collie (00:17:44): That's right.
Ashvini Sharma (00:17:45): ... back down into the grid. And the closer you are to that soul, the simpler it is, because that's the magic of Excel, is how you can pull all these things together, and build all these things that nobody ever thought would be possible.
Rob Collie (00:17:59): Yeah. These five features that because they interrelate through the grid. And this is the tiptoeing thing I'm talking about, right? You can't have a new functionality that just goes in there and just trashes what happens in the grid as you're making changes. You have to really tightly tie into this mothership, right?
Ashvini Sharma (00:18:18): Mm-hmm (affirmative).
Rob Collie (00:18:19): But once you do, you gain all these incredible benefits that you never anticipated. There's so many things that have been done in Excel that no one ever thought about. Like the calendar chart that I did with Danny [inaudible 00:18:32] help because the MDX was so hard. The calendar chart I did in that grid that's dynamic, it's crazy, right?.
Rob Collie (00:18:40): No engineers ever sat around and said, "Hey, you know someday someone's going to want to build a calendar chart." No, we pieced together array of functions, cube formulas, conditional formatting, and made this balloon animal that no one ever anticipated.
Ashvini Sharma (00:18:55): Yeah, that's right. And that's what it gets to, right? If you really want to drive adoption, the robes in Excel cause you to align with the soul of Excel, versus using it as a shipping vehicle or a deployment. Because being part of Excel, as you know, there are so many teams that will come across to us and say, "Hey, all I want is a button on the ribbon. Just give me a button on the ribbon. And that's going to solve all my problems."
Ashvini Sharma (00:19:19): Because they look at the reach of what Excel is able to do and the number of users. And it's not right. It doesn't fit, you could do that, but who is going to be using it on adoption perspective. It just doesn't work. If it's completely an island that you're putting inside that context.
Rob Collie (00:19:36): Talking about these Excel robes. I got to ask you, did you take those robes off? Did you leave them on when you were doing that thing called PowerView?
Ashvini Sharma (00:19:44): Oh.
Rob Collie (00:19:48): That's like the shame of the family, right? Like the uncle that you don't want to talk about or whatever, right? Like, "Oh, I forgot all about that. I've purged it from my memory." That was one that didn't really fit in, right?
Ashvini Sharma (00:19:58): Yeah. That's a great example.
Rob Collie (00:19:59): But, it's like a command performance, though, I don't blame you for it. It's one of those things that was going to happen. A lot of valuable lessons were learned.
Ashvini Sharma (00:20:06): Yeah, that's right. By the time I moved to Excel, we had just shipped PowerView into Excel.
Rob Collie (00:20:11): Oh, okay. So you absolutely can't be blamed for it.
Ashvini Sharma (00:20:15): Yeah, no, I inherited it. Last month, I was on a call with somebody from... I'm not doing BI anymore. I'm doing automation, right? I was on a call on a Microsoft conference with some other customer who said, "Hey, could you help me out with some questions?" And they had no idea what my background was.
Ashvini Sharma (00:20:32): We got on a call. And they said, "Maybe you can help me. I have this thing." So he launches Excel. He goes into PowerView, he tries to open the PowerView sheet, "I'm getting this error, you probably know nothing about it. But do you know any way that I could get this working again?" So yeah.
Rob Collie (00:20:48): You're like, "Yes, I supervised the execution."
Ashvini Sharma (00:20:51): Yes.
Rob Collie (00:20:52): Like the guillotine version of execution of that particular functionality.
Ashvini Sharma (00:20:58): Yes.
Rob Collie (00:20:59): We're going to come back to all that stuff, I'm sure. But I have a bad habit of leaving the now in these conversations until the very end. Let's not do that this time. I'm learning. I'm evolving as a podcast host.
Rob Collie (00:21:11): Let's talk about your now. So you said you're involved in automation. Now, I happen to know a thing or two about what you're doing. But let's pretend that I don't. You said you just finished and shipped a v1. I happen to know that that's been out. But tell us about what you've been doing and actually start here. How did it come to be that you were working on it? Let's also make sure we get that.
Ashvini Sharma (00:21:30): Yeah, absolutely. Excel was my first app ever since I was 15 years old. There was some episode that happened, maybe we'll get into it. But Excel was the thing I wanted to work on. Period, end of sentence, yeah?
Ashvini Sharma (00:21:44): And as soon as I came to the Excel team, that was it, I had reached my goal. It's like a dog running off of the car, and then the car stops, you reach it, and then you're like, "Okay, now what? Now what's going to happen?"
Rob Collie (00:21:56): I'm glad you use that metaphor instead of the salmon getting to the end of the stream, and it mates, yes, but then it dies.
Ashvini Sharma (00:22:05): Yeah, thank you.
Rob Collie (00:22:06): We're not going to do that. What really happens is the salmon get to the end of the stream, and they have this gigantic party, this blowout that last 12 hours and then they die. You caught the car.
Ashvini Sharma (00:22:16): Yes. Yeah.
Rob Collie (00:22:18): You didn't want to be the spawning salmon, you wanted to have another act-
Ashvini Sharma (00:22:21): Yes, that's right.
Rob Collie (00:22:22): ... in your story.
Ashvini Sharma (00:22:23): That's exactly right. That's what I was just thinking, "Hey, should I stay at Microsoft? Should I leave Microsoft? What should I be doing?" And BI stuff I'd been in BI since '94. And just a long time to be in one domain. And I thought, "I miss creating something from new again. Let's get into that uncomfortable challenge of, 'Do I still have it? Can I still do it?'"
Ashvini Sharma (00:22:47): What are the new things I could go build, I could go learn and pivot, right? Just move to something different. Pivot is a word that we use, we love pivot.
Rob Collie (00:22:58): That's still in vogue. I feel like we've worn that one out. Within the Microsoft bubble, that's still something that we would use in a meeting.
Ashvini Sharma (00:23:05): It makes me sound pretty cool, actually, when I use the word pivot. So I-
Rob Collie (00:23:09): Really?
Ashvini Sharma (00:23:10): Yes. I have continued to use this word pivot because it's-
Rob Collie (00:23:13): As long as you're not saying the word orthogonal in meetings, that one we draw the line at.
Ashvini Sharma (00:23:19): Yes.
Rob Collie (00:23:20): Do I still have it? Right? Interesting question. Humility, it's a good thing. But from the outside, let me tell you, "Of course you did." When we were younger is when we didn't have it. I just merely had more confidence.
Ashvini Sharma (00:23:36): That's true.
Rob Collie (00:23:38): So you went and looked for something new, you went looking for something. How'd you find it? Did it find you?
Ashvini Sharma (00:23:42): Yeah. So I was talking to various folks across within Microsoft and outside. And there was something interesting in other companies around Seattle, which got me thinking, "Hey, do I want to leave? Do I want to stay here?"
Ashvini Sharma (00:23:55): And at that time, our CEO had taken over Satya, and the breath of fresh air that comes from this guy, and what the culture has happened since then. Unbelievable how just one person can make that much of a difference within a company. And it spoke so much to me personally, about, "This is the culture I want to work in." Then I decided to stay within Microsoft.
Ashvini Sharma (00:24:17): And there was a role of a new team that was just getting started for a new project called robotic process automation, RPA. And I actually thought it was something to do with actual robots, machine flows, and robots moving part, assembling cars. And I thought, "Why is the power platform getting into robots? It makes no sense. Maybe the Azure IoT thing. Maybe that could be interesting."
Ashvini Sharma (00:24:44): But I was talking to the Azure IoT folks about possible roles there. This wasn't something they were aware of. So it was actually software bots that are able to mimic human behavior, and allowing you to automate a lot of these applications that were never designed with automation in mind, where the only way to use those applications is to use the mouse and the keyboard. But now you could have a software, which was used for testing now be applied for automation.
Rob Collie (00:25:11): Yeah, yeah. So the first time we met to talk about your new job, that's how you introduced the topic. You said, "You might remember," what was it? Visual test?
Ashvini Sharma (00:25:20): Yes.
Rob Collie (00:25:21): Or something like that. And it's true, I was a tester for the first, I don't know, year and a half of my Microsoft career. And most of the testing was writing VBA scripts to automate the testing, because most of Microsoft apps have APIs. But even when they do have an API, they don't necessarily have an API for every last little thing. There are some things that the user can do with the mouse and keyboard that isn't necessarily the same, or even possible when you automate it.
Rob Collie (00:25:50): And so this concept of a macro recorder, that would record the clicks and where the mouse was when you clicked and then the keyboard input and all that, and then just play it back as if someone were sitting there. Yeah, I used that as a tester.
Ashvini Sharma (00:26:05): That's exactly it.
Rob Collie (00:26:05): Not a lot, but I did use a little bit of it. So to ground this right off the bat with the audience, the example that everyone listening is going to immediately appreciate is that there are so many places where you're not given data access to the data store.
Rob Collie (00:26:23): Like there's some line of business system that you're using at your company, that's very important. And it's hoarding the data. It's not letting you use it for analysis. It does have the Export to Excel button, because, well, you have to have that. You go out of business as a software company if you don't have the Export to Excel button.
Rob Collie (00:26:44): And now we have Power Query that is amazing at chewing up these export files. But the last mile in this automation process is having to go and click the Export button, save the file, name it the right thing, put it in the right folder before you run a refresh, right? The difference between fully automated, and 99% automated is a world of difference.
Ashvini Sharma (00:27:08): Yeah, that's exactly.
Rob Collie (00:27:10): So the first time you told me about this, what you were working on, I was like, "Oh, holy hell, this is going to rock. We are going to finally, once and for all we're going to vanquish this export problem." We got Power Query, that was a huge part of the problem. It solved a huge part of the problem. But we [inaudible 00:27:28] that lingering export.
Rob Collie (00:27:31): And fast forward to today, I'm interrupting your explanation, but I just want everyone to know, we're already using it. I should show you this afterwards. The statistics, the dashboards we use, the reports that we use to monitor how well the podcast audience how it's working, we're using RPA to run those experts. Because it's a lot of work.
Rob Collie (00:27:50): And by the way, in our case, every day, you have to run an export of every single episode. So we're up to how many episodes now, Luke? Upper 30s, maybe 40. As time goes on, this is becoming more and more labor intensive process. There's no way we would ever, because there's no API, that system that tracks our stats, God bless it, right? It's good at what it does. But it does not give us any programmatic access to the data. We can't pull it, we have to export it, and it is a pain.
Ashvini Sharma (00:28:17): That's right. Yeah, I've heard so many stories from so many customers, right? So here's an example of an airport in Europe that grew. It was a small airport, few compliance requests from them. And they had a few employees. And they were using the same system to use to manage the compliance of have people taking the right training, especially after 9/11, there were a lot more rigorous modules that they need to take for maintaining security on the airport and making sure everybody was compliant.
Ashvini Sharma (00:28:47): And then GDPR came in as well and just a lot of these regulations. And there was a system they were using to generate a report for compliance from a training perspective, where for every employee, this lady was telling me on a call, it took them five minutes for this application, which was working fine before. But the scale at which they were working on took five minutes to generate a report on whether your employees are in compliance or not, and what trainings do they need to take?
Ashvini Sharma (00:29:16): So they had a group of four people whose job it was to generate reports of people five minutes at a time. So that's a lot of coffee breaks, a lot of maybe cigarette breaks as well, just to have the basic expectations from, are your employees compliant or not?
Ashvini Sharma (00:29:35): And then one after another, I was hearing this from so many customers, whether it's oil wells, whether it's just Excel reconciliation for tax purposes. So many scenarios where whatever they got from the software itself was insufficient. They said, "If a robot waits instead of me, that's time I've got for myself." And at that time, there was also this fear about are robots going to take got jobs away?
Ashvini Sharma (00:30:01): And everyone I spoke with say, "You know what? No, please, I will just not feel so far behind anymore if I was able to offload this."
Rob Collie (00:30:11): I mean, the parts of our lives, the parts of our careers that are most robotic, are the places that we should replace. Because the other places, those things take away time from where we can do the things that humans are really good at. We're far better at some things than robots.
Ashvini Sharma (00:30:28): That's right.
Rob Collie (00:30:29): So why not spend a higher percentage of our time on those things? That probably keeps our job. Because the net impact of us being around is so clearly not replaceable. You're in danger of being replaced if what you're doing is clicking those buttons.
Ashvini Sharma (00:30:43): Yeah, that's right.
Rob Collie (00:30:44): That's when you're most at risk.
Ashvini Sharma (00:30:45): That's right. Yeah. Strategic thinking, emotional intelligence, creativity. These are things that, at least so far, they are still the purview of humans.
Rob Collie (00:30:55): So far. That's right.
Ashvini Sharma (00:30:56): Yeah. So the last one I did from an automation perspective is my in laws were looking for COVID vaccines. And they go to sleep pretty early. And they had to stay up in this case at 9:00 p.m., when all the pharmacies around here in Redmond would open up availability for the next day. And it's too late for them, they go to sleep much earlier.
Ashvini Sharma (00:31:15): So I just wrote a bot that launches websites, looks enters in my zip code, and looks for calendar availability. And whenever it found one, just text me saying, "Hey, there's a machine waiting upstairs for you to fill out the rest of this process." So I just go and there's so many of these once you look at an [inaudible 00:31:33], "I don't want to do this manually anymore." There's so many possibilities that open up.
Rob Collie (00:31:38): Well, something's just occurred to me. I think I want to start a side business now. I'm going to get into the ticket scalping business, using your technology, right? I'm going to buy blocks of all the front row tickets at all the concerts, resell them on the secondary market. I mean, you know that the ticket scalpers have had something similar for a very, very, very long time. This democratizes ticket scalping.
Ashvini Sharma (00:32:06): That's what we should put on a marketing website.
Rob Collie (00:32:12): Bury that one in the case studies. Put that way down. But the COVID example is so much better. But it's my twisted brain that goes, "Hey, it's just like the ticket scalpers."
Ashvini Sharma (00:32:26): Wow.
Rob Collie (00:32:28): That's awesome. It's just so hard for me to imagine because I'm so ensconced in this particular world. I try to think of other things I would do with it. And I'm immediately back to exporting the text files, csvs, whatever that then I feed into Power Query to feed into a Power BI. Man, that COVID example is amazing.
Ashvini Sharma (00:32:47): Yeah.
Rob Collie (00:32:48): That's so cool.
Ashvini Sharma (00:32:49): The simple ones, right? Like you and I, I do a lot of presentations these days, most of my time is spent in Outlook or PowerPoint. And just copying pasting slides between decks. It just ends up becoming that your PowerPoint file just balloons, and there are all these slide master in your templates that get copied over from all the sources.
Ashvini Sharma (00:33:08): And that's another tedious thing, "Hey, I only have three slides in my PowerPoint deck. Why is this thing 150 megabytes in size now?" And then, "Okay," the fix for that is go into your site masters, delete one by one, which, "Okay, I don't want to do this." So there's another bot I've got. It goes through and sees which ones are unused and deletes them instead.
Ashvini Sharma (00:33:30): And ideally, the PowerPoint application should provide that out of the box, but until it does, at least I have something I'm not wasting my time.
Rob Collie (00:33:39): What's the official name of the product?
Ashvini Sharma (00:33:40): Yeah, Power Automate Desktop.
Rob Collie (00:33:42): Okay, I like to joke because it's true that Microsoft is really good at building software, and then basically bad at every other thing. And of the things that you want a software company be good at this is the right optimization. But naming [crosstalk 00:33:59] particular, right?
Rob Collie (00:34:00): I mean, I'm still part of this world. And even I'm still treading water, wasn't Power Automate, wasn't there a point in time when that name was being used to describe something else? Or am I just imagining things?
Ashvini Sharma (00:34:15): Power Automate used to be called Flows.
Rob Collie (00:34:17): So Power Automate used to be called Flows? Okay. But Flows didn't have robotic process automation in them.
Ashvini Sharma (00:34:24): That's right.
Rob Collie (00:34:25): Okay, so something very strange has happened here. I know what Flows are, it's workflow orchestration type thing, right? If this, then that type stuff. Okay. But that's not RPA. Somewhere RPA came in and the names got muddled.
Ashvini Sharma (00:34:43): Yeah.
Rob Collie (00:34:44): Think of this not as a criticism, but as an opportunity to clear things up. What is really going on here? The fact that it's called Power Automate Desktop, I fear it hides what's going on in it because that name had some other meaning for a while.
Ashvini Sharma (00:35:00): Yeah, it could be. The reason we call it Power Automate. One was because it was part of the power platform. It used to be called just Microsoft Flows before. And we said, "Hey, it's part of the power platform. And that's why we want to give it a power prefix." You're used to this with Power Pivot.
Rob Collie (00:35:16): It's got to be power. Yeah, I agree. Your first word was chosen. I'm in.
Ashvini Sharma (00:35:19): Yes. And now the automate part, when I was talking to customers about what do they need, they will all these clusters that were forming, they were very distinct, but around automation. There was one around, "I've got modern applications and services." "I want to," as you called it, if this, then that, except for the enterprise with more business logic, more connectors that I could do across Excel, but a new file is added to Dropbox, I want to go send a notification to somebody or add this to a SharePoint folder as well.
Ashvini Sharma (00:35:48): So those kinds of applications, there are these kinds of needs for RPA, which were, "I have an application, a legacy application." It could be my invoicing app, could be my customer management system. It was built as a point solution, not with automation in mind, "I want to automate that."
Ashvini Sharma (00:36:03): There were other ones around document processing, where, "I'm getting a lot of forms coming in. And the forms may have specific structure, but I have humans really going through the forms and transcribing it," what people call swivel chair automation, right? "I'm reading this, I'm transcribing it."
Ashvini Sharma (00:36:19): And we ourselves, Microsoft for a while, until three years back, we were getting all the orders that Microsoft gets through fax machines, through email attachments, through somebody just calling and pick up the phone and say, "Hey, I want to order these many licenses of Windows," or through a website portal.
Ashvini Sharma (00:36:38): And it was just a mess how many channels that we had. And everyone had a good purpose. For healthcare, there's a lot of faxing going on. For governments, a lot of specific ways that they send orders. But there was that document processing scenarios as well.
Ashvini Sharma (00:36:52): And really, the goal that we came up with for automation was to have one holistic platform that's able to span all these different needs, then just the verb automate made sense to just say, "Great, it's a brand." That's why we came up with Power Automate.
Rob Collie (00:37:10): Yes, that totally makes sense to me. The sleight of hand that happened is that in the process, you also added new capabilities that weren't there before. Like a whole class of them. These simulate user mouse and keyboard actions type things from a marketing perspective and an awareness perspective, I wonder if your profile for RPA isn't as high as it would have been otherwise?
Ashvini Sharma (00:37:34): Yeah, it's a good question. Because you could have called it, for example, Power RPA. Because RPA is industry, it's got a buzz. The reason we didn't select that name is because the way RPA is defined traditionally, with this mimicking human behavior, we don't think that's the right way to solve the needs in the long-term.
Ashvini Sharma (00:37:55): So for example, I had one customer, Coca Cola, they have a very simple scenario of waiting for email to show up around the shipments of how many shipments and how many bottles they've shipped out. And what they've got is a desktop Outlook opening up and they had scraping the content from the email, then launching SAP UI and entering in those values. Extract, save as File, Save as into your PDF documents onto the folder in Windows, launching Adobe Reader to then compose all those things together.
Ashvini Sharma (00:38:29): And then launching PowerShell to go call UPS to say, "Hey, what is the shipment status for the shipment IDs?" Which is just, "Yeah, you could do it." That's what the industries-
Rob Collie (00:38:39): Wow.
Ashvini Sharma (00:38:39): ... is called RPA. Right? That's the traditional way of doing it. And when they move to power automate, "Hey, that email waiting, you could just have the cloud do that instead of launching Outlook as your email is probably in the cloud anyways."
Rob Collie (00:38:52): Yeah, you can use for the more event driven, if this, then that, right?
Ashvini Sharma (00:38:56): Yeah. That's right.
Rob Collie (00:38:56): Rather than things that used to not be possible. There's better ways to do some of those things now. And I agree that these two things belong together. I don't think I'm alone in this. But I'm confessing that I kind of miss something.
Ashvini Sharma (00:39:11): Yeah fair enough. I think hopefully, we got credit for moving away from what was in Microsoft SQL Server Analysis Services, 2000 SP1 [crosstalk 00:39:20]-
Rob Collie (00:39:20): R2.
Ashvini Sharma (00:39:20): Yeah. So as we're moving in the right direction, maybe we're not all the way there yet.
Rob Collie (00:39:28): As the absolute apex predator example of that. I remember asking people like, "Oh, which version of PowerPivot did you download? 32 bit or 64 bit?" And they go, "I don't know, because on the Microsoft website, you had to choose between X86 and AMD64."
Rob Collie (00:39:46): It was like, you had to know that X86 was 32 and AMD... "But I'm running an Intel chip." It was the worst thing ever. So many people were mismatching their versions of the downloaded add-in to their copy of Excel because of that.
Ashvini Sharma (00:40:04): That is true.
Rob Collie (00:40:04): The names of the downloads were basically straight off of the build share.
Ashvini Sharma (00:40:08): Yeah, that's right. That's exactly right.
Rob Collie (00:40:10): It was so awful.
Ashvini Sharma (00:40:11): That's exactly right. Yeah. So we do need to continue working on that. I think given the option [inaudible 00:40:16], I've spent so many hours coming up on names for things which are best put in building better software. But to your point, hopefully, that's what we prioritize.
Rob Collie (00:40:25): Again, this isn't a snipe fest, right?
Ashvini Sharma (00:40:27): Sure, yeah.
Rob Collie (00:40:28): I guess mostly, for people who are listening, I want them to know that there's something potentially very, very, very valuable to them, the tiding it's such a different perspective, being outside of Microsoft versus inside is that you tend to have most of your interactions at Microsoft with the community. You tend to have most of interaction with the people who have part of their job or their self-identity almost, is to have an encyclopedic knowledge of all the things you've announced.
Rob Collie (00:40:54): And you end up thinking at Microsoft that the community is completely aware of everything that's going on. Let me tell you, no. Because I don't have that particular need, for example, as much of former insider as you can be, and I get all kinds of lost, because I don't sit there refreshing all the websites watching the news and everything. I'm doing other things. So I absolutely fall out of the loop.
Rob Collie (00:41:22): Now, the other thing about the name is interesting is that it's Power Automate Desktop. So I'm going to ask you a dumb question. Does that mean that my scripts only run on the desktop?
Ashvini Sharma (00:41:32): Yeah, so you can define scripts to run either in the cloud or the desktop. Sometimes the applications that you want to automate are just on your desktop. They're not in the cloud.
Rob Collie (00:41:42): That's right.
Ashvini Sharma (00:41:42): So your desktop application, right? Or it could be Java apps from age old, could be just even in modern applications, but there are no APIs available, so you want to go, or websites that you want to navigate through, in which case, you have to launch a browser to go do that.
Ashvini Sharma (00:41:56): So yes, there are two types of flows. One of them is a cloud flow. The other one is a desktop flow. And a cloud flow can call a desktop flow. So if you want it to go do something in the cloud, for most, when a new email shows up, I want to go process the PDF. And then when I've extracted the data, then I want to go launch a desktop application to go enter it in.
Ashvini Sharma (00:42:17): And then go back to the cloud for some decision that needs to be made, for example, a team's call that needs to be made for invoice that came in and said, "Okay, do you want to approve this invoice or not?" It could do all that in the cloud when somebody says, "Yes, approve it," then I could go launch a desktop application automation to go into that end.
Rob Collie (00:42:37): For the desktop sides of the flows, do you see a lot of customers with dedicated Azure virtual machines, virtual desktops in that role?
Ashvini Sharma (00:42:46): Yeah. So I see both. There are two cases one of them is called attended automation. The other one is unattended automation.
Rob Collie (00:42:52): Now we've got cloud and desktop, attended and undetermined. I want to make sure that we've, you know. I can I have, is it a two by two matrix or a cloud, by definition unattended?
Ashvini Sharma (00:43:01): Yeah, cloud by definition unattended.
Rob Collie (00:43:03): Okay, so we have three [inaudible 00:43:04] now. Okay.
Ashvini Sharma (00:43:05): That's right.
Rob Collie (00:43:05): All right.
Ashvini Sharma (00:43:05): I mean, the things like the COVID vaccine, for example, he was running, finding the right COVID-19 slot on the website.
Rob Collie (00:43:15): We're not going to suggest that RPA created the COVID vaccine, that's not-
Ashvini Sharma (00:43:19): You never know.
Rob Collie (00:43:19): You never know.
Ashvini Sharma (00:43:20): You never know. As you know what? There are things that Excel was used for.
Rob Collie (00:43:26): Hey, these mRNA vaccines, RPA, RNA, it's pretty close. I'm just saying.
Ashvini Sharma (00:43:35): There's an R in both of them. There's an A in both of them.
Rob Collie (00:43:37): And it ends in A, there's a ladder in between.
Ashvini Sharma (00:43:42): That's right.
Rob Collie (00:43:42): And it's a consonant in between, from the middle of the alphabet.
Ashvini Sharma (00:43:46): Yes, there we go. You never know. But yeah, RPA for desktop automation, you could be sitting in front of the machine. And doing what's called attended automation, it's just accelerating your work. Or it could be completely backend like the, "I want to generate reports," like you do for your podcast that could be done completely without any human oversight, where a bot logs onto a machine pretends to be the person logging on, does the interactions and then sends you the result at the end. So both of them.
Rob Collie (00:44:14): I'm trying to find that crystal and boundary between what can run cloud and what can run desktop. So I'm going to give you a really very focused test case. I'm assuming so many things are very clearly cloud, right? The if this, then that type stuff waiting on an O365 email to appear, for instance, right?
Rob Collie (00:44:34): Seems like a wonderful cloud thing, right? Versus in Outlook, automating the formatting of the text of a message. I'm sure you can do that in the web version as well. But there's no APIs necessarily for that. So, you're actually highlighting text and clicking the bold button that probably lean more desktop, right?
Ashvini Sharma (00:44:51): Mm-hmm (affirmative).
Rob Collie (00:44:52): Going to a web page and filling in a form and pressing submit, seems like one that if you're really wanting to get aggressive about it, you could probably do that on the cloud as a technology platform. Have you gotten that far?
Ashvini Sharma (00:45:06): Great question. Maybe you should come back to Microsoft. I don't know-
Rob Collie (00:45:09): Well, I hear that as we age, we might not still have it anymore.
Ashvini Sharma (00:45:14): No humility, Rob being... You do. You just need the confidence maybe.
Rob Collie (00:45:24): If I say humility isn't my strong suit, am I being humble? I don't understand. To be perfectly honest, I think you're never done on this journey. But oh, my God, have I come into a sharper picture of what I'm actually capable of and what I'm not. Humility comes from gut punches and failure.
Rob Collie (00:45:43): And I've had a lot more adversity, plowing the rapids in a canoe out here versus being on the big ship. Now, not to say that being on the big ship at Microsoft was easy either, I struggled in a number of ways as well.
Ashvini Sharma (00:46:12): And a lot of the scenarios, go span websites and other applications on the desktop as well. So from a scenario perspective, it ends up being that desktop makes sense. But there are some cases where absolutely, you should be able to offload that completely into the cloud, where we could provision a desktop session with inside a sandbox where you could go execute. And yeah, we're looking at doing that very soon.
Rob Collie (00:46:37): It's one of those things that if it weren't for the demand being so high, it would be the last thing that a software development team would want to take on. A software team wants a strong dependency on a browser DOM object, it wants a hole in the head. I mean, all those little rendering differences between browsers, and now you have to pick a horse in that race that is a moving target, because that thing can't sit still.
Ashvini Sharma (00:47:06): That's right. That's exactly right.
Rob Collie (00:47:08): I mean, I think I'm still run into occasionally recently certain websites that are like, "Oh, no, we need internet explorer version X or lower, or we won't run." It's like, "Oh, my God."
Ashvini Sharma (00:47:18): Yeah, we had to add, IE support recently, for some company, that they just have a bunch of these systems that only work on the older versions of IE.
Rob Collie (00:47:28): So was this a complete build from scratch, the RPA? Was there any existing code base that you got to start from or did you take the opportunity to start clean slate?
Ashvini Sharma (00:47:37): Great question. So when I started in, this was February of 2019, I was given two jobs. One was to build it. The other one was to investigate acquisitions. And we were not sure if the acquisition would go through. And therefore, we had to win at all costs. We had to get a product that was usable, that delivered value for customers in the short-term. And this was in-
Rob Collie (00:48:01): You see how he did it there, folks? "We had to win at all costs." And then he immediately start saying all the positives, "Oh, deliver value for customers." As opposed to, "We were going to crush them."
Ashvini Sharma (00:48:13): We don't crush things anymore.
Rob Collie (00:48:16): No, definitely not. It's not just idle talk, right? It is definitely a kinder, gentler Microsoft than I remember. I mean, for sure.
Ashvini Sharma (00:48:25): Yes, it is still aggressive, gentler, but aggressive.
Rob Collie (00:48:27): Business and competition always is and the environment you work in, is something else. I described Microsoft to people as imagine going around and finding all the people, all the youngsters who think they're the smartest person in the world erroneously. And then put them all in one place and watch the identity crises.
Rob Collie (00:48:52): I mean, it's competitive internally, right? Because, everywhere you go, you're finding someone that... I tell people, "I went to Microsoft, and I met the people who I thought I was."
Ashvini Sharma (00:49:03): Interesting.
Rob Collie (00:49:03): That was a tough, multi year come to Jesus, you know. But yeah, so competitive, win at all costs.
Ashvini Sharma (00:49:11): Yeah. So we ended up building something that we released in, I think it was September of 2019. We released a preview of that, from nothing. There was zero lines of code that existed in February of 2019.
Ashvini Sharma (00:49:25): And as part of doing that, we ended up taking a lot of dependencies on other parts of Microsoft as well, whether it was the data gateway as the way to connect from the cloud to the desktop, which was already part of the power platform already familiar to a lot of power platform users. Or it was some testing harness that the windows people had built for Windows automation for applications, or Selenium as an open source project that had a lot of depth on automating websites.
Ashvini Sharma (00:49:55): And really creating that end to end experience around it that extended Flow to become Power Automate is what we announced in September. And in May of 2020, just May of last year, we announced also the acquisition of a different company Softomotive. And they had been doing RPA for 15 years. Of course, as I was building it, I couldn't share with the folks that we were looking at an acquisition as well. So I essentially had two jobs for a while.
Rob Collie (00:50:24): That's the worst, long running secrets that you have to keep. Boy, those are tough.
Ashvini Sharma (00:50:32): Yeah. Especially for people like we are transparent, we are authentic. We want-
Rob Collie (00:50:35): Yeah.
Ashvini Sharma (00:50:36): ... to be open.
Rob Collie (00:50:37): It takes an enormous toll. How long would you have to coexist like that in two different roles?
Ashvini Sharma (00:50:42): Since March of 2019 until May of 2020, about a year.
Rob Collie (00:50:47): Oh, that's a long time. That had to be really, really, that had taken, like I said, a serious toll. I can't imagine. I describe secrets as information that transmits pairwise, as opposed to in broadcast form.
Rob Collie (00:51:01): The hidden joke there is that you think that you describe secrets as information that doesn't transmit, But what really happens is, is that it just transmits one to one.
Ashvini Sharma (00:51:09): Yeah, that's right.
Rob Collie (00:51:12): Secrets do not stay secret, right? I'm not going to force you to recount any stories like this. But here's my expectation of how this happens for you over that year. You find yourself repeatedly in situations where in order to be a good professional, forget human for a moment, just even to be a good reptilian professional, you would have to let someone in on the secret, okay, remember, you don't have to confirm or deny. I'm just describing to you what I would expect to happen in that situation, right?
Rob Collie (00:51:42): Again, the hypothetical version of this software engineering leader does that because you have to be a good professional. And then on top of that, there's the good human, which is also weighing on you. And so what happens is, is that eventually, you end up with a population of people that know what's going on. But they can't talk to each other about it. Because, again, this information spread pairwise.
Rob Collie (00:52:04): But of course, the manager of this hypothetical software engineering leader has to live the lie, that this is still a secret. At Microsoft, I've been in so many situations like that. And I've gotten in trouble for doing the right thing. It's just the worst. I'm sorry.
Ashvini Sharma (00:52:24): Yeah, no, it was not easy, man. It was just one of the hardest things we've done as leaders is not being able to be transparent with people, especially on what they're working on. And on you know on this plan, on this arc, that you've got, in your head, this hypothetical arc, which may happen, may not happen, but what they're working on today may not be as relevant on the arc, which it does happen. But you still have to be ready either way that it doesn't happen. So you still push through.
Ashvini Sharma (00:52:55): Hats off to people on the team also, for the maturity it takes. It just takes a lot of just awareness and being okay with being focused on the business results. You and I have been engineer, have built software, and I just put my heart and soul into that. And to be able to then wake up one day and say, "Everything I did hard work on for the last year is getting superseded by something else that we've just acquired," just can have a deflating impact on your morale as well.
Ashvini Sharma (00:53:24): But yeah, really how the team came together has been just phenomenal of the maturity that it takes to get through that on to the other side, where you're now not just accommodating or tolerating this new team that's come in, but you are advocating on their behalf, you're helping them get on ramp, you're helping them get more effective. So just this mental jiu jitsu that it takes is, is just phenomenal.
Rob Collie (00:53:50): Well, I believe that in a situation like that, there aren't many people that I can imagine doing a better job of shepherding that sort of thing than you. Again, that sincerity and authenticity that you bring. And this is the awkward part of the conversation where I compliment the guest and they have to squirm. But combined with you're not very cynical, either.
Rob Collie (00:54:10): I think I'm all those things I just described you guys, but I'm also cynical. I think I pick you over me for that job, you know. I'd be like, "Hey, you know everybody. Yeah, this is how it works sometimes. Let's move on."
Rob Collie (00:54:34): Yeah, so how does that work? Is the acquisition a total platform replacement for the things you've been building from scratch or was it a complete superset? Or is it a overlapping Venn diagram?
Ashvini Sharma (00:54:44): It's a Venn diagram. So a lot of the work that we did, because the acquisition was not a cloud service either. And what we had done was build an integrated offering into the cloud service and extend the cloud service to also reach your desktop. Which is exactly what... So we use the gateway, we use the storage in the service, we use the whole identity, the governance model, the application lifecycle management, the reporting all that that we built for version one, we ended up reusing that with version two as well, except for version two now the desktop components for actually automating those applications were 15 years battle tested.
Ashvini Sharma (00:55:25): So we picked and chose the best parts of both the architecture. So it wasn't a complete throw away. It was a evolution really, of some components of what we had built. We were then able to replace that with something that's been around for a while.
Rob Collie (00:55:40): Hey, I think maybe we're going to start a new segment here. We're going to call it N questions because we don't know how many. Luke, we need the sound effect for this something like dada, something like that. Are you ready? N questions.
Ashvini Sharma (00:55:55): Oh, boy.
Rob Collie (00:55:56): All right. Question number one. How do I get started with Power Automate Desktop? Download it, I'm sure. Where do I go?
Ashvini Sharma (00:56:03): Yeah, just search for Power Automate Desktop. You find the first page hopefully is that and you click on download free. If you are on Windows Insider Builds already for Windows 11. It is part of Windows 11.
Rob Collie (00:56:17): Oh, it's on the start menu?
Ashvini Sharma (00:56:18): Yeah. So you just go to Start Menu search for Power Automate. To simplify the name, we now call it just Power Automate, not Power Automate Desktop. [crosstalk 00:56:26].
Rob Collie (00:56:26): Okay, let's go.
Ashvini Sharma (00:56:27): You just search Power Automate, and you'll see it and inside of builds.
Rob Collie (00:56:31): I mean, it's just fun. You just changed the names of things. I mean, they get better. They're just not the same as what they were. So now I'm looking at Power Automate, am I going, "Oh, it's just the same thing. I'm looking for desktop." Anyway. Remember, this is the guy who tried to rename pivot tables talking to you. Okay. I'm sinner in this game, not a saint.
Rob Collie (00:56:52): Question two, learning curve or learning cliff? Does the question make sense?
Ashvini Sharma (00:56:57): Yeah, it does. I think within Power Automate Desktop, there is a very simple, like you said, the macro recorder that we had back in visual test, when you start a recorder, it records all the interactions that you're doing, and you could replay back.
Ashvini Sharma (00:57:11): So for many scenarios, that itself is sufficient that I just want to do repetitive. I don't want to do this manually again. So for that one, it's a learning curve. If you wanted to go build automation around SAP, or this is enterprise class software, and you want to do error handling and retries, then it ends up becoming more of a steeper curve that you end up going on.
Ashvini Sharma (00:57:34): As you know, we try to simplify it as time goes on to make it more and more approachable, especially now there is shipping with Windows 11 insiders, and this just accessible by a broader set of population will continue to make it more approachable and a simpler experience as much as possible.
Rob Collie (00:57:52): Okay, you know the classic example for us in our world is MDX learning cliff, DAX learning curve.
Ashvini Sharma (00:57:59): Yes. Yeah, this is closer to DAX than it has to MDX for sure.
Rob Collie (00:58:05): Excellent. And macro recorder, oh, there is nothing better than a macro recorder. I mean, hell, even just learning the Excel object model back in the day. I don't know what number of color red is. I'm sure as hell not going to go look it up in some reference, when I can just record a macro and go look at the code. I've never looked at the code. So I don't really know what after you run the macro recorder, can I go and then use that as a basis to start editing?
Ashvini Sharma (00:58:33): Yeah.
Rob Collie (00:58:33): Okay.
Ashvini Sharma (00:58:34): Yeah, absolutely.
Rob Collie (00:58:35): That's the right kind of macro recorder. What do you think? What I understand it, I don't understand em. I can't read em, em it's almost like it's written right to left to me or something. It just bypasses my brain. I can do VBA.
Ashvini Sharma (00:58:47): Yeah, if you like VBA, you would be at home here. Because really the operations here are click button, enter value. Logically, they make sense. And you can put them inside constructs loops that if you're in VBA, you understand, okay, there's a loop, there's a variable, I could loop over these things. Or I could read from a table, from a website. So they interact or add a row in Excel.
Ashvini Sharma (00:59:12): So they're supposed to be semantically just what you do is what you get at the end of the day, from a scripting perspective. And then you can go change that.
Rob Collie (00:59:21): That sounds good. So I think my second career of taking over the ticket scalping industry, there's still hope for me. Question three. If I've got a website with one of those captures that's got a checkbox that says, "I'm not a robot," and I click that checkbox using Power Automate, does it work?
Ashvini Sharma (00:59:41): You will create a fissure in reality as you know what space time continuum will stop and you will be in multiverse at this point.
Rob Collie (00:59:50): And it's already happened millions of times, so you and I aren't even the same people anymore.
Ashvini Sharma (00:59:55): No, we're not. The last second Ash and Rob are completely different.
Rob Collie (01:00:00): Yeah.
Ashvini Sharma (01:00:01): That's exactly right. You know there are some folks that are trying to fool capture through automation as well. And they have built these models that they want to invoke through Power Automate, and they're able to, that's really a strange war that's going on between the, "Are you human? Are you not a human?"
Rob Collie (01:00:20): Oh, yeah. And it's such a losing battle. I've scrupulously avoided ever researching what value or what mechanisms are used by the capture that's just the checkbox. Because I like the mystery of it. It's so dumb. How could it ever know that this was truly a human initiated mouse input as opposed to some script.
Rob Collie (01:00:45): I suppose what it does is that that checkbox isn't addressable by the browser object model, or it's not addressable via the document object model. But as soon as you've got something like RPA, that is literally driving the mouse input, how can the check box, do anything for you?
Ashvini Sharma (01:01:03): Yeah, what do you see is they've got smarter, not them, as in the validators of are you human gets smarter, you see the software getting smarter. I see that whole thing over and over again.
Rob Collie (01:01:15): And so the problem I'm getting into is that the captures that aren't checkboxes, the ones that require you to stare at an image, those are getting harder and harder for humans to solve. It's reaching the point where the scripts don't even need to get better because the humans are going to be so poor at this, that they're no longer valuable. Select every square that has a crosswalk in it, right?
Rob Collie (01:01:42): Okay, there's a little corner of the crosswalk in that square. I'm not as worried about that as I used to be, because now I realized that they're just taking some probabilistic model, you can select three or four of those squares, and it'll let you through either way. Remember, some of those jumbles of letters.
Ashvini Sharma (01:01:58): Yeah. It was so hard to read.
Rob Collie (01:02:00): I can't tell if that's an X or a Y. It's so obscure. The arms race here is an infinite because human beings have a fixed set of capabilities and the software doesn't. So I just think we're approaching the heat death of the universe since we're approaching the point in the near future, if we're not already there, where captures are worthless.
Ashvini Sharma (01:02:20): Some other website, I forget which one it was, was there's an icon that you had to keep rotating until it got the right side up. And depending on what that image was, it was a pig, it was a car, it was a plane, there was a right side up that a person could understand this is how it should be, which is harder so far for the software to do.
Rob Collie (01:02:40): If it's a 3D picture, I bet the software can get really good at it very quickly, just by perspective alone, right? So then you got to go 2D completely flat. It's just computing power keeps getting cheaper. Increasingly, it's GPUs being used to solve these problems, it's just raw horsepower.
Rob Collie (01:03:03): But anyway, so you heard it here, folks, if you want to get around the checkbox captures, Ash has you covered.
Ashvini Sharma (01:03:09): Just be careful, with great power comes great responsibility.
Rob Collie (01:03:12): That's right. Well, listen, if you want Pearl Jam tickets this summer, you're going to have to come through me. I picked them deliberately because they're the most anti Ticketmaster scalpers are kryptonite, to Pearl Jam.
Rob Collie (01:03:28): Question four, we talked earlier about being the steward of Excel and wearing the Excel robes. And everyone coming to you, everyone in the entire Microsoft ecosystem and sometimes from outside that ecosystem, just begging to have their billboard placed in Excel, "If you just give me a button on the ribbon."
Rob Collie (01:03:46): By the way, that was one of my jobs, too when I was on Excel was saying no to all that stuff. Right?
Ashvini Sharma (01:03:51): Yes.
Rob Collie (01:03:52): Because if we don't end up like a tourist trap. Now that you're Power Automate, are you tempted to go to Excel and ask them for a button?
Ashvini Sharma (01:04:00): Absolutely. Are you kidding me? Absolutely. Yeah, in fact, we have a button on there. But the trick for Excel side is to do it in a way that fits with Excel. That's the key. If you're just going to jam something in for the distribution, nobody is going to benefit from that. It's just going to be a maintenance headache from that point on. But if you do it in a way that delivers value to Excel users, awesome, now you've unlocked the composition and the magic of Excel, and now everything can work together.
Ashvini Sharma (01:04:34): So in the case of Power Automate, for example, I have a list of these potential podcasts. Anytime a new row is added, I want to go send off a approval to you saying, "Hey, this is an idea that came in, should we go approve this or not?" And then go out and coordinate that interaction with whoever that podcast speaker is. What time's work for you or not.
Ashvini Sharma (01:04:55): That could be a Power Automate automation that you've defined of doing that tedious work of interactions and finding the right time slot. But what you could do is invoke it from the context of that row in Excel. If my rows are the webcast potential, I can go kick off an automation and say, "Okay, great."
Ashvini Sharma (01:05:12): Now, within this context, you taking that magic of the grid, and you're passing it over into the automation. And the automation can then write back into that grid as well. And now your charts get updated, your formulas get updated, your calendar gets updated if you have those calendar on your grid.
Ashvini Sharma (01:05:28): So that's really the, if you come at it from that perspective of adding value to the Excel users, then Excel is all open arms.
Rob Collie (01:05:36): Think about Excel has web query, which I think is now being relatively superseded by Power Query's capabilities. But I mean, if you think about that, as a mission that Excel found valuable, even before Power Query came along, you're kind of real pigeonholing of your platform. But it's just one example. Flexible, dynamic web query. It's web query with some conditional control, which is a big deal, you know.
Ashvini Sharma (01:06:03): Or workflows, right? Just-
Rob Collie (01:06:04): Yeah.
Ashvini Sharma (01:06:04): ... like a SharePoint, that used to be workflows, and now integrating workflows in the work that you do within Excel, that's a great integration.
Rob Collie (01:06:12): So did you say you already have a button in Excel?
Ashvini Sharma (01:06:14): Yeah, on data, on the right hand side, I don't know if you see it. On the right most there should be an automation. It's available as an add-in to excel. That's probably what I did, is went through, get add-in and add flow.
Rob Collie (01:06:28): So your day of going into the star chamber hat in hand, saying, "Hey, Excel, I'd love a button. This in the core product is just sitting there waiting, it's there, by default," you're going to have to someday come to terms of whether or not you're going to be that guy.
Ashvini Sharma (01:06:44): Yes.
Rob Collie (01:06:48): The one that you've made a habit of saying no to because you had to.
Ashvini Sharma (01:06:51): Yes. But you know what is going to happen to the Excel team is going to come to me. And say-
Rob Collie (01:06:55): Oh, yeah. They're going to beg you for it. And you're going to say, "Yes, well, I suppose if you kiss the ring, we'll let you have the button."
Ashvini Sharma (01:07:08): I'm wearing different robes now. Yes.
Rob Collie (01:07:13): After they climb the 999 steps up to your-
Ashvini Sharma (01:07:19): That's right.
Rob Collie (01:07:19): ... mountain retreat. Yeah, covered a lot of ground. Ash, I want to go automate the Export to Excel, the CSV files or whatever from a website and save those things, save those files to Dropbox or OneDrive through Windows Explorer, so that my Power BI can pick up the refresh.
Rob Collie (01:07:41): Can we just at a high level discuss how we would go about that, because I think that'll be the number one hello world type usage that would hook for good reason for need a lot of people who are listening to this.
Ashvini Sharma (01:07:53): Yeah, so the way you'd start that is to start Power Automate Desktop, after you've downloaded it, start the recorder from the toolbar, and then start your actions. So you will go through, you log into your website, you may click different filters in Power BI, and will start recording all those filters as well. You'd go in and you click the button to export to Excel, where something will come up. When you say save, record that as well.
Ashvini Sharma (01:08:21): Then, depending on where you wanted to save, you'll select the right folder in Windows. And yeah, it really is as simple as that. And once you have that script on your hand, then you could ask it to be scheduled and run from an unattended case.
Ashvini Sharma (01:08:38): In that case, you bridge it from the cloud flow to desktop flow, if you just want it to happen unattended. Or you could just go in and you just hit play every time you want to do it and watch it do its thing. Because sometimes your websites may send a two factor auth for you to log on. And we're not there yet from 2FA. And what do you want is the automation waiting for you to go click something, and then come back. So, yeah, you could do that.
Rob Collie (01:09:05): Or in Microsoft's case, it's I call it the two by six FA, right? All of my apps on my computer all decide at the same time to pop the same dialog. And it's the same size. And they stack over to top of each other. I have no idea which code goes with which window and which window ties to which app. I think that's getting better, but for a while there I was just like, "Oh, come on."
Rob Collie (01:09:29): So yeah, I mean, Microsoft 2FA is going to be, that's the pinnacle, when you can get through that. So one of the hardest things about that export process. With our podcast every week. We've had a bit of a sabbatical. We're resuming now, but every week we get a new podcast.
Rob Collie (01:09:49): So even the list of downloads is itself has to be a bit of a loop. Our script has to click every one of these links, and it's not the same set of links each week. It's different. Now, the good news for us is that each time each export is the name of that episode, dot CSV or whatever. And we can just do a Save and an overwrite.
Rob Collie (01:10:10): But sometimes people have to do things like the selections that they made in the UI, need to be fed into the name of the file. The classic example of this is that you've got a website that will export you the data with the export button, but I won't give it to you all at once. You've got six different geographies, and it only give you one at a time.
Rob Collie (01:10:30): Now, I suppose in that case, if it's the same six, every time you just drop the drop down in your script, you just hard code the name of that geography, but then it gets harder, right?
Ashvini Sharma (01:10:40): Yeah. You end up doing very similar to programming in VBA, as you said. There is the explicit, "Just repeat what I did." And then there's the dynamic, "Repeat kind of what I did, but with different data," and that dynamic so you would end up going down to the path of creating variables that you populate off looping constructs of if this, then that logic that you could embed. So yeah, you could just express arbitrary control flow in there as well.
Rob Collie (01:11:09): So the good news with this is that I think the number of high level categories of this from an export perspective is relatively finite. I don't think there's that many completely different classes of this naming problem. And of course, the names are important, because the names of the files are often used to reconstruct additional columns in the data, right?
Rob Collie (01:11:34): If you export geography six, you're looking at geography six, it's on the screens. So when you do the export, they don't bother to put geography six column in the data for you. You've got to extract that back out from the file [crosstalk 01:11:45].
Ashvini Sharma (01:11:45): That's right.
Rob Collie (01:11:45): If you don't save the file name, you've lost data. I bet that a relatively small gallery of samples can be built for this as just a community thing. Maybe you've already done it, there's no those examples of thinking you have an original idea.
Ashvini Sharma (01:12:03): No, that's a great example. And I think what we hear from many customers is the tools that they're going after are going after the same people that are using Power BI Desktop, want to use automation as well, or maybe using alteryx. It's in that same the mental space, or competency from a person perspective.
Ashvini Sharma (01:12:21): They can reason with data, they understand a little bit of coding as well. They're not intimidated by VBA. So for those kinds of people that internally, we'd call them citizen developers or citizen analysts. Those are the ones that are ripe for spanning a bunch of these different tools and stitching them together, which from an upscaling perspective and training perspective also, we're looking at how do we create learning paths that span these, because there's so much affinity between them and people's need.
Ashvini Sharma (01:12:52): So they're typically in finance, Excel workbooks, you're working so much on reconciling your Excel models or data, or you're in Power BI, and you're trying to understand make heads or tails of it. And usually you want to go send that over an email on a repetitive basis, after you've exported and formatted just the right way.
Ashvini Sharma (01:13:11): So there are a lot of these cases that affinities together, we haven't yet created a learning path that spans them, but that's definitely something that keeps coming up from customers.
Rob Collie (01:13:20): Okay, so what's next for Power Automate?
Ashvini Sharma (01:13:24): Yeah, when we talk to a customer, there's so much more, man. You know it reminds me off where BI was a long time back, where you remember, we had the corporate BI, where there's specialists that could do it. And there was a whole push of self service BI, where anybody could do it on their own. But you want to do it the manage self service way, which is it's controlled, it's governed, there are rules in place for data exfiltration, and just protecting your assets.
Ashvini Sharma (01:13:48): Similarly, this is the same playbook that's happening on the automation side.
Rob Collie (01:13:52): I agree.
Ashvini Sharma (01:13:53): Yeah, professionals building automation. It's still not simple enough, we need to continue making it radically simple. Power Automate Desktop is our first foray into that radical simplification, with a recording like approach, we continue to make that simpler, and make sure we can provide that in the context of governance, where you could do manage automation at scale within enterprises.
Ashvini Sharma (01:14:13): This is especially as it gets wider adoption from a democratization perspective, you need those controls in place to be able to do that. So that's really the simplification, while balancing control and oversight. That's the push that we're on now.
Rob Collie (01:14:28): Let me share a perspective with you that I've been developing for myself. It's a story that I've been slowly discovering, slash telling, I don't know, writing. You say what's your reaction to it is.
Rob Collie (01:14:38): So if you think about the business world, as non-negotiably made up of, they call it best of breed, but it's really just random grab bag, what you bought at point in time X, right? You've got all these line of business systems, all these silos and best of breed as a joke, right? Whatever, we'll call it best of breed so that everyone feels good about the decisions that they made five years ago and everything.
Rob Collie (01:15:04): But every one set of line of business software is completely unique. And then that's even ignoring all the customizations that you make within like no two SAP installations are the same.
Ashvini Sharma (01:15:17): They are acquisitions that you do, right?
Rob Collie (01:15:19): Right, yeah. You buy... So many companies we've discovered-
Ashvini Sharma (01:15:21): That's right.
Rob Collie (01:15:21): ... are actually 30 companies, Russian doll inside one another, and Venn diagrams and everything, what all those decisions were originally times 30. So there's just this lightning bolt moment hit me recently, which is, "Oh, BI. Power BI, in particular, is a form of middleware," it's spanning these systems, it's read only middleware. Because so much of what we do, so much of the value that we provide to our clients is that for the first time ever, they can actually see across their entire business.
Rob Collie (01:15:57): You can see for the first time ever, nothing's more magical, right? Okay. But then I'm watching the rest of what Microsoft is doing people like yourself, right? And I'm like, "Oh, look at that. It's read write middleware. It's transactional middleware," that typically operates one record at a time or small number of records.
Rob Collie (01:16:15): And as an industry, we're finally coming to terms with the fact that, first of all, no one vendor dominates, everyone's got a completely custom set of stuff. And to be truly nimble and truly viable, you have to integrate. And that doesn't mean making these systems talk to each other, that doesn't mean squishing them all together into one line of business system to rule them all. Because even if you did, it would just be different modules within that system that then didn't talk to each other effectively, right?
Rob Collie (01:16:44): All of the glue, all the meaningful glue is going to be just completely custom. We could use the word bespoke to sound cooler. And Power BI and the broader power platform. I ran this by Arun and others. Is this the grand plan? And it sure seems like it is. It's like the second and third age of middleware, right?
Rob Collie (01:17:05): We're finally coming of age in this space, and it necessarily has to be those citizen developers, it has to be the people in the trenches. If you wait for IT to do all of this, they're going to have to go educate themselves an entire career lights on what's actually going on in these spaces, and why these little nuances are important to everything. And so of course, you're going to need the citizens that are out there embedded in the business, they're going to be contributing. I think it's a beautiful story that's evolving here.
Ashvini Sharma (01:17:32): Yeah, you're absolutely right. One of our customers has five million lines of automation. When you think back to Windows NT, it used to have in the early 90s, it was five million lines of code. And now if you think about an organization, this is the operating system for your business, created one automation at a time by thousands of people working across this mess in heterogeneous or what we call applications that surround us, business apps.
Ashvini Sharma (01:18:07): And it is necessary for the organization to move forward faster, because otherwise, you end up having to do all those piece by piece integrations by yourself that just takes a while. But it really is this emergence of the glue, as you said, whether it's understanding what's happening from the data part, or whether it's acting on what's happening from an automation perspective. You're absolutely right, there is value for an organization to acknowledge this helps them move faster. That's exactly right.
Rob Collie (01:18:41): I'll just say that. This is one of those things as a trained and experienced Microsoft observer. This sort of initiative, this sort of ambition is a perfect sweet spot for someone like Microsoft. I cannot imagine any other software company coming even close to competing with you all on this. It's lights out. Salesforce, trying to be the nervous system for your business. Mm-hmm (affirmative).
Rob Collie (01:19:11): Well, okay. It's going to take a while. But Microsoft is coming and I don't have any doubts, who's going to win in this competition. So especially people like Ashvini Sharma. What a way to close.
Rob Collie (01:19:26): Well, sir, this was a real pleasure.
Ashvini Sharma (01:19:28): Likewise, Rob, I really appreciate it.
Rob Collie (01:19:31): Thanks for listening to the Raw Data by P3 Adaptive Podcast. Let the experts at P3 Adaptive help your business. Just go to p3adaptive.com. Have a data day.
Sign up to receive email updates
Enter your name and email address below and I'll send you periodic updates about the podcast.