Can We Trust AI Pipelines – Ep.548
Bad code you write yourself errors out. Bad code an agent writes runs cleanly, comments itself thoroughly, and quietly duplicates every row on your fact table. That difference is the whole episode: how AI pipelines fail, why it isn’t really the agent being wrong, and what process catches it.
News & Announcements
-
Skill Vault — Tommy finally built the thing he’s been complaining about for weeks. A central place to manage agent skills so the same set follows you across machines — his PC and his Surface — and across repos on one machine. It also packages a skill as a zip for quick loading into Claude Desktop, which resolves skills by account rather than location. Mike has it running permanently.
-
Bringing Power BI insights to every Copilot user — Copilot can now query Power BI directly, with answers computed through the semantic model’s business logic, and you only need an M365 Copilot license. Copilot co-work does multi-step analysis and turns Power BI insights into emails, agendas, and action items — extensible with custom skills and plugins, and billed pay-as-you-go rather than a flat fee. It’s in preview.
-
Power BI July 2026 feature summary — Modern visual defaults in preview let you customize the current theme straight from the format pane instead of digging into the view ribbon. Organizational apps also reach GA, which fixes the long-standing complaint about one report needing to live in several apps.
-
Liar liar: what to do when AI writes your pipelines confidently wrong — Nikola Ilic’s article, and the main topic.
Main Discussion
Topic: How AI-written data engineering fails, and the process that catches it
-
AI code fails politely. No exceptions, no broken build, no red squiggles. It executes, the lakehouse fills with data, the Spark looks reasonable, the date handling is correct — and the numbers are wrong.
-
It even documents its reasoning. The generated code carries generous comments explaining exactly what it did and why it thought that was right. Which makes the wrongness harder to spot, not easier.
-
Mike’s own example. An
IsActiveflag deactivating old records and activating new ones for the same content. He needed only the most recent record; the agent added every row. It didn’t know, because he never told it. -
The slowly changing dimension trap. Join merchant to transaction correctly and you can still multiply rows if merchant is an SCD. The agent doesn’t know that. And, as Tommy puts it, that isn’t the agent being wrong — it’s missing knowledge.
-
Specify precisely. Nikola’s first prescription. The duplicate-row failure came down to an unstated join condition. Precision in the requirement is the fix.
-
Bound aggressively, then validate ruthlessly. Tell the agent the expected shape up front — after this join the row count should match the source — and have it write a test for that. Mike’s summary: describe your expectation as the work happens.
-
Break early, not late. Catch the wrong assumption before the agent stacks another hundred lines on top of it. Build pause points into the prompt rather than letting errors ride.
-
Start a fresh chat when the specification changes. Tommy’s habit: ask the agent to write him a new prompt reflecting what was just learned, then open a clean context. Continuing in the same thread burns tokens on stale assumptions.
Who gets to run an agent
The recurring argument, and neither host fully wins it. Tommy’s lamp analogy carries the point: his wife walked into a room he’d been sitting in, adjusted the lighting, and revealed something he genuinely could not see. A novice looking at the merchant table doesn’t know what a slowly changing dimension is, so they cannot know to ask. Mike’s answer is process rather than gatekeeping — juniors don’t push code through unreviewed, and the review is where the learning happens.
The disagreement is about what that costs. Tommy doesn’t want to pay a senior architect to be full-time QA, and doubts a senior would find two-thirds of their week reviewing other people’s agent output fulfilling. Mike’s counter is that the senior’s real task is setting the standard — figuring out how agents should be used across the whole team — with review as a part of the job rather than the whole of it.
Capacity, quietly
A number worth noting from the news segment: four data agent requests inside five minutes consumed the equivalent of 43 minutes of Mike’s F2 capacity. The agent was hitting both a semantic model and a lakehouse through the MCP server, and the reporting doesn’t break down which one cost what.
Looking Forward
Add one expectation to your next pipeline prompt — state the row count the result should have, and ask the agent to test it before moving on.
Episode Transcript
0:01 Just pump it up. Be it high. Tommy and Mike lighting up the sky. Dance to the day to laugh in the mix. Fabric and A. I get your feels. Explicit measures. Drop the beat. Now, kings feel the crowd. Explicit measures. Hello everyone and welcome back to the explicit measures podcast with Tommy and Mike. Mike. Oh, good morning. Hello. Hello, Mike.
0:32 Oh, good morning. Hello. Hello, Mike. All right. Well, we’re jumping in today. We have some news. But before we get into our news items, we want to discuss an article that was recently talked about. I was on a recent I guess it was a LinkedIn or podcast. We had a number of really great experts on a panel just talking about where where is Ray Finn? What is it doing? And we’re going to be talking through one of the gentlemen who was on the show data Mozart or I think it’s this is Nicola, right? Yes, it is. It’s an awesome article. he writes incredible stuff. He’s got
1:03 he writes incredible stuff. He’s got really good blog posts. So Nicola is been in this data space for quite a while. He does a ton of training and helping educate individuals around building things with fabric and and PowerBI and just doing really good things around Spark and he said something in the podcast in the episode was just talking a lot about AI is confidently wrong. I have I think we all have examples of this. So that being said that’ll be our main topic. we’ll come back we’ll talk more about that in a second. Jumping in now, Tommy, we have
1:35 a second. Jumping in now, Tommy, we have some news coming across the wire. What do we have for news? We have quite a bit of news that we have the PowerBI update, a update to C-Pilot in PowerBI. And then something I wanted to share, Mike, I finally put my money where my mouth is. I’ve been talking about this for a while, but Mike, you and I love skills, skills, right? We love agent skills. And we’ve talked about it’s hard to manage the skills., it’s hard enough for yourself. but is especially in a team and also trying to get new skills or
2:05 and also trying to get new skills or manage the new ones especially pushing them to all the different agents and different devices. So I’m introducing a new application called skill vault available on GitHub. All right. And really it’s a command line tool but it’s much more it’s much more user friendly with the user interface. And all it is is simply a place where you can manage, run, create, and sync your skills across any device and all of your agents. If you have Claude, Codeex, Grock,, C-Pilot, basically system
2:37 Grock,, C-Pilot, basically system linking them so there’s always a source of truth. So if you update a skill or if a new skill changes, you can it gets pushed everywhere. And more than that, you can also edit a skill if you want to modify it yourself. and you can actually put in a GitHub repo URL and then it will find all the skills in that repo and then you can sync them into your skill vault. So it’s really cool because I use this solely for packaging my skills putting them together. I have my PC and my Surface
3:09 together. I have my PC and my Surface and I go I have I want to use the same skills on each. This is a great way to do it. I you can claude desktop uses skills via your account, not necessarily a location. So there’s a really neat way just to package the skill up as a zip file in a location to quickly add to the cloud desktop as well. well. This is slick, Tommy. this is something that you find where even across different repos on the same machine, each repo can have a series of
3:39 machine, each repo can have a series of skills or not skills and you want to [snorts] selectively push them or pull them across your projects, right? right? another area I would say here Tommy with with the challenge that I find with skills is skill a skill should be kind skills is skill a skill should be an ever evolving of an ever evolving yeah [snorts] thing. It should improve and update over time. As as you change, as the AI changes, as large language models get better, the skills likely probably need some updating over time. Yeah. Yeah. And so,, in lie of that, how do you
4:10 And so,, in lie of that, how do you handle that? Where do all the where did all your skills get published to? When are they out of sync or in sync?, making sure they all get moved around where they should be,, collectively gathered. I think this is a really unique solution around moving around skills. Awesome. Yeah. And I would love for people to start using it and if they have requests on what they want, put it in because I think there’s a lot of opportunity, a lot of potential with this especially when you think about a team. So Mike, I want to I want to get your thoughts on this. Try it out in the next few weeks.
4:40 this. Try it out in the next few weeks. Let me know what you think and we’ll we can build it. So I like I said, I use this. It’s always running on m machine. if you want to check out this link directly of the tool that Tommy made, it’s in the chat window. It’s also in the description of this video. So, you want to go check those things out and go look specifically at SkillVault. Go check it out. Tommy’s produced it and it’s out on GitHub. Pretty cool. All right, Mike. Well, we got an update to Copilot in PowerBI. Mike, the situation. We have a standalone co-pilot. Copilot reporting
5:11 standalone co-pilot. Copilot reporting copilot fabric. There’s a lot of places where co-pilot is available and Microsoft. I think they’re coming around, Michael. I think they’re Mike, they’re coming around. So they’re really expanding how the semantic model power AI experiences inside of a Microsoft co-pilot in 365 co-pilot co-work enables users to govern trustworthy and update their business data more important than ever. So the article really talks about why PowerBI matters in your AI workflows because the semantic model is
5:42 because the semantic model is the source of truth. We have talked about this in detail. Anthropic has confirmed this. Snowflake is building things around this. So this is not just Microsoft saying use our product. The semantic model is the way aent solutions work especially trusting your data. So now PowerBI data can now enter questions directly in 365 copilot. And I think this was a big request because you’re like I’m already paying for the 365 copilot. Why don’t another license to
6:12 copilot. Why don’t another license to use PowerBI? So copilot can query PowerBI directly to provide up-to-date contextual answers and the answers are computed using the semantic models business logic and you all you need is a Microsoft 365 copilot license to use PowerBI data. copilot codework is another part that does multi-step analysis produces finished work and it can actually use PowerBI insights to do emails agendas and action items. they can extend that with custom skills and pl plugins and co-work is payer use.
6:45 pl plugins and co-work is payer use. There’s some consolidation happening. again, they’re really reducing all these different products or different instances of co-pilot. So the standalone co-pilot will be upgraded to the richer 365 experience adding conversation history ability to change that model which is which is finally [snorts] better sensitivity expanded data processing report copilot inside PowerBI will stay and it’ll use the same underlying data as the 365 co-pilot. So Mike to me this is a really
7:17 co-pilot. So Mike to me this is a really big update. So, let me get your take on this whole feature. Yeah, Yeah, Tommy, I like this these things. I like the features that are coming out. I’m going to have to see how it performs, right, at the end of the day, right? I I think this is a the And also, you’ll note here is the licensing has now changed on this one. Did you see that? That catch there. Uhhuh. Uhhuh. Yeah.
7:48 Uhhuh. Uhhuh. Yeah. So,,, PowerBI co-pilot co-work, right? So, so many C-level words now.,, co c co-pilot co-work is not a pay per use. It’s, it’s not it’s it’s pay as you go. As you submit queries, you pay for it. It’s not just a flat licensing fee. So, this is co-work. Yes, correct. Which is in preview. So,, some of the licensing things are different here., anyways, it we’ll
8:18 different here., anyways, it we’ll see, Tommy. I’m going to try it out. We’ll see if it adds value on things. I’m a little hesitant right now cuz I really want Microsoft to start building agents for the creator of things, building stuff. So, I think that there’s some some I I think there’s some usefulness in and what they’re moving towards. This feels like it’s going the right direction., but we’ll we’ll have to see how this is actually going to materialize and and does it really save me time? Is it useful to use? I’m just
8:49 it useful to use? I’m just disillusioned, Tommy, by the amount of CUS that get consumed at one point in time. And again, I’m a little bit biased, Tommy, because I’ve seen how in the past I’ve I’ve used Copilot and I was like, “Oh, I did a test the other day. I did a test the other day around building some co-pilot pieces and it was quite expensive.” I in four requests that I gave to co-pilot co-pilot chat or using data agents I didn’t even talk to copilot directly I was just using data agents and the data agent spent equivalent of 43 minutes of
9:20 agent spent equivalent of 43 minutes of my F2 my F2 oh oh in in four requests that happened within like less than 5 minutes. Yeah Yeah right. So it really ate through my capacity usage on that that were you running off a semantic model with the data agent? I had a data agent that had a semantic model and it had a lakehouse. And so I think there was and I was talking to the data agent with an API. So I was basically had the a data agent up and running. I was using the MCP server for the data agent submitting questions and it was returning results.
9:50 questions and it was returning results. It was working. It was doing what it should have been doing. It just was like
9:54 should have been doing. It just was like whoa. This took a lot of CUS and very quickly. So if you have many many users using this, it’s going to consume a lot of CUS very fast, right? [snorts] And I I think I would be curious to see how much it was quering from the lakehouse versus the semantic model from the cost difference there of the I don’t I don’t really know if you break it down that way. It doesn’t tell you where it came from. It just in the capacity metrics log it just says ran ran ran a large language model studio or LLM.
10:25 studio or LLM. Yeah. Yeah. Charge, right? It just tells you it ran. It doesn’t tell you it ran and it ran against a SQL server and or or a semantic model. But to your point, Tommy, Tommy, yeah, yeah, you’d have to do like two separate workspaces, run the same query twice, one with a semantic model and one with a lakehouse, and see which one took more time maybe. Yeah. And well, and the difference though is data agents are not co-pilot. The one thing I’m happy about with this, Mike, is the fact that we’re beginning to consolidate the seas, as you so
10:57 to consolidate the seas, as you so eloquently put it, because it’s hard to explain to clients and really the team members what the co-pilot experience is for PowerBI because you’re like, well, this 365, no, but yes, but it looks like co-pilot. Yes, but you need to license. Is it this? Can I run the same things? No, it’s separate. Unless you have a data agent. Where can I run the data agent? in 365 and it gets very confusing and I I’m glad to see that one you can actually change the model two is the
11:28 actually change the model two is the same hopefully unified experience between the standalone PowerBI co-pilot and then the co-pilot that’s going to be 365 in terms of conversation history and I I like that focus and I think they’re beginning to see that. So yeah yeah agree with you Tommy there. I want to go back to another I’m just perusing this article again, Tommy. I like Work IQ. I don’t know if you’ve used Work IQ at all yet, but Work IQ is pretty slick and it does some really
11:58 pretty slick and it does some really neat things. I’m I’m using Work IQ and a couple of my workloads. I like that tool that that seems to work well for me. It’s It’s giving me access to an agent that has the ability to go across everything I own as a user in sort in an organization. So, I think I like the work IQ piece. However, right when they’re talking about work IQ, they talk about,, this is where govern analytics starts to feel effortless. We’re starting to like oversell I feel like a little bit here. And instead of
12:28 like a little bit here. And instead of hunting for the right report, which you should do anyways, stop like why are we not instead of hunting for the right report,, ask the agent what was my revenue last week or how was this east region trending? No, no, no, no. I don’t want an agent to tell me those kinds of answers. That’s not what that’s not a good use of your agent. Like even this use case is just bananas to me. Like don’t no I don’t want an agent to tell me what was my sales or my revenue last month or
13:00 was my sales or my revenue last month or last week. I want the agent to point me to a report that has been built, tested, and ready to go. And this just seems lazy to me. Like this whole use case seems contrived, Tommy. I never me me me me me me me me me me me me me me me me me me me me me me me me me me me me me person personally I’m never going through asking very broad questions like that to my agent question and and the biggest thing to your point we cannot give instructions to the like the system co-pilot so if you ask that question in a large or even a medium-sized company right the
13:30 or even a medium-sized company right the likelihood you’re going to get the right report report maybe it’s hit or miss maybe it’s 80% what happens let’s say it’s 80% that means 20% of the time people are going to have a dissatisfied you experience and we talked about this if the agent isn’t right the answer is wrong but I’m saying let’s say it finds a completely off report like when you ask Siri to ask play your music and it puts a reminder on your calendar well if that happens once to a user in 10 times they’re not going
14:00 to a user in 10 times they’re not going to trust the tooling and especially with agents this is very much all or nothing so broad questions you are you’re asking for you’re asking for a dissatisfied user experience Th this is not what I want to use copilot for. I’m sorry. I get the idea because in this in this ideal world in marketing it sounds slick. No slick in marketing. Just ask the agent what you need for your answers and it just gives it sounds good in marketing.
14:31 marketing. Do I really want an agent giving me these nondeter do I want a non non-deterministic engine giving me answers about my rail my sales revenue if I’m going to make decisions off of this? No, I do not. This is dumb. Yeah, but I was going to say like you Yeah, but I was going to say like in the movies when they ask the AI know in the movies when they ask the AI assistant something when they’re walking and has the screen that they touch that everyone’s going to never create. Well, that would be cool. We were like hey by the way you’re writing something on the whiteboard like oh how’s how’s Jim doing? Jim’s doing this. He,, he’s actually three
15:01 this. He,, he’s actually three account. Okay. Message Jim. That would be cool, be cool, but that workflow I don’t think is going to happen right now. So, now. So, Microsoft, stop focusing on these stupid like how was my revenue?, what was the e this is not useful and no one’s using this and we don’t want to ask our questions. That’s not a good use of AI. AI is expensive to run. You need to use it to create things. We want to run this again. We want the agent to build us the report. Hey AI, go look at my semantic
15:32 report. Hey AI, go look at my semantic model. How from this semantic model could I get revenue for last week? Only use measures and columns from this model. Period. Here’s this of a camber too. Here’s here’s the here’s the table. Here’s the vis here’s the visual and and here’s the thing I want you to see built from stuff from a semantic model that we already have. Right? That’s useful. Like that’s taking real stuff and stitching it together and giving you the answer back. That’s what the agent should be doing. The agent should not be answering
16:02 doing. The agent should not be answering these questions. It just seems ridiculous to me. Is this worthy of a camera, too? No, I don’t. I don’t. Nah, not yet. No, we’ll save We’ll save it. We, yeah. I like You can’t be doing it every other week, Tommy. Like every other week, we got like another I’m excited to do it. I’m right. I know. You got to really save it for It’s like game changer. If you do it all the time, it it doesn’t help. losing before doing it thing. It got close to it. We were touching the edge. All right, let’s move to some more a little more exciting news. The PowerBI July update is out. I
16:34 news. The PowerBI July update is out. I think this came out yesterday. It did actually. So, it came out on July 22nd. Mike, a ton of things here. let’s just run into. So, a few that caught my attention and I know that we’re just looking at this, but there is a modern visual default preview which allows you to customize a current theme directly in the format pane. So, this is neat where typically if you wanted to look at the format or change the format, you had to do that under view ribbon and
17:04 you had to do that under view ribbon and then go to the popup. Well, now they actually have on the format pane, which is neat, the ability to choose a theme or even customize. And it’s all on the right hand side. So, as we know, Microsoft loves right PES. They love PES a ton., so this I like that feature. Conditional formatting is now available for lines and legends. Again, keep keep it coming., we have a little update, a lot of updates from the visual point of view, but Mike, I
17:34 the visual point of view, but Mike, I think the one that you’re going to be most excited about, I’m gonna let you talk about. I don’t know if you saw it yet, but it’s probably the biggest feature here. You’re going to leave me a little bit more, Tommy. I’m I’m running a little sleep here. What are you talking about? Well, I want I want to spell it out for you. T M D L W E B. I know exactly what you’re talking about now. Okay. You you’ve you’ve shifted my attention to the thing that’s the most most TMDL is on the web now. One more reason why you don’t need desktop. Woohoo.
18:05 why you don’t need desktop. Woohoo. Yay. We can go buy Macs now. We can just go get a Mac. Forget it. Will I ever ditch it? Pretty neat. This one’s good. I like this feature a lot. This is This is a winner for me. I’m using Tindle more and more now just to make simple edits on the model. It’s just so easy to get in and make changes. It’s not complicated. I can pull over just the measures, just the columns, a relationship. It’s simple. I like it. I’m using now
18:36 It’s simple. I like it. I’m using now I was showing Tommy or demoing to Tommy recently. recently. Oh yeah. Oh yeah. An underutilized feature of the model is perspectives. Making a perspective is incredibly easy. So in Tindle, I like this feature. perspectives. Like I said, once perspective comes out with models, which we’ve talked about. So, going back to our co-pilot thing, have a model with a have a co-pilot with a perspective. That would be cool. How about that?, but I
19:06 would be cool. How about that?, but I I think the Tim part is huge here because you’re right, it’s just blurring the lines between what a user can do on desktop to what’s available on the web. So, big big feature here., and then just really quick shout out Mike,, almost half of the reporting updates are about or apps and I thought this was interesting. I just wanted to touch on this because I don’t know how much you are pushing organizations to or apps, but I always go back to what you said on one of the early episodes. If you want to know
19:36 early episodes. If you want to know where to focus, see where Microsoft’s focusing in terms of they’re writing about what they’re updating, which means that’s where they’re spending their money, which means that’s what they care
19:45 money, which means that’s what they care about. So that logic flow that decision flow goes into play here because obviously or apps are being used right they we’re talking about or apps with audiences bookmark support for reports and or apps storytelling support for reports and visuals and or apps or appaps and then CRUD rest APIs for or apps and audiences and pageionated reports. So Mike I think this has got to be the default way. No,
20:15 this has got to be the default way. No, because because this has to be really the focus. If you’re doing governance for the first time and you’re really beginning to re- imagine the way people get content in PowerBI for an organization, you got to start with or apps. I do think so. So, or apps I feel like is the response to a PowerBI app. I is the response to a PowerBI app., PowerBI has apps, but it’s just mean, PowerBI has apps, but it’s just one per workspace. and they were okay but I think a lot of people just really
20:45 but I think a lot of people just really wanted to build multiple versions of the same workspace and an orgap really fits that ticket right it’s a ticket for fitting they do multiple versions of the same reports one of the one of the complaints I hear a lot about organizational the the workspace apps I guess I’ll call them organ workspace apps for now the complaint was I have one report that needs to live in many different apps and the only way we were able to previously control that was to ship one single app
21:15 control that was to ship one single app but then use the audience to control who has access to what. It just felt contrived or or clunky. It doesn’t didn’t quite feel very smooth. This new way of doing things I think it makes sense. The only downside I would say Tommy is this really requires that you have fabric available. And so And so there’s still a ton of people I I think organizations are starting to adopt fabric and starting to turn it on. But I really still think there’s still a lot of organizations that are just purely in only PowerBI. They’re not using fabric
21:46 only PowerBI. They’re not using fabric at any level. They’re really just focusing just the PowerBI story. This is actually a good point too because unlike PowerBI apps which are from a workspace point of view really use with PowerBI per user or PowerBI premium. premium. fabric like if you want to use org apps you got to play the game. You got to get fabric. Yeah. Yeah. I agree. This is cool. Yeah. All right, my friend. Well, do you have anything else? I like I like the fact that they’re cleaning up organizational apps and
22:16 cleaning up organizational apps and getting them all out of preview, getting them alive, getting them fully fake finished and baked., I think having them GA is a good is a good feature here. I think that will be useful for people. I will say, Tommy, am I pushing heavily organizational apps? I’m I’m pushing more the idea of you just need an app, right? It’s it’s app-based distribution, right? So regardless workspace, you right? So regardless workspace,, know, sorry, I never really answered your question earlier, but like you asked like am I pushing it? Well, I’m not really pushing it, but I’m pushing the idea of how do you want people to
22:47 idea of how do you want people to consume the content you build in powerbi. com. One of the key consumption methods is you should be very much using apps either at the workspace level in PowerBI or in the fabric world which is an org app. I think those are useful. So I think that’s that’s usually the the route I’m taking. I’m pushing people towards I will say people are very confused between the PowerBI app and the organizational app now because they kind organizational app now because they look a little different. but of look a little different. but there’s also they’re like
23:17 there’s also they’re like why do I only get everyone assumes an app is an org app. The organizational app is what people assume an app is. Oh, I’ll just make this item, throw things into it and publish it versus whenever you tell them, oh well it’s one workspace, one app. They’re like why would you do that? I’m like, “Yeah, I know.” Right. So, I I It’s funny because this goes back to the co-pilot consolidation thing, right? Because there’s a lot of Okay, well, what’s better in different
23:47 Okay, well, what’s better in different situations, right? Let’s go back to the whole iPad scenario. Do what does an org app do better? Or more importantly, the other way around, what does a workspace app do better that the org app doesn’t? Well, it’s always been audiences. So, if someone were to go up to you and say, “Hey, Mike, why would I use a Workspace app or why would I use the org app? Which one should I use?” Right? There’s there’s I think there’s still a lot of blurred lines here where it’s not necessarily a definite answer to your point where it’s like, okay, well, do you have fabric? Yes. But
24:17 okay, well, do you have fabric? Yes. But we, we don’t care which one we use, use,, and you go through this scenario where you could do you could accomplish everything in an org app you could in a workspace app. You can just have content from the single workspace. Yes, that being said,, you have the ability to do other things and add notebooks and things. The workspace app, I think, still has a more intuitive sense to it in some ways from the creation of it. You’re in the workspace to do it. But outside of that, there’s still a lot of blurred lines in terms of, hey, an or app is better at X, Y,
24:48 of, hey, an or app is better at X, Y, and Z. The workspace app is better at A, B, and C. So, yeah, there’s a I think there’s just a lot of feature parity between the two. And now that orgaps have audiences, like one more gap is closed. Yeah, 100%. All right, Mike, I think it’s time to get to Nicolo’s article here because this is going to be fun. All right. Yeah, let’s go through the article. Nicholas’s article, liar, liar. When AI writes your pipelines confidently wrong. I’m guessing this is spoken out of real
25:19 guessing this is spoken out of real experience here where Nicola was trying to use this to build some pipelines and it was just giving you the wrong answers. So,, now this is going to be interesting, Tommy, because I I I really do feel like the AI is going to do data engineering better than people will. I’m I’m not willing to,, I’m willing to give AI a lot more credit here than I think most people are at this point. I also am going to give Nickel a lot of credit here. I just just from the bat,
25:49 credit here. I just just from the bat, Nicola, if you’re listening, I think there’s a lot of trust when someone does say, what, I actually do use AI agents every day. That there’s still this connotation, Mike. I think we’re especially if you’re an MVP like yourself, or just,, working in this space where it’s like, no, I do the work. Well, Nicholas, like I actually use agents every day. Like I that’s definitely part of my workflow, Mike. And there’s a big point here where, where,, I think yes, someone may be using an agentic workflow. That does not
26:20 using an agentic workflow. That does not mean that they’ve lost any skill. So, I do appreciate him right off the bat saying, “Look, here’s the deal. I know people are saying the hype and there’s a there’s a point to this, but no, we probably should be letting a ride our pipelines, but there is a skill around how you do this.” And what Nicola really introduces here is it’s he has this phrase called confidently wrong where AI when I write pispark Mike it’s going to error out.
26:50 pispark Mike it’s going to error out. It’s going to say I’m going to get the red lines and the squiggly line under the code that I wrote that caused the error. error. AI is not really going to do that right the what the code that it generates is going to go it’s going to work. Hey look there’s data in my lake house. Holy crap an AI agent did that. This is awesome. Look, the data looks right and that’s great and you can look at the code as much as you want that the spark that it creates. Wow, it even did the date time correctly and doesn’t nothing looks wrong, right? There may be times where
27:20 wrong, right? There may be times where we get like that AI slop or the junk, but for the most part, if you give it a pretty good instructions, it’s going to give you really good code back, especially for pispark. And And the devil is really in the specifications, but I think that’s getting a little ahead of myself. So, Michael, let’s just start with have you ever sh when you work on writing AI pipelines. Do you have a process? Because I think there’s a few things here in terms of looking at just writing a prompt and
27:51 looking at just writing a prompt and having an agent work on it, but really that whole setup, right? So for you, what’s your setup when it comes to actually getting started on a project with AI and code? And we’ll talk about this in the frame of fabric., I do a lot more of the people side of things now. I have a team, so I don’t really do a lot of the writing myself directly anymore.,, writing the code. But going back to the beginning part of Nicola’s article here, which is really
28:22 Nicola’s article here, which is really defining I I I think conf he has to define what confidently wrong is. Now, let me be clear. Nicholas is not saying he doesn’t use agents. He uses agents. He just uses them in a different way than you understand, right? So,, Tommy to your point, your earlier analogy of when Tommy builds an AI something or build some code that did a pipeline, if you have any errors in the syntax, syntax, it fails. It’s not right. It says, “Whoops, can’t do that.” So when you
28:54 “Whoops, can’t do that.” So when you write code that’s incorrect, which is I think more often you’re writing the syntax incorrectly, you like I think at the end of the day, Tommy, you could almost e you could easily articulate what you want it to do. Yes, Yes, the requirements can be easily articulated. It’s the It’s the syntax. It’s,, I want to write this in Spark SQL versus TSQL. there’s a nuance on a couple of the the syntactical issues that you have to like make sure you get right for the the road
29:25 make sure you get right for the the road the the code to write correctly. Right. Right. Nicola is saying when you use AI it will have almost no syntactical errors. errors. Mhm. Mhm. And I’ll also argue he has one thing here. It’s strangely polite. There’s
29:41 here. It’s strangely polite. There’s no exceptions being thrown. They don’t break the build. they will execute execute but the data will be wrong right it’ll even have I think another thing another area he noted here was AI provides generous comments in the code about its data engineering exactly what it did and why it thought it was right yeah exactly but then this is where I think his his term here confidently wrong makes a lot of sense right the
30:12 wrong makes a lot of sense right the code runs it looks good there’s comments in it at At the first glance, the code look like it’s doing things correctly. And then he starts talking about some of the areas where he sees AI falling apart, right? query folding, right? how do you get the joins to work correctly across your data tables? Is it joining correctly? I I have experiences directly, Tommy, myself where I was giving an AI agent. I was building things with Rayfin and in Rayfin I had a
30:44 things with Rayfin and in Rayfin I had a slowly changing dimension table. I did not describe it to the agent that this table was slowly changing dimensions and so I wrote it to I asked to build a a chart or a table and the numbers were just astronomically large. Like there’s no way my YouTube channel got 4 billion views of data. That’s not right. What was happening was it was adding up. Yeah, it it was B billion. Yeah, I did really good that year on my MP. Yeah, way to go. But it but it was because there was a
31:15 But it but it was because there was a flag in the table that said is active, right? And it was deactivating old records and activating net new records for same piece of content, right? So that’s that’s the stuff that like the data knowledge you need to understand how the data is coming in and you have to give it intelligence around well I’m not supposed to add every row. I’m only supposed to add the the record that is the most recent record. That’s what we’re going to distill things down to. So, I think that was information I didn’t give to my agent and therefore it
31:45 didn’t give to my agent and therefore it literally built me the right thing but the wrong numbers. I’ve experienced it. No, this is an important distinction too because unlike just bad code or bad practices, right? It’s going to complete something and what Nicholas showed, at least my experience too, it’s very efficient how it’s writing the Spark from from authentication. It does a really great job from architecting the solution, not just putting everything in a giant notebook, right? and you would look at this code and if you did a polar crest or you were
32:17 did a polar crest or you were again peering and combing through you’re not going to see things that are wrong in the sense of like well why’d you do that makes no sense that’s an extra step an unnecessary step it’s very direct very efficient but this goes also back to what you this goes also back to what right so Nicola’s big point here know right so Nicola’s big point here was they basically do enriching the transactions with the attributes from a merchant. Well, they do this join it. It’s correct. The merchant ID with the
32:49 It’s correct. The merchant ID with the transaction ID. Great. However, the merchant information was a slowly changing dimension. So, you’re going to also multiply or duplicate rows on your fact table. Now, does the agent know that? No. And if you don’t know that, then again, it’s wrong. But it’s not the agent being wrong, if that makes sense. Because the agent didn’t know. And I think this is an important distinction when we go in our jobs, Mike, where a professional is going in compared to just a junior developer. Actually, I’m
33:19 just a junior developer. Actually, I’m on to something right now because we’ve talked about should we let junior developers just build everything or noviceses. what and what and you don’t know what you don’t know. And a junior developer is going to look at the at the you don’t know what you don’t know. That’s what you don’t know what you don’t know. That’s what Thank you. Thank you. But someone who’s been a professional knows there are scenarios like this and one not necessarily knows what to look out for, but is going to question things. They might not question the code itself, but it’s going to look at the
33:49 itself, but it’s going to look at the data and notice a few things like these are things we’re going to pick out. A junior developer or novice just writing the code could write the same code with an AI agent, but they’re not going to go back in and go, “Let me look at all the tables. Let me look for slowly changing dimensions. Let me look for outliers in this. And I think that’s a big thing that we’ve been talking about here. How much ability do we give to noviceses using AI agents? Well, this is exactly to me the situation that’s going to occur or occurs now.
34:22 to occur or occurs now. So, I guess does this change your mind when it comes to how much leeway you give with people to run AI agents like in terms of their skill level? because that’s been our contention for like a year now. But people are involved and there’s this this whole,, when I So maybe what I’m hearing you say, Tommy, is when I ran my PowerBI report about views on videos, videos, right? right? And I had billions of views on videos.
34:52 And I had billions of views on videos. And I’m like, that doesn’t that doesn’t feel right. Like that was I would know if I had that level of volume, right? It was an order of magnitude off of what I was expecting because I I had this feeling around what I was expecting. So maybe this is also a double-edged sword with data. Data when you’re working with data, there’s there’s two sides to it. You do some data engineering expecting some outcome. And I think to some level, we assume what we think the
35:23 level, we assume what we think the output to the data engineering will be. And we may be surprised, but I think as you get better at doing the data engineering, you’re able to interrogate the data enough to get a read on, hey, I’m summing this information. There’s a lot of customers I have here, but I’m I’m looking at sales in the millions, the tens of millions, right? There’s like a there’s like a mental mark that you’ve got, an expectation that you’re coming into the engineering with and saying, “Here’s what I think the
35:54 and saying, “Here’s what I think the data sher should look like. Okay, now I’ll do the engineering and I’ll come back and say, “Does that match my expectation? Does it seem to fit with where we need to be?” And so I like this down at the bottom of the article, Nicholas starts talking about specify, bound, and validate. Right? He starts talking about three areas or three things you can do. Now, before I get into that part, I want to go after question, Tommy. You said, You said, “What about new users? Do we give them access or do we not?” I think if we have a system in place
36:25 I think if we have a system in place of us as employees, smart, new, old, young, like all the things, this the spectrum of people, right? If we have a system where anyone in that team can utilize the system, then it shouldn’t matter how you give this agent to anyone. there’s a system in place that knows how to validate something. So for example,
36:56 something. So for example, if there’s and this is what we we do this already today with code. If you have a junior developer, they can make changes, they can make branches, those branches can get sent along, but at the end of the day, you’re not letting juniors change your code and you’re not automatically committing things and moving it forward, right? someone is taking a a look over the shoulder at them to make sure that they’re doing things correctly. That just happens. It’s going to be a thing. So, because of that,
37:26 So, because of that, it’s the same thing with this, right? The agent will get all the code and the syntax right. It will write the answer, but you need the juniors are going to need to learn how to increase their specificity, right? In Nicholas’s first comment here is specify precisely right in the example he gave here which was there was a slowly changing dimension. It caused numbers to duplicate. We had too many rows of data. Right? In this example here he goes when you use the join the
37:57 here he goes when you use the join the current version sorry current merchant version of the table has a certain number of counts a row count. After you do a join to that data the row count should be the same. Right. So in there you’re already thinking about okay and this is something I don’t I think I was actually just talking this with a couple of my engineers which is before you make a join before you do some data engineering there’s like an expectation of before and after what should happen right and if something didn’t go the way you thought you need
38:28 didn’t go the way you thought you need to investigate why did that happen right I’m going to take this table and join it with this table I’m expecting no additional records so I run the query in the table table A before the join and I run the the query again counting the number of rows did the table after the join. Did I get more rows? If I got more rows, something is duplicating my data. Do we understand what happened and why it was? Was it bad data? Was it something I got to filter out? Did I not use a distinct values? Like that makes sense to me. And then he talks more
38:58 sense to me. And then he talks more about like bounding aggressively. And then what I think is really useful here is validate ruthlessly. Before we get to that that of validation, before we get to the validate, I want to share my side with the skill because I on where the importance Yeah. Yeah. Yeah. And I I am going to share via story and a quick analogy here. I’m going to bring my wife into this because I think this is a really good example. Is she happy? Is she Is this approved? Is this wife approved? Okay. Yeah. So, this is actually I think we
39:28 Yeah. So, this is actually I think we just started dating and she’s an interior designer and I think we were
39:32 interior designer and I think we were walking around my office at the time and like the lights it was a old not crummy place like but it was an old school building a lot of old school things and we’re just talking and she’s like yeah she’s looking at the room she’s like if they actually flipped the lamps like there were these old lamps like they would make the room look larger also that green over there that’s making the room really thin here and by the way it would be a lot lighter if this happened. I’m like, “What are you seeing?” Like I could not I’m looking at everything going I have I can’t see. Like it was
40:03 going I have I can’t see. Like it was like I was looking at a different room. Yep. Yep. Than her even though we were in the same place and she actually went through and flipped the lamps, flipped the lights and then you could see and you look back you go, “Wow.” Like it’s such a big change. And for me, I’m taking that analogy here where she she goes into a room and sees things I don’t see because of her background. Yeah. Mike, if you take someone with a very novice skill and even as you say, look at the merchant table, right? Just look at the merchant table. Do they know what a slowly changing dimension is,
40:34 what a slowly changing dimension is, right? Right. And I think there’s a lot of things too where yes, an agent can do a lot, but I’m I don’t want to take a side or too strong of a side here, but it’s really hard for me just to say without some training or without some experience in the data space to know the things you need to look out for to actually have the experience in the trenches, right? But I think you’re confirming my point around then there needs to be a process
41:04 around then there needs to be a process in place, right? So the process that yeah so the process is part of the hey you’re a junior you’re not as experienced with our data here’s the process we follow to make sure things are coming out correctly correctly orc there’s the boundaries on what they can do can do without a process Tommy you’re the only thing you have left to fall back on is training and education like until they become not a novice anymore not a beginner right so the the process us the
41:36 beginner right so the the process us the how we use AI and how we test things and how part of our process should be well increase your p preciseness more precise in your what you want give it more aggressive boundaries of what you want the AI to do or not to do get more validation if you have that in the as part of the process juniors don’t just let push code through juniors get reviewed by someone in more senior states what that’s doing is it’s giving an opportunity for the junior to learn more about what’s going on.
42:06 about what’s going on. Okay, so this is an interesting one here because I’m happy you brought this up because I actually didn’t want to bring it up here. Then I feel like you’re wasting the time of the senior developer here because if all the senior developer is doing is just reviewing what the junior developer did via an agent and then telling them all the changes. Hey, hey, you missed slowly changing mentioned. What’s that? You changing mentioned. What’s that?, oh by the way,, the row know, oh by the way,, the row count here isn’t great. Well, to me I’m like the senior developer could have run the agent and got it right the first time and I don’t think the junior
42:37 time and I don’t think the junior developer is learning anything. That’s a waste of time. You like it goes back to one of our previous episodes. what you just made, Mike? A professional Q&A architect because that’s all the senior developer is going to do, right? They’re going to just look at the code and Q&A some agents code from some novice who doesn’t know what they’re doing. I know that’s a very strong like a hot strong version of that but in so many words if a senior developer’s role is to always look at the code and the proc pipeline that a
43:07 the code and the proc pipeline that a novice did they are now professional Q&A I agree with you to I do not want to pay for that I don’t want to pay a consultant for that and I don’t want to pay my senior architect to do that do that I agree I agree with you at some level to this But then I also disagree at a different level because that’s why they’re the senior. That’s they’ve gotten the battle scars of going through this to begin with. Now should a senior engineer. So
43:39 should a senior engineer. So let’s think of it. Let me let me say that let me say a different way here. Yeah. Yeah. Your most expens likely the most expensive things you’re going to use in your company will be your people. your people are going to be the most expensive items. Your seniors or the ones that know the most are going to be likely your most expensive employees in your company. So, how do you best utilize the seniors to make sure that there’s repeatable good systems in place
44:11 good systems in place and the value that they provide? Well, Tommy, I agree with you, but like if if you don’t have the seniors teaching the younger team members how to do this, how will they ever learn? It’s not just teaching though, Mike. Like, and so I think this is something that becomes a gray area for me though. As I have become more senior in my company, I do less and less of the actual work and I do more and more of the review, the process establishment, the standards setting up. Like your
44:43 the standards setting up. Like your your seniors should be figuring out the best way to use agents that scale across all team members. I like that. I like that. and the and the senior. So,, you’re going to have to have seniors reviewing newer engineers coming in work. It’s just going to have to be part of the process. So, yeah, you try to mitigate it, right? You don’t want it to be like 100% of their job doing all that. And because sometimes,, sometimes seniors are really good at what they do, but they don’t want to do that. They don’t want to manage another team member. They don’t want to review other people’s stuff.
45:13 want to review other people’s stuff. That’s a great point, too. So, so it’s also personality type of thing. some some seniors love doing this and and that makes them a really good senior in that way because they’re actually bringing people along educating and teaching. So I I think your best pattern here is what can we do to leverage that senior’s engineering knowledge? The senior should be building skills, skills, skills that can be used across the whole team, right? That’s a great use case of a senior’s knowledge and expertise.,
45:46 a senior’s knowledge and expertise., but in what Nicholas is talking about here, I don’t think you can have it. You can’t assume this is all going to be 100% automatic and if we just spend a month with a senior engineer, everything will be solved. Then we can just throw more people the project and it will just work. I I just don’t think that’s reasonable to assume. Yeah. And I I want to I like the skill thing and I really want to touch on part of the role of that senior developer a bit too. The first thing and I don’t think I’m ever going to be able to ever answer this or at least not in the in
46:17 answer this or at least not in the in the interm and if you can answer this great but you and I before AI have probably about what 20 years about of data experience working in data as an analyst be pre-AI pre-agentic solutions so so I’d say so yeah so we have that what’s makes a senior developer right in terms of we were not just being taught what to do or read a book you made the mistakes Right. Right. Yeah. You may learn you or we hardcoded, man. We man. We or we read books from other people that
46:48 or we read books from other people that or we or we researched on the internet like right there there was a good amount of time Tommy that we spent not at work learning more things. Yeah. But also when we did work I feel like we were writing the first Mac OS. I like we were writing the first Mac OS. we had to write line by line of mean we had to write line by line of code more or less. And all those experiences right you learn the tooling. you are in the trenches so that you can’t teach, right? And I think the hard part for me right now, Mike, is I if I’m telling a senior developer that
47:19 I if I’m telling a senior developer that 20% of your time is going to be teaching, but the not the junior is not really doing it itself. It’s letting an agent run. You’re just telling where it went wrong. There’s a lot of concept things that going to be missed. And then the bigger point to me what you mentioned if you hire a senior developer a senior architect and say 50% of your time is reviewing the agentic code the other 20% is telling working with the juniors on what went wrong I I think a senior would look at that go
47:49 I I think a senior would look at that go so wait twothirds of my time is not going to be on great solutions and architects and where I worked myself up it’s going to be on Q&A and just telling you and working with people who don’t know this stuff yet that like I don’t think that’s going to be very fulfilling. it would not be fulfilling for me and again what I’m all those parts here I don’t know if I can answer like what that looks like but for the sake of time like I you mentioned about the validation here about okay what can a process look
48:19 here about okay what can a process look like right now and this is where unless you had any other points in terms of my comments because I think it’s more of a gray box it’s a more of a Pandora’s box but let’s go to what an actual workflow at least what Nicola put out here and get each other’s thoughts here. He talks about three main pillars, three parts of the workflow. Specify, bound, validate. Specify is again the enrichment bug they were talking about wasn’t a code bug. It was a specification bug. We never
48:50 was a specification bug. We never specified that there’s a slowly change dimensions. Bound is really just don’t let an agent roam freely across your workspace., give it guard rails. What is the schemas it must conform to? What are the naming conventions? tables that can’t touch t the only things it needs to do and then validate validate ruthlessly so this never validate I code just by reading it validate it by integrating the data so those three things and I love this too because I’ve talked about
49:21 love this too because I’ve talked about the harness my two harness approach with having that second brain
49:25 approach with having that second brain and I think that’s essential for the first two when it comes to validate or specify and bound where I’ve really Don’t write Mike the actual prompt to start with the workflow anymore. Everything comes from meetings. Everything comes from what’s been provided working with my agent in notion which does not write data but it can look specify look at Excel files and it’s like hey we’re going to write the instructions for claude here. It has fabric skills it know and understands
49:55 fabric skills it know and understands it’s not just writing notes right and that’s such an essential part for me to specify and bound. Mike, I I can’t I can’t do I will not do a fabric project without those parts of my cloud instructions. That is and this is not just a single page, Mike. It is scrolling of instructions that references other pages in notion for me on the things it must adhere to. Let me I’ll pause there and then we’ll get to validate. But for you, Mike, what
50:25 get to validate. But for you, Mike, what does it look like when it comes to specifying bound? Is that something that you also already taken your your approach? approach? Yeah, I’m finding that the more you specify up front the better the requirements and remember I was talking earlier about like some of the expectations of the the merge or the data query or the the notebook that’s happening, right? Nicola does a good job at extending that ex that analogy a little bit more. Right? you analogy a little bit more. Right? his initial comment here in the know his initial comment here in the infographic is enrich
50:55 infographic is enrich transactions with merchant data that’s a very generic piece right but in the second half of this he writes really more explicitly calling out join the current version only record for for right right merchants merchants to this other table and make sure there’s the same row count before and after right his prompt is So,, did the agent get it wrong? No. Was your prompt descriptive enough also? No. Right. You didn’t do it like
51:26 also? No. Right. You didn’t do it like the agent wasn’t wrong, but it also you didn’t give it enough information to make sure the expectation of what you wanted out matched what your understanding the data was. So, you need to give the agent more context. This is a slowly changing dimension table. There’s a column that says this is is current or this is how you determine when a record is current. I only want you to join these. And even even what it’s doing here is I really like him giving some expectation setting to the AI. It’s the AI can run queries really
51:56 AI. It’s the AI can run queries really fast and write all the code really fast. Why not tell the agent this is the table we’re starting with after the join the table should have the same row count. make a test for this. M make like you’re describing to the agent an expectation I have as you’re doing it makes makes total sense to me. So I really like this. I sometimes I look at this and go even now I’m I’m teaching people how to use agents day-to-day, how they work, how you build code with them.
52:28 they work, how you build code with them. If you if you go through a a prompt to an agent asking to do something something and it doesn’t understand and then you spend the next 15, 20, maybe 30 minutes correcting the agent. Well, no, no, I didn’t want this. No, no, I didn’t want that. No, no, that’s wrong. Yeah. Yeah. Pause. Because the the problem wasn’t the agent. It was your instructions. Your instructions were lousy. Start over in a new chat. I would start over with a brand new chat and I would take what I learned about the what the
52:59 take what I learned about the what the agent understood about my code, the words it said, how it managed what it was doing there. I would parrot those words back, but I would rewrite my prompt with much more description. So, if I don’t get if I don’t get what I want out of an agent in one or two shots, I’m stopping. I’m deleting the chat, not deleting the chat, I’m starting a new chat window, and I’m starting over again. I’m undoing my changes and starting over cuz something I did wrong was not ex explaining well enough what I needed to get done and and in that single chat too you’re
53:30 and and in that single chat too you’re wasting unnecessary context with the agent to one you’re just burning tokens you’re just burning tokens one thing I’ll do is like hey I’m hey Claude I’m going to start a new chat just a fresh take on this based on what I’ve told you in terms of changing specifications change the prompt and give me the prompt for the new chat and this is a good way too to say based on what we learned just now based on what I’ve told you not to do. That’s been a great process for me. But the validation side here is huge. And for me, Mike, I’m getting more
54:01 huge. And for me, Mike, I’m getting more and more I’m I’m getting more pushy with my clients where when we are doing a new pipeline, I’m asking for basically what I’m calling a starter kit, a starter kit of data because I need to know what their data looks like beforehand rather than just pulling in whatever the API source is. And I’ll run this through an semantic model. I’ll let the agent run look at the semantic model look at the historical data and then to like I think you were talking about the reflect but it’ll actually write back to the project
54:32 it’ll actually write back to the project in my sec my f my second brain that project brain to say okay here’s all the things we know about the data we know that there are seven values for country we know there’s 2, 00 rows for this date range and it has all these different things for testing when I start running the pipeline part of the instructions that are already built in is just wonderful wonderful It’s like, okay, we’re going to let’s do a smoke test. Let’s do some testing here. Yep. Oh, I noticed there’s nine countries here. Specifically, it says we need to
55:02 here. Specifically, it says we need to pause here before we continue. Not just, oh, there’s an error. Let’s move on. Yeah. Yeah. So, we have those that’s a huge part of this where you’re validating. That’s a valid. You have to validate and you can make this part of your workflow in the same in a sense prompt., I think there’s a there’s a flow to this. Better to catch those errors earlier before the agent builds a lot of extra code on top of a an assumption that was wrong. wrong. Right? Right? So having those break points earlier on
55:33 So having those break points earlier on in the process, the development cycle, when you say, “Agent, stop. Let’s look at it. Does this make sense? Move forward.” Right? That that makes a lot of sense to me. So I really like this article. I think this is really good., I’d be remiss if we didn’t shamelessly promote this one as well. So, at the very end,, the whole reason Nicola is doing this and the other reason he has things here, he actually has a course that he’s building or he’s going to be doing, it’s a 4-hour live workshop. Awesome. Awesome., it’s going to be a fabric implementation. This is a not paid
56:03 implementation. This is a not paid advertising. We just love this article. We also love Nicola. He’s a great guy., you if you want to learn how to use AI native data engineering with Microsoft Fabric, Nicl is the guy to get it from. He’s he’s the one the one I would worth worth its money. So, here’s the course. The course is in the chat window in case you want to go check it out. AI native data engineering with Microsoft Fabric. If you like his process, if you like what he was building here and you want to learn more about how do you leverage AI to help you
56:34 about how do you leverage AI to help you build data engineering, it it is changing how we build, Tommy. We have to build differently than we did previously. Simple Simple 100%. 100%. But we need tools and teams and people to understand how to build this thing differently. What it it is extremely powerful and can build a lot of stuff really fast. Great. How do we wield that new power? This is how we do it. Anyways, Anyways, you call Yeah, I think one thing I want to workshop with you on a future podcast because I think there’s some different
57:05 because I think there’s some different skills that we need to call ourselves like is it skill engineering? Is it agentic engineering here for fabric? We’re we’re not part of this I think real specialized experience that we need to have and tooling we need to have is the ability to do that. So yeah, I I love that Mike. Yeah, I think this is what we’re this is the era we’re moving into, Tommy. Right now, we’re learning this. It’s a new skill that we have to figure out how to get through and work on and create. But I think at some point in time, this is going to be like table stakes. This
57:36 is going to be like table stakes. This is going to be the skill that everyone needs to know how to do 100%. 100%. Right. Show me a pipeline that you built with an agent. What problems did you occur when you built that pipeline? How did you get it to validate the data was correct? correct? How did you check certain what did you check? How did you check the data quality as you built it? What does that look like? And you should be able to speak to like solving those problems with an AI agent. All right, that being said, thank you so much for listening to the podcast today. This was a great topic. Nicola, thank you very much for the article. you are right. It is
58:06 the article. you are right. It is liar liar. Your pants are on fire. AI gets your pipeline wrong. it it does happen and you got to understand how that it fails differently than what you would typically do when you build code, which I think is a great analogy. and it is definitely confidently wrong. That being said, Tommy, where else can you find the podcast? podcast? You can find us on Spotify, Apple, wherever at your podcast, make sure to subscribe and leave a rating. It helps us out a ton. Do you have a question idea or topic that you want us to talk about on a future episode? Well, head
58:37 about on a future episode? Well, head over to powerbi. tips/mpodcast. Leave your name and a great question. And finally, join us live every Tuesday and Thursday, a. m. Central on all PowerBI tips social media channels. Smooth landing. Thank. Thank you all so much and we’ll see you next time. Tommy and Mike lighting up the sky. Dance to the day to laugh in the mix. Fabric and A. I get your fix. Explicit measures. Drop the beat
59:07 Explicit measures. Drop the beat now. Kings feel the crowd. Explicit measures. measures. Drop it loud.
Thank You
Want to catch us live? Join every Tuesday and Thursday at 7:30 AM Central on YouTube and LinkedIn.
Got a question? Head to powerbi.tips/empodcast and submit your topic ideas.
Listen on Spotify, Apple Podcasts, or wherever you get your podcasts.
