<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Agile Data N’ Info: AgileData Product]]></title><description><![CDATA[Posts about the AgileData Product]]></description><link>https://agiledata.info/s/agiledata-product</link><image><url>https://substackcdn.com/image/fetch/$s_!ErtR!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8892c64-a0c7-4c7b-9f49-a73be5280f22_1280x1280.png</url><title>Agile Data N’ Info: AgileData Product</title><link>https://agiledata.info/s/agiledata-product</link></image><generator>Substack</generator><lastBuildDate>Wed, 08 Apr 2026 16:59:28 GMT</lastBuildDate><atom:link href="https://agiledata.info/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Agile Data Limited]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[DataNInfo@agiledataguides.com]]></webMaster><itunes:owner><itunes:email><![CDATA[DataNInfo@agiledataguides.com]]></itunes:email><itunes:name><![CDATA[Shagility]]></itunes:name></itunes:owner><itunes:author><![CDATA[Shagility]]></itunes:author><googleplay:owner><![CDATA[DataNInfo@agiledataguides.com]]></googleplay:owner><googleplay:email><![CDATA[DataNInfo@agiledataguides.com]]></googleplay:email><googleplay:author><![CDATA[Shagility]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Define Once Reuse Often (DORO) and my friend Disco]]></title><description><![CDATA[Its amazing what you find valuable a second time around and end up reusing]]></description><link>https://agiledata.info/p/define-once-reuse-often-doro-and</link><guid isPermaLink="false">https://agiledata.info/p/define-once-reuse-often-doro-and</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Wed, 10 Sep 2025 05:36:54 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/0c236068-c6cd-4a7f-bf99-ab902ea26e42_10000x10000.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We are doing some experimentation on how we can improve ADI in the sub domain of Data Modeling.</p><p>As we worked with an Agile Data Network partner this week to help them onboard a new Customer, we decided to use an ADI first approach for all the data work in the AgileData App and Platform and see what would happen.</p><p>And of course part of all data work is data modeling.  </p><div class="pullquote"><p>It doesn&#8217;t matter if you consciously data model or not, as soon as you transform or store data you are modeling data.</p><p>We prefer to consciously model data instead of letting it happen unconsciously.</p></div><p>So we got ADI to look at the source system data that had been collected into History, it was data we had never modeled before, and got her to take us through the data modeling process.</p><p>Our Agile Data Network partner had already worked with the customer to understand their required Information Products and so had a good understanding of the Core Business Concepts, Core Business Processes, Facts, Measures and Metrics that would potentially meet their organisational needs.</p><p>This also stopped us letting ADI define a source system specific data model that would break on the first engagement with a Stakeholders chnaging requirements.</p><p>ADI did ok, but we always know we can do better, so time to McSpikey.</p><h2>Agile Data Disco</h2><p>Last year we did a raft of work for a Customer, where we reverse engineered 100&#8217;s of their Cognos Report definitions to help document their legacy data platform before they moved to a greenfield&#8217;s Modern Data Stack.  This work removed the need for a team of Business / Data Analysts to spend months documenting the legacy system.</p><p>We ended up building this in public and semi-productising it, calling it Agile Data Disco.</p><p> You can read about that journey here:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;c16d90f2-3177-4d4f-af78-bed4d27df2e1&quot;,&quot;caption&quot;:&quot;&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;We are working on something new at AgileData, follow us as we build it in public #AgileDataDisco&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data and analytics teams change the Way they Work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-06-05T23:05:53.759Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d003782-1b80-4220-9bab-c84441acd5af_2726x2958.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/we-are-working-on-something-new-at&quot;,&quot;section_name&quot;:&quot;AgileData Product&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:145357014,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!ErtR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8892c64-a0c7-4c7b-9f49-a73be5280f22_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>We saw a potential market solving that data problem of understanding what a legacy data platform actually contains.<br><br><a href="https://agiledata.team/data-problems/use-case/legacy-data-platform-discovery/">https://agiledata.team/data-problems/use-case/legacy-data-platform-discovery/</a></p><p>You can see an interactive demo of the final Agile Data Disco product we built to help us do that Fractional Data Work here:</p><p><a href="https://agiledata.cloud/disco/#demo">https://agiledata.cloud/disco/#demo</a></p><p>One of the things we did as part of Disco was some interesting prompt engineering to take a single input (say a blob of SQL, a log from SQL execution or the defintion of a report) and from that create a series of useful populated Pattern Templates as the output.<br><br>The outputs we generate are:</p><ul><li><p>Information Product Canvas</p></li><li><p>Event Model</p></li><li><p>Conceptual Model</p></li><li><p>Physical Model</p></li><li><p>Reporting Model</p></li><li><p>Business Glossary</p></li><li><p>Data Dictionary</p></li><li><p>Metric Definitions</p></li><li><p>Bus Matrix</p></li><li><p>Source Mapping</p></li></ul><p>And we also did another McSpikey with Disco where I uploaded an image of a completed Information Product Canvas and had Disco generate all those object, from that one image.<br><br>You can read about that one or see the Interactive Demo for it here:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;7b7bc894-7ecb-4b09-9ae9-7debb3bc946e&quot;,&quot;caption&quot;:&quot;A while ago we added the ability to upload an image to AgileData Disco, it was so customers could upload screenshots of their Dashboards and we could get Disco to document their Data Environments based on those images.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Can we use an Information Product Canvas image to start the data design process?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data and analytics teams change the Way they Work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-02-19T21:44:49.555Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ecc0bb9a-cfed-4d4b-8cd6-336d567e4c5e_183x137.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/can-we-use-an-information-product&quot;,&quot;section_name&quot;:&quot;AgileData Product&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:157496656,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!ErtR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8892c64-a0c7-4c7b-9f49-a73be5280f22_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><h2>Can you guess where we went with this</h2><p>Yup we took the core parts of Disco and did a McSpikey to see how much of the Disco prompt and reinforcement logic we could reuse to improve ADI.</p><h2>Results of the McSpikey still to come</h2><p>I still need to take the time to write up the results of the McSpikey properly, but the TL:DR is:</p><ul><li><p>Reusing the Disco prompt and reinforcement logic had massive value &#8220;time to  value&#8221; wise;</p></li><li><p>We ended up experimenting with breaking out a ADI sub agent - ADI the Agile Data Modeller, which had some real benefits in improvement in the ADI responses.</p></li></ul><h2>A word from our sponsor</h2><p>One of the things we got asked in the early days of Disco was rather than just document what was in the legacy Data Platform, could we automagically migrate it to a new data platform.</p><p>When we thought about it that looked like a very complex problem, that would take a few years of development to make feasible and we would end up with a many to many problem before it was viable, we would need to read from many tools and technologies and also need to write to many tools and technologies.  Until you had critical mass at both the read and writes ends the product wouldn&#8217;t be viable.</p><p>And we also saw data platform modernisation as a great catalyst for organisations to rethink the way their data teams worked, and to rearchitect a lot more than just their database, ETL tool and BI tool.  So we weren&#8217;t fans of supporting a better &#8220;like for like&#8221; modernisation pattern.</p><div class="pullquote"><p>Getting permission to replace your data stack, is often the easiest business case to get signed off to be able to change the way your data team works.<br><br>And also a way to finally pay back those years of technical debt (by rebuilding it all again)</p></div><p>But we also had in the back of our mind the idea that if we could take a Customers legacy data platform and automagically migrate it to the AgileData Platform with minimal human effort, that would be very valuable in removing one of the key points of friction for working with potential Fractional Data Service customers who had already had invested a shit ton of money in a data platform (legacy or modern).</p><p>Because our AgileData Platform is based on our very opinionated Ways of Working, Data Engineering and DataOps patterns, this wouldn&#8217;t be a &#8220;like for like&#8221; but an automated rebuild from new.</p><p>As we experiment with ADI the Agile Data Modeler we are wondering if that Agent on its own has some value.  Upload your current data model, and get back a bunch of candidate data models to review.</p><p>This wouldn&#8217;t be just a LLM going text to text, we would extend the reinforcement model we used for Disco, and bring in our opinionated Business, Concept and Physical data modeling patterns to it as well.</p><p>If I have to place a bet (and I do) I am going to carry on with the Context Plane bet.  </p><p>All the experimentation and development we do in that space is also immediately available in the AgileData App and Platform, so another form of DORO.</p><p>But if you think there is value in an ADI the Agile Data Modeler on her own, reach out and lets have a chat.  I would be keen to understand the use case you have in mind.</p><h2>An incoherent stream of Context</h2><p>You can find all the previous articles with my train of thought listed in this thread:<br><br><a href="https://agiledata.substack.com/t/context-plane">https://agiledata.substack.com/t/context-plane</a></p><p>We are building the Context Plane while flying it, so always looking for early adopters to help us decide the final destination.<br><br>If you want a virtual chat grab a slot here:<br><br><a href="https://contextplane.ai/contact-us/#bookemdanno">https://contextplane.ai/contact-us/#bookemdanno</a></p>]]></content:encoded></item><item><title><![CDATA[UX patterns for the Context Plane]]></title><description><![CDATA[Ways that the Context needs to be accessed and by whom]]></description><link>https://agiledata.info/p/ux-patterns-for-the-context-plane</link><guid isPermaLink="false">https://agiledata.info/p/ux-patterns-for-the-context-plane</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Tue, 09 Sep 2025 01:48:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!U1lG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>&#8220;One size doesn&#8217;t fit all&#8221;. </p><p>Different personas and use cases demand different ways of interacting with Context.<br></p><blockquote><p><strong>&#8220;Context&#8221; of this post</strong></p></blockquote><p>I often find writing helps me coalesce and refine my thoughts when new patterns start to emerge, but aren&#8217;t very clear yet.  </p><p>So this article is a brain dump / train of thought continuation of the architecture needed to have one Context Plane to rule them all, as part of a proposed &#8220;AI Data Stack&#8221;.<br><br>This article provides an overview of the specific persona types / use cases I have identified so far that need to access the Context Plane and the typical UX patterns for some of those. </p><h2>Updated Context Plane Architecture</h2><p>This iteration in my thinking has a resulted in an update to the architecture diagram for the Context Plane:</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U1lG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U1lG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png 424w, https://substackcdn.com/image/fetch/$s_!U1lG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png 848w, https://substackcdn.com/image/fetch/$s_!U1lG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png 1272w, https://substackcdn.com/image/fetch/$s_!U1lG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U1lG!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png" width="1200" height="983.2417582417582" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:1193,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:610919,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/173056020?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U1lG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png 424w, https://substackcdn.com/image/fetch/$s_!U1lG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png 848w, https://substackcdn.com/image/fetch/$s_!U1lG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png 1272w, https://substackcdn.com/image/fetch/$s_!U1lG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f30cafc-552e-449d-b050-6ca123ff793e_1479x1212.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><br></p><h2>The four personas / use cases</h2><p>Here are the 4 persona types / use cases I have discovered so far:</p><ul><li><p><strong>Human, GUI centric</strong><br>A person who wants to use a web based App, chat or Graphical User Interface to access/discover/explore/update the Context.</p></li><li><p><strong>Human, Code Centric</strong><br>Wants to use a Command Line Interface (CLI) or Code based App to access/discover/explore/update the Context.</p></li><li><p><strong>System<br></strong>Systems can access the Context directly, either querying the Context or creating to it programatically.</p></li><li><p><strong>Agent to Agent</strong><br>AI Agents can access/discover/explore/update Context autonomously, collaborating with other agents without a human in the loop.</p><p></p></li></ul><h2>The UX patterns</h2><p>Here are the UX patterns I have experimented with that seem to make sense:</p><ul><li><p><strong>Human, GUI centric</strong></p><ul><li><p>GUI centric Data Catalog</p></li><li><p>GUI centric Chatbot</p></li></ul><p></p></li><li><p><strong>Human, Code Centric</strong></p><ul><li><p>GenAI App</p></li><li><p>CLI tool</p></li></ul><p></p></li><li><p><strong>System</strong></p><ul><li><p>API&#8217;s</p></li></ul></li></ul><p></p><h3><strong>GUI centric Data Catalog</strong></h3><p>Your typical browser based Data Catalog interface.</p><div id="youtube2-RZSCBIhGBn4" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;RZSCBIhGBn4&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/RZSCBIhGBn4?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Prefer a manual click through version?</p><p><a href="https://guides.agiledata.io/demo/cmflomypg048l170irpj5zf6h">https://guides.agiledata.io/demo/cmflomypg048l170irpj5zf6h</a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://guides.agiledata.io/demo/cmflomypg048l170irpj5zf6h&quot;,&quot;text&quot;:&quot;Click through demo&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://guides.agiledata.io/demo/cmflomypg048l170irpj5zf6h"><span>Click through demo</span></a></p><p></p><h3><strong>GUI centric Chatbot</strong></h3><p>Your typical browser Chatbot and Text to SQL interface.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jEDG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jEDG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png 424w, https://substackcdn.com/image/fetch/$s_!jEDG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png 848w, https://substackcdn.com/image/fetch/$s_!jEDG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png 1272w, https://substackcdn.com/image/fetch/$s_!jEDG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jEDG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png" width="1456" height="1152" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1152,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:589833,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/173056020?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jEDG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png 424w, https://substackcdn.com/image/fetch/$s_!jEDG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png 848w, https://substackcdn.com/image/fetch/$s_!jEDG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png 1272w, https://substackcdn.com/image/fetch/$s_!jEDG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F072af401-42d0-4337-8274-2ecc4be25258_1571x1243.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!O_57!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!O_57!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png 424w, https://substackcdn.com/image/fetch/$s_!O_57!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png 848w, https://substackcdn.com/image/fetch/$s_!O_57!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png 1272w, https://substackcdn.com/image/fetch/$s_!O_57!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!O_57!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png" width="1456" height="293" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:293,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:74506,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/173056020?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!O_57!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png 424w, https://substackcdn.com/image/fetch/$s_!O_57!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png 848w, https://substackcdn.com/image/fetch/$s_!O_57!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png 1272w, https://substackcdn.com/image/fetch/$s_!O_57!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e7f188c-5dce-4ba6-9e76-745cecf2cd95_1571x316.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mRY2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mRY2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png 424w, https://substackcdn.com/image/fetch/$s_!mRY2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png 848w, https://substackcdn.com/image/fetch/$s_!mRY2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png 1272w, https://substackcdn.com/image/fetch/$s_!mRY2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mRY2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png" width="1456" height="1144" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1144,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:283618,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/173056020?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mRY2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png 424w, https://substackcdn.com/image/fetch/$s_!mRY2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png 848w, https://substackcdn.com/image/fetch/$s_!mRY2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png 1272w, https://substackcdn.com/image/fetch/$s_!mRY2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3738d6e5-2ff6-4249-9961-136440a03b05_1573x1236.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!O2Jv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!O2Jv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png 424w, https://substackcdn.com/image/fetch/$s_!O2Jv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png 848w, https://substackcdn.com/image/fetch/$s_!O2Jv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png 1272w, https://substackcdn.com/image/fetch/$s_!O2Jv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!O2Jv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png" width="1456" height="1144" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1144,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:293870,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/173056020?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!O2Jv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png 424w, https://substackcdn.com/image/fetch/$s_!O2Jv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png 848w, https://substackcdn.com/image/fetch/$s_!O2Jv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png 1272w, https://substackcdn.com/image/fetch/$s_!O2Jv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53380c1a-af14-4225-a9f5-1a794576d1c8_1573x1236.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mKPr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mKPr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png 424w, https://substackcdn.com/image/fetch/$s_!mKPr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png 848w, https://substackcdn.com/image/fetch/$s_!mKPr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png 1272w, https://substackcdn.com/image/fetch/$s_!mKPr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mKPr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png" width="1456" height="1144" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1144,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:200008,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/173056020?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mKPr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png 424w, https://substackcdn.com/image/fetch/$s_!mKPr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png 848w, https://substackcdn.com/image/fetch/$s_!mKPr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png 1272w, https://substackcdn.com/image/fetch/$s_!mKPr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5908839-527b-4474-a003-85be2c74a3cb_1573x1236.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h3><strong>GenAI App </strong></h3><p>Typical Claude &#8220;AI Agent&#8221; app tool interface.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Y-1G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Y-1G!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png 424w, https://substackcdn.com/image/fetch/$s_!Y-1G!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png 848w, https://substackcdn.com/image/fetch/$s_!Y-1G!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png 1272w, https://substackcdn.com/image/fetch/$s_!Y-1G!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Y-1G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png" width="1456" height="1129" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1129,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:287899,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/173056020?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Y-1G!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png 424w, https://substackcdn.com/image/fetch/$s_!Y-1G!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png 848w, https://substackcdn.com/image/fetch/$s_!Y-1G!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png 1272w, https://substackcdn.com/image/fetch/$s_!Y-1G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11776f26-ed4f-453c-b685-da3ac852d3e5_1580x1225.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3><strong>CLI Tool</strong></h3><p>Typical Gemini CLI command line interface.</p><p>[Screenshot TBA]</p><p></p><h3><strong>API&#8217;s</strong></h3><p>Typical API endpoints.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7F_e!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7F_e!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png 424w, https://substackcdn.com/image/fetch/$s_!7F_e!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png 848w, https://substackcdn.com/image/fetch/$s_!7F_e!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png 1272w, https://substackcdn.com/image/fetch/$s_!7F_e!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7F_e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png" width="1456" height="1154" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1154,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:240018,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/173056020?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7F_e!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png 424w, https://substackcdn.com/image/fetch/$s_!7F_e!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png 848w, https://substackcdn.com/image/fetch/$s_!7F_e!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png 1272w, https://substackcdn.com/image/fetch/$s_!7F_e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3df0d9f5-0573-4319-af6d-e116bc72d56f_1570x1244.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8KDs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8KDs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png 424w, https://substackcdn.com/image/fetch/$s_!8KDs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png 848w, https://substackcdn.com/image/fetch/$s_!8KDs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png 1272w, https://substackcdn.com/image/fetch/$s_!8KDs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8KDs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png" width="1456" height="1154" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1154,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:226052,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/173056020?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8KDs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png 424w, https://substackcdn.com/image/fetch/$s_!8KDs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png 848w, https://substackcdn.com/image/fetch/$s_!8KDs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png 1272w, https://substackcdn.com/image/fetch/$s_!8KDs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32b481df-9774-49c3-b405-c14de7d8ee95_1570x1244.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Missing UX patterns</h2><p>The key UX pattern I have yet to discover is how the Agent to Agent UX works.</p><p>I think we will need to do a McSpikey with the Google A2A to understand the options in that space a little more.</p><h2>The Technology patterns</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qvhG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qvhG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png 424w, https://substackcdn.com/image/fetch/$s_!qvhG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png 848w, https://substackcdn.com/image/fetch/$s_!qvhG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png 1272w, https://substackcdn.com/image/fetch/$s_!qvhG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qvhG!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png" width="1200" height="597.5274725274726" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:725,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qvhG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png 424w, https://substackcdn.com/image/fetch/$s_!qvhG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png 848w, https://substackcdn.com/image/fetch/$s_!qvhG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png 1272w, https://substackcdn.com/image/fetch/$s_!qvhG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe837de5c-289c-4e22-94e9-b3f701b3e6c2_5996x2984.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>We already had a lot of the technology patterns in place before we started experimenting with the Context Plane.</p><p>Things like the browser based Data Catalog capability.</p><p>We also had a lot of ADI already built based on &#8220;AI Assisted&#8221; features we have experimented with over the last 6 odd years.</p><p>Our App and Platform architecture has always been based on API&#8217;s in the middle:</p><p>App &gt; API &gt; Context &gt; Code / Data</p><p>The main iteration technology wise has been the addition of a MCP server.   This has allowed the use of tools like Claude and Gemini CLI.</p><p>We have iterated ADI to use the MCP server to access the Context (well we actually use a hybrid access model but ill leave the diagram as simple as this for now.)</p><h2>So many new questions</h2><h3>User?</h3><p>UX stands for User Experience, but some of these persona types and use cases are machines not humans, should they still be referred to as Users?</p><h3>BI Semantic Layer?</h3><p>Where does the typical BI Tools and the &#8220;BI Semantic Layer&#8221; pattern fit into this?</p><p>For Context Plane we are only holding an Organisations Context not their Data, so we can&#8217;t execute any queries, like we can in the AgileData App and Platform.</p><p>Or do we want to look at generating the query the human can cut and paste into the data platform.</p><p>Or do we want a Context Agent to push the Query to a BI agent inside the Organisations agent ecosystem?</p><p>We don&#8217;t provide a caching layer or query rewrite patterns which is what the BI Semantic Layers / Metric Layers are doing these days.  Im pretty sure we don&#8217;t want to go there.</p><p>When will BI Tools move to using MCP servers as a way of querying the data?</p><p>When will they all put Agents in from of their BI Semantic Layers"?</p><h3>One step forward, but a raft of new uncertainties</h3><p>So many new questions, so few answers.</p><p>Looks like there even more McSpikeys to add to the list!</p><h2>Wood from the Trees</h2><p>Still a way to go before I have a coherent set of Patterns that I can Coach / Mentor / Teach somebody else for the &#8220;Context Plane&#8221;, and the &#8220;AI Data Stack&#8221; or present as a robust Architecture map.</p><p>But as I have already said, writing my half formed ideas helps me think.</p><h2>An incoherent stream of Context</h2><p>You can find all the previous articles with my train of thought listed in this thread:<br><br><a href="https://agiledata.substack.com/t/context-plane">https://agiledata.substack.com/t/context-plane</a><br><br>We are building the Context Plane while flying it, so always looking for early adopters to help us decide the final destination<br><br>If you want a virtual chat grab a slot here:<br><br><a href="https://contextplane.ai/contact-us/#bookemdanno">https://contextplane.ai/contact-us/#bookemdanno</a></p><p></p><p></p>]]></content:encoded></item><item><title><![CDATA["Things" and "Thing Types" in the Context Plane]]></title><description><![CDATA[How I think about the things and the thing types that need to be in the Context Plane to power "AI Agents"]]></description><link>https://agiledata.info/p/things-and-thing-types-in-the-context</link><guid isPermaLink="false">https://agiledata.info/p/things-and-thing-types-in-the-context</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Wed, 03 Sep 2025 22:30:56 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!_naJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>How I think about the things and the thing types that need to be in the Context Plane to power "AI Agents"<br></p><blockquote><p><strong>&#8220;Context&#8221; of this post</strong></p></blockquote><p>I often find writing helps me coalesce and refine my thoughts when new patterns start to emerge, but aren&#8217;t very clear yet.  </p><p>So this article is a brain dump / train of thought continuation of the architecture needed to have one Context Plane to rule them all, as part of a proposed &#8220;AI Data Stack&#8221;.<br><br>This article provides an overview of a way to describe both the Object Types and the Object Categories that will hold the metadata I think should be included in the Context Plane as part of a new &#8220;AI Data Stack&#8221;.</p><h4>The Context Plane Architecture</h4><p>I have written some initial thoughts about the architecture of the Context Plane and the things that shoud be stored or federated in it before.<br></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;d2a6fc03-99d2-40bd-9780-b20ffef35db7&quot;,&quot;caption&quot;:&quot;How I think about the things that need to be in the \&quot;Context Plane\&quot; to power \&quot;AI Agents\&quot;&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Things in the \&quot;Context Plane\&quot;&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data and analytics teams change the Way they Work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-07-06T21:35:38.775Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!cCKT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/things-in-the-context-plane&quot;,&quot;section_name&quot;:&quot;AgileData Product&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:167407832,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!ErtR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8892c64-a0c7-4c7b-9f49-a73be5280f22_1280x1280.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p> </p><p>As a quick reminder my current thinking is the architecture diagram for the Context Plane should look something like this:</p><p><br></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vPvT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vPvT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 424w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 848w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 1272w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vPvT!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png" width="1200" height="667.5824175824176" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:810,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vPvT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 424w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 848w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 1272w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Object Types stored in the Context Plane</h2><p>In that previous article I did a bit of a stocktake of all the Patterns and Pattern Templates I see in the Data Domain that hold what I would term as Context.</p><p>I have been mulling those over more as we do each McSpikey (experiment) to learn more by doing and to reduce some of the many uncertainties we have identified.</p><p>I am currently sitting with this list of Object Types that seem to have value being stored or federated in the Context Plane:</p><ul><li><p>Outcomes</p></li><li><p>Actions</p></li><li><p>Business Questions</p></li><li><p>Business Glossary of terms, aliases and descriptions (use tags for Aliases)</p></li><li><p>Conceptual Data Model</p></li><li><p>Logical Data Model</p></li><li><p>Physical Data Model</p></li><li><p>Data Dictionary (with schema, fields types, field descriptions etc, also flags)</p></li><li><p>Facts</p></li><li><p>Transformation code</p></li><li><p>Data Quality Rules</p></li><li><p>Data Contract (Boundary of other Objects))</p></li><li><p>Measures, and their formulas</p></li><li><p>Metrics and their formulas</p></li><li><p>Information Applications (Reports, dashboards, AI Agents etc)</p></li><li><p>Information Products (Boundary of other Objects)</p></li><li><p>Data Quality Scores</p></li><li><p>Notifications</p></li><li><p>Usage Statistic</p></li><li><p>Data Sync Statistics</p></li><li><p>Number of rows in tiles</p></li><li><p>Principles</p></li><li><p>Policies</p></li><li><p>Patterns</p></li><li><p>Personas</p></li><li><p>Previous effort of change</p></li></ul><h2>Semantic Language is important</h2><p>I often rail against the lack of clear Semantic definition in the Data Domain, but I am often as loose with my definitions as anybody else.<br><br> I had original used the following terms:</p><ul><li><p>Context Object</p></li><li><p>Context Object Types</p></li></ul><p>But as is the LinkedIn way <strong><a href="https://www.linkedin.com/in/gabrieltanase">Gabriel Tanase</a> </strong>kindly reviewed my crap semantic definitions and provided a much better version.</p><p><a href="https://www.linkedin.com/feed/update/urn:li:activity:7366194247613501441?commentUrn=urn%3Ali%3Acomment%3A%28activity%3A7366194247613501441%2C7366400089965129728%29&amp;dashCommentUrn=urn%3Ali%3Afsd_comment%3A%287366400089965129728%2Curn%3Ali%3Aactivity%3A7366194247613501441%29">https://www.linkedin.com/feed/update/urn:li:activity:7366194247613501441?commentUrn=urn%3Ali%3Acomment%3A%28activity%3A7366194247613501441%2C7366400089965129728%29&amp;dashCommentUrn=urn%3Ali%3Afsd_comment%3A%287366400089965129728%2Curn%3Ali%3Aactivity%3A7366194247613501441%29</a></p><div class="pullquote"><p>The confusion here may be terminological, between "Objects" and "Object Types".<br><br>The "Context Objects" you listed are, in my view, "Context Object Types", since you are speaking in general, about classes of stuff. <br><br>OTOH, an individual instance would be a "Context Object", obviously of exactly one "Context Object Type". E.g., an individual Action is one Context Object, that belongs to the "Actions" Context Objects Type.<br><br>The four things you call "Context Types" are just super-classes / domains / groupings of Context Object Types.<br></p></div><p>So based on that I have ended up with:</p><ul><li><p><strong>Context Object</strong><br>A single instance of something in the Context Plane (e.g. the action &#8220;Approve Loan&#8221;).</p></li><li><p><strong>Context Object Type</strong><br>The class or category that defines what kind of object it is (e.g. <em>Actions</em>).</p></li><li><p><strong>Context Object Type Category</strong><br>A higher-level grouping of related object types that share a domain (e.g. <em>Business Context</em>).</p></li></ul><h2>Not reinventing the Wheel</h2><p>Gabriel also pointed me at some excellent documentation from Collibra in that thread, for example:<br><br><a href="https://productresources.collibra.com/docs/collibra/latest/Content/Settings/OperatingModel/to_operating-model-settings.htm">https://productresources.collibra.com/docs/collibra/latest/Content/Settings/OperatingModel/to_operating-model-settings.htm</a></p><p>Im always keen to reuse Patterns from others, rather than reinventing the wheel so to speak, and so I went down a rabbit hole of the excellent Collibra documentation.</p><p>I came away with a feeling of an architecture that is founded on the Pattern of &#8220;thing is a thing of a thing&#8221;.   </p><p>Which of course is an infinitely flexible Pattern, but to me has always been an Anti-Pattern and so not a Pattern I want to adopt.</p><p>I will need to spend more time looking into bth the Data Catalog and Information Science domains as I am pretty confident that the Patterns I am looking for already exist.<br><br>But there is also the value of trying to defining these patterns myself, as I learn by doing (and struggling).  Plus when I finally think i have nutted something else and I spot that same pattern articulated in lots of other places then I knwo I am on to something repeatable and valuable.</p><h2><br>Context Object Type Categories</h2><p>Back on task, these are the Context Object Type Categories I have ended up with.</p><ul><li><p><strong>Business Context</strong><br>Captures the intent, language, and needs that connect data work to business language.</p></li><li><p><strong>Structural Context</strong><br>Describes the technical metadata that defines how data is stored, shaped, and connected.</p></li><li><p><strong>Operational Context</strong><br>Provides the live signals and guardrails (trust scores, usage stats, policies, and access rules etc) that keep data reliable and governed in practice.</p></li><li><p><strong>Agent Context</strong><br>Provides the prompts and guardrails that guide AI agents in applying context.<br></p></li></ul><p>Yes Structural Context is the same as what is commonly called  &#8220;Technical Metadata&#8221;.</p><p>My definition for Operational Context has got examples, which means I  do not have a clear semantic defintion for it yet, so I need to keep iterating that one.</p><h2>Mapping Context Object Types to Categories</h2><p>I stress tested my categorisation by trying to assign the Context Object Types to one and only one category.</p><blockquote><p>Moving to the AssistedAI pattern and letting my ChatGPT friend expand my bullet point list to become richer text and write a more detailed story, ever so slightly edited by me &#8230;.</p></blockquote><p>When people talk about data, they often focus on the raw tables, pipelines, and dashboards. But the real power comes from the <strong>Context</strong> that surrounds them, the language, the intent, the rules, and the patterns that let both Humans and AI agents understand what data means and how it should be used.</p><p>In the Context Plane, we capture that knowledge as a set of <strong>Object Types</strong>. These are building blocks that represent everything from business questions to transformation code, from policies to personas. Together, they create a shared layer of context that connects business, data, operational and agentic worlds.</p><p>To make sense of them, we group these Objects Types into four categories: <strong>Business Context, Structural Context, Operational Context, and Agent Context.</strong></p><div><hr></div><h2><strong>Business Context</strong></h2><p>Object Types in the Business Context category capture the <em>why</em> behind the data: the intent, the questions, and the people who care.</p><ul><li><p><strong>Business Questions</strong> &#8211; The driving questions that stakeholders ask and want answered.</p></li><li><p><strong>Actions</strong> &#8211; What people (or processes) actually do with data once they have it.</p></li><li><p><strong>Outcomes</strong> &#8211; The results or changes in the business that happen because of those actions.</p></li><li><p><strong>Business Glossary</strong> &#8211; Shared terms, their aliases, and agreed definitions, so everyone speaks the same language.</p></li><li><p><strong>Conceptual Data Model</strong> &#8211; The high-level map of business concepts (customers, products, orders) and how they relate.</p></li><li><p><strong>Logical Data Model</strong> &#8211; A more detailed structure that shows how those concepts can be represented in data.</p></li><li><p><strong>Personas</strong> &#8211; Representations of the different types of people who use or consume data, each with their own needs.</p></li><li><p><strong>Information Products</strong> &#8211; The boundary objects that package up context into a consumable unit, such as a unified customer view, a churn model, or a financial performance pack.</p></li></ul><div><hr></div><h2><strong>Structural Context</strong></h2><p>Object Types in the Structural Context category describe the <em>what</em> of data: the way it&#8217;s stored, shaped, and transformed to become useful.</p><ul><li><p><strong>Physical Data Model</strong> &#8211; The actual schema and structures in the database.</p></li><li><p><strong>Data Dictionary</strong> &#8211; A catalog of fields, data types, and descriptions, along with useful flags.</p></li><li><p><strong>Facts</strong> &#8211; Core, measurable events or counts in the data (e.g. sales transactions, logins).</p></li><li><p><strong>Transformation Code</strong> &#8211; The SQL, scripts, or pipelines that turn raw data into shaped, ready-to-use structures.</p></li><li><p><strong>Data Quality Rules</strong> &#8211; Checks and guardrails that ensure the data stays trustworthy.</p></li><li><p><strong>Measures</strong> &#8211; Defined calculations, such as revenue or average handling time.</p></li><li><p><strong>Metrics</strong> &#8211; Business-relevant measures with formulas and thresholds (e.g. Net Promoter Score, Churn Rate).</p></li><li><p><strong>Information Applications</strong> &#8211; The outputs where information is applied and consumed: reports, dashboards, AI agents, apps.</p></li></ul><div><hr></div><h2><strong>Operational Context</strong></h2><p>Object Types in the Operational Context category describe the <em>how well</em> and <em>at what cost</em> dimensions of data. These objects let us monitor and manage the reliability and change effort of the system.</p><ul><li><p><strong>Usage Statistics</strong> &#8211; Insights into who is using which data, when, and how often.</p></li><li><p><strong>Data Quality Scores</strong> &#8211; Aggregated indicators that show how healthy the data is across rules and checks.</p></li><li><p><strong>Data Sync Statistics</strong> &#8211; Performance and freshness indicators of data movement.</p></li><li><p><strong>Number of Rows in Tiles</strong> &#8211; A quick proxy for data size and growth in a given slice of the platform.</p></li><li><p><strong>Notifications</strong> &#8211; Alerts that something requires attention, whether it&#8217;s a failed job or a threshold breach.</p></li><li><p><strong>Principles, Policies, Patterns</strong> &#8211; The guiding rules and repeatable approaches that shape how data is managed.</p></li><li><p><strong>Previous Effort of Change</strong> &#8211; A signal of how much time, cost, and disruption a past change required, helping estimate future impact.</p></li></ul><div><hr></div><h2><strong>Agent Context</strong></h2><p>Finally, Object Types in the Agent Context category deals with the <em>prompts</em> and instructions that guide AI agents in using all this context. These Objects define the boundaries and cues for generative systems to behave predictably and helpfully.</p><ul><li><p><strong>Prompts</strong> &#8211; The structured inputs, templates, and guardrails that tell an AI agent how to use context objects to answer questions, generate insights, or perform actions.</p></li></ul><div><hr></div><h2><strong>Why it Matters</strong></h2><p>Each Object Type might seem less than valuable in isolation, but together they form a unified layer of meaning, that can be used by Humans and AI Agents alike to gain understanding.</p><p>By capturing both the <strong>why</strong> (business intent) and the <strong>what</strong> (structural detail), as well as the <strong>how well</strong> (operational health) and the <strong>how to guide agents</strong> (AI context), the Context Plane ensures that every stakeholder&#8212;whether a business leader, a data engineer, or an AI agent&#8212;works from the same playbook.</p><p>That&#8217;s how you move from disconnected metadata and data assets to a coherent ecosystem where context is always present, always available, and always shared.</p><blockquote><p>And back to all me again &#8230;.</p></blockquote><h3>And once again with a map</h3><p>Visual maps often give a better quick view than plain text, so here you go:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_naJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_naJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png 424w, https://substackcdn.com/image/fetch/$s_!_naJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png 848w, https://substackcdn.com/image/fetch/$s_!_naJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png 1272w, https://substackcdn.com/image/fetch/$s_!_naJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_naJ!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png" width="1200" height="366.75824175824175" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:445,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:474984,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/172724737?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_naJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png 424w, https://substackcdn.com/image/fetch/$s_!_naJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png 848w, https://substackcdn.com/image/fetch/$s_!_naJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png 1272w, https://substackcdn.com/image/fetch/$s_!_naJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F446cea6d-8c0e-4b81-a18d-ddc9e5a262d3_2179x666.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Far from Done Done</h3><p>Based in my experience to date I will be iterating the Object Types and their categorisation for a while yet, but I think I have the the four Context Object Type Categories pretty stable.</p><p>Famous last words?</p><h2>Wood from the Trees</h2><p>Still a way to go before I have a coherent set of Patterns that I can Coach / Mentor / Teach somebody else for the &#8220;Context Plane&#8221;, and the &#8220;AI Data Stack&#8221; or present as a robust Architecture map.</p><p>But as I have already said, writing my half formed ideas helps me think.</p><h2>An incoherent stream of Context</h2><p>You can find all the previous articles with my train of thought listed in this thread:<br><br><a href="https://agiledata.substack.com/t/context-plane">https://agiledata.substack.com/t/context-plane</a></p><p>We are building the Context Plane while flying it, so always looking for early adopters to help us decide the final destination.<br><br>If you want a virtual chat grab a slot here:<br><br><a href="https://contextplane.ai/contact-us/#bookemdanno">https://contextplane.ai/contact-us/#bookemdanno</a></p>]]></content:encoded></item><item><title><![CDATA[Context Plane AI Agent in a Web App]]></title><description><![CDATA[it works but is it valuable, viable feasible and useful?]]></description><link>https://agiledata.info/p/context-plane-ai-agent-in-a-web-app</link><guid isPermaLink="false">https://agiledata.info/p/context-plane-ai-agent-in-a-web-app</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Wed, 20 Aug 2025 21:29:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1G3d!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Is having an AI Agent in the Web App for the Context Plane a good idea?</p><blockquote><p><strong>&#8220;Context&#8221; of this post</strong></p></blockquote><p>I often find writing helps me coalesce and refine my thoughts when new patterns start to emerge, but aren&#8217;t very clear yet.  </p><p>So this article is a brain dump / train of thought continuation of the product and architecture needed to have one Context Plane to rule them all, as part of a proposed &#8220;AI Data Stack&#8221;.<br><br>This article provides an overview of adding the AI Agent capability to the AgileData Web App.</p><h2>Not starting from scratch</h2><p>We have been experimenting with an in App &#8220;Chatbot&#8221; helper in the the AgileData App for multiple years so I was lucky we already had the core UX needed for us to experiment with this feature.</p><p>And we had already integrated Gemini with the AgileData App a while ago.  We already used it to assist or automate a few of the more complex bits of data work.</p><p>So it was &#8221;just&#8221; a case of changing the Gemini Model we were using to switch over to use Gemini 2.5 Pro to get the reasoning capability and also adding the connector to expose it to our MCP Server.<br></p><div class="pullquote"><p>Simples!</p><p>(he says as Nigel did all the work) </p></div><p>So from a AgileData App UX point of view nothing changed.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oimh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oimh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png 424w, https://substackcdn.com/image/fetch/$s_!oimh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png 848w, https://substackcdn.com/image/fetch/$s_!oimh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!oimh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oimh!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png" width="1200" height="873.6263736263736" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:1060,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:99696,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oimh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png 424w, https://substackcdn.com/image/fetch/$s_!oimh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png 848w, https://substackcdn.com/image/fetch/$s_!oimh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!oimh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a6088b0-4e71-49ea-8b52-2bcead007e3b_1714x1248.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Same Prompt</h2><p>We have a simple set of prompts already defined in the AgileData Platform for ADI.</p><pre><code>You are ADI, the AI assistant inside the AgileData.io product. Your purpose is to guide a data team of one&#8212;a data analyst&#8212;in configuring a data warehouse using the AgileData App and Platform.

Context &amp; Capabilities:

You have access to:
&#9;&#8226;&#9;The AgileData user guides
&#9;&#8226;&#9;The screens and workflows within the AgileData app
&#9;&#8226;&#9;The APIs that power the AgileData app and platform
&#9;&#8226;&#9;The data stored in the AgileData platform

The Challenge:
&#9;&#8226;&#9;Every set of data has unique challenges.
&#9;&#8226;&#9;There is no single, linear process for working with data&#8212;users must &#8220;pick a path&#8221; or &#8220;choose their own adventure.&#8221;
&#9;&#8226;&#9;Each user will dynamically use the AgileData app in different ways based on their specific needs.

Who You Are Helping:
&#9;&#8226;&#9;The user is data-savvy but not a data professional, not a highly technical user, not a data expert.
&#9;&#8226;&#9;They may not always know exactly what data task they need to do&#8212;but they know the outcome they are aiming for.

How You Should Respond:
&#9;&#8226;&#9;Be clear and practical: Guide the user toward the best approach to complete their data task efficiently.
&#9;&#8226;&#9;Adapt to their needs: If they are unclear on what to do, ask clarifying questions and suggest possible paths forward.
&#9;&#8226;&#9;Use all available information: Leverage guides, app screens, APIs, and platform data to provide the most relevant answers.
&#9;&#8226;&#9;Encourage exploration: Offer multiple options for how they could proceed, allowing them to discover the best way forward.
&#9;&#8226;&#9;Think like a mentor, not a manual: Rather than just explaining how the platform works, help the user make decisions that will get them to their goal.
&#9;&#8226;&#9;Present them with the relevant url to the relevant screen if that will help them complete the task

When you have multiple choices:
&#9;&#8226;&#9;Pick the one you think is the most suitable and do that.
&#9;&#8226;&#9;Append the other options you had to your response and tell the Data Analyst which choice you selected, let them know they can tell you to pick another option.


Your goal is not just to answer questions but to help the user successfully build their data warehouse in the most effective way possible&#8212;no matter what challenges they face.</code></pre><p>As you can see they are based on previous experiments where we were focussed on helping a Data Analyst build a Data Warehouse as a &#8220;team of one&#8221;.</p><p>I left this prompt in place for this experiment, but I should do another McSpikey where I tailor them for the Context Plane use cases.</p><p>In previous experiments where I used Gemini CLI and Claude to access the Context in the Context Plane, there was no &#8220;system&#8221; prompts in place at all so this should mean I get slightly different responses from Gemini 2.5 Pro in the AgileData App vs Gemini 2.5 Pro in the Gemini CLI.</p><p>ADI also has access to our Doco and also examples screens from the App, so again it has more Agent Context than the previous experiments with Gemini CLI had, as that only had access to the API&#8217;s via the MCP Server.</p><h2>MCP Services</h2><p>We limited the services available in the AgileData App to a subset of the available APIs.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6BOQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6BOQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png 424w, https://substackcdn.com/image/fetch/$s_!6BOQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png 848w, https://substackcdn.com/image/fetch/$s_!6BOQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!6BOQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6BOQ!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png" width="1200" height="873.6263736263736" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:1060,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:170790,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6BOQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png 424w, https://substackcdn.com/image/fetch/$s_!6BOQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png 848w, https://substackcdn.com/image/fetch/$s_!6BOQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!6BOQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5033a887-147d-42df-89ef-57a5388075b5_1714x1248.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>When I use my typical question to get a list of Tiles and a list of Fields in a specific Tile then it pretty get the response I am expecting, no surprises there.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GuTB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GuTB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png 424w, https://substackcdn.com/image/fetch/$s_!GuTB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png 848w, https://substackcdn.com/image/fetch/$s_!GuTB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!GuTB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GuTB!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png" width="1200" height="873.6263736263736" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:1060,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:683810,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GuTB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png 424w, https://substackcdn.com/image/fetch/$s_!GuTB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png 848w, https://substackcdn.com/image/fetch/$s_!GuTB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!GuTB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc376e836-3c6c-4a48-8c85-b15f8a1efdfa_1714x1248.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LqG8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LqG8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png 424w, https://substackcdn.com/image/fetch/$s_!LqG8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png 848w, https://substackcdn.com/image/fetch/$s_!LqG8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!LqG8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LqG8!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png" width="1200" height="873.6263736263736" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:1060,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:399325,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LqG8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png 424w, https://substackcdn.com/image/fetch/$s_!LqG8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png 848w, https://substackcdn.com/image/fetch/$s_!LqG8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!LqG8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5c51042-7415-42cc-a10a-eba23338f50f_1714x1248.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Except &#8230;&#8230;</h2><p>When I use Claude to get the Blast Radius for a field change it gives me very rich Context back.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ulul!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ulul!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png 424w, https://substackcdn.com/image/fetch/$s_!Ulul!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png 848w, https://substackcdn.com/image/fetch/$s_!Ulul!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png 1272w, https://substackcdn.com/image/fetch/$s_!Ulul!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ulul!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png" width="1200" height="950.2747252747253" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:1153,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:254361,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ulul!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png 424w, https://substackcdn.com/image/fetch/$s_!Ulul!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png 848w, https://substackcdn.com/image/fetch/$s_!Ulul!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png 1272w, https://substackcdn.com/image/fetch/$s_!Ulul!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01ecdb-b002-4d7a-bb63-7a8098f9cac5_1664x1318.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>ADI in the AgileData App however&#8230;</p><p>She ain&#8217;t being that helpful!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1G3d!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1G3d!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png 424w, https://substackcdn.com/image/fetch/$s_!1G3d!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png 848w, https://substackcdn.com/image/fetch/$s_!1G3d!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png 1272w, https://substackcdn.com/image/fetch/$s_!1G3d!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1G3d!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png" width="1200" height="871.1538461538462" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:1057,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:440534,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1G3d!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png 424w, https://substackcdn.com/image/fetch/$s_!1G3d!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png 848w, https://substackcdn.com/image/fetch/$s_!1G3d!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png 1272w, https://substackcdn.com/image/fetch/$s_!1G3d!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09193048-4a54-46ea-aa65-58d6b6ed374a_1717x1247.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Over to Gemini CLI to see if its her or Gemini.</p><h4>Ah nope</h4><p>We made a fundamental change to the MCP Server we are using since the last McSpikey.  The previous version only had access to a subset of our API&#8217;s as tools.  We changed it to have access to all API&#8217;s.</p><p>For Claude this didn&#8217;t really make much of a difference, but for Gemini CLI it seemed to have a major impact and not in a good way.</p><p>Listing the tiles always seems to work ok, simple task.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!iv8a!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!iv8a!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png 424w, https://substackcdn.com/image/fetch/$s_!iv8a!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png 848w, https://substackcdn.com/image/fetch/$s_!iv8a!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png 1272w, https://substackcdn.com/image/fetch/$s_!iv8a!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!iv8a!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png" width="1200" height="686.5384615384615" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:833,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:459322,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!iv8a!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png 424w, https://substackcdn.com/image/fetch/$s_!iv8a!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png 848w, https://substackcdn.com/image/fetch/$s_!iv8a!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png 1272w, https://substackcdn.com/image/fetch/$s_!iv8a!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd3c6d5a-3d15-4783-9a59-71aefe3f3803_1459x835.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Listing the fields in a tile has worked well up until we made the MCP Server Tool change.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rjFR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rjFR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png 424w, https://substackcdn.com/image/fetch/$s_!rjFR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png 848w, https://substackcdn.com/image/fetch/$s_!rjFR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png 1272w, https://substackcdn.com/image/fetch/$s_!rjFR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rjFR!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png" width="1200" height="109.61538461538461" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:133,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:60406,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rjFR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png 424w, https://substackcdn.com/image/fetch/$s_!rjFR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png 848w, https://substackcdn.com/image/fetch/$s_!rjFR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png 1272w, https://substackcdn.com/image/fetch/$s_!rjFR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e51fab6-3704-48a3-84d6-5696634921fb_1459x133.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>That is the LLM version of go F$#@ yourself lol.</p><p>I had a quick go to see if I could limit the Tools that Gemini CLI could access on the client side, as we limited them in both the AgileData App for ADI and I limited them in the Claude client.</p><p>So new entries in the Gemini CLI settings.json it is:</p><pre><code>  "securityPolicy": {
    "mode": "configured",
    "allowedTools": [
      "get_business_glossary",
      "get_catalog_tiles",
      "get_ensemble_config",
      "get_change_rules"
    ]
  }</code></pre><p>But that did nada, when I listed the tools in Gemini CLI using /mcp it could still see them all and there was no behaviour change.</p><p>If I was very specific with my language it would sometimes work:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RHry!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RHry!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png 424w, https://substackcdn.com/image/fetch/$s_!RHry!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png 848w, https://substackcdn.com/image/fetch/$s_!RHry!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png 1272w, https://substackcdn.com/image/fetch/$s_!RHry!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RHry!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png" width="1200" height="87.36263736263736" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:106,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:56524,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RHry!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png 424w, https://substackcdn.com/image/fetch/$s_!RHry!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png 848w, https://substackcdn.com/image/fetch/$s_!RHry!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png 1272w, https://substackcdn.com/image/fetch/$s_!RHry!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09691254-a5a0-4a3d-af85-ba513117288b_1459x106.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4d1v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4d1v!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png 424w, https://substackcdn.com/image/fetch/$s_!4d1v!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png 848w, https://substackcdn.com/image/fetch/$s_!4d1v!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png 1272w, https://substackcdn.com/image/fetch/$s_!4d1v!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4d1v!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png" width="1200" height="248.07692307692307" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:301,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:129895,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4d1v!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png 424w, https://substackcdn.com/image/fetch/$s_!4d1v!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png 848w, https://substackcdn.com/image/fetch/$s_!4d1v!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png 1272w, https://substackcdn.com/image/fetch/$s_!4d1v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1de47faa-7d79-4c44-9472-6c2b5f48dcdf_1459x302.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>But then it would go back to be a real dumb arse again.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!byuZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!byuZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png 424w, https://substackcdn.com/image/fetch/$s_!byuZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png 848w, https://substackcdn.com/image/fetch/$s_!byuZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png 1272w, https://substackcdn.com/image/fetch/$s_!byuZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!byuZ!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png" width="1200" height="78.2967032967033" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:95,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:56162,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!byuZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png 424w, https://substackcdn.com/image/fetch/$s_!byuZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png 848w, https://substackcdn.com/image/fetch/$s_!byuZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png 1272w, https://substackcdn.com/image/fetch/$s_!byuZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0a6ed7-c484-43da-8c5b-b1432294c452_1459x95.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>So back to very specific language:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fd-8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fd-8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png 424w, https://substackcdn.com/image/fetch/$s_!fd-8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png 848w, https://substackcdn.com/image/fetch/$s_!fd-8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png 1272w, https://substackcdn.com/image/fetch/$s_!fd-8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fd-8!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png" width="1200" height="54.395604395604394" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:66,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:27769,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fd-8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png 424w, https://substackcdn.com/image/fetch/$s_!fd-8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png 848w, https://substackcdn.com/image/fetch/$s_!fd-8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png 1272w, https://substackcdn.com/image/fetch/$s_!fd-8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff48bccb7-7f7f-4063-97f7-87a78ee472d0_1459x66.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!svje!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!svje!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png 424w, https://substackcdn.com/image/fetch/$s_!svje!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png 848w, https://substackcdn.com/image/fetch/$s_!svje!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png 1272w, https://substackcdn.com/image/fetch/$s_!svje!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!svje!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png" width="1200" height="512.6373626373627" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:622,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:479060,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!svje!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png 424w, https://substackcdn.com/image/fetch/$s_!svje!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png 848w, https://substackcdn.com/image/fetch/$s_!svje!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png 1272w, https://substackcdn.com/image/fetch/$s_!svje!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740c9486-deb8-4759-890c-2f09143d06f2_1459x623.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>So theories from that rabbit hole:</p><ul><li><p>To many MCP Server Tools makes the AI Agent Tools job harder</p></li><li><p>The previous Tools we exposed had some additional hints in the naming of the Tool that probably helped the AI Agent Tools</p></li><li><p>Gemini 2.5 Pro is not as good as Claude Sonnet 4 for this use case </p><p></p></li></ul><h4>One more thing</h4><p>I ran Gemini CLI against a different AgileData Tenancy, Newcastle, compared to the ADI version which was running in the Kapiti Tenancy (hence the change in Tile name I was asking questions about).</p><p>Lets go try ADI in the Newcastle Tenancy and see what happens.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ROxZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ROxZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png 424w, https://substackcdn.com/image/fetch/$s_!ROxZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png 848w, https://substackcdn.com/image/fetch/$s_!ROxZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png 1272w, https://substackcdn.com/image/fetch/$s_!ROxZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ROxZ!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png" width="1200" height="871.1538461538462" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:1057,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:439799,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/171434525?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ROxZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png 424w, https://substackcdn.com/image/fetch/$s_!ROxZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png 848w, https://substackcdn.com/image/fetch/$s_!ROxZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png 1272w, https://substackcdn.com/image/fetch/$s_!ROxZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0e6442-783b-4647-b0e8-0fe2cfde621f_1717x1247.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Nope same problem.</p><p>So Im going to guess the problem could be:</p><ul><li><p>the Gemini 2.5 Pro model</p></li><li><p>and / or the extra MCP Server Tools</p></li><li><p>and / or the Prompts in the AgileData Platform</p></li><li><p>and / or all of the above</p></li></ul><p>that is causing the problems.</p><p>Out out time for this McSpikey so thats is an experiment for another day.</p><h2>So in Summary</h2><p>We can provide a web based interface in the AgileData App easily enough by reusing the current ADI capability.</p><p>But need to work out if it actually has any value.</p><p>And also validate the assumption that it would be a different personas using it compared to a AI Agent Tool and should that impact the type of response they receive or not.  Gut feel is no, it should be &#8220;any Human, any AI tool, same response&#8221;</p><p>And I need to experiment with the combination of LLM models, MCP Server Tools  and Prompts a lot more.</p><h3>Claude Sonnet 4 seems more compotent than Gemini 2.5 Pro</h3><p>Well for this use case anyway. I just seemed to get back better &#8220;Context&#8221; from my Context when I use Claude over Gemini.</p><h3>As slow as a wet pig</h3><p>One of the surprises was ADI  was sooooo slow in the Kapiti Tenancy vs the Newcastle Tenancy.</p><p>Check it out.</p><h4>Newcastle</h4><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;74c48a37-25c5-4e22-9c51-31ecb76cbc81&quot;,&quot;duration&quot;:null}"></div><h4>Kapiti</h4><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;b1acd8d9-d80f-4004-920c-820dbfa4c207&quot;,&quot;duration&quot;:null}"></div><p>Almost twice as long in Kapiti vs Newcastle.</p><h4>One of these things is not like the other</h4><p>After chatting with Nigel it seems were running Gemini 2.5 Flash in Newcastle and Gemini 2.5 Pro in Kapiti, hence the difference in response times.</p><p>So another McSpikey needed to see how different the responses are between the two models for our key use cases.</p><h2>Its all about the reducing uncertainity</h2><p>The key to a McSpikey is to reduce uncertainty and for this McSpikey I think we have increased the uncertainty.</p><p>But thats ok, better to know that now than later when we are much further down the Context Plane path. </p><h2>Wood from the Trees</h2><p>Still a way to go before I have a coherent set of Patterns that I can Coach / Mentor / Teach somebody else for the &#8220;Context Plane&#8221;, and the &#8220;AI Data Stack&#8221; or present as a robust Product Overview and / or Architecture map.</p><p>But as I have already said, writing my half formed ideas helps me think.</p><h2>Context Plane Use Cases</h2><p>You can find all the use cases where I think the Context Plane may have sone value over at:</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://contextplane.ai/use-case/&quot;,&quot;text&quot;:&quot;ContextPlane.ai&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://contextplane.ai/use-case/"><span>ContextPlane.ai</span></a></p><h2>An incoherent stream of Context</h2><p>You can find all the previous articles with my train of thought listed in this thread:<br><br><a href="https://agiledata.substack.com/t/context-plane">https://agiledata.substack.com/t/context-plane</a></p><p></p><p>We are building the Context Plane while flying it, so always looking for early adopters to help us decide the final destination.<br><br>If you want a virtual chat grab a slot here:<br><br><a href="https://contextplane.ai/contact-us/#bookemdanno">https://contextplane.ai/contact-us/#bookemdanno</a></p>]]></content:encoded></item><item><title><![CDATA[Creating and Updating Context via an AI Agent tool]]></title><description><![CDATA[and via the use of a MCP Server]]></description><link>https://agiledata.info/p/creating-and-updating-context-via</link><guid isPermaLink="false">https://agiledata.info/p/creating-and-updating-context-via</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Wed, 06 Aug 2025 05:06:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!RRZQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Creating and Updating Context via an AI Agent Tool and via the use of a MCP Server</p><blockquote><p><strong>&#8220;Context&#8221; of this post</strong></p></blockquote><p>I often find writing helps me coalesce and refine my thoughts when new patterns start to emerge, but aren&#8217;t very clear yet.  </p><p>So this article is a brain dump / train of thought continuation of the architecture needed to have one Context Plane to rule them all, as part of a proposed &#8220;AI Data Stack&#8221;.<br><br>This article provides an overview of creating and updating Context via a AI Agent Tools such as Claude and Gemini CLI within the &#8220;Context Plane&#8221;  and via the use of a MCP Server.</p><h2>Are they really AI Agents?</h2><p>First thing first are Claude and Gemini CLI&#8217;s really &#8220;AI Agents&#8221; or are they just &#8220;Tools&#8221; that you can use to build agents?</p><p>I think of them as tools, other people I have asked think of them as Agents, so for now lets call them &#8220;AI Agent Tools&#8221;, to cover both Semantic versions.</p><h2>Architecture Reminder</h2><p>As a reminder of what we are currently working with we ended up with an architecture that looks like:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FAJ8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FAJ8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png 424w, https://substackcdn.com/image/fetch/$s_!FAJ8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png 848w, https://substackcdn.com/image/fetch/$s_!FAJ8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png 1272w, https://substackcdn.com/image/fetch/$s_!FAJ8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FAJ8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png" width="1456" height="236" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:236,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FAJ8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png 424w, https://substackcdn.com/image/fetch/$s_!FAJ8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png 848w, https://substackcdn.com/image/fetch/$s_!FAJ8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png 1272w, https://substackcdn.com/image/fetch/$s_!FAJ8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7571f97e-5c88-4c2f-8fae-10d07453b4af_3608x584.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><ul><li><p>Claude, Gemini CLI etc talks to MCP Service</p></li><li><p>MCP Service calls applicable API (exposed as MCP tools)</p></li><li><p>API talks to &#8220;Context Plane&#8221;<br></p></li></ul><h2>Connecting Claude to MCP server</h2><p>Nigel uses Claude for his McSpikeys on the &#8220;Context Plane&#8221; and so I would join the fun.</p><p>First thing was download the Claude App for my Mac, and then find the option to set it to dark mode so I can pretend to look like a proper engineer.<br><br>Second thing is you need to pay for Claude if you want to use it with MCP Servers, so NZD $40 a month added to the ever growing AgileData McSpikey toolkit cost bucket.</p><p>Next thing hook it up to our &#8220;Context Plane&#8221; MCP Server via the custom connector:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VHky!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VHky!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png 424w, https://substackcdn.com/image/fetch/$s_!VHky!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png 848w, https://substackcdn.com/image/fetch/$s_!VHky!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png 1272w, https://substackcdn.com/image/fetch/$s_!VHky!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VHky!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png" width="544" height="308" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:308,&quot;width&quot;:544,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:27955,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VHky!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png 424w, https://substackcdn.com/image/fetch/$s_!VHky!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png 848w, https://substackcdn.com/image/fetch/$s_!VHky!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png 1272w, https://substackcdn.com/image/fetch/$s_!VHky!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f5f2b28-ae19-4f48-ab0f-c070a1f4473d_544x308.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Chnl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Chnl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png 424w, https://substackcdn.com/image/fetch/$s_!Chnl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png 848w, https://substackcdn.com/image/fetch/$s_!Chnl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png 1272w, https://substackcdn.com/image/fetch/$s_!Chnl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Chnl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png" width="1039" height="213" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:213,&quot;width&quot;:1039,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:29861,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Chnl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png 424w, https://substackcdn.com/image/fetch/$s_!Chnl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png 848w, https://substackcdn.com/image/fetch/$s_!Chnl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png 1272w, https://substackcdn.com/image/fetch/$s_!Chnl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F861be27c-1e8f-43f4-9d24-17c2dd9ab4eb_1039x213.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RRZQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RRZQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png 424w, https://substackcdn.com/image/fetch/$s_!RRZQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png 848w, https://substackcdn.com/image/fetch/$s_!RRZQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png 1272w, https://substackcdn.com/image/fetch/$s_!RRZQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RRZQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png" width="637" height="567" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:567,&quot;width&quot;:637,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:65819,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RRZQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png 424w, https://substackcdn.com/image/fetch/$s_!RRZQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png 848w, https://substackcdn.com/image/fetch/$s_!RRZQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png 1272w, https://substackcdn.com/image/fetch/$s_!RRZQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ba369b1-3d91-448f-b389-5ae9aec48781_637x567.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>A little bit of cheating on the auth side for this McSpikey but Claude makes it all pretty easy.</p><h2>Update, Update baby</h2><p>(Sung to the tune of Ice, Ice baby)</p><p>Nigel has done his plumbing magic and exposed the API that allows the creation or update of a Catalog Tile (think of Tiles as Conceptual or Physical tables).</p><p>New tool is enabled for Claude.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eSaJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eSaJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png 424w, https://substackcdn.com/image/fetch/$s_!eSaJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png 848w, https://substackcdn.com/image/fetch/$s_!eSaJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png 1272w, https://substackcdn.com/image/fetch/$s_!eSaJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eSaJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png" width="637" height="63" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:63,&quot;width&quot;:637,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:14434,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!eSaJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png 424w, https://substackcdn.com/image/fetch/$s_!eSaJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png 848w, https://substackcdn.com/image/fetch/$s_!eSaJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png 1272w, https://substackcdn.com/image/fetch/$s_!eSaJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1fcd7982-3e69-409e-b703-4002030e9df3_637x63.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pa_E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pa_E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png 424w, https://substackcdn.com/image/fetch/$s_!pa_E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png 848w, https://substackcdn.com/image/fetch/$s_!pa_E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png 1272w, https://substackcdn.com/image/fetch/$s_!pa_E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pa_E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png" width="979" height="777" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:777,&quot;width&quot;:979,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:142426,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!pa_E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png 424w, https://substackcdn.com/image/fetch/$s_!pa_E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png 848w, https://substackcdn.com/image/fetch/$s_!pa_E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png 1272w, https://substackcdn.com/image/fetch/$s_!pa_E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07d0dabd-38d7-4f77-a57c-529019acf715_979x777.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>And its available for Gemini CLI.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SJ7E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SJ7E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png 424w, https://substackcdn.com/image/fetch/$s_!SJ7E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png 848w, https://substackcdn.com/image/fetch/$s_!SJ7E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png 1272w, https://substackcdn.com/image/fetch/$s_!SJ7E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SJ7E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png" width="633" height="450" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:450,&quot;width&quot;:633,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:173482,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!SJ7E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png 424w, https://substackcdn.com/image/fetch/$s_!SJ7E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png 848w, https://substackcdn.com/image/fetch/$s_!SJ7E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png 1272w, https://substackcdn.com/image/fetch/$s_!SJ7E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c28eca5-89ea-43b3-956d-4c9699492247_633x450.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2>Any AI Agent Tool</h2><p>I can see a lot of value in the concept of a MCP Service and tools being exposed via that service. </p><p>People can bring what ever AI Agent Tool they prefer to do the work, and we can expose new tools at will and they all just talk nicely to each other.</p><p>Imagine if all our other data, analytics and BI tools had that level of interoperability!</p><h2>Lets update a Tile</h2><h3>List Tiles</h3><p>First lets list the Tiles that are available in the Context Plane.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kCcs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kCcs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png 424w, https://substackcdn.com/image/fetch/$s_!kCcs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png 848w, https://substackcdn.com/image/fetch/$s_!kCcs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png 1272w, https://substackcdn.com/image/fetch/$s_!kCcs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kCcs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png" width="979" height="1186" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1186,&quot;width&quot;:979,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:230135,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kCcs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png 424w, https://substackcdn.com/image/fetch/$s_!kCcs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png 848w, https://substackcdn.com/image/fetch/$s_!kCcs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png 1272w, https://substackcdn.com/image/fetch/$s_!kCcs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1df76a23-4501-45ba-bebd-a1b1dce7c169_979x1186.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Doco!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Doco!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png 424w, https://substackcdn.com/image/fetch/$s_!Doco!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png 848w, https://substackcdn.com/image/fetch/$s_!Doco!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png 1272w, https://substackcdn.com/image/fetch/$s_!Doco!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Doco!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png" width="1022" height="429" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:429,&quot;width&quot;:1022,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:237769,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Doco!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png 424w, https://substackcdn.com/image/fetch/$s_!Doco!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png 848w, https://substackcdn.com/image/fetch/$s_!Doco!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png 1272w, https://substackcdn.com/image/fetch/$s_!Doco!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc15097c9-0946-49c0-badf-f2f1ad5b08ad_1022x429.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Gemini CLI was way slower at processing this task than Claude!</p><h3>Lets try an update</h3><p>Its still easier for me to quickly check the details for a Tile in the AgileData App:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dUNt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dUNt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png 424w, https://substackcdn.com/image/fetch/$s_!dUNt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png 848w, https://substackcdn.com/image/fetch/$s_!dUNt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!dUNt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dUNt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png" width="1456" height="972" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:972,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:221276,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dUNt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png 424w, https://substackcdn.com/image/fetch/$s_!dUNt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png 848w, https://substackcdn.com/image/fetch/$s_!dUNt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!dUNt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c928738-8272-4f46-acd6-8462edcf6827_1870x1248.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Claude first.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!W-kg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!W-kg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png 424w, https://substackcdn.com/image/fetch/$s_!W-kg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png 848w, https://substackcdn.com/image/fetch/$s_!W-kg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png 1272w, https://substackcdn.com/image/fetch/$s_!W-kg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!W-kg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png" width="716" height="449" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:449,&quot;width&quot;:716,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:73403,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!W-kg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png 424w, https://substackcdn.com/image/fetch/$s_!W-kg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png 848w, https://substackcdn.com/image/fetch/$s_!W-kg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png 1272w, https://substackcdn.com/image/fetch/$s_!W-kg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F957baa08-a70c-4e5a-959d-a751ec52f4fe_716x449.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IKuG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IKuG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png 424w, https://substackcdn.com/image/fetch/$s_!IKuG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png 848w, https://substackcdn.com/image/fetch/$s_!IKuG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!IKuG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IKuG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png" width="1456" height="972" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:972,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:244596,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!IKuG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png 424w, https://substackcdn.com/image/fetch/$s_!IKuG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png 848w, https://substackcdn.com/image/fetch/$s_!IKuG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!IKuG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad427cc-f27e-4aaa-b4f0-d624449b06ef_1869x1248.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Then Gemini.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!isnP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!isnP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png 424w, https://substackcdn.com/image/fetch/$s_!isnP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png 848w, https://substackcdn.com/image/fetch/$s_!isnP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png 1272w, https://substackcdn.com/image/fetch/$s_!isnP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!isnP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png" width="1396" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1396,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:297693,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!isnP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png 424w, https://substackcdn.com/image/fetch/$s_!isnP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png 848w, https://substackcdn.com/image/fetch/$s_!isnP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png 1272w, https://substackcdn.com/image/fetch/$s_!isnP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3df06fc-7884-4cc8-aa32-40e1a7d0f41e_1396x720.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!75ha!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!75ha!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png 424w, https://substackcdn.com/image/fetch/$s_!75ha!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png 848w, https://substackcdn.com/image/fetch/$s_!75ha!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!75ha!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!75ha!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png" width="1456" height="973" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:973,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:242952,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!75ha!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png 424w, https://substackcdn.com/image/fetch/$s_!75ha!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png 848w, https://substackcdn.com/image/fetch/$s_!75ha!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!75ha!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f15c162-0177-43f3-ab2f-107be381883d_1868x1248.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Ok simple example but proves it all works.</p><h2>Lets create a new Tile</h2><p>Claude first.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QNkY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QNkY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png 424w, https://substackcdn.com/image/fetch/$s_!QNkY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png 848w, https://substackcdn.com/image/fetch/$s_!QNkY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png 1272w, https://substackcdn.com/image/fetch/$s_!QNkY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QNkY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png" width="809" height="674" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:674,&quot;width&quot;:809,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:124737,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QNkY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png 424w, https://substackcdn.com/image/fetch/$s_!QNkY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png 848w, https://substackcdn.com/image/fetch/$s_!QNkY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png 1272w, https://substackcdn.com/image/fetch/$s_!QNkY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2072a25-4bb8-4753-b4ea-32dc1100efe2_809x674.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Hell no I ain&#8217;t spending time giving you all that &#8220;Context&#8221; (well not for this McSpikey anyway). </p><p>So minimal details you shall have.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_h83!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_h83!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png 424w, https://substackcdn.com/image/fetch/$s_!_h83!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png 848w, https://substackcdn.com/image/fetch/$s_!_h83!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png 1272w, https://substackcdn.com/image/fetch/$s_!_h83!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_h83!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png" width="809" height="674" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:674,&quot;width&quot;:809,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:90541,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_h83!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png 424w, https://substackcdn.com/image/fetch/$s_!_h83!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png 848w, https://substackcdn.com/image/fetch/$s_!_h83!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png 1272w, https://substackcdn.com/image/fetch/$s_!_h83!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F892ca6b4-827f-4f1c-a9de-a1c2334567b6_809x674.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gHb4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gHb4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png 424w, https://substackcdn.com/image/fetch/$s_!gHb4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png 848w, https://substackcdn.com/image/fetch/$s_!gHb4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png 1272w, https://substackcdn.com/image/fetch/$s_!gHb4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gHb4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png" width="1456" height="970" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:970,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:194963,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!gHb4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png 424w, https://substackcdn.com/image/fetch/$s_!gHb4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png 848w, https://substackcdn.com/image/fetch/$s_!gHb4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png 1272w, https://substackcdn.com/image/fetch/$s_!gHb4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9972d8bc-1f06-408f-8122-85ad690ae18e_1863x1241.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DDaP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DDaP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png 424w, https://substackcdn.com/image/fetch/$s_!DDaP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png 848w, https://substackcdn.com/image/fetch/$s_!DDaP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png 1272w, https://substackcdn.com/image/fetch/$s_!DDaP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DDaP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png" width="1456" height="970" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:970,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:182470,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!DDaP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png 424w, https://substackcdn.com/image/fetch/$s_!DDaP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png 848w, https://substackcdn.com/image/fetch/$s_!DDaP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png 1272w, https://substackcdn.com/image/fetch/$s_!DDaP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740e1fac-ea65-4fc0-8c97-d692d9c504a6_1863x1241.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><br>Gemini&#8217;s turn.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!q-1u!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!q-1u!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png 424w, https://substackcdn.com/image/fetch/$s_!q-1u!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png 848w, https://substackcdn.com/image/fetch/$s_!q-1u!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png 1272w, https://substackcdn.com/image/fetch/$s_!q-1u!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!q-1u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png" width="1180" height="96" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/de2fa769-6358-4a64-930c-1742431c13b3_1180x96.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:96,&quot;width&quot;:1180,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:32144,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!q-1u!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png 424w, https://substackcdn.com/image/fetch/$s_!q-1u!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png 848w, https://substackcdn.com/image/fetch/$s_!q-1u!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png 1272w, https://substackcdn.com/image/fetch/$s_!q-1u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde2fa769-6358-4a64-930c-1742431c13b3_1180x96.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Mmmmm well I know what I need to provide as the minimal amount of detail to create a Draft Tile, but most won&#8217;t, so Claude deffo wins this one so far.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!udog!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!udog!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png 424w, https://substackcdn.com/image/fetch/$s_!udog!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png 848w, https://substackcdn.com/image/fetch/$s_!udog!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png 1272w, https://substackcdn.com/image/fetch/$s_!udog!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!udog!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png" width="1335" height="607" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ca328754-b487-4342-9be4-ad51180eb081_1335x607.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:607,&quot;width&quot;:1335,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:242963,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!udog!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png 424w, https://substackcdn.com/image/fetch/$s_!udog!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png 848w, https://substackcdn.com/image/fetch/$s_!udog!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png 1272w, https://substackcdn.com/image/fetch/$s_!udog!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fca328754-b487-4342-9be4-ad51180eb081_1335x607.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>But Gemini did do the job.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Kp3m!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Kp3m!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png 424w, https://substackcdn.com/image/fetch/$s_!Kp3m!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png 848w, https://substackcdn.com/image/fetch/$s_!Kp3m!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png 1272w, https://substackcdn.com/image/fetch/$s_!Kp3m!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Kp3m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png" width="1456" height="973" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:973,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:207016,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Kp3m!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png 424w, https://substackcdn.com/image/fetch/$s_!Kp3m!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png 848w, https://substackcdn.com/image/fetch/$s_!Kp3m!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png 1272w, https://substackcdn.com/image/fetch/$s_!Kp3m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae4b485b-dc36-4a62-a93e-45764f419788_1865x1246.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xMyy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xMyy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png 424w, https://substackcdn.com/image/fetch/$s_!xMyy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png 848w, https://substackcdn.com/image/fetch/$s_!xMyy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png 1272w, https://substackcdn.com/image/fetch/$s_!xMyy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xMyy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png" width="1456" height="973" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:973,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:180615,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xMyy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png 424w, https://substackcdn.com/image/fetch/$s_!xMyy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png 848w, https://substackcdn.com/image/fetch/$s_!xMyy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png 1272w, https://substackcdn.com/image/fetch/$s_!xMyy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea8ac675-c78e-4f9b-a3c1-58e3efaf31a2_1865x1246.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><br>Update Tags</h2><p>In the AgileData Platform we allow the same Tile Alias to be used (of course each Tile gets a unique GUID), so lets see if we can differentiate them using Tags.</p><p>Claude first</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Cd5B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Cd5B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png 424w, https://substackcdn.com/image/fetch/$s_!Cd5B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png 848w, https://substackcdn.com/image/fetch/$s_!Cd5B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png 1272w, https://substackcdn.com/image/fetch/$s_!Cd5B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Cd5B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png" width="981" height="811" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:811,&quot;width&quot;:981,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:147051,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Cd5B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png 424w, https://substackcdn.com/image/fetch/$s_!Cd5B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png 848w, https://substackcdn.com/image/fetch/$s_!Cd5B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png 1272w, https://substackcdn.com/image/fetch/$s_!Cd5B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4891ea28-278f-43f5-bc32-18fd16beaf1c_981x811.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>We hold Topics as an array for a Tile.  Claude worked out that Tag was the same as Topic, but failed at adding one to the Tile.  It did try a few different way to try and achieve its task.</p><p>Over to Gemini to shine (or not as the case maybe)</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Caq6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Caq6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png 424w, https://substackcdn.com/image/fetch/$s_!Caq6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png 848w, https://substackcdn.com/image/fetch/$s_!Caq6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png 1272w, https://substackcdn.com/image/fetch/$s_!Caq6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Caq6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png" width="1456" height="582" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:582,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:241513,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Caq6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png 424w, https://substackcdn.com/image/fetch/$s_!Caq6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png 848w, https://substackcdn.com/image/fetch/$s_!Caq6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png 1272w, https://substackcdn.com/image/fetch/$s_!Caq6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e337be0-46ad-4ae7-965a-7b6285ad479b_1470x588.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!c2iJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!c2iJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png 424w, https://substackcdn.com/image/fetch/$s_!c2iJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png 848w, https://substackcdn.com/image/fetch/$s_!c2iJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png 1272w, https://substackcdn.com/image/fetch/$s_!c2iJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!c2iJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png" width="1456" height="582" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:582,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:241432,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!c2iJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png 424w, https://substackcdn.com/image/fetch/$s_!c2iJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png 848w, https://substackcdn.com/image/fetch/$s_!c2iJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png 1272w, https://substackcdn.com/image/fetch/$s_!c2iJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe229bb49-22be-432c-b0bf-50ddbf4c8ee5_1470x588.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Mmmm but have you really Gemini?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7LT2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7LT2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png 424w, https://substackcdn.com/image/fetch/$s_!7LT2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png 848w, https://substackcdn.com/image/fetch/$s_!7LT2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png 1272w, https://substackcdn.com/image/fetch/$s_!7LT2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7LT2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png" width="1456" height="970" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:970,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:201427,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7LT2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png 424w, https://substackcdn.com/image/fetch/$s_!7LT2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png 848w, https://substackcdn.com/image/fetch/$s_!7LT2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png 1272w, https://substackcdn.com/image/fetch/$s_!7LT2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3444642d-c3c8-4b45-97c5-ee3a0691e31f_1865x1242.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QBgb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QBgb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png 424w, https://substackcdn.com/image/fetch/$s_!QBgb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png 848w, https://substackcdn.com/image/fetch/$s_!QBgb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png 1272w, https://substackcdn.com/image/fetch/$s_!QBgb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QBgb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png" width="1456" height="970" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:970,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:179278,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/170236825?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QBgb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png 424w, https://substackcdn.com/image/fetch/$s_!QBgb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png 848w, https://substackcdn.com/image/fetch/$s_!QBgb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png 1272w, https://substackcdn.com/image/fetch/$s_!QBgb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2fd80d7-c925-455b-813f-2b9e75ad1be7_1865x1242.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Nope in fact you have not, you may call it Hallucination I call it damn lying!</p><h2>So in Summary</h2><p>I am not sure this is the fastest way for me to create and edit Tiles in the &#8220;Context Plane&#8221;.  But that is because I know how to quickly do it via the AgileData App.</p><p>I can see for people that prefer code, this would be much faster for them.<br><br>Claude is deffo more helpful with its feedback loops as it does the work, and is also much faster in doing those tasks.</p><p>But I think the &#8220;use any tool&#8221; pattern has massive value, what I am thinking of as:<br></p><div class="pullquote"><p><strong>CORE<br>Context Once, Reuse Everywhere</strong></p></div><p>As does my other favourite saying:</p><div class="pullquote"><p><strong>DORO<br>Define Once, Reuse Often</strong></p></div><p>The fact we can expose our API&#8217;s as Tools to the MCP Service and any &#8220;AI Agent Tool&#8221; gets access to it straight away, is one step closer to the data technology &#8220;Interoperability&#8221; that we have been striving to achieve for over the 3 decades I have being working in the data domain.</p><h2> The &#8220;Golden Path&#8221; problem</h2><p>This is a major problem for us in the AgileData App.</p><p>Nigel and I know how to use the AgileData App and Platform to do data work that takes hours in minutes.  But nobody else does.</p><p>As Data Professionals already know,  there is no &#8220;Golden Path&#8221; to doing data work.  No linear steps of this then that, which apply everytime.<br><br>Every new set of data kicks your arse the first time you touch it.</p><p>So we designed the AgileData App and Platform so that it allowed you to do the work in any order.</p><p>But that made it confusing for people who have never used it before, or done data work very often.</p><p>We tried a bunch of things over the last 6 1/2 years, user guides, video examples, click through demos, and even a ChatBot, nothing really nailed it.</p><p>I can see how &#8220;AI Agent Tools&#8221; like Claude and Gemini CLI solve this &#8220;Golden Path&#8221; problem.</p><p>But as we experiment with the &#8220;Context Plane&#8221; I think we have stumbled across another bigger complex problem, at potentially the right time, that we can solve with simplicity.</p><p>So of course I had to create a website just in case I was right.<br><br><a href="https://ContextPlane.ai">https://ContextPlane.ai</a></p><p>Time to design a new T-Shirt.</p><p>Actually if your reading this Nigel, of course i&#8217;m not! (um well &#8230;..)</p><h2>Wood from the Trees</h2><p>Still a way to go before I have a coherent set of Patterns that I can Coach / Mentor / Teach somebody else for the &#8220;Context Plane&#8221;, and the &#8220;AI Data Stack&#8221; or present as a robust Architecture map.</p><p>But as I have already said, writing my half formed ideas helps me think.</p><h2>An incoherent stream of Context</h2><p>You can find all the previous articles with my train of thought listed in this thread:<br><br><a href="https://agiledata.substack.com/t/context-plane">https://agiledata.substack.com/t/context-plane</a></p><p>We are building the Context Plane while flying it, so always looking for early adopters to help us decide the final destination.<br><br>If you want a virtual chat grab a slot here:<br><br><a href="https://contextplane.ai/contact-us/#bookemdanno">https://contextplane.ai/contact-us/#bookemdanno</a></p>]]></content:encoded></item><item><title><![CDATA[Integrating Gemini CLI with the "Context Plane"]]></title><description><![CDATA[via the use of a MCP Server]]></description><link>https://agiledata.info/p/integrating-gemini-cli-with-the-context</link><guid isPermaLink="false">https://agiledata.info/p/integrating-gemini-cli-with-the-context</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Tue, 29 Jul 2025 20:23:20 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1Smh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Integrating Gemini CLI with the "Context Plane" via the use of a MCP Server<br></p><blockquote><p><strong>&#8220;Context&#8221; of this post</strong></p></blockquote><p>I often find writing helps me coalesce and refine my thoughts when new patterns start to emerge, but aren&#8217;t very clear yet.  </p><p>So this article is a brain dump / train of thought continuation of the architecture needed to have one Context Plane to rule them all, as part of a proposed &#8220;AI Data Stack&#8221;.<br><br>This article provides an overview of integrating and using Claude and Google Gemini CLI with the &#8220;Context Plane&#8221; via a MCP service.</p><h2>MCP (Model Context Protocol)</h2><p>The next thing I wanted to understand was how a MCP would work with the current version of the &#8220;Context Plane&#8221; we have in the current AgileData Platform.</p><h4>McSpikey</h4><p>So time to do a McSpikey (experiment) with Nigel.  Success for this experiment was to be able to query the AgileData &#8220;Context Plane&#8221; with tools such as Claude and Gemini CLI.</p><h4>MCP Server</h4><p>We are a Google Cloud only platform so we thought that using this MCP server would make sense</p><p><a href="https://github.com/googleapis/genai-toolbox">https://github.com/googleapis/genai-toolbox</a></p><p>But after some investigation Nigel worked out it would mean a lot of rework, as we would have had to define all the tools and sql queries needed to query Google Spanner, where we store our Context.</p><p>Since we already have all those queries defined as part of the AgileData Platform API&#8217;s. Nigel discovered that we could just wrap our existing FastAPI endpoints with FastApiMCP and so we implemented that.</p><p>In the words of Nigel:</p><div class="pullquote"><p>toolbox is just a wrapper for the same transports etc we are using, we just get them from free and dont need to write all the config that it requires &#8230; think 5mins to enable compared to hours of</p></div><p>We always like minutes over hours at AgileData and we love the DORO principle (Define Once, Reuse Often)</p><p>There were some challenges deploying FastAPIMcCP via Google App Engine, if you want more details on that just ask and Nigel can write up a more technical post on how that went.<br></p><h4>Architecture</h4><p>So we ended up with an architecture that looks like:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!n7k2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!n7k2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png 424w, https://substackcdn.com/image/fetch/$s_!n7k2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png 848w, https://substackcdn.com/image/fetch/$s_!n7k2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png 1272w, https://substackcdn.com/image/fetch/$s_!n7k2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!n7k2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png" width="1456" height="236" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:236,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!n7k2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png 424w, https://substackcdn.com/image/fetch/$s_!n7k2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png 848w, https://substackcdn.com/image/fetch/$s_!n7k2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png 1272w, https://substackcdn.com/image/fetch/$s_!n7k2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fa94cd6-ada3-49bf-bc7d-94902f993556_3608x584.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><ul><li><p>Gemini CLI talks to MCP Service</p></li><li><p>MCP Service calls applicable API (exposed as tools)</p></li><li><p>API talks to &#8220;Context Plane&#8221;<br></p></li></ul><h2>Connecting Gemini CLI to MCP server</h2><p>Its always funny what takes the most time when doing a McSpikey.</p><p>When Nigel setup the MCP server he connected to it using Claude, next learning you need to have a paid version of Claude to provide MCP connectivity.</p><p>So I though I would use Google Gemini CLI for me.</p><p>Next learning, the paid version of Claude makes it very easy to define the MCP connection, you pretty much paste the url for it in.</p><p>Gemini CLI not so much, you need to frig around with JSON strings in a settings.json file.</p><p>And of course finding the exact structure for that JSON is a pain.<br><br>After a bit of trial and error got it working with this:</p><pre><code>{
  &#8220;selectedAuthType&#8221;: &#8220;oauth-personal&#8221;,
  &#8220;theme&#8221;: &#8220;Dracula&#8221;,
&#8220;mcpServers&#8221;: {
  &#8220;MCPServer1": {
    &#8220;url&#8221;: "https://mcpserver1/mcp
  }
}
}</code></pre><h2>Lets Get  Ready to Rumble</h2><h3>Does it connect?</h3><p>So first test does it connect to our &#8220;Context Plane&#8221;?</p><pre><code><em>/mcp list</em></code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1Smh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1Smh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png 424w, https://substackcdn.com/image/fetch/$s_!1Smh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png 848w, https://substackcdn.com/image/fetch/$s_!1Smh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png 1272w, https://substackcdn.com/image/fetch/$s_!1Smh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1Smh!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png" width="1200" height="603.2967032967033" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:732,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:364481,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1Smh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png 424w, https://substackcdn.com/image/fetch/$s_!1Smh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png 848w, https://substackcdn.com/image/fetch/$s_!1Smh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png 1272w, https://substackcdn.com/image/fetch/$s_!1Smh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb020b3d8-13d5-4e5b-969e-c4791fa8a42e_1571x790.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Yup it can see the MCP server and it can see four API end points that we have exposed.</p><h3>Does it see Context objects?</h3><p>Next lets test if it can see objects stored in the &#8220;Context Plane&#8221;</p><pre><code>list tile names</code></pre><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Nyh7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Nyh7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png 424w, https://substackcdn.com/image/fetch/$s_!Nyh7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png 848w, https://substackcdn.com/image/fetch/$s_!Nyh7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png 1272w, https://substackcdn.com/image/fetch/$s_!Nyh7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Nyh7!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png" width="1200" height="267.85714285714283" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:325,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:203520,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Nyh7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png 424w, https://substackcdn.com/image/fetch/$s_!Nyh7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png 848w, https://substackcdn.com/image/fetch/$s_!Nyh7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png 1272w, https://substackcdn.com/image/fetch/$s_!Nyh7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc854ac-094a-47b6-8ced-3cc6d1e311c9_1571x351.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Its worked out the correct API to hit to get back a list of Tiles from the Catalog.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dI6F!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dI6F!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png 424w, https://substackcdn.com/image/fetch/$s_!dI6F!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png 848w, https://substackcdn.com/image/fetch/$s_!dI6F!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png 1272w, https://substackcdn.com/image/fetch/$s_!dI6F!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dI6F!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png" width="1200" height="286.8131868131868" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:348,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:160526,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dI6F!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png 424w, https://substackcdn.com/image/fetch/$s_!dI6F!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png 848w, https://substackcdn.com/image/fetch/$s_!dI6F!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png 1272w, https://substackcdn.com/image/fetch/$s_!dI6F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22c0541b-46e1-4835-ac72-74960b8eb8ce_1571x375.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>And its given me a list of Tile names.</p><h3>Does it understand Context for those objects?</h3><p>We run a layered data architecture and the Data Layer is held as Context for the Tiles, not in the tile name etc. So that why im getting multiple Tiles back with the same name.</p><p>Lets try to get some Context.</p><pre><code>list tile names and their data layer</code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zyIB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zyIB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png 424w, https://substackcdn.com/image/fetch/$s_!zyIB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png 848w, https://substackcdn.com/image/fetch/$s_!zyIB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png 1272w, https://substackcdn.com/image/fetch/$s_!zyIB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zyIB!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png" width="1200" height="330.4945054945055" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:401,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:213475,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!zyIB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png 424w, https://substackcdn.com/image/fetch/$s_!zyIB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png 848w, https://substackcdn.com/image/fetch/$s_!zyIB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png 1272w, https://substackcdn.com/image/fetch/$s_!zyIB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd131ae3f-b2d4-4cd8-915f-74db41a08862_1571x433.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>All good, it worked out what Data Layer the Tiles belong in.</p><p>Interestingly we never use the term &#8220;Data Layer&#8221; in the &#8220;Context Plane&#8221;,  im guessing its picked up the Data Layer from the table prefix or the object type we hold against each tile.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9NtM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9NtM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png 424w, https://substackcdn.com/image/fetch/$s_!9NtM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png 848w, https://substackcdn.com/image/fetch/$s_!9NtM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png 1272w, https://substackcdn.com/image/fetch/$s_!9NtM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9NtM!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png" width="1200" height="49.45054945054945" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:60,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:35113,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9NtM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png 424w, https://substackcdn.com/image/fetch/$s_!9NtM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png 848w, https://substackcdn.com/image/fetch/$s_!9NtM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png 1272w, https://substackcdn.com/image/fetch/$s_!9NtM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e6ce31b-2a3f-415a-80d7-4dd887b3bbe8_1571x65.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><br>I had assumed we would need to add extensive aliasing of terms in the &#8220;Context Plane&#8221; to make it find answers to people natural language questions, but given Gemini CLI is backed by the Gemini LLM maybe we don&#8217;t.</p><p>(This is the value of doing a McSpikey, you discover things you didn&#8217;t know, and of course end up with more questions to answer).</p><h2>Real Life Use Cases</h2><p>I have been asking people at the coal face for use cases they constantly hit where they think accessing the &#8220;Context Plane&#8221; may reduce the complexity of the data work they do.<br><br>Im looking for use cases that are more than the usual &#8220;text to SQL&#8221; use case everybody now has as table stakes in their product.</p><h3>Get Data Catalog Tiles</h3><p>We have already proven we can connect and get Catalog Tiles using Gemini CLI.</p><p>But I am a GUI by default kinda guy and so for that use case I would just use the Catalog search screen in the AgileData App.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NccB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NccB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png 424w, https://substackcdn.com/image/fetch/$s_!NccB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png 848w, https://substackcdn.com/image/fetch/$s_!NccB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png 1272w, https://substackcdn.com/image/fetch/$s_!NccB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NccB!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png" width="1200" height="798.75" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:852,&quot;width&quot;:1280,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!NccB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png 424w, https://substackcdn.com/image/fetch/$s_!NccB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png 848w, https://substackcdn.com/image/fetch/$s_!NccB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png 1272w, https://substackcdn.com/image/fetch/$s_!NccB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9266f5e5-35d2-4074-a4fa-5c4d7347a657_1280x852.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>A couple of clicks and i&#8217;m done, no need to type lots of words.</p><h3>Ask a question, get an answer, Context provided for me</h3><p>The challenge with the App approach is I know that I need to search for Consume Tiles if I want to use the data on a Last Mile report.  A new user would not.</p><p>So lets try that scenario by asking:</p><pre><code>I need to use Netflix data in the report I have to create for the boss</code></pre><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uBlp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uBlp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png 424w, https://substackcdn.com/image/fetch/$s_!uBlp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png 848w, https://substackcdn.com/image/fetch/$s_!uBlp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png 1272w, https://substackcdn.com/image/fetch/$s_!uBlp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uBlp!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png" width="1200" height="196.97802197802199" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:239,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:142319,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!uBlp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png 424w, https://substackcdn.com/image/fetch/$s_!uBlp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png 848w, https://substackcdn.com/image/fetch/$s_!uBlp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png 1272w, https://substackcdn.com/image/fetch/$s_!uBlp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94dc003e-6eb6-4f40-85f4-e38a4126015f_1571x258.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Again its using the concept of our Data Layers to understand that data in the Consume layer should be used in a report.</p><p>Given we have provided no RAG or Prompt reinforcement on our Data Layer Architecture I wonder if its because we use clear terms like &#8220;Consume&#8221; rather than &#8220;Gold&#8221; that is helping the model.<br><br>Its also come back with a follow up question, lets answer it and see what happens.</p><pre><code>details about cast and directors</code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tL--!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tL--!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png 424w, https://substackcdn.com/image/fetch/$s_!tL--!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png 848w, https://substackcdn.com/image/fetch/$s_!tL--!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png 1272w, https://substackcdn.com/image/fetch/$s_!tL--!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tL--!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png" width="1200" height="817.5824175824176" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:992,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:485109,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!tL--!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png 424w, https://substackcdn.com/image/fetch/$s_!tL--!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png 848w, https://substackcdn.com/image/fetch/$s_!tL--!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png 1272w, https://substackcdn.com/image/fetch/$s_!tL--!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F485cdb2c-eb4f-4cba-8afb-7c0c18387f4b_1571x1070.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Looks like its checking the Data Dictionary for the Tiles to see what fields are available.</p><p>As an aside there is now finally a reason for us to populate a Description for each Field in the &#8220;Context Plane&#8221;.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!v9Bp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!v9Bp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png 424w, https://substackcdn.com/image/fetch/$s_!v9Bp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png 848w, https://substackcdn.com/image/fetch/$s_!v9Bp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png 1272w, https://substackcdn.com/image/fetch/$s_!v9Bp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!v9Bp!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png" width="1200" height="226.64835164835165" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:275,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:164599,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!v9Bp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png 424w, https://substackcdn.com/image/fetch/$s_!v9Bp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png 848w, https://substackcdn.com/image/fetch/$s_!v9Bp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png 1272w, https://substackcdn.com/image/fetch/$s_!v9Bp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F714b7a63-4adc-41dd-bbe3-acacf9f087d2_1571x297.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>And its come back with the Fields I would need to use for my report.</p><p>Its also asking if I want it to help me build that report.</p><pre><code>show me the data</code></pre><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3Z85!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3Z85!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png 424w, https://substackcdn.com/image/fetch/$s_!3Z85!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png 848w, https://substackcdn.com/image/fetch/$s_!3Z85!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png 1272w, https://substackcdn.com/image/fetch/$s_!3Z85!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3Z85!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png" width="1200" height="226.64835164835165" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:275,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:109228,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3Z85!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png 424w, https://substackcdn.com/image/fetch/$s_!3Z85!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png 848w, https://substackcdn.com/image/fetch/$s_!3Z85!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png 1272w, https://substackcdn.com/image/fetch/$s_!3Z85!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14ea23a5-fab6-4e5e-a2c0-4765923d4df6_1571x297.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>It recognises that it has no MCP service to access data or run a query.</p><p>One of the features we built in the AgileData App ages ago was the ability to click on a Catalog Tile and open the data directly in Looker Studio, as a very quick way to explore the data via a GUI.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JsjQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JsjQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png 424w, https://substackcdn.com/image/fetch/$s_!JsjQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png 848w, https://substackcdn.com/image/fetch/$s_!JsjQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png 1272w, https://substackcdn.com/image/fetch/$s_!JsjQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JsjQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png" width="584" height="438" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:438,&quot;width&quot;:584,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:30305,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!JsjQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png 424w, https://substackcdn.com/image/fetch/$s_!JsjQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png 848w, https://substackcdn.com/image/fetch/$s_!JsjQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png 1272w, https://substackcdn.com/image/fetch/$s_!JsjQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ca058df-3835-4f59-9eac-05d9b1c306f8_584x438.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>Gemini CLI has understood that from the &#8220;Context Plane&#8221; and look like it found the relevant Looker Studio url to open the data I need in Looker Studio.</p><p>Lets cut and paste that url &#8230;.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6kCz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6kCz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png 424w, https://substackcdn.com/image/fetch/$s_!6kCz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png 848w, https://substackcdn.com/image/fetch/$s_!6kCz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!6kCz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6kCz!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png" width="1200" height="802.7472527472528" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:974,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:210265,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6kCz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png 424w, https://substackcdn.com/image/fetch/$s_!6kCz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png 848w, https://substackcdn.com/image/fetch/$s_!6kCz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png 1272w, https://substackcdn.com/image/fetch/$s_!6kCz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83681404-b404-4fcb-91fc-1d4b6683e590_1866x1248.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Yup thats exactly what it has done that was unexpected but magical.</p><p>Wonder if I could get it to rewrite that url to only include the Fields I am after, that is a question for another day.</p><h3>Show me the impact of a change</h3><p>The second real life use case I got given was to see if it would help streamline  the process of understanding the impact of the changing a Field somewhere in the data pipeline flow.</p><pre><code>i need to update the field type for the director for the netflix tile what do I need to worry about impact wise</code></pre><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-AFc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-AFc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png 424w, https://substackcdn.com/image/fetch/$s_!-AFc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png 848w, https://substackcdn.com/image/fetch/$s_!-AFc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png 1272w, https://substackcdn.com/image/fetch/$s_!-AFc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-AFc!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png" width="1200" height="559.6153846153846" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:679,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:530068,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-AFc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png 424w, https://substackcdn.com/image/fetch/$s_!-AFc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png 848w, https://substackcdn.com/image/fetch/$s_!-AFc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png 1272w, https://substackcdn.com/image/fetch/$s_!-AFc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71bf0ac3-eada-4dfe-9a23-b3f16f966f24_1566x730.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It did a pretty good job of understanding the flow of the data and transformation logic for that Field.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7at8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7at8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png 424w, https://substackcdn.com/image/fetch/$s_!7at8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png 848w, https://substackcdn.com/image/fetch/$s_!7at8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png 1272w, https://substackcdn.com/image/fetch/$s_!7at8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7at8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png" width="1456" height="1012" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1012,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:172976,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7at8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png 424w, https://substackcdn.com/image/fetch/$s_!7at8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png 848w, https://substackcdn.com/image/fetch/$s_!7at8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png 1272w, https://substackcdn.com/image/fetch/$s_!7at8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feaf25200-714b-4454-a3f1-2881680b7411_1864x1295.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Because we store the Information Apps that are accessed by Information Consumers in the &#8220;Context Plane&#8221; and we link tose to the Consume Tiles they consume it also picked up the Last Mile objects that may break and impact our Information Consumers. </p><p>One question I have is how it determined the lineage for this data from the four API services we gave it access to, as we did not give it access to the Data Map (lineage) API service.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!daVQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!daVQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png 424w, https://substackcdn.com/image/fetch/$s_!daVQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png 848w, https://substackcdn.com/image/fetch/$s_!daVQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png 1272w, https://substackcdn.com/image/fetch/$s_!daVQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!daVQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png" width="1456" height="1012" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1012,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:191210,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/169594089?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!daVQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png 424w, https://substackcdn.com/image/fetch/$s_!daVQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png 848w, https://substackcdn.com/image/fetch/$s_!daVQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png 1272w, https://substackcdn.com/image/fetch/$s_!daVQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3fbf65a2-2a09-497f-8f4e-62dc0e142fb4_1864x1295.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Im guessing it stitched it together from the Change Rules.</p><p>Another question to be answered.  I am going to have to figure out how to get Gemini CLI to show me what MCP services it using to understand the process more.  Task for another day.</p><h2>So in Summary</h2><p>Colour me impressed!</p><h2>Wood from the Trees</h2><p>Still a way to go before I have a coherent set of Patterns that I can Coach / Mentor / Teach somebody else for the &#8220;Context Plane&#8221;, and the &#8220;AI Data Stack&#8221; or present as a robust Architecture map.</p><p>But as I have already said, writing my half formed ideas helps me think.</p><h2>An incoherent stream of Context</h2><p>You can find all the previous articles with my train of thought listed in this thread:<br><br><a href="https://agiledata.substack.com/t/context-plane">https://agiledata.substack.com/t/context-plane</a></p><p>We are building the Context Plane while flying it, so always looking for early adopters to help us decide the final destination.<br><br>If you want a virtual chat grab a slot here:<br><br><a href="https://contextplane.ai/contact-us/#bookemdanno">https://contextplane.ai/contact-us/#bookemdanno</a></p>]]></content:encoded></item><item><title><![CDATA[Things in the "Context Plane"]]></title><description><![CDATA[How I think about the things that need to be in the "Context Plane" to power "AI Agents"]]></description><link>https://agiledata.info/p/things-in-the-context-plane</link><guid isPermaLink="false">https://agiledata.info/p/things-in-the-context-plane</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Sun, 06 Jul 2025 21:35:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!cCKT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>How I think about the things that need to be in the "Context Plane" to power "AI Agents"<br></p><blockquote><p><strong>&#8220;Context&#8221; of this post</strong></p></blockquote><p>I often find writing helps me coalesce and refine my thoughts when new patterns start to emerge, but aren&#8217;t very clear yet.  </p><p>So this article is a brain dump / train of thought continuation of the architecture needed to have one Context Plane to rule them all, as part of a proposed &#8220;AI Data Stack&#8221;.<br><br>This article provides an overview of the things or metadata I think should be included in the Context Plane as part of a new &#8220;AI Data Stack&#8221;.</p><h4>The &#8220;Context Plane&#8221;</h4><p>My current thinking is the architecture diagram for the &#8220;Context Plane&#8221; should look something like this:</p><p><br></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vPvT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vPvT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 424w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 848w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 1272w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vPvT!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png" width="1200" height="667.5824175824176" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:810,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vPvT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 424w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 848w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 1272w, https://substackcdn.com/image/fetch/$s_!vPvT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c378928-cf5b-4933-88d3-a7117e3652b4_5996x3336.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Things stored in the Context Plane</h2><p>So with that context for how I currently think of the &#8220;Context Plane&#8221; lets get into the meat of this article, of what I think should be stored in that plane.</p><p>I have worked in the data domain for over three decades.  The data patterns and the data terms I regularly use I have learnt over those decades.  I find them very difficult to unlearn.</p><p>As somebody mentioned to me lately I am haunted by &#8220;the Ghost of Data Past&#8221;. </p><p>But also there is a recurring pattern where people seem to invent a new term for a pattern that has been around for decades (medallion data layered architecture anyone), so the patterns of the past do have value.</p><p>(and yes I realise the  dichotomy of me talking about &#8220;Context&#8221; not &#8220;Semantics&#8221; in the same article where I point the finger at the &#8220;Medallion Architecture&#8221;)</p><p>So with all that said, let me use the data components of the past to frame  what we need to hold and surface via a &#8220;Context Plane&#8221; to support what a &#8220;AI Data Stack&#8221; future might look like.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cCKT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cCKT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png 424w, https://substackcdn.com/image/fetch/$s_!cCKT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png 848w, https://substackcdn.com/image/fetch/$s_!cCKT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png 1272w, https://substackcdn.com/image/fetch/$s_!cCKT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cCKT!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png" width="1200" height="355.2197802197802" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:431,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cCKT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png 424w, https://substackcdn.com/image/fetch/$s_!cCKT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png 848w, https://substackcdn.com/image/fetch/$s_!cCKT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png 1272w, https://substackcdn.com/image/fetch/$s_!cCKT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d5d532f-3237-4750-8ed9-b58a17151676_11260x3336.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="pullquote"><p>I originally thought of the boxes in the &#8220;Context Plane&#8221; as components, things with clear boundaries.  </p><p>But as I started to try and define the descriptions for each of these components with clarity, and how they could be used by the AI Agent, I realised that I don&#8217;t have that clarity, yet.  </p><p>I can&#8217;t clearly articulate the boundary of some of the components as they clearly overlap, or hold things that are subsets of another components.</p><p>So I iterated the focus of this article to be describing the things, and try and create an abstracted version of those things that do not overlap.</p><p>This is deffo a train of thought article, the journey is as important as the final destination.</p></div><h4>Business Glossary</h4><p>The Business Glossary stores a list of agreed-upon definitions for organisational terms.</p><p>This holds a <strong>list</strong> of plain-language descriptions and aliases that standardise terminology across stakeholders, ensuring consistent interpretation and usage of key terms such as <em>&#8216;Customer&#8217;,</em> <em>&#8216;Order&#8217;,</em> or <em>&#8216;Churn&#8217;.</em></p><h4>Core Business Concepts</h4><p>Core Business Concepts stores the primary things (&#8216;entities&#8217;) an organisation manages or counts. This includes concepts such as <em>&#8216;Customer&#8217;</em>, <em>&#8216;Product&#8217;</em>, <em>&#8216;Order&#8217;</em>, and <em>&#8216;Payment&#8217;</em>. </p><p>This holds a <strong>list</strong> of the definitions and identifiers for the Core Business Concepts.  </p><p>It contains a subset of the terms that exist in the Business Glossary and forms the foundation of the organisations data design. </p><p>This describes a list of &#8220;things&#8221;.</p><h4>Core Business Processes</h4><p>Core Business Processes stores the major operational workflows, events or life cycles (&#8216;relationships&#8217;) within an organisation.</p><p>This holds a <strong>list</strong> of the interactions between Core Business Concepts, representing relationships such as <em>&#8220;Customer Places Order&#8221; </em>and <em>&#8220;Customer Pays for Order&#8221;</em></p><p>This also holds the sequence of activities or states that Core Business Concepts transition through, such as invoice approval or support resolution (which I call <em>&#8220;Administration Processes&#8221;</em>).</p><p>This describes &#8216;relationships&#8217; between &#8220;things&#8221;.</p><div class="pullquote"><p>With the current definition its not going to hold hierarchy relationships Product Category &gt; Product, as that relationship is not part of a relationship between Core Business Concepts, nor is it a state change within a Core Business Concept.</p><p>Something to be resolved.</p></div><h4>Conceptual Data Model</h4><p>The Conceptual Data Model stores a high-level map or diagram that provides an abstraction of the organisation&#8217;s data design. </p><p>This holds <strong>information </strong>that outlines the Core Business Concepts, Core Business Processes the other relationships between Core Business Concepts in a platform-independent format and without specifying implementation details. </p><p>The Conceptual Data Model can also hold the objects that generate the Diagram, so overlaps with the Core Business Concepts and Core Business Processes.</p><p>This describes &#8220;things&#8221; and the &#8216;relationships&#8217; between &#8220;things&#8221;</p><h4>Logical Data Model</h4><p>The Logical Data Model stores a more detailed map or diagram that provides Details (&#8216;attributes&#8217;) that are part of the organisation&#8217;s data design. </p><p>This holds <strong>information </strong>that<strong> </strong>outlines the Core Business Concepts,  Core Business Processes / Relationship&#8217;s in a platform-independent format. </p><p>It also holds the Detail (&#8216;attributes&#8217;), that are related to a Core Business Concept, in a platform-independent format</p><p>This describes the Details of &#8220;things&#8221;.</p><h4>Physical Data Model</h4><p>The Physical Data Model stores a technical implementation view of how the organisation&#8217;s data is stored and accessed within a specific system.</p><p>This holds <strong>information</strong> on the the physical structures such as tables, columns, data types, indexes, partitions, and naming conventions used in the data platform.</p><p>It is derived from the Logical Data Model but adds system-specific optimisations and constraints.</p><p>It overlaps with the Logical Data Model by representing the same Core Business Concepts and their Details but also includes physical performance and deployment details that are specific to the technology used.</p><p>This describes how to implement the &#8220;things&#8221;, their &#8216;relationships&#8217;, and their Details.</p><h4>Data Contracts</h4><p>Data Contracts store the expected structure, quality, and behaviour of data exchanged between systems, or components. They describe formal agreements between a data producer and a data consumer.</p><p>This holds <strong>information</strong> such as schema definitions, required fields, data types, validation rules, and guarantees such as update frequency, timeliness, or completeness.</p><p>It overlaps with the Logical Data Model and Physical Data Model by referencing the same attributes and structures, but focuses on expectations and enforcement rather than storage or modelling.</p><p>This describes the Rules that govern the movement of the data.</p><h4>Data Dictionary</h4><p>The Data Dictionary lists and describes the metadata for data fields used across the organisation&#8217;s data assets.</p><p>This holds a <strong>list</strong> and <strong>information</strong> for data fields, such as field names, data types, descriptions, allowable values, formats and default values.</p><p>It overlaps with the Business Glossary. Logical and Physical Data Models by documenting the same &#8216;attributes&#8217;.</p><p>This describes how &#8220;things&#8221; and their Details were implemented.</p><h4>Data Profiles</h4><p>Data Profiles provide statistical summaries and characteristics of the data physically stored.</p><p>This holds <strong>data</strong> such as minimum and maximum values, distribution ranges, cardinality, null counts, uniqueness, and data type conformity.</p><p>They overlap with the Data Dictionary (by describing the same fields) and with Facts (by profiling the raw values captured).</p><p>This describes the observed characteristics of the Details of &#8220;things&#8221; and &#8216;relationships&#8217; between &#8220;things&#8221;.</p><h4>Transformation Logic</h4><p>Transformation Logic stores how raw or source data is converted into a trusted, usable form.</p><p>This holds the business rules, mappings, calculations, filters, joins and aggregation <strong>logic or code</strong> applied to reshape data.</p><p>It may reference fields defined in the Logical or Physical Data Models and rely on terms from the Business Glossary and Core Business Concepts to apply meaning.</p><p>It overlaps with Measures, Metrics, Actions, and Information Products by forming part of the logic used to answer questions or trigger downstream outcomes.</p><p>This describes how the raw &#8220;things&#8221;, Details of &#8220;things&#8221; and the &#8216;relationships&#8217; between &#8220;things&#8221; were reshaped into something more useful.</p><h4>Facts</h4><p>Facts are raw numerical values stored or sourced directly from systems.</p><p>This holds a <strong>list</strong> of data such as quantities, amounts, durations.</p><p>Facts are the foundational inputs used in downstream calculations. They are not aggregated or transformed, but instead represent the atomic, immutable data from  systems where that data is first captured.</p><p>They overlap with the Business Glossary, Physical Data Model and Data Dictionary where they are described and with Measures and Metrics, which are derived from them.</p><p>This describes the raw numerical values about &#8220;things&#8221;.</p><div class="pullquote"><p>Yes I know this is a  different definition from the typical definition of a &#8220;Fact&#8221; from the Dimensional Modeling pattern,  but I am trying to abstract these things from specific data modeling or technology patterns.</p></div><h4>Measures</h4><p>Measures are standardised aggregations of raw Facts.</p><p>This holds the <strong>logic or code</strong> for calculations such as <em>&#8220;total revenue&#8221;</em>, <em>&#8220;count of orders&#8221;</em>, or <em>&#8220;average order amount&#8221;</em>, typically derived using functions like sum, count, min, max, or average based on a defined Fact.</p><p>They overlap with Facts (as their source), Transformation Logic (which defines how they are calculated), and Metrics (which may use them as components).</p><p>This describes aggregated values about the Details of &#8220;things&#8221;.</p><h4>Metrics</h4><p>Metrics are calculated formulas that combine Measures, Facts, or other Metrics to express business performance or operational efficiency.</p><p>This holds the <strong>logic or code</strong> for calculations such as <em>&#8220;average revenue per customer&#8221;,</em> <em>&#8220;conversion rate&#8221;</em>, or <em>&#8220;churn percentage&#8221;,</em> typically involving arithmetic, ratios, or conditional logic.</p><p>They overlap with Measures (which they reference), Transformation Logic (which defines their formulas), and Business Questions (which they help answer).</p><p>This describes derived insights from aggregations of the Details of &#8220;things&#8221;.</p><h4>Business Questions</h4><p>Business Questions are predefined or commonly asked queries that reflect specific decision-making needs within the organisation.</p><p>This holds a <strong>list</strong> of the questions that have been asked before such as <em>&#8220;What is our monthly churn rate?&#8221;</em>, <em>&#8220;Which products are underperforming?&#8221;</em>, or <em>&#8220;How many new customers joined last quarter?&#8221;</em></p><p>They overlap with Metrics (which may be the answer), Transformation Logic (which defines how to calculate the answer), and Information Apps (where answers are delivered).</p><p>This describes the repeatable questions asked about the &#8220;things&#8221;, Details of &#8220;things&#8221; and &#8216;relationships&#8217; between &#8220;things&#8221; to support decisions to take action.</p><h4>Actions</h4><p>Actions define the decisions, tasks, or system behaviours triggered as a result of answering a Business Question.</p><p>This holds a <strong>list</strong> of actions that have been taken in the past or need to be taken int he future.</p><p>It also holds <strong>information</strong> of the mappings between specific Business Questions and the Actions they enable, such as <em>&#8220;Identify outstanding support tickets&#8221;</em> and<em> &#8220;resolve outstanding support tickets,&#8221;</em> or <em>&#8220;Identify Customers who havent placed an order in the last 6 months&#8221;</em> and <em>&#8220;Offer discount to Customers to reduce the rate of customer churn.&#8221;</em></p><p>They overlap with Business Questions (which initiate them), Information Apps (where they may be launched), and Core Business Processes (which they may automate or influence).</p><p>This describes the decisions and actions we take based on what we know about the &#8220;things&#8221;, Details of &#8220;things&#8221; and &#8216;relationships&#8217; between &#8220;things&#8221;</p><h4>Information Apps</h4><p>Information Apps are curated outputs that present data and information in a usable form to answer Business Questions and support Actions.</p><p>This holds <strong>lists</strong> and <strong>information</strong> about dashboards, reports, visualisations, datasets, APIs, data servies, and user interfaces that package answers to Business Questions and trigger related Actions.</p><p>They overlap with Business Questions (which they answer), Actions (which they enable), and Facts, Metrics and Measures (which they visualise or expose).</p><p>This describes the delivery mechanism that provides access to what we know about the &#8220;things&#8221;, Details of &#8220;things&#8221; and &#8216;relationships&#8217; between &#8220;things&#8221;</p><h2>Fragmentation and Overlaps</h2><p>I realised as I wrote this one of the major problems is deffo  &#8220;the Ghost of Data Past&#8221; and specifically the fragmented set of data technology and tools that I have used over the years.   These set of data technology and tools helps define the architecture and language I use, and also influences the patterns I applied to list the things that should be stored in the &#8221;Context Plane&#8221;.</p><p>I have ended up using these technologies and tools to define the things that are needed in the &#8220;Context Plane&#8221; and also to define boxes or boundary around things.<br><br>The problem I hit is when I use these standard languages / boundaries from the data domain for those things then I get overlaps, there are things that are in within / across multiple boundaries.</p><p>For example Core Business Concepts are held/described within both a Business Glossary and a Conceptual Model.</p><h3>An example using a Metric</h3><p>Metrics are a part of a Business Question, but also defined in both a Metrics Layer / Tool, Business Glossary and potentially a Data Dictionary.</p><p>Lets look at an example of the overlaps in more detail using a specific Metric<em> &#8216;Active Users&#8217;.</em></p><p></p><p><strong>Metrics:</strong></p><pre><code><em>'Active users'</em> is the number of people who engaged with our site or app in the specified date range.

An active user is any user who has an engaged session or when Analytics collects:

* the first_visit event or engagement_time_msec parameter from a website
* the first_open event or engagement_time_msec parameter from an Android app
* the first_open or user_engagement event from an iOS app

The user is considered an active user as soon as the user_engagement event is detected within a second.</code></pre><p>(Source: https://support.google.com/analytics/answer/12253918?hl=en)</p><p></p><p><strong>Business Questions:</strong></p><pre><code><em>"The Number of Active Users who accessed our Website last month."</em>
<em>
"The Number of Active Users who accessed our App last month."</em>
</code></pre><p>The Metrics Layer often holds the relationship the Metric has with the Core Business Processes, the Business Glossary often does not.</p><p></p><p><strong>Yaml Metric Definition in a Metrics Layer tool:</strong></p><pre><code>views:
  - name: active_users
    description: "14 days rolling count of active users"
    includes:
      # Measure
      - users.rolling_count
      # Dimensions
      - users.is_paying
      - users.signup_date
      - company.name</code></pre><p>(Source: https://cube.dev/blog/introducing-views)</p><p></p><p><strong>Business Glossary:</strong></p><pre><code>Active user

Active users are the people who currently use your product. A user who becomes inactive may have churned.</code></pre><p>(Source: https://posthog.com/docs/glossary)</p><p></p><p>As you can see there are overlaps in what we define for the Metric of &#8220;Active Users&#8221;, depending on which traditional data component we define it in.</p><h2>Removing the Boundaries and Overlaps</h2><p>When I get stuck with a problem like this I find the key is to keep breaking it down into smaller and smaller things until I get to a list of atomic things that are unique.</p><p>Here is where I have ended up with two different languages I can use so far:</p><p>(compiled with some help from my ChatGPT friend using the above as the input, and then the human iterated it)</p><h3>The list of Context we store</h3><p>Or put another way the things we store.</p><ol><li><p><strong>Business Terms</strong></p><p>Agreed-upon definitions and aliases used across the organisation (from the Business Glossary).</p></li><li><p><strong>Core Business Concepts (entities)</strong></p><p>The primary entities the organisation manages or counts (e.g. Customer, Product, Order).</p></li><li><p><strong>Core Business Processes</strong></p><p>The workflows, events, or life cycles that define how Core Business Concepts interact and change over time.</p></li><li><p><strong>Conceptual Relationships</strong></p><p>High-level, platform-independent relationships between Core Business Concepts.</p></li><li><p><strong>Details (attributes)</strong></p><p>Descriptive details of Core Business Concepts, such as name, status, date of birth (from the Logical Model).</p></li><li><p><strong>Field Metadata</strong></p><p>Technical descriptions of fields, such as data types, formats, default values, and allowable values (from Logical Data Model and Data Dictionary).</p></li><li><p><strong>Physical Structures</strong></p><p>Tables, columns, data types, and indexes used to implement data in a specific platform (from the Physical Model and Data Dictionary).</p></li><li><p><strong>Data Rules and Expectations</strong></p><p>Contractual schema definitions and guarantees that govern how data is exchanged and validated (from Data Contracts).</p></li><li><p><strong>Statistical Profiles</strong></p><p>Observed characteristics of data, including distributions, cardinality, and null rates (from Data Profiles).</p></li><li><p><strong>Transformation Logic</strong></p><p>Business rules and operations that convert raw data into usable outputs (e.g. mappings, joins, calculations).</p></li><li><p><strong>Raw Numerical Values</strong></p><p>Source data captured as facts, such as quantity, amount, or duration (from Facts).</p></li><li><p><strong>Aggregated Values</strong></p><p>Summarised calculations based on raw numerical values (from Measures).</p></li><li><p><strong>Derived Metrics</strong></p><p>Formulas combining multiple measures or facts to express performance or ratios (from Metrics).</p></li><li><p><strong>Business Questions</strong></p><p>Repeatable questions that drive insight and inform decisions (from Business Questions).</p></li><li><p><strong>Actions</strong></p><p>Operational steps or decisions taken based on answers to Business Questions.</p></li><li><p><strong>Delivery Interfaces</strong></p><p>Mechanisms that present data and enable interactions, such as dashboards, reports, datasets, and APIs (from Information Apps).</p></li></ol><h3>The types of Context we store</h3><p>Or put it another way, how it is stored.</p><ol><li><p><strong>Lists</strong></p><p>Repeating sets of labelled items.<br></p><p>Examples:</p><p>&#8211; List of business terms (Business Glossary)</p><p>&#8211; List of fields (Data Dictionary)</p><p>&#8211; List of metrics, measures, concepts, questions, or actions</p><p>&#8211; List of attributes, rules, or processes<br></p></li><li><p><strong>Definitions</strong></p><p>Text-based descriptions that explain meaning, purpose, or intent.<br></p><p>Examples:</p><p>&#8211; Term definitions</p><p>&#8211; Field descriptions</p><p>&#8211; Action explanations</p><p>&#8211; Business question phrasing<br></p></li><li><p><strong>Identifiers</strong></p><p>Unique keys, codes, or labels used to reference or join data.<br></p><p>Examples:</p><p>&#8211; Concept identifiers</p><p>&#8211; Field names</p><p>&#8211; Relationship keys<br></p></li><li><p><strong>Relationships</strong></p><p>Structured mappings between two or more things.<br></p><p>Examples:</p><p>&#8211; Concept A interacts with Concept B<br>&#8211; Concept A, Concept B and Concept C are involved in Process A</p><p>&#8211; Detail belongs to Concept (attribute belongs to entity)</p><p>&#8211; Measure uses Fact<br>&#8211; Metric uses Measure</p><p>&#8211; Question &#8594; Metric &#8594; Action</p><p>&#8211; Term &#8594; Concept &#8594; Field<br></p></li><li><p><strong>Rules / Logic</strong></p><p>Outputs produced from raw data using logic or formulas or expressions that define behaviour or constraints.<br></p><p>Examples:</p><p>&#8211; Validation rules</p><p>&#8211; Data contracts</p><p>&#8211; Calculation logic</p><p>&#8211; Transformation pipelines</p><p>&#8211; Measures (aggregated)</p><p>&#8211; Metrics (calculated)<br></p></li><li><p><strong>Structures / Schemas</strong></p><p>Models that define how things are organised or composed.<br></p><p>Examples:</p><p>&#8211; Logical/physical data models</p><p>&#8211; API schemas</p><p>&#8211; Table definitions<br></p></li><li><p><strong>Raw Data / Values</strong></p><p>Captured data points or measurements.<br></p><p>Examples:</p><p>&#8211; Facts (quantities, amounts)</p><p>&#8211; Timestamps</p><p>&#8211; Event logs</p><p>&#8211; Data Profile results</p><p>&#8211; Data Quality results</p><p></p></li><li><p><strong>Interfaces / Outputs</strong></p><p>Representations used for delivery or consumption.<br></p><p>Examples:</p><p>&#8211; Information Apps<br>&#8211; Dashboards</p><p>&#8211; Reports</p><p>&#8211; APIs</p><p>&#8211; Data services</p></li></ol><p></p><h2>Time to Cross Domains</h2><p>As I mentioned at the start, my experience and expertise is founded in the data domain.</p><p>I think its time to look for help from the other domains, and for this one specifically the Library and Information Sciences domain.  </p><p><a href="https://www.linkedin.com/in/juansequeda">Juan Sequeda</a> posted an <a href="https://www.linkedin.com/posts/juansequeda_this-image-illustrates-how-im-thinking-about-activity-7344365030919892992-bPua">LinkedIn article</a> on how he is thinking about metadata/ontologies/knowledge graph/semantic layers.  In that article he uses this framing:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.linkedin.com/posts/juansequeda_this-image-illustrates-how-im-thinking-about-activity-7344365030919892992-bPua" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MhWZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg 424w, https://substackcdn.com/image/fetch/$s_!MhWZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg 848w, https://substackcdn.com/image/fetch/$s_!MhWZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!MhWZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MhWZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg" width="800" height="363" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:363,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;diagram&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.linkedin.com/posts/juansequeda_this-image-illustrates-how-im-thinking-about-activity-7344365030919892992-bPua&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="diagram" title="diagram" srcset="https://substackcdn.com/image/fetch/$s_!MhWZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg 424w, https://substackcdn.com/image/fetch/$s_!MhWZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg 848w, https://substackcdn.com/image/fetch/$s_!MhWZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!MhWZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F698f46d0-2caa-4dea-94ea-f6d7c18dd3e2_800x363.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I can probably simplify &#8220;the List of Context we store&#8221; and &#8220;the Type of Context we store&#8221; above to the Business/Technical/Mapping metadata categories in that diagram.<br><br>But Im not sure simplifying it will get me any closer to achieving my goal, I think I need to go down into the weeds a little more to get the clarity I need.</p><p>One option to do this safely I think I need to identify a number of use cases where &#8220;AI&#8221; will use the &#8220;Context Plane&#8221; and see what I need to provide it to be successful.</p><p>Another option is to try and collaborate with an expert from the Library and Information Sciences domain to help add their views and language to see if it gets me to the next step.</p><p>The other option is to follow a suggestion <a href="https://www.linkedin.com/in/josephreis/">Joe Reis</a> made on the Practical Data Modeling Discord, <br><br><em>&#8220;As a thought experiment, ask any AI what it needs. It&#8217;s very different from what we&#8217;ve devised so far&#8221;.</em><br><br>Time to have a little think about what the next step in my train of thought for the &#8220;AI Data Stack&#8221; will be.</p><h2>Wood from the Trees</h2><p>Still a way to go before I have a coherent set of Patterns that I can Coach / Mentor / Teach somebody else for the &#8220;Context Plane&#8221;, and the &#8220;AI Data Stack&#8221; or present as a robust Architecture map.</p><p>But as I have already said, writing my half formed ideas helps me think.</p><h2>An incoherent stream of Context</h2><p>You can find all the previous articles with my train of thought listed in this thread:<br><br><a href="https://agiledata.substack.com/t/context-plane">https://agiledata.substack.com/t/context-plane</a></p><p>We are building the Context Plane while flying it, so always looking for early adopters to help us decide the final destination.<br><br>If you want a virtual chat grab a slot here:<br><br><a href="https://contextplane.ai/contact-us/#bookemdanno">https://contextplane.ai/contact-us/#bookemdanno</a></p>]]></content:encoded></item><item><title><![CDATA[Background to the pattern of the "Context Plane"]]></title><description><![CDATA[How I think about our current version of the "Context Plane"]]></description><link>https://agiledata.info/p/background-to-the-pattern-of-the</link><guid isPermaLink="false">https://agiledata.info/p/background-to-the-pattern-of-the</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Thu, 19 Jun 2025 23:03:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>How I think about our current version of the "Context Plane".<br></p><blockquote><p>&#8220;Context&#8221; of this post</p></blockquote><p>I often find writing helps me coalesce and refine my thoughts when new patterns start to emerge, but aren&#8217;t very clear yet.  </p><p>So this article is a brain dump / train of thought continuation of the architecture needed to have one Context Plane to rule them all, as part of a proposed &#8220;AI Data Stack&#8221;.<br><br>This article provides an overview of how I think of the Context Plane in our AgileData Product as that anchors a lot of my thinking for what the Context Plane in a new &#8220;AI Data Stack&#8221; would look like.</p><h2>First defining our current Context Plane pattern</h2><p>When we started building the AgileData Platform and AgileData App, Nigel and I agreed on a set of core principles and patterns that we would align to as much as was practical.</p><p>One of these was the use of what we called Config (what I now refer to as Context) which should be at the center of everything we would build.</p><blockquote><p><strong>Context is a Pet not Cattle</strong></p></blockquote><p>The Context Plane is where we hold everything we care about that makes our AgileData Platform and AgileData App work, apart from our customers actual data.</p><p>We treat both the Context we hold and the Customers data we hold as Pets, and we treat everything else in our Platform as Cattle.  </p><p>We generate, deploy, execute and destroy code at will.  We automate the generation of all code from the Context we hold.</p><blockquote><p><strong>Context drives our App and our Platform</strong></p></blockquote><p>For example everything displayed on our Data Catalog screen is stored in our Context Plane, and then rendered in the AgileData App as needed.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CrvB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CrvB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!CrvB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!CrvB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!CrvB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CrvB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:266328,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CrvB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!CrvB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!CrvB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!CrvB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d726144-afa3-40c1-a76a-9e7fff3782e2_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The Concept, Conceptual, Logical and Physical data models are stored in the Context Plane and again rendered in the AgileData App, or used as part of our DataOps processes as and when required.</p><p>We define and hold Core Business Concepts, Detail for those Concepts and Core Business Events as the core &#8220;entities&#8221; in our Context Model.</p><p>Concepts, Details and Events are the semantic language we use as part of our Context Language.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6_c_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6_c_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!6_c_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!6_c_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!6_c_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6_c_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:212589,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6_c_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!6_c_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!6_c_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!6_c_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa1952-08c3-4e77-ac7b-206bf2d7f7aa_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!X_Sp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!X_Sp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!X_Sp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!X_Sp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!X_Sp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!X_Sp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:219823,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!X_Sp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!X_Sp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!X_Sp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!X_Sp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe645e1c8-f5a0-4e2b-b413-d180654dae3d_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!l0j2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!l0j2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!l0j2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!l0j2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!l0j2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!l0j2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:228059,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!l0j2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!l0j2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!l0j2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!l0j2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F19b865df-cdbc-4de6-9ab3-0bfb04e213fe_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>We hold the relationships of how Core Business Concepts relate to Core Business Events in the Context Plane.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!giCx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!giCx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!giCx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!giCx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!giCx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!giCx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:213039,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!giCx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!giCx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!giCx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!giCx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc0b9593-fa7d-4a0b-803b-a9afa165de7b_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Which allows us to render and explore a &#8220;Graph&#8221; view of these relationships in our App.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mara!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mara!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!mara!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!mara!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!mara!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mara!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:245589,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mara!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!mara!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!mara!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!mara!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa2414ec-3afd-4337-ab14-6cbca1ea700b_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For those old school of us, we also render these relationships as  Bus Matrix in our App.  Out Context Plane allows us to render the same Context in any visualisation or Map format that helps simplify complex data tasks.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3ROZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3ROZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!3ROZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!3ROZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!3ROZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3ROZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:179255,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3ROZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!3ROZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!3ROZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!3ROZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31cb4813-0351-42c6-8fde-7cdee13669d8_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Our version of Data Quality (Trust Rules) and Observability (Notifications) are again stored in the Context Plane and rendered / used as needed.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lj9U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lj9U!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!lj9U!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!lj9U!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!lj9U!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lj9U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:264716,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!lj9U!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!lj9U!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!lj9U!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!lj9U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb183dc8a-d6d8-4435-941a-571b3feb3903_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2-Ci!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2-Ci!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!2-Ci!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!2-Ci!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!2-Ci!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2-Ci!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:283615,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2-Ci!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!2-Ci!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!2-Ci!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!2-Ci!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c0c61e0-7c66-4cb8-bbdc-808b3359f12f_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tOr-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tOr-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!tOr-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!tOr-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!tOr-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tOr-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:209018,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!tOr-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!tOr-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!tOr-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!tOr-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739f909c-44bc-45b0-ac38-cad66c7e9d7a_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p><strong>Context drives the generation of our code</strong></p></blockquote><p>Our version of Data Transformation logic (Change Rules) is you guessed it, stored in the Context Plane and then used as and when required.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wXhz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wXhz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!wXhz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!wXhz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!wXhz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wXhz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:206698,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!wXhz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!wXhz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!wXhz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!wXhz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc697671-40ab-4fa6-9310-12e35664300c_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mygs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mygs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!mygs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!mygs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!mygs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mygs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:215566,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mygs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!mygs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!mygs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!mygs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F614b8526-bcd3-44a7-829a-7edb19759565_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fhzR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fhzR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!fhzR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!fhzR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!fhzR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fhzR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:274344,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fhzR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!fhzR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!fhzR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!fhzR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe56108bc-b524-481d-9ce8-fc8e68b5c852_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xb61!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xb61!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!xb61!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!xb61!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!xb61!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xb61!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:289076,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xb61!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!xb61!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!xb61!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!xb61!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f9028dd-1f27-4663-a20a-2f7861583aee_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ke_o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ke_o!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!Ke_o!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!Ke_o!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!Ke_o!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ke_o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:283964,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ke_o!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!Ke_o!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!Ke_o!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!Ke_o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06335b7f-954b-4b16-aab8-05d29fe567ec_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If you perused that last series of screenshots you will see we actually hold surface the Change Rule logic in multiple languages, we surface it via the UI notebook style, we surface it as form of a Gherkin script and we surface the SQL that it is generating to load or transform data in Google BigQuery.<br><br>These are all dynamically generated from the Context stored in the Context Plane for each Change Rule we hold.  We have defined it once and we can render it in many different ways, many different languages and for many different use cases.</p><p>Some people call this a table driven pattern, a metadata driven pattern or a model driven pattern etc.</p><blockquote><p><strong>Orchestrate via dynamic manifests based on Context</strong></p></blockquote><p>To orchestrate the execution of the Data Transformations (Change Rules) we of course build out a Directed Graph to run them in the order they need to be run, and to honour the dependencies they need to honour.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JqZP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JqZP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!JqZP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!JqZP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!JqZP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JqZP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:397370,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!JqZP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!JqZP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!JqZP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!JqZP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8c57c67f-abd3-4eb4-9228-280066ca7c63_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>But this Directed Graph is dynamically generated.<br><br>If I go and add another Change Rule, it is stored in Context Plane and the next time I come into this screen it will be dynamically rendered including that rule.<br><br>When a new record turns up in a table on the left, it will trigger a bunch of steps.</p><ul><li><p>The Context Plane will be queried to see all the Change Rules that are dependent on that data.</p></li><li><p>The Context Plane will be queried to find the dependencies between the Change Rules that will run, and tables they will load.</p></li><li><p>A &#8220;Manifest&#8221; is created to describe what Change Rules need to run.</p></li><li><p>The SQL code for each relevant Change Rule will be generated from the Context stored in the Context Plane about that Change Rule</p></li><li><p>The code will be submitted to run using a Pub/Sub model, in parallel.</p></li><li><p>When all the code has been successfully run, the code and the manifest will be destroyed.  (We do hold a copy of the code that was executed in our Audit Vault, so we can always view what was run when).</p></li><li><p>The latest Observability and Trust data will be stored in the Context Plane.</p><p></p></li></ul><p>As we hold the Context of how every physical table (Tile in our language) relates to every other table (Tile), via these Data Models / Change Rules, we can easily show all the dependencies (Related Tiles) for a specific table (Tile), when viewing the Context of that table (Tile).</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6Utb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6Utb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!6Utb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!6Utb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!6Utb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6Utb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:251786,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6Utb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!6Utb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!6Utb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!6Utb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48ed2187-3a09-4961-96d9-3c6be0e19ec3_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This includes the relationships for both the Data Model. i.e for this Concept of &#8220;customer&#8221; we hold these Details, and that Concept of &#8220;customer&#8221; is part of these four Events, as well as the relationships for all the Change and Trust and Consume rules that the &#8220;customer&#8221; Concept is part of, i.e this Detail tile is loaded by this Change Rule and validated by these Trust Rules.<br></p><blockquote><p><strong>Multiple languages to create Context</strong></p></blockquote><p>You can create new Context in the Context Plane via the AgileData App UI, or you can use the API&#8217;s to create the Context.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TQxl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TQxl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!TQxl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!TQxl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!TQxl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TQxl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:243457,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!TQxl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!TQxl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!TQxl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!TQxl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c06cdd6-5aa5-4fe1-9b86-34521e403834_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It would be relatively simple to allow the creation of the Context in yet another language, for example by uploading YAML files.</p><p>(Fun fact the first interface we had to create Context was Google Sheets!)</p><blockquote><p><strong>One set of Context to rule them all</strong></p></blockquote><p>So you can see how the Context we hold on in our Context Plane is the thing that drives everything our AgileData Platform and AgileData App does.</p><h2>Context is first and powers everything that happens</h2><p>I know what you thinking, this sounds a little bit like a data catalog, or a metadata repository.<br><br>But heres the thing, data catalogs run by sucking on the Data and Metadata exhaust.<br><br>We treat Context as the fuel that powers everything we do.<br><br>You cannot run anything if Context does not exist for that thing.<br><br>I cannot create a data catalog object, I cannot create a table, I cannot create code or run it, without it existing in the Context Plane.<br><br>I first create the Context and then the AgileData Platform then does all the other horrible and complex data work for me.</p><h2>Its about more than just data and code</h2><p>As you would expect of any mature data platform, we have added &#8220;Data Management&#8221; and &#8220;Data Governance&#8221; capabilities over the years where we found them useful.<br><br>One of those is the ability to store the Context needed to render a &#8220;Data Dictionary&#8221;.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gncp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gncp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg 424w, https://substackcdn.com/image/fetch/$s_!gncp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg 848w, https://substackcdn.com/image/fetch/$s_!gncp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!gncp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gncp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg" width="800" height="537" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:537,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!gncp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg 424w, https://substackcdn.com/image/fetch/$s_!gncp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg 848w, https://substackcdn.com/image/fetch/$s_!gncp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!gncp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6c6760-0317-47f7-91cc-8cfec43e4260_800x537.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CTDy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CTDy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!CTDy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!CTDy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!CTDy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CTDy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:211930,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://agiledata.substack.com/i/166298073?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CTDy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png 424w, https://substackcdn.com/image/fetch/$s_!CTDy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png 848w, https://substackcdn.com/image/fetch/$s_!CTDy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!CTDy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ed6d216-87c6-4bba-836f-80dfef9762d6_1813x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2>But we are still missing a lot of useful Context</h2><p>We only build things in our AgileData Platform and AgileData App, when they save us time or automate something we hate doing.</p><p>The Data Dictionary feature was built so we could find fields we needed to find by searching all the Context of all the data we hold for a customer.</p><p>There is some other Context we know will give us value that we have yet to add.</p><p>Things like Context typically related with Business Glossaries, Metric Layers/Engines and Semantic BI Layers to name three. </p><p>I believe they are all part of the Context that is needed in a Context Plane to make it useful for AI Agents.<br><br>Which will be the next article I write to help me with my thinking.</p><p></p><h2>Wood from the Trees</h2><p>Still a way to go before I have a coherent set of Patterns that I can Coach / Mentor / Teach somebody else for the &#8220;Context Plane&#8221;, and the &#8220;AI Data Stack&#8221; or present as a robust Architecture map.</p><p>But as I have already said, writing my half formed ideas helps me think.</p><h2>An incoherent stream of Context</h2><p>You can find all the previous articles with my train of thought listed in this thread:<br><br><a href="https://agiledata.substack.com/t/context-plane">https://agiledata.substack.com/t/context-plane</a></p><p>We are building the Context Plane while flying it, so always looking for early adopters to help us decide the final destination.<br><br>If you want a virtual chat grab a slot here:<br><br><a href="https://contextplane.ai/contact-us/#bookemdanno">https://contextplane.ai/contact-us/#bookemdanno</a></p>]]></content:encoded></item><item><title><![CDATA[Can we use an Information Product Canvas image to start the data design process?]]></title><description><![CDATA[What would happen?]]></description><link>https://agiledata.info/p/can-we-use-an-information-product</link><guid isPermaLink="false">https://agiledata.info/p/can-we-use-an-information-product</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Wed, 19 Feb 2025 21:44:49 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/ecc0bb9a-cfed-4d4b-8cd6-336d567e4c5e_183x137.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A while ago we added the ability to upload an image to AgileData Disco, it was so customers could upload screenshots of their Dashboards and we could get Disco to document their Data Environments based on those images.<br><br>Talking to few a people yesterday reminded me I was going to test uploading an image of a completed Information Product Canvas to AgileData Disco and see if it would add any value in initial designs for the data environment.</p><p>So the hypothesis was:</p><div class="pullquote"><p>Can completed Information Product Canvas image help with the initial design of the data environment to deliver that Information Product.</p></div><p><br>To test out the hypothesis I uploaded one of the canvas that I collaborated on to is being used as an example in the upcoming &#8220;an Agile Data Guide to Information Product Canvas&#8221;  book.<br><br>As this canvas was based on a real world example of an Information Product somebody had already created for one of their customers, and I only facilitated the population of the cavas, this would reduce the bias in the experiment compared to me creating one from scratch just for this purpose.<br><br>Here is an interactive demo / guide showing the results of the experiment:<br><br><a href="https://guides.agiledata.io/demo/cm7c9gj7h0jr49ujfhaymm0um">https://guides.agiledata.io/demo/cm7c9gj7h0jr49ujfhaymm0um</a><br><br>It is a quick and dirty interactive demo, where I test the process and then make notes on what I think worked and what we need to iterate.</p><p></p><blockquote><p>An aside on the value of interactive demos</p></blockquote><p>I have started using this interactive demo format a lot, much better than making disconnected notes, and also much better to see what each note relates to.<br><br>I can quickly document something and then share it with <a href="https://www.linkedin.com/in/nigelvining/">Nigel Vining</a> and he can view it whenever he has time, great for our remote only, work from anywhere in the world way of working.<br><br>I have also been using this interactive demo pattern to log support calls with other vendors when I have a problem with their product.<br><br>As they say seeing is believing.</p><p></p><blockquote><p>Back to the result.</p></blockquote><p><br>Overall the Disco outputs were not good enough to be used as a data design (not sure it ever will be perfect), so some more iteration to be done.<br><br>But the output it did generate was an encouraging start.</p>]]></content:encoded></item><item><title><![CDATA[#06 - DataOps Notifications]]></title><description><![CDATA[Why do your data work with the equivalent of a blindfold on? When you can observe everything that is going on in the AgileData Platform, as it happens!]]></description><link>https://agiledata.info/p/06-dataops-notifications</link><guid isPermaLink="false">https://agiledata.info/p/06-dataops-notifications</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Wed, 18 Dec 2024 20:12:35 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!rCMq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><strong>What</strong></h2><p>Observe everything that is going on in the AgileData Platform, as it happens.</p><p>Stay connected and observe every important change within the AgileData Platform with real-time notifications. Designed to keep you informed, this feature ensures you never miss critical updates or changes to your data.</p><p>Whether it&#8217;s a completed data refresh, a new data Tile becoming available, or an alert about an issue with Trust Rules, notifications provide instant insights into every key data flow in the platform.</p><p>Integrated seamlessly into the AgileData App, notifications empower you to act quickly, maintain data trust, and stay constantly informed about your data work.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rCMq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rCMq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin 424w, https://substackcdn.com/image/fetch/$s_!rCMq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin 848w, https://substackcdn.com/image/fetch/$s_!rCMq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin 1272w, https://substackcdn.com/image/fetch/$s_!rCMq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rCMq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin" width="1456" height="1056" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1056,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rCMq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin 424w, https://substackcdn.com/image/fetch/$s_!rCMq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin 848w, https://substackcdn.com/image/fetch/$s_!rCMq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin 1272w, https://substackcdn.com/image/fetch/$s_!rCMq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Feature Requirement</strong></h2><p>The system must provide real-time notifications to data users, keeping them informed about significant changes, updates, or alerts within the AgileData Platform that directly impact their data tasks.</p><h2><strong>Requirement Rationale</strong></h2><p>Notifications ensure data users stay connected and informed about critical events, such as data refreshes, data quality alerts, or the availability of new data assets. This empowers them to act promptly, maintain trust in their data, and complete their data tasks efficiently without missing key updates or changes.</p><h2><strong>How</strong><br></h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;f77b72b6-8f64-4f89-a3a6-6c329fa7fd17&quot;,&quot;duration&quot;:null}"></div><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://agiledata.io/project/notifications/&quot;,&quot;text&quot;:&quot;View Interactive Demo&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://agiledata.io/project/notifications/"><span>View Interactive Demo</span></a></p><p></p><p></p><h2><strong>Why</strong></h2><p>This was another scale the machine not the Nigel, driven feature.</p><p>In the early days of the AgileData App, when something didn&#8217;t seem to work properly I had to go into the Google Cloud Console and search the logs to see what had happened.</p><p>As you can imagine I didn&#8217;t do this, I just slacked Nigel and asked him to have a look</p><p>As you can also imagine Nigel wasn&#8217;t a fan of this approach so he built the Notifications feature.</p><p>The key to this feature is it shows everything that happens in the AgileData Platform.</p><p>Again as you can imagine this causes a signal vs noise problem, which has been a major focus of iterating this feature over the years.</p><p>Real-time notifications are visible at a glance at the top menu of the app. This means when I do a data task, for example uploading a manual csv file, or manually running a data flow, I can quickly observe it happening at a glance.</p><p>This removes the need for me to go to the Notifications screen to watch things run, I can stay in the screen that does the data task I need to do, while still observing the process.</p><p>To provide this real-time view of the Notifications was a major piece of platform engineering, as it required the use of a Websockets component to provide the pub/sub pattern.</p><p>Real-time notifications are great, but you have to have the AgileData App open in a browser to see them.</p><p>Often I want to check all the Notifications for a Customers Tenancy that I am not currently logged into.</p><p>So we built the Notifications screen.</p><p>This screen shows all the Notifications for the Tenancy.</p><p>The initial versions of this screen hit the signal vs noise problem, in multiple ways.</p><p>First was the fact that there are lots of notifications and loading them for all time was slow. So we defaulted it to only show the last 24 hours, and then provided an easy way to extend the time window to show older notifications.</p><p>It&#8217;s interesting how rarely I need to extend the time window, most times a snapshot of notifications over the last 24 hours is enough for me to get the data task done.</p><p>As I mentioned earlier the Notifications screen shows everything that is happening on the AgileData Platform.</p><p>We display when Tiles are created, new data is loaded, Change Rules are iterated, data fails Trust Rule validation.</p><p>Nigel is constantly adding more events to the Notifications as we find more things we want to be able to easily observe and investigate.</p><p>We also show every successful event and every event that is treated as a failure.</p><p>This amplifies the signal vs noise problem,</p><p>First thing we did was to apply a DataOps scorecard pattern at the top of the screen that allows you to see the number of Notifications within a specific category.</p><p>The key categories we found valuable.</p><ul><li><p>Success vs Failure</p></li><li><p>System identified Anomalies</p></li><li><p>Trust Rule identified anomalies</p></li><li><p>Data Freshness anomalies</p></li></ul><p>This scorecard is interactive, click on Anomalies indicator and the Notification list will filter to only those Notifications.</p><p>Saves a few clicks and as I have mentioned in previous articles, a few clicks and seconds saved in a data task you do repeatably all add up to minutes and hours saved overtime.</p><p>We added search to enable you to filter the Notifications based on any freeform text.</p><p>The next thing we found useful was adding Context to a Notification type.</p><p>For example in the Tile load notification we show a small bar graph showing the number of records loaded and a red line which shows the average load volume for that Tile. This allows me to quickly confirm at a glance that the load volume is within the expected threshold, without needing to click the Notification to see more details.</p><p>These glance widgets are context sensitive to the Notification type.</p><p>At any time I can click on the Menu Anywhere (3 dots) for a Notification and drill down to more detail.</p><p>For example drill down to the Trust Rule that has generated an anomaly, or the Change Rule that was used to load data into the Tile.</p><p>I can also see the detail behind any Notification.</p><p>Again we provide context sensitive details based on the Notification Type.</p><p>For Tile Load Notifications we will show the load stats for the historical loads for that Tile.</p><p>For an error Notification we used to show the BigQuery error.</p><p>As you can imagine, as soon as I saw one of those I would just message Nigel to have a look at it and tell me what I needed to change.</p><p>And again as you can imagine Nigel automated that task, so he doesn&#8217;t have to do it for me.</p><p>We now pass the error to the Google Gemini LLM and get it to return both a description of what the error is likely to mean, and a suggestion on how to resolve it.</p><p>Unsurprisingly this has resulted in me resolving a lot of the issues myself.</p><p>We also broadcast some of the Notifications to Private slack channels for a Tenancy. This allows us to view Notifications from multiple AgleData tenancies in one place, without the need to login to each Tenancy and check the Notifications screen.</p><p>I have a backlogged feature to create a new cross tenancy capability where we can see Notifications for multiple tenancies in an AgileData App screen, a cross tenancy portal so to speak.</p><p>As we have AgileData Network Partners starting to support multiple customers in multiple tenancies, this feature will become important in reducing the time they spend monitors and managing their customers data, and also remove the need for us to use Slack for this purpose.</p><div><hr></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;be66d947-2682-4552-a639-f38339e6e0a0&quot;,&quot;caption&quot;:&quot;I love building the AgileData Product with Nigel Vining. I love the fact that we are building something that makes the complex data work we do for our customers simpler and quicker.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#42 - Time for a little AgileData App feature show and tell&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-10-30T22:30:21.657Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d69e95e-2913-4234-8e86-8114b74e0122_1719x1251.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/time-for-a-little-agiledata-app-show&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:148384576,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:1,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div>]]></content:encoded></item><item><title><![CDATA[#05 - Data Search]]></title><description><![CDATA[Why use complex query tools to find the data you need? When you can just search for your data values like Google Search.]]></description><link>https://agiledata.info/p/05-data-search</link><guid isPermaLink="false">https://agiledata.info/p/05-data-search</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Wed, 04 Dec 2024 22:50:02 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6Yu7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><strong>What</strong></h2><p>Search your data as effortlessly as using Google Search, finding the exact data you need in seconds.</p><p>Simply type in any data value you want to find in a Tile (table) and the AgileData App will automagically search every row and every column in that Tile and it returns the rows that have that value.</p><p>Data Search enables Data Persona to look beyond metadata and dive into the actual content of datasets, finding the specific data values or patterns directly within the cataloged data.</p><p>This makes finding and using relevant data faster, removing the need to write query code or the need to use a third party query tools to find the data they need to complete their current data task.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6Yu7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6Yu7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6Yu7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6Yu7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6Yu7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6Yu7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg" width="1456" height="1054" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1054,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:59378,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6Yu7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6Yu7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6Yu7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6Yu7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2><strong>Feature Requirement</strong></h2><p>The system must allow users to perform data search within the catalog, enabling them to search not only metadata but also the actual content of datasets for specific values or patterns.</p><h2><strong>Requirement Rationale</strong></h2><p>Catalog data search enhances the ability to find relevant information quickly, supports deeper data exploration, and improves the efficiency of data analysis by allowing users to locate specific data points directly within the cataloged datasets, and minimising the need to write code or use third party query tools.</p><h2><strong>How</strong><br></h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;bc6ef303-9f9f-4d82-b0bd-7b8948ec917a&quot;,&quot;duration&quot;:null}"></div><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://agiledata.io/project/data-search/&quot;,&quot;text&quot;:&quot;View Interactive Demo&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://agiledata.io/project/data-search/"><span>View Interactive Demo</span></a></p><p></p><h2><strong>Why</strong></h2><p>This feature was built out of Nigel&#8217;s frustration with me asking him to write and run queries for me all the time.</p><p>Like Track N Trace, it is another one of those small micro features that we built to remove a frustration that ended up being one of the surprise features I use a lot.</p><p>As I often joke &#8220;I can't code, won&#8217;t code, don&#8217;t code&#8221;.</p><p>This statement is not quite true, while I can&#8217;t sit at a blank screen and write code from scratch, I can read and edit other peoples code, Im ok at googling and reusing code snippets and with the advent of LLM co-pilots I am even more proficient with cobbling code examples together to get a data job done.</p><p>But one of our core principles is if I have to write code in our AgileData App, or heaven forbid I have to write and execute code in BigQuery Studio in the Google Cloud Console, then we have some work to do to make the no/low code experience magical.</p><p>To be clear, a magical no code solution is nirvana for us.</p><p>The analogy I often use is the &#8220;Magic Sorting Hat&#8221;, stealing a pattern from Harry Potter. If we could build a magic sorting hat that would allow us to dump any of our customers data, of any complexity, into that hat, and it then did all the data work we have to do manually, automagically, then we are Done Done. I don&#8217;t believe that I will see that in my working lifetime, but then again, I wouldn&#8217;t have believed a tool like ChatGPT would have existed in my lifetime either.</p><p>As we are bootstrapping, so don&#8217;t have billions of VC money to build the magic sorting hat, and are not young enough anymore to couch surf and subsist on 2 minutes noodles, we are taking a softly softly catchy monkey approach to this, implementing AskAI, AssistedAI and AutomatedAI patterns where they add value.</p><p>We are iteratively moving towards the magic sorting hat, one small step at a time, knowing we are unlikely to get to the final end we desire, but still getting massive value and reducing the complexity of managing data on every step of the journey.</p><p>An interesting point from the three AI patterns lens is that we decided to use a Search pattern to solve this problem, not an AskAI chat pattern.</p><p>Back to Data Search.</p><p>I use this feature in a few different ways, often in combination with Track N Trace.</p><p>One use case is when I want to see the Details that relate to a specific Concept.</p><p>For example I have a Concept of Customer and I have some Details about the Customer, attributes such as name, date of birth, phone number etc. For a specific customer record there is a problem with the data, maybe the phone number isn&#8217;t what is expected.</p><p>So I will go into the Catalog Detail screen for the relevant Tile and search for that Customer, maybe based on their customer id, maybe on their customer name. I will get back a row (or rows) for any row/column that has that value, and I can then peruse all the values on that row.</p><p>Or maybe I want to search for a specific phone number to find which Customer(s) it is stored against.</p><p>Nothing that can&#8217;t be done using a SQL query tool, but remember I won&#8217;t code and I never want to have to leave the AgileData App to get the data work done.</p><p>And Nigel doesn&#8217;t want to write and run queries for me, hence this feature appearing.</p><p>Before this feature it was either Ask Nigel, use the BigQuery Studio Console or push the data to a Consume Tile and use Looker Studio on it.</p><p>The Data Search feature reduces the time, my effort and my cognition to find the data I need, which is what we are all about.</p><p>After using this feature for a while, there are a few things we need to iterate.</p><p>It would be good to be able to have more control on the columns that are searched and to be able to search for two different values at the same time. Of course those iterations will start us down the journey of building a query tool in the app, not sure that is something we want to do.</p><p>And I would love to be able to search every Tile for a data value, a bit like Track N Trace.</p><p>One of the secrets of Data Search is we are leveraging a BigQuery SEARCH() function for this, we are not writing and running a custom SQL query.</p><p>For now I will keep saving time when I need to find a data value by using it, and sleep well knowing I haven&#8217;t had to Ask Nigel to &#8220;write me another quick query&#8221;.</p><div><hr></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;49c5a3c8-50fd-4a9d-8317-4238cf713feb&quot;,&quot;caption&quot;:&quot;I love building the AgileData Product with Nigel Vining. I love the fact that we are building something that makes the complex data work we do for our customers simpler and quicker.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#42 - Time for a little AgileData App feature show and tell&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-10-30T22:30:21.657Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d69e95e-2913-4234-8e86-8114b74e0122_1719x1251.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/time-for-a-little-agiledata-app-show&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:148384576,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:1,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div>]]></content:encoded></item><item><title><![CDATA[#04 - Track 'N' Trace]]></title><description><![CDATA[Why do you need to use a complex data lineage graph to work out where specific data goes in your data platform? When you can track n trace that data just like you track and trace your courier parcel]]></description><link>https://agiledata.info/p/04-track-n-trace</link><guid isPermaLink="false">https://agiledata.info/p/04-track-n-trace</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Tue, 19 Nov 2024 19:46:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!y4L9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><strong>What</strong></h2><p>Track n Trace provides end-to-end visibility of your data journey, allowing you to trace every step from source to consumption with ease, as if you were tracking the delivery of a physical package.</p><p>This enables Data Personas to understand where data originates, how it transforms, and where it is used, ensuring full transparency and a reliable audit trail. Whether for troubleshooting, compliance, or optimisation, Track n Trace delivers the clarity needed to manage your data flows effectively.</p><p>With its simply magical interface, Track n Trace empowers data teams to maintain trust in the data and streamline their data operations with ease.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!y4L9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!y4L9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg 424w, https://substackcdn.com/image/fetch/$s_!y4L9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg 848w, https://substackcdn.com/image/fetch/$s_!y4L9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!y4L9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!y4L9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg" width="1456" height="1056" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1056,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:191505,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!y4L9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg 424w, https://substackcdn.com/image/fetch/$s_!y4L9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg 848w, https://substackcdn.com/image/fetch/$s_!y4L9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!y4L9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2><strong>Feature Requirement</strong></h2><p>The system must provide capabilities to track and trace data lineage for a specific data value, enabling users to follow the flow of data through various transformations, sources, and destinations within the platform.</p><h2><strong>Requirement Rationale</strong></h2><p>Tracking and tracing data ensures transparency and accountability in data processing, supports compliance with regulatory requirements, and enhances&nbsp; in data by allowing users to understand the origin, transformation, and usage of their data.</p><h2><strong>How</strong><br></h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;0c4ef6f0-8400-4fba-a70e-55690329c8fe&quot;,&quot;duration&quot;:null}"></div><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://agiledata.io/project/track-n-trace/&quot;,&quot;text&quot;:&quot;View Interactive Demo&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://agiledata.io/project/track-n-trace/"><span>View Interactive Demo</span></a></p><p></p><h2><strong>Why</strong></h2><p>This feature was built out of my frustration with the typical pattern for tracking and understanding lineage of data.</p><p>One of the benefits of working in a dedicated data team for an organisation, or only working for one customer, is over time you get tacit knowledge of all the data flows.&nbsp; If you want to understand how the data is or isn&#8217;t flowing through the data platform, you already have an idea and you typically just want to validate your understanding.</p><p>If you are a Fractional Data Team, you are often switching Customer context on a regular basis and that increases the level of data cognition you need.&nbsp; You have to tune into that Customers data flows so to speak, or &#8220;see the matrix&#8221;.</p><p>Often part of that cognition is the need to trace the lineage of a particular data flow for a Customer.</p><p>It might be for the dreaded statement from a Stakeholder, &#8220;that number doesn&#8217;t look right&#8221; which requires you to trace it from the Consume Tile the Last Mile tool is using, back to the Change Rules that are applying business logic to the data and potentially all the way back to the History Tile and System of Capture that generated that data.</p><p>It might be to trace the impact of a Systems of Capture change that you have been told is happening in the future, or more likely has happened and broken the current Data Contract. So you need to trace forward to see all the transformation logic that relies on that data and the Consume Tiles that use it.</p><p>Or you need to investigate the effort to &#8220;just make a small tweak to the business logic on how we calculate xxx&#8221;&nbsp; and you need to start in the middle of your data flow and move both left and right at the same time.</p><p>One of the first features we built in the AgileData App, was the Data Map, our version of the typical lineage graph.&nbsp; You can of course click on a Tile in the map and see the lineage both forward and back to visualise the flow of data.&nbsp; From there you can simply view the Change Rules that transform the data or view Tiles that hold the data as a result of each transformation step.</p><p>But if you are trying to trace an individual column this process is far from magical.&nbsp; </p><p>We could have implemented a column level view of the Data Map, but that would have resulted in a complexity of lines and flows I like to call &#8220;mad persons knitting&#8221;.&nbsp; And I would still have to click on each node or line to understand what was actually going on within that Data Flow.</p><p>One of the things we often do to understand the flow of the data is to try and trace a single data value.&nbsp; For example, pick the Id of an order in the System of Capture, or the name of a Supplier and trace that value through the Data Flows.</p><p>And that led us to the development of Track N Trace.</p><p>You enter a data value for a specific Tile and it will return with every Tile in the Data Map that is related to that Tile and has that specific value in it.&nbsp; And it will tell you the number of times that value appears in each dependent Tile.</p><p>It seems like a simple process, but as always creating simplicity from complexity is a bit like a duck floating on top of the water while peddling madly under the water.&nbsp;&nbsp;</p><p>Here is what the AgileData Platform is doing under the covers to achieve this magic:</p><ul><li><p>You start with a Tile in the AgileData App and you search for a specific data value.&nbsp;&nbsp;</p></li><li><p>It automagically traverses the Data Map in the background to harvest each transformation rule that is dependent on the Tile you started with.</p></li><li><p>It identifies each target Tile that each of the identified rules populate.</p></li><li><p>It then searches all the data in each of those Tiles for that data value.</p></li><li><p>It returns the name of the Tile and the number of times the data value appears as a simple list</p></li><li><p>You can click on any of the Tile names to drill through to the Change Rule that populates that Tile.&nbsp;&nbsp;</p></li></ul><p>With our Track N Trace feature we adopted the same pattern you use when you are tracking the delivery of a physical parcel.&nbsp; It&#8217;s just a little faster and a lot more reliable.</p><p>Again this feature saves me minutes every time I need to understand the lineage of the data.&nbsp; And when you do that data task multiple times a day, those minutes saved all eventually add up to hours.</p><div><hr></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;44fe884f-727c-4e4d-b0af-af2a21eb6690&quot;,&quot;caption&quot;:&quot;I love building the AgileData Product with Nigel Vining. I love the fact that we are building something that makes the complex data work we do for our customers simpler and quicker.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#42 - Time for a little AgileData App feature show and tell&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-10-30T22:30:21.657Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d69e95e-2913-4234-8e86-8114b74e0122_1719x1251.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/time-for-a-little-agiledata-app-show&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:148384576,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:1,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div>]]></content:encoded></item><item><title><![CDATA[#03 - Catalog Browse and Search]]></title><description><![CDATA[Data Persona&#8217;s can use the Catalog to quickly search, find and access the Data Assets (Tiles) they need to complete a data task]]></description><link>https://agiledata.info/p/03-catalog-browse-and-search</link><guid isPermaLink="false">https://agiledata.info/p/03-catalog-browse-and-search</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Mon, 11 Nov 2024 19:12:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!KDkP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><strong>What</strong></h2><p>Data Persona&#8217;s can use the Catalog to quickly search, find and access the Data Assets (Tiles) they need to complete a data task, such as supporting the development of Information Products or using the data for analysis.</p><p>Topic Tags and Dynamic Filtering allows Data Assets to be easily found using the Organisations business terminology.</p><p>With the Menu Anywhere capability they can drill out to any other screen in the AgileData App, retaining the context of the Tile, removing the need to go to the screen and manually searching for that Data Asset again.</p><p>Any time a data user performs a data task in the AgileData App, or an automated data task is executed on the AgileData Platform, the Catalog is automagically updated.&nbsp; The Catalog data is treated as a first class citizen, not as data exhaust.</p><p>The Catalog is part of a wider ensemble of features that let them search or browse to locate essential Data Assets quickly, view comprehensive details for each set of data, and track the flow of data similarly to parcel tracking.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KDkP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KDkP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png 424w, https://substackcdn.com/image/fetch/$s_!KDkP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png 848w, https://substackcdn.com/image/fetch/$s_!KDkP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png 1272w, https://substackcdn.com/image/fetch/$s_!KDkP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KDkP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png" width="1456" height="1055" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1055,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:168444,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KDkP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png 424w, https://substackcdn.com/image/fetch/$s_!KDkP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png 848w, https://substackcdn.com/image/fetch/$s_!KDkP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png 1272w, https://substackcdn.com/image/fetch/$s_!KDkP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Feature Requirement</strong></h2><p>The system must include a comprehensive data catalog that allows users to organise, search, and manage metadata for all data assets within the platform.</p><h2><strong>Requirement Rationale</strong></h2><p>A data catalog enhances data discoverability, improves governance by providing clear documentation of data assets, and supports efficient data management by enabling users to easily locate and understand the available datasets.</p><h2><strong>How</strong></h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;378a79bf-05c3-4935-be2e-fa4edaed33e1&quot;,&quot;duration&quot;:null}"></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://agiledata.io/project/catalog-search/&quot;,&quot;text&quot;:&quot;View Interactive Demo&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://agiledata.io/project/catalog-search/"><span>View Interactive Demo</span></a></p><p></p><h2><strong>Why</strong></h2><p>This is the one feature I use the most, I use it everyday when I am doing data work, because it is typically where I start from to do that data work.</p><p>It&#8217;s also one of the first features we built when we started developing the AgileData App.</p><p>We designed the Catalog based on the patterns for browsing and searching within Netflix. &nbsp; We treat a table or view of data as if it was a movie, we present each as a Tile.</p><p>We had three choices when we designed the Catalog feature:</p><ol><li><p>Use the typical data Catalog pattern that is adopted by most data catalog tools, a row per Data Asset and lots of detail about that asset in each row, what I think of as a library pattern.&nbsp; For me this was always orientated at hard core data people.</p></li><li><p>Use a Google search pattern, a blank screen with search, and then present a row per data Asset with a subset of detail as a result of that search.</p></li><li><p>Netflix browse or search pattern, which is what we went with.</p></li></ol><p>One of the problems with the search only patterns for Data Catalogs is it assumes you know what you are looking for.&nbsp;&nbsp;</p><p>We had a hypothesis that users would want to browse the Data Assets that were available.&nbsp;&nbsp;</p><p>I am a great fan of looking at consumer products and patterns and seeing if applying them to the data domain reduces complexity (or increases it).&nbsp; Netflix seemed to have the best pattern for browsing large volumes of movies to find what might interest you, so we implemented this as the primary UX in the Catalog to browse across large volumes of data sets.</p><p>This browse hypothesis was proven wrong, not because Information Consumers don&#8217;t want to browse, but because they just want to access the answer.  They want to find and access the Information Product that quickly answers their Business Question and lets them get on with the Action they need to take once armed with that answer.&nbsp; They don&#8217;t want to browse for sets of data that might or might not answer their Business Question and then have to do a whole bunch of data work themselves to get that answer.</p><p>We added the Marketplace feature to solve this problem, the Marketplace feature reuses all the browse and search capabilities of the Catalog, another great example of our Define Once, Reuse Often (DORO) principle.</p><p>After using the Catalog for quite a while, we found immense value in the browse pattern ourselves.&nbsp; One of the interesting things about being a Fractional Data Team is you switch Customer context on a regular basis.&nbsp; The ability to be able to land into the Catalog for a Customers Tenancy and quickly browse the data Tiles that are available, helps with reorienting oneself quickly.</p><p>If I know what I am looking for I often find browsing is still the quickest way to get to that data.</p><p>But not always.</p><p>So thats why we added search.</p><p>We started off with the typical search capability, text box at the top of the Catalog screen, type some text, hit enter and wait till the search results, in our case the Tiles, were returned.</p><p>It worked but it didn&#8217;t seem very magical.&nbsp;</p><p>One of the useful micro interaction patterns common in web based applications these days is the idea of type-ahead.&nbsp; You start typing text and the machine starts to makes suggestions for completing those words for you.</p><p>We applied an iteration of this pattern to provide Dynamic Filtering in the AgileData App.&nbsp; As you start typing in the search box we are automagically filtering the Tiles in the Catalog screen based on your search criteria. &nbsp; Small interaction pattern, but one that is magical.</p><p>One of the problems we have experienced with previous generation of Data Catalogs is they treat data and metadata as exhaust.</p><p>By this I mean other tools create the data and the metadata and the Data Catalog then &#8220;harvests&#8221; this on a scheduled basis.</p><p>We use a completely different pattern at AgileData.&nbsp;&nbsp;</p><p>When you do the data work in the AgileData App, or it&#8217;s automagically done for you by the machine in the AgileData Platform, the data work is immediately available in the Catalog.</p><p>This is because we flip the standard pattern for a Data Platform.</p><p>Instead of the pattern being:</p><ul><li><p>create Code &gt; create Metadata &gt; populate Catalog</p></li></ul><p>Our pattern is:</p><ul><li><p>Create Metadata &gt; store in Catalog &gt; create/execute Code</p></li></ul><p>We call this our Config Driven pattern, others call it Active Metadata.</p><p>When you use the AgileData App, or the machine does something automatically in the AgileData Platform, every step in the data tasks is stored in Config.&nbsp; The Catalog screens are then just surfacing this Config.</p><p>With this pattern there is no way the Catalog can get out of sync with the Data and/or Metadata.</p><p>We then use that Config time and time again to generate and execute the code we need, before deleting the code. We treat the Code as Cattle and the Config as Pets in DevOps parlance.</p><p>From day one we also allowed the creation and management of Topic Tags in the Catalog.</p><p>These Tags are freeform, you can create a Tag with any name for any use.&nbsp; They are purposely not stored in Config as a set of restricted or regulated &#8220;lookups&#8221;.&nbsp; The reason is you often need to quickly iterate the use of those Topic Tags.</p><p>When you go into the Catalog you will see the data Tiles in the relevant row for their Data Design role, ie History, Concept, Detail, Event, Activity, Consume.</p><p>You will also see a row for every Topic Tag that has been applied.</p><p>Want to see a row with data Tiles that relate to &#8220;Sales&#8221; add a Topic Tags called &#8220;Sales&#8221; to one or more Tiles and that row will automagically appear in the Catalog.&nbsp;</p><p>The Tags are also &#8220;active&#8221;, click on a Tag that is shown on the Tile and the Catalog screen will Dynamically Filter to only show Tiles with that Tag.</p><p>This way of navigating to quickly find Tiles has saved many hours over the years.</p><p>The other part of the Catalog feature I use every day is the Menu Anywhere.</p><p>On each Tile in the Catalog there is the Menu Anywhere option, 3 dots (&#8230;).&nbsp; Click on this and it will provide the list of things you can do that relates to this Tile, for example show the Change Rule that populates it, or the Trust Rules that validate it.</p><p>This means you can punch out to the Change Rule Step screen in one click, without needing to go to the Rules List screen, search for that Tile and then click to open the rule.</p><p>Interaction patterns like Menu Anywhere might save a few clicks and just a minute or two, but those clicks and minutes soon add up when you do them day in and day out.</p><p>We also present the Catalog screen from different parts of the top menu that are again context aware.&nbsp; If you click on the History Tiles menu under Collect, you will be taken to the Catalog screen already Dynamically Filtered by Data Design type of History.</p><p>Again it&#8217;s only a few clicks to open the Catalog screen, type History in the search box, and then the Catalog is dynamically filtered.&nbsp; But saving those clicks, by just clicking on a single menu option, just makes sense.&nbsp; Especially when you do that interaction multiple times everyday.</p><p>The Catalog feature started its life as a feature built for Information Consumers, because that was what everybody else did, they brought and implemented a Data Catalog for their end users (and then wondered why they never came).</p><p>Over years of iteration we have made it a tool for ourselves to help make the data work we do less complex.</p><p>Remember we are We are building a product that is focused on:</p><ol><li><p>taking a data task that takes me an hour and making it 10 minutes.</p></li><li><p>taking a data task that I have to think about how I can do it, and getting the machine to recommend what I should do, reducing the need for cognition.</p></li><li><p>automating the data task so we don't have to do it, getting the machine to do the work for us.</p></li></ol><p>We have added a small bit of personalisation into the AgileData App as well.</p><p>The Catalog screen is where every Data Persona starts when they login to an AgileData Tenancy,&nbsp;</p><p>A Consumer Personas automagically starts with the Marketplace screen.</p><div><hr></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;59bd72a1-bf83-4519-87e8-57a77c1d21ae&quot;,&quot;caption&quot;:&quot;I love building the AgileData Product with Nigel Vining. I love the fact that we are building something that makes the complex data work we do for our customers simpler and quicker.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#42 - Time for a little AgileData App feature show and tell&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-10-30T22:30:21.657Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d69e95e-2913-4234-8e86-8114b74e0122_1719x1251.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/time-for-a-little-agiledata-app-show&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:148384576,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:1,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div>]]></content:encoded></item><item><title><![CDATA[#02 - Single Sign In]]></title><description><![CDATA[Streamline access with Single Sign-In, providing secure and seamless entry to the AgileData App and Platform with just one login.]]></description><link>https://agiledata.info/p/02-single-sign-in</link><guid isPermaLink="false">https://agiledata.info/p/02-single-sign-in</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Thu, 07 Nov 2024 01:23:23 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!oHl8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><strong>What</strong></h2><p>With Single Sign-On (SSO), users gain streamlined access to the AgileData App, eliminating the need for repeatedly logging in and reducing friction in their data day.&nbsp;</p><p>This feature leverages Google Identity and Access Management (IAM) to provide seamless and secure authentication, ensuring that users can easily connect to the platform using their existing credentials.&nbsp;</p><p>AgileData's SSO is not only secure but also scalable, designed to meet the needs of growing teams while maintaining the highest standards of data protection and access control.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oHl8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oHl8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif 424w, https://substackcdn.com/image/fetch/$s_!oHl8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif 848w, https://substackcdn.com/image/fetch/$s_!oHl8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif 1272w, https://substackcdn.com/image/fetch/$s_!oHl8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oHl8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif" width="1456" height="834" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:834,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:128805,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oHl8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif 424w, https://substackcdn.com/image/fetch/$s_!oHl8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif 848w, https://substackcdn.com/image/fetch/$s_!oHl8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif 1272w, https://substackcdn.com/image/fetch/$s_!oHl8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3><strong>Feature Requirement</strong></h3><p>The system must support Single Sign-On (SSO) integration, allowing users to authenticate through a centralised identity provider to access the platform without needing separate credentials.</p><h3><strong>Requirement Rationale</strong></h3><p>SSO enhances security by centralising authentication management, improves user convenience by reducing the need for multiple logins, and streamlines access control across different systems and applications.</p><h2><strong>How</strong></h2><p></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;73196dcb-e22c-4508-9e91-d0bb3414849f&quot;,&quot;duration&quot;:null}"></div><p><strong><br></strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://agiledata.io/project/single-sign-in/&quot;,&quot;text&quot;:&quot;View Interactive Demo&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://agiledata.io/project/single-sign-in/"><span>View Interactive Demo</span></a></p><p></p><h2><strong>Why</strong></h2><p>When we started building the AgileData Platform, we used Google Identity and Access Management (IAM) by default from day one, it just made sense.</p><p>We also use Google IAM to provide both Authentication capability and Single Sign On (SSO) capability for the AgileData App.</p><p>A quick definition of Authentication vs SSO:</p><ul><li><p>Authentication verifies a user&#8217;s identity to grant access to a specific system.&nbsp;</p></li></ul><ul><li><p>SSO enables a user to log in once and access multiple systems without re-entering credentials.</p></li></ul><p>There were a few reasons why using Google IAM made sense to us.</p><p>We used GSuite for our internal systems, email, Google Docs, Google Sheets etc.&nbsp; As a result Nigel and I already had Google Accounts.</p><p>When you start using the Google Cloud platform you typically start by accessing it via a Google Account to use the cloud services, which is what we did.</p><p>Our initial interface for Change Rules leveraged Google Sheets, so again we could easily access this via our Google Accounts.</p><p>When we started to build out the AgileData App on top of the AgileData Platform, we needed to decide how we would authenticate users to the App and how we would support SSO.</p><p>We had a few choices:</p><ul><li><p>Keep using Google IAM</p></li><li><p>Introduce the capability for us to store usernames and passwords in the AgileData Platform</p></li><li><p>Use a third party OAuth provider, for example Okta or Microsoft Active Directory</p></li></ul><p>For us creating and storing usernames and passwords directly in the AgileData Platform was not a pattern we wanted to adopt, we didn't want to store Passwords in the AgileData Platform.</p><p>It introduces a massive amount of risk when you directly hold those passwords, a risk we did not want to incur.</p><p>That left as with the option of using Google IAM or a third party provider such as Okta or Microsoft Active Directory (or whatever Active Directory is called by Microsoft these days)</p><p>Both of those products are aimed at Enterprise Customers and at that time we had not identified what our ideal customer type was.&nbsp; Plus there was an additional and quite substantial cost to both licence those products and to integrate them within our product.</p><p>One of our core Principles we operate at AgileData is to leverage serverless capabilities available within the Google Cloud Platform wherever possible.&nbsp; So naturally that led us to keep using Google IAM as our primary authentication method.</p><p>We also started using Google Groups as a foundational service for managing Authorisation and role level security, i.e controlling who could access what.&nbsp; That felt like a pretty weird pattern, but it is what the Google Cloud Platform uses itself to control role based access, so was the logical pattern for us to adopt.</p><p>One of the downsides of using Google IAM is each AgileData User has to have a Google Account to be able to login.&nbsp; Luckily Google provides an easy way to link a Google Account to an external email address, which meant our customers could log into the AgileData App using their standard corporate email address and didn&#8217;t need a gmail address.</p><p>A downside of this linked Google Account pattern has been the fact they can&#8217;t use the password they use for their corporate email (well they can, but it is not automagically sync&#8217;d) to login. We always thought we would eventually integrate Google IAM with our customers' Microsoft Active Directory environments when needed, a pattern that is well documented.&nbsp; But we have yet to have a customer where that integration was required.</p><p>We did think about opening up the SSO capability to allow users to login into the AgileData App via their social media account, i.e Meta (well Facebook back then) X, (well Twitter back then) etc.&nbsp; But we felt that most customers would not be comfortable with their users accessing their organisational data via these personal social media accounts.</p><p>One of the other benefits of using Google IAM as both our SSO and Authentication service is we automatically inherit the scale and might of Google to identify and mitigate threats.&nbsp; Something we couldn&#8217;t afford to do well ourselves.</p><div><hr></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;80bf9064-2cf2-4a23-952e-bda5a2cc4641&quot;,&quot;caption&quot;:&quot;I love building the AgileData Product with Nigel Vining. I love the fact that we are building something that makes the complex data work we do for our customers simpler and quicker.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#42 - Time for a little AgileData App feature show and tell&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-10-30T22:30:21.657Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d69e95e-2913-4234-8e86-8114b74e0122_1719x1251.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/time-for-a-little-agiledata-app-show&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:148384576,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:1,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div>]]></content:encoded></item><item><title><![CDATA[#01 - Marketplace]]></title><description><![CDATA[Information Consumers can quickly search, find and access the Information Products they need to answer their business questions.]]></description><link>https://agiledata.info/p/01-marketplace</link><guid isPermaLink="false">https://agiledata.info/p/01-marketplace</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Sun, 03 Nov 2024 20:51:31 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/b40400f3-34e2-4d3c-b6f2-e60df0ed2cc0_2556x1830.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2><strong>What</strong></h2><p>Information Consumers can quickly search, find and access the Information Products they need to answer their business questions.</p><p>This feature enables Information Consumers to search and find all the available&nbsp; dashboards, reports and analytical models in the AgileData App, regardless of what third party Last Mile tool they are created in.</p><p>It also enables the Information Consumer to quickly open that report or dashboard directly from the Marketplace, when those reports are accessible by a web URL</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tgG-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tgG-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png 424w, https://substackcdn.com/image/fetch/$s_!tgG-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png 848w, https://substackcdn.com/image/fetch/$s_!tgG-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png 1272w, https://substackcdn.com/image/fetch/$s_!tgG-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tgG-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png" width="1456" height="1042" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1042,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:339193,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!tgG-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png 424w, https://substackcdn.com/image/fetch/$s_!tgG-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png 848w, https://substackcdn.com/image/fetch/$s_!tgG-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png 1272w, https://substackcdn.com/image/fetch/$s_!tgG-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb753b97d-3165-43a6-89d1-b18c537b2762_2556x1830.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h3><strong>Feature Requirement</strong></h3><p>The system must include an Information Product Marketplace, where users can browse, discover, and access a curated selection of Information Products.</p><h3><strong>Requirement Rationale</strong></h3><p>An Information Product Marketplace facilitates the sharing of information assets, enhances collaboration across teams, and provides users with easy access to valuable insights and tools, driving data-driven decision-making and innovation.</p><h2><strong>How</strong></h2><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;40398852-065b-4cb3-8e64-40c853ffc791&quot;,&quot;duration&quot;:null}"></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://agiledata.io/project/marketplace/&quot;,&quot;text&quot;:&quot;View Interactive demo&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://agiledata.io/project/marketplace/"><span>View Interactive demo</span></a></p><p></p><h2><strong>Why</strong></h2><p>One of the core principles we decided on when we started building AgileData, was we wouldn&#8216;t focus on building the last mile reporting visualisation tools.&nbsp; The Visualisation market was very crowded and the cost of developing the table stake features were too high, there were more valuable areas of complexity we could focus our development effort on making simpler.</p><p>We also had a bet that most organisations would already have a Visualisation tool of choice and wouldn&#8217;t want to use the basic version we would create.&nbsp; This bet turned out to be wrong as we started to focus on helping organisations who didn&#8217;t already have a data team, and typically they also didn't have a visualisation tool.</p><p>In this scenario we started using Google Looker Studio to deliver these visualisations as it was a good tool for the basic stuff, it had no licence cost, it ran as a serverless / SaaS product and lastly it was tightly integrated with Google BigQuery which we use to store the data in AgileData.</p><p>The Marketplace feature came as a result of watching how our Customers used, or in this case did not use the AgileData App.</p><p>Over the years we have spent a bit of time extending out the Catalog capability in the Agiledata App.&nbsp; We use the Catalog capability extensively ourselves, as the launching point for most of the Data Work we need to do.</p><p>But when an Information Consumer from a&nbsp; Customer went to use the AgileData App for the first time, they got confused.&nbsp; They could see a bunch of Tiles that related to the Data Work we were doing for them.&nbsp;&nbsp;</p><p>There were the History Tiles in the Catalog where we stored an immutable and histories copy of the data we had collected from their Systems of Capture.</p><p>There were Concept, Detail and Events Tiles in the Catalog which represented tha data in a way that matched was Designed to match their Business Language and make it fit for purpose</p><p>There were Consume Tiles in the Catalog, these were the sets of data that could be used to create the visualisations, reports etc.</p><p>But the final thing that they actually consumed, the Information Products, were not there and the Information Consumers found that confusing.</p><p>We also had a problem were there was no real portal capability in Looker Studio, so it was difficult for Information Consumers to find and use the Looker Studio reports they needed.&nbsp; We found ourselves constantly emailing URL links to the reports to them.</p><p>To solve this our first bet was to enable third party URL&#8217;s to be created In the Catalog, as Info App Tiles.&nbsp; This allowed you to paste a URL to a report and give it a name and a Tile would appear for it in the Catalog.</p><p>This resolved some of the issues for the Information Consumer, but they still found the Catalog confusing as Info App Tiles were just one of the many Tiles they could see.</p><p>We had a choice where we could have used personalisation to default a filter for the Information Consumer user types when they viewed the Catalog, and only showed them Info App Tiles by default, but instead we decided to break it out to its own top menu, which we named Marketplace.</p><p>This was based on a bet that we will extend out the Information Product sharing capabilities in the AgileData App in the future.</p><p>When a user who is an Information Consumer logs into the AgileData App, they are now taken directly to the Marketplace screen and are presented with the Information Products they can consume.</p><p>From there they can search, find and access any Information Product they need to answer their business question with data and take the action they need based on that data.</p><p>All the other user persona&#8217;s still get shown the Catalog when they login to the AgileData App.</p><div><hr></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;337560e9-6d1c-4161-b064-301d63a84158&quot;,&quot;caption&quot;:&quot;I love building the AgileData Product with Nigel Vining. I love the fact that we are building something that makes the complex data work we do for our customers simpler and quicker.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#42 - Time for a little AgileData App feature show and tell&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-10-30T22:30:21.657Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d69e95e-2913-4234-8e86-8114b74e0122_1719x1251.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/time-for-a-little-agiledata-app-show&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:148384576,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:1,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div>]]></content:encoded></item><item><title><![CDATA[#42 - Time for a little AgileData App feature show and tell]]></title><description><![CDATA[42 AgileData Features]]></description><link>https://agiledata.info/p/time-for-a-little-agiledata-app-show</link><guid isPermaLink="false">https://agiledata.info/p/time-for-a-little-agiledata-app-show</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Wed, 30 Oct 2024 22:30:21 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4d69e95e-2913-4234-8e86-8114b74e0122_1719x1251.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I love building the AgileData Product with <strong><a href="https://www.linkedin.com/in/nigelvining/">Nigel Vining</a></strong>. I love the fact that we are building something that makes the complex data work we do for our customers simpler and quicker.</p><p>We are literally building the product we have always wanted and needed to do data work, faster, easier and cheaper.</p><p>We are building a product that is focused on:</p><ol><li><p>taking a data task that takes me an hour and making it 10 minutes.</p></li><li><p>taking a data task that I have to think about how I can do it, and getting the machine to recommend what I should do, reducing the need for cognition.</p></li><li><p>automating the data task so we don't have to do it, getting the machine to do the work for us.</p></li></ol><p>Nigel and I have a specific set of complimentary skills which means we are pretty good at building the product we need.</p><p>The thing that neither of us are good at is Product Marketing. We have fallen into the old start-up trap of building it, rather than selling it.</p><p>Thats not such a bad thing, our current business model is to provide our customers with a Fractional Data Service.  For $5k a month, they are buying a data team, that comes with a data platform and continuous data outcomes, not just our AgileData App &amp; Platform.</p><p>Our product is designed to enable us to scale the Fractional Data Service. The goal is a single data person should be able to sustainably support at least 10 different organisation's at the same time.</p><p>As part of trying to achieve this scale we have built a pretty amazing product, when I show people they often comment at the breadth and depth of what we have built.</p><p>So I am going to try an experiment.</p><p>I am going to create 42 posts, one that outlines each of my favourite AgileData App feature we have built and why we built it.</p><p>At the end I will post a Google Sheet with the description of those 42 features (and a few more) as a recommended list of requirements for a data platform.</p><p>Each post will have the same structure:</p><ul><li><p><strong>The What</strong>,  short overview of the the feature;</p></li><li><p><strong>Feature Requirement</strong>, if you were asking a vendor for that feature what would you ask for;</p></li><li><p><strong>Requirement Rationale</strong>, if you had to justify to the powers to be why you needed this feature, you would use this;</p></li><li><p><strong>The How</strong>, a short interactive click through video of how it works in AgileData (seeing is believing);</p></li><li><p><strong>The Why</strong>, the story behind why we built that feature and what we learnt.</p></li></ul><p>We have built these features because we needed them, so if you are looking to build or buy your own data platform, those are the features I would recommend you look for.<br><br>At the end of the 42 posts I will give you a shopping list of features, with the Feature Requirement and the Requirement Rationale which you can use as a requirements document or evaluation whenever you need it.  I will also aim to add the features into that list that we know we need but haven&#8217;t built yet.</p><p>I will update this post as I go, to create a table of contents for the features so to speak, or you can click on the &#8220;42 Features&#8221; menu above to get a list of features/articles I have already posted.<br><br></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;454ae7cf-68fc-4243-80a8-d808fba0ff0b&quot;,&quot;caption&quot;:&quot;What Information Consumers can quickly search, find and access the Information Products they need to answer their business questions.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#01 - Marketplace&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-11-03T20:51:31.007Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b40400f3-34e2-4d3c-b6f2-e60df0ed2cc0_2556x1830.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/01-marketplace&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:149334622,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:1,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;57701556-dedd-46bf-a911-45296aeb7f1b&quot;,&quot;caption&quot;:&quot;What With Single Sign-On (SSO), users gain streamlined access to the AgileData App, eliminating the need for repeatedly logging in and reducing friction in their data day.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#02 - Single Sign In&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-11-07T01:23:23.596Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7b1e1f4-2ebc-46f6-b560-efd082562189_3426x1962.gif&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/02-single-sign-in&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:149456194,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;442fb92c-8c9d-4368-9919-b3d366e6512a&quot;,&quot;caption&quot;:&quot;What Data Persona&#8217;s can use the Catalog to quickly search, find and access the Data Assets (Tiles) they need to complete a data task, such as supporting the development of Information Products or using the data for analysis.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#03 - Catalog Browse and Search&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-11-11T19:12:44.955Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F959abcbc-8c8f-4e68-b25f-2f2116e3dfee_1719x1245.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/03-catalog-browse-and-search&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:151467317,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;565105b4-f29a-44cd-b078-6a1c61f5e148&quot;,&quot;caption&quot;:&quot;What Track n Trace provides end-to-end visibility of your data journey, allowing you to trace every step from source to consumption with ease, as if you were tracking the delivery of a physical package.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#04 - Track 'N' Trace&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-11-19T19:46:42.209Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93e84267-ba78-4efa-85ab-0002c4d449f4_2150x1559.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/04-track-n-trace&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:151888657,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:3,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;693eef57-3473-4cbf-ae14-596f552bfaca&quot;,&quot;caption&quot;:&quot;What Search your data as effortlessly as using Google Search, finding the exact data you need in seconds.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#05 - Data Search&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-12-04T22:50:02.683Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2b80403-4055-4770-95e1-bc62ff6c1f16_1718x1244.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/05-data-search&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:152589900,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;96a77357-d594-4555-a06c-ae6ec19b9573&quot;,&quot;caption&quot;:&quot;What Observe everything that is going on in the AgileData Platform, as it happens.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;#06 - DataOps Notifications&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:2774203,&quot;name&quot;:&quot;Shagility&quot;,&quot;bio&quot;:&quot;I help data teams work in a Simply Magical Way&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f09a2d19-6707-4ef9-a4e3-a5e770fb640f_1406x853.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-12-18T20:12:35.712Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb76e1009-47a4-41dd-a80e-008bb682fb23_2150x1559.bin&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://agiledata.substack.com/p/06-dataops-notifications&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:153329145,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Agile Data N&#8217; Info&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd205855a-2c1e-418a-a9bf-7fece54f2d76_1280x1280.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>Still to come:</p><ol><li><p>Catalog Details</p></li><li><p>Data Map</p></li><li><p>Design Map</p></li><li><p>Disco</p></li><li><p>Answer  Quick Question</p></li><li><p>Ask ADI</p></li><li><p>Trust Rules Roll Up</p></li><li><p>Custom Trust Rules</p></li><li><p>File Upload</p></li><li><p>API&#8217;s</p></li><li><p>Change Rule</p></li><li><p>Explore</p></li><li><p>Catalog Review</p></li><li><p>Menu Anywhere</p></li><li><p>Opinionated Data Architecture</p></li><li><p>Topic Canvas</p></li><li><p>Shared Tiles</p></li><li><p>Trust Rules Results</p></li><li><p>ADI assist</p></li><li><p>Events</p></li><li><p>Explore in Looker Studio</p></li><li><p>Share Google Sheets</p></li><li><p>Data Preview - Profile</p></li><li><p>Catalog - Business Context</p></li><li><p>Rule Data Diff</p></li><li><p>Rule version</p></li><li><p>Concept / Event Matrix</p></li><li><p>Renamed consume fields</p></li><li><p>Rule Step Wizard</p></li><li><p>Data sync</p></li><li><p>Natural Language</p></li><li><p>PII detection</p></li><li><p>Orchestration of dependent code</p></li><li><p>Data Contract</p></li><li><p>Export / Import rules</p></li><li><p>Data Match</p></li></ol>]]></content:encoded></item><item><title><![CDATA[No product idea survives the first customer engagement]]></title><description><![CDATA[And that is ok]]></description><link>https://agiledata.info/p/no-product-idea-survives-the-first</link><guid isPermaLink="false">https://agiledata.info/p/no-product-idea-survives-the-first</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Tue, 03 Sep 2024 19:28:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!U-7B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>We have just made some changes to the menu structure of the AgileData Discovery App.</p><p>One of the main changes was moving from a menu structure that had a subset of the Outputs as sub menus under the Outputs category:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U-7B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U-7B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png 424w, https://substackcdn.com/image/fetch/$s_!U-7B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png 848w, https://substackcdn.com/image/fetch/$s_!U-7B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png 1272w, https://substackcdn.com/image/fetch/$s_!U-7B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U-7B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png" width="1456" height="1056" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1056,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U-7B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png 424w, https://substackcdn.com/image/fetch/$s_!U-7B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png 848w, https://substackcdn.com/image/fetch/$s_!U-7B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png 1272w, https://substackcdn.com/image/fetch/$s_!U-7B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba6b3d0c-03c9-4761-9c3c-eba6462fedb2_2048x1485.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>To a single Outputs menu that had all the outputs listed.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9yKh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9yKh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png 424w, https://substackcdn.com/image/fetch/$s_!9yKh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png 848w, https://substackcdn.com/image/fetch/$s_!9yKh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png 1272w, https://substackcdn.com/image/fetch/$s_!9yKh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9yKh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png" width="1456" height="1054" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1054,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9yKh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png 424w, https://substackcdn.com/image/fetch/$s_!9yKh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png 848w, https://substackcdn.com/image/fetch/$s_!9yKh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png 1272w, https://substackcdn.com/image/fetch/$s_!9yKh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F969f5d14-e42a-4994-8518-90d155768edd_1723x1247.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>A few other changes:</p><ul><li><p>We also moved the Upload and Notifications menus to the the top menu, to make them easier to find. </p></li><li><p>We extended the Output version dropdown from only showing the date/time to include a combination of the Input used and the date/time, to make it easier to find the output version you want.</p></li><li><p>We provide a link from each notification to the Outputs screen.</p></li><li><p>We broke the Physical and Reporting models to include options for model patterns, i.e Dimensional vs Data Vault.</p></li><li><p>We automated the creation of a Zip file with all the Outputs, so you can easily download them in one go.</p></li></ul><p>All these changes were all based on feedback from our first user.</p><p>I knew which Output was under which Output Type, as I defined them, our first user didn&#8217;t.  So they couldn&#8217;t easily find the Output they needed.</p><p>A simple change of menu solves that.</p><div><hr></div><p>When I started out my journey into the product domain, I was that typical product novice.<br><br>I always thought our product wasn&#8217;t easy enough for others to use ( I was right, but thats not the point), and so I held off letting others use it.<br><br>This wasn&#8217;t that much of a problem for us, as our initial goal was to reduce the effort of doing the data work for our customers.<br><br>We were building a product that focused on:</p><ol><li><p>taking a data task that takes me an hour and making it 10 minutes.</p></li><li><p>taking a data task that I have to think about how I can do it, and getting the machine to recommend what I should do, reducing the need for cognition.</p></li><li><p>automating the data task so we don't have to do it, getting the machine to do the work for us.</p></li></ol><p>There were a bunch of table stake features we needed to deliver the basic data tasks required to collect, combine and consume data.</p><p>Every new customer we onboarded gave us new data complexity, and we needed to create the features that made that complexity simple.  Each time we added these features it made it quicker to do the work next time.<br><br>As we were bootstrapping the product, we would often use ugly things to deliver the first cut of the features, initially  our Change Rule logic was typed into a Google Sheet cell, with no validation.</p><p>And so I convinced myself that the product was never ready to let somebody else lose on it.<br><br>That was a mistake.<br><br>If I had of done that I would have got feedback earlier that would have been useful.</p><p>Would those initial users have continued to use the product, probably not.  But that would have been ok, as our goal was and still is to use our Product to provide a Service in a way nobody else can.</p><p>But that feedback would have helped us design a better product.</p><p>A lesson learn&#8217;t, and one I am applying to the AgileData Discovery App.<br><br>So if you are interested in using the initial version and providing some feedback, let me know.</p><div><hr></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://agiledata.io/disco/#contact&quot;,&quot;text&quot;:&quot;Get in touch&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://agiledata.io/disco/#contact"><span>Get in touch</span></a></p><p></p><p><br><br><br></p>]]></content:encoded></item><item><title><![CDATA[The 3 patterns of AgileData AI]]></title><description><![CDATA[And how I think about them]]></description><link>https://agiledata.info/p/the-3-patterns-of-agiledata-ai</link><guid isPermaLink="false">https://agiledata.info/p/the-3-patterns-of-agiledata-ai</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Mon, 29 Jul 2024 20:19:09 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/6d97db08-5ff4-46e1-9305-550ddef6ed79_3073x1020.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In one of our regular catchup sessions with an AgileData Network Partner they mentioned that in the conversations they were having with prospective customers, the question of AI in data was being constantly raised.</p><p>Having AI embedded in your product have become table stakes it seems.</p><p>I have been thinking about our approach to AI in our product for a while and landed on 3 patterns that I use as a reference.</p><ol><li><p>Ask AI</p></li><li><p>Assisted AI</p></li><li><p>Automated Ai</p></li></ol><p><strong>Ask AI</strong></p><p>Ask AI is where a human asks a question and the machine replies, this is repeated until the human gets what they need, then the human goes and undertakes the data work.</p><p>This is the now typical &#8220;ChatGPT&#8221; pattern.&nbsp; The user starts a conversation, asks a question, gets a reply and asks the next question.</p><p>Lets use two examples, answering business questions and understanding data to highlight this pattern.</p><p>For the answering business questions , the typical example is the Text to SQL pattern, where the Information Consumer asks how many customers there were last month using natural language and the machine creates some SQL, runs it and returns the answer.&nbsp; Then the Information Consumer asks their next question and gets the next response.</p><p>Then they move on to take the actions required to create an outcome and hopefully that outcome results in business value.</p><p>For understanding data , an example would be a Data Engineer collecting the data from a System of Capture, the Data Engineer passes the schema for all the tables to the LLM and asks it to indicate which system the data comes from and the LLM responds with something like Shopify.&nbsp; The Data Engineer can then ask what is the likely Ontology for this data and then what is the likely Taxonomy all based on that schema.</p><p>They then move onto the manual data work of Designing the Data Model, creating the code to transform the data to load it into the data model.</p><p>The key to this pattern is the human asks a question, gets some information, asks another question, gets more information and finally the human does the data work themselves.</p><p>The value of the pattern is it reduces the cognition required to do the data work.</p><p><strong>Assisted AI</strong></p><p>Assisted AI, is where the machine helps the human do the data task that is required, without the need for the human to ask.</p><p>Lets use the same two examples, answering business questions and understanding data.</p><p>For answering business questions, an example is an Information Consumer using a Viz tool to graph data.&nbsp; The tool looks at the shape of the data and suggests the best graph type that should be used to visualise data of that shape.&nbsp; The Information Consumer can accept that recommendation and use that graph type or override it and create whatever graph type they want.</p><p>For understanding data, an example is a Data Engineer who needs to create transformation code to define new Concepts.&nbsp; The machine looks at the schema and data examples from the Systems of Capture and suggests that the Data Engineer creates Concepts for Customers, Orders, Products, Order Lines and Payments.&nbsp; It also suggests the unique business keys that can be used to define each of those Concepts.&nbsp; The Data Engineer can accept those recommendations and the transformation code is created for them to review and publish.</p><p>The key to this pattern is the machine is making a recommendation which the human can accept or ignore during the process of doing the data work.</p><p>The value of the pattern is it reduces the time and the cognition required to do the data work.</p><p><strong>Automated AI</strong></p><p>Automated AI, is where the machine does the work, the human is no longer involved.</p><p>For answering business questions, an example would be where the machine observes all the business questions that are asked and answered overtime, determines what the intent and outcome of those questions are, and then generates and sends answers to new questions directly to the Information Consumer or an action directly to the System of Action.</p><p>For example it might determine that Information Consumers are constantly looking for # of abandoned carts and so it will send a daily alert with the number of abandoned carts on the ecommerce store to the relevant Information Consumer. Or it might go one step further and push the abandoned carts to the System of Action that will send the customer an email reminding them that they have left something in the cart.</p><p>For understanding data, an example would be the first time data has been collected from a new System of Capture the machine will determine the relevant Concepts that should be created, automatically create the Data Model and Transformation code to create them, publish that code and execute it so the data is ready for consumption.</p><p>The key to this pattern is the machine is doing the data work, the human is not involved at any step in the process.</p><p>The value of the pattern is it removes the need for the human to&nbsp;spend time doing the data work and removes the need for the human to have the experience and the cognition required to do the data work.</p><p><strong>An AgileData Platform and App view of these three patterns.</strong></p><p>I often joked in the old waves of Data Mining and then Data Science that 90% of all analytical models were "Group By&#8217;s", 5% were linear regression and then a small percentage were advanced techniques like neural networks etc.</p><p>I still think the same is true in the AI wave.</p><p>We did some work a while ago in the AgileData Platform using KMEANS to determine load anomalies.&nbsp; We found that using some Group By patterns we were able to detect the same load anomalies, but at a much cheaper compute cost.&nbsp; Obviously we need to keep experimenting and testing this and at some stage we will find the use case where we need to move to more advanced patterns.</p><p>So here is where my thinking is at with the 3 patterns of AI in the AgileData Product and App.</p><p><strong>AgileData Ask AI</strong></p><p>We have experimented multiple times with this pattern over the five years we have been building out AgileData.</p><p>Initially using some NLP patterns, then leveraging&nbsp;Google Clouds alpha Q&amp;A service.&nbsp; Each time the level of effort and cost to build this was higher than we wanted to spend and so it was deprioritised.</p><p>Like most companies who provide data tooling and technology we are now of course experimenting with LLM&#8217;s to see how we can embed automated text to sql capabilities, and more importantly experimenting to see how we can ensure it does not hallucinate and give the Information Consumers invalid answers to their Business Questions.</p><p>The emergence of LLM&#8217;s and Generative AI tools and patterns means we can finally implement this capability in the AgileData App, at a lower level of effort and cost.&nbsp; We built the first version leveraging OpenAI and ChatGPT, and as we are closely bound to Google Cloud we have implemented the latest experiments using Vertex AI and Bison.</p><p>We are also experimenting with how we can use Ask AI to help understand where to go in the AgileData App to get a data task done, and to reduce the cognition needed to use the App.</p><p>We will keep iterating these to improve the usability, expand its use cases and also reduce the chances of the dread hallucinations (aka when the machines makes shit up and provides answers the user cannot trust)</p><p><strong>AgileData Assisted AI</strong></p><p>We have had ADI, our version of a chat bot, in the AgileData App, since day one.&nbsp; Originally she was your typical chatbot &#8220;phone menu&#8221;, where she presented a bunch of menu options.</p><p>Then she became a feedback loop, when you are doing a task in the AgileData App, she explains what will happen next and asks you to confirm.&nbsp; If the thing you are about to do is semi destructive she will explain the impact in more details and ask you to confirm again.</p><p>We will move her to provide more recommendations and assistance over time, so when you are doing a data task in the AgileData App, she will recommend things that will reduce the time or cognition you need to complete that task.</p><p>The balance will be making her useful and not useless and annoying like Microsoft Clippy was.</p><p><strong>AgileData Automated AI</strong></p><p>Again we have been automating data tasks in the AgileData Platform and App since day one.</p><p>We do automated anomaly detection to notify you when the data collection looks out of whack.</p><p>We automatically check the Data Design is still valid whenever new data is loaded into it.&nbsp; For example we check that the unique business keys for all Concepts are still unique.&nbsp; Originally you used to have to manually add a Trust Rule for this each time you define a new business Concept, now we do it automagically in the Platform, so you don&#8217;t need to do that effort (or remember to do it).</p><p>You can also ask for the Concepts and Details to be automatically designed, generated and loaded from a System of Capture table, and the AgileData Platform will automatically do that Data Work with no input required from you.&nbsp; We will extend this out to enable it to do the same automated work across multiple tables from a single System of Capture and then across multiple systems.</p><p><strong>Group By vs Deep Learning</strong></p><p>Often the automation we have built is based on simple patterns, simple code, simple group by&#8217;s, not large complex deep learning models.</p><p>But in my view that's not the point, who cares what the kitchen looks like as long as I get the meal and experience I wanted.</p><p>And that is why we focus on the three patterns of AgileData AI:</p><ol><li><p>Ask AI</p></li><li><p>Assisted AI</p></li><li><p>Automated Ai</p></li></ol><p>Each of these are bound by the way a user interacts with the machine, asking questions, getting recommendations, having the work done for them (aka no interaction needed).</p><p>How we build the magic in the backend is our problem.</p><p><a href="https://agiledata.io/blog/agiledata-product/the-3-patterns-of-agiledata-ai/">https://agiledata.io/blog/agiledata-product/the-3-patterns-of-agiledata-ai/</a></p>]]></content:encoded></item><item><title><![CDATA[We are working on something new at AgileData, follow us as we build it in public #AgileDataDisco]]></title><description><![CDATA[This post will be updated daily]]></description><link>https://agiledata.info/p/we-are-working-on-something-new-at</link><guid isPermaLink="false">https://agiledata.info/p/we-are-working-on-something-new-at</guid><dc:creator><![CDATA[Shagility]]></dc:creator><pubDate>Wed, 05 Jun 2024 23:05:53 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9d003782-1b80-4220-9bab-c84441acd5af_2726x2958.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div><hr></div><p>My doesn&#8217;t 30 days fly by when your having fun #AgileDataDisco</p><p>30 days ago Nigel Vining  and I decided to do a 30 day experiment.</p><p>We wanted to extend our McSpikey to see if using a LLM to do discovery on a legacy data warehouse was a feasible, viable and valuable product idea.</p><p>And we decided to do it in public, posting daily about our journey.</p><p>Time is up!</p><p>And the answer is &#8230;&#8230;. yes.</p><p>We confirmed it was feasible to build, we confirmed it was viable to build with just the two of us.</p><p>And we have just got our first paying customer and a verbal yes from a second, so I think we can say it&#8217;s valuable.</p><p>There is still a lot to do, but I will revert to my usual posting process of writing whenever something comes to the top of my mind.  No doubt some of that will be about AgileData Disco.  So keep following along if you are interested.</p><p>And we have sponsored a stand at Big Data London in September, so if you want to see the product, pop along to stand Y760 and say hi.</p><p>Those that know me well, know I have a thing for t-shirts.</p><p>And given we have a new product, I thought it was only fitting that we got a new ADI for this product.</p><p>I give you &#8230;..</p><p>AgileData Disco!</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F5vC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F5vC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png 424w, https://substackcdn.com/image/fetch/$s_!F5vC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png 848w, https://substackcdn.com/image/fetch/$s_!F5vC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png 1272w, https://substackcdn.com/image/fetch/$s_!F5vC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F5vC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png" width="1456" height="1580" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1580,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1053596,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!F5vC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png 424w, https://substackcdn.com/image/fetch/$s_!F5vC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png 848w, https://substackcdn.com/image/fetch/$s_!F5vC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png 1272w, https://substackcdn.com/image/fetch/$s_!F5vC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F968b597f-cb4b-4379-9656-ef5b7f2167ca_2726x2958.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div><hr></div><p><strong>2024/07/05</strong></p><h2>Product Market Fit is wow </h2><p>#AgileDataDisco</p><p>As in wow that is frickin cool, not as in Way or Working.</p><p>For AgileData we have a simple sales message.&nbsp; It will cost you at least $600k per annum in salaries for a data team.&nbsp; We (and our AgileData Network Partners) will deliver that as a Fractional Data Team for $60k a year.</p><p>You will also need to pay for a bunch of data technology, data collection, data storage, transformation tool, catalog etc, and then all the ongoing storage and compute costs to run that technology.&nbsp; We provide all that in the $60k (yes you read that right, that includes the storage and the compute costs, we pay for it not you)</p><p>You will be amazed at the lack of wow we get from this sales message.</p><p>I have been socialising the AgileData Disco prototype and outputs a lot over the last 30 days.</p><p>I am constantly hearing people say wow.</p><p>And then they do one of two things.</p><p>They say, the prototype didn't automagically create it, did it? You did some manual turking to produce that. To which I demo uploading a query log from a BI tool, hitting generate and a few minutes later showing them the output, seeing is believing.</p><p>Or they stop and think, and then they come back with a use case they could apply it to right now.</p><p>I think that wow is what Product Market Fit looks like.</p><p>Next let&#8217;s close the 30 days experiment out #AgileDataDisco</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/07/04</strong></p><h2>Where is my moat?  </h2><p>#AgileDataDisco</p><p>TL;DR </p><p>There is no moat!</p><p>You know when you buy a car.  You think oh that's a little different, and then after you buy it you notice hundreds of them on the road.</p><p>This is different, everybody is building an AI product, you don&#8217;t even need to look around to find them.</p><p>It&#8217;s so bad I wouldn&#8217;t be surprised if when I visit my 74 year old mother next I find she is building an AI product on her new laptop.</p><p>Every data vendor is embedding AI into their current products.</p><p>Every data consultancy I talk to is using bench time to build an AI powered consulting product.</p><p>VC founded AI startups are emerging from &#8220;stealth&#8221; on a daily basis.</p><p>The big LLM providers are releasing capabilities that eat these start-up ideas daily and then provide them as part of their fixed monthly fee or pay per token offering.</p><p>The cost of access to these LLM capabilities is so low there is little if any barrier to entry.</p><p>In fact you can use a LLM to help you build your LLM based AI product, reducing the barrier to entry even more.</p><p>I talk to lots of people and I am finding AI products being built for so many different use cases over and above data.</p><p>Our AgileData Disco experiment is based on a language, patterns and pattern templates I have been iterating on for over a decade.  </p><p>But that is no moat.</p><p>I reckon I can use somebody's LLM powered product for a little while and then reverse engineer the majority of their prompts and RAG patterns to have a clone quickly created.</p><p>We are using a lot of the AgileData capabilities we have already already built for AgileData Disco, things like private tenancy&#8217;s, file upload, Google Gemini API&#8217;s integration etc.</p><p>But lots of other data vendors have these things.</p><p>Our AgileData Network is growing, but it&#8217;s not big enough to deliver access to a market that nobody else has, it&#8217;s not big enough to give us (and them) a flywheel motion (yet).</p><p>There is no moat.</p><p>Not for us, and not for most other companies building something using GenAI and LLM&#8217;s.</p><p>And I am ok with that.</p><p>I see enough potential value in what we are doing, to keep investing our time in experimenting with AgileData Disco.</p><p>I see ways we can help customers reduce the complexity of their data in a simply magical way.</p><p>I can see how it will help us achieve our vision of working with people we respect, who can work from anywhere in the world (we think of it as working from any beach), who get paid well for their expertise and experience, to support the lifestyle they want.</p><p>Next my second to last post in the #AgileDataDiscover series.</p><p>My doesn&#8217;t 30 days fast when you are having fun!</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p></p><p><strong>2024/07/03</strong></p><h2>Let&#8217;s think about the pricing options </h2><p>#AgileDataDisco</p><p>Here is when the chicken and the egg pattern hits again, without defining the GTM channel its going to be difficult to define a pricing strategy.</p><p>Time to brain dump via writing to collate the jumble of thoughts in my head.</p><p>A key Product Management pattern for pricing is to focus on the value delivered to the customer not the cost it takes to deliver it.</p><p>The problem I have with this is we end up with that ridiculous behaviour I outlined where I would get &#8220;custom&#8221; pricing for a bottle of milk in a supermarket.</p><p>While being profitable is important, we are boostrapping and so need to be profitable as we don&#8217;t have VC funding to spend money while bleeding money, Nigel Vining  and I want to build a sustainable business we can run for 20 years not a &#8220;growth engine&#8221; we can flick quickly and move on to the next shiny thing.</p><p>Our core values and our vision leads us to a pricing model that means we make good money, but fair money.</p><p>We will probably leave money on the table with this approach but I am ok with that.</p><p>With that in mind lets list the options we could use to charge for AgileData Disco.</p><ul><li><p>Pay per token used</p></li><li><p>Pay for a set of tokens in advance</p></li><li><p>Pay per input uploaded</p></li><li><p>Pay per input used</p></li><li><p>Pay per output created</p></li><li><p>Pay each time its run to produce an output</p></li><li><p>Pay a fixed monthly fee</p></li></ul><p>I tested these with the leader of a data team asking what their preferences was for paying for the outcomes AgileData Disco delivers, they responded with:</p><p>1. Pay per output</p><p>2. Pay for a bunch of tokens in advance</p><p>3. Pay per token used</p><p>4. Pay each time it is run to produce an output</p><p>One problem is I am not doing robust research by asking that,  I gave a predefined list of options and asked for an answer, rather than explored the problem and value space.  </p><p>I am clear research skills is a small T for me.  But we decided that part of this experiment is a Way of Working that means it's only Nigel or me working on this, so we use the T Skills we have.</p><p>If I link this answer back to the GTM channels I thought of in the last post.</p><p>#1 Pay per output &amp; #4 Pay each time it is run to produce an output.</p><p>Equal some risk to us, we set the price and we wear the overs and unders.  We can partially mitigate this by limiting the size of the Inputs, we know the size of the Prompts and the likely Output size so we can estimate the potential cost per Output or cost per Run.</p><p>#2 Pay for a bunch of tokens in advance &amp; #3 Pay per token used.</p><p>Much easier and less risky for us, we already provide a guesstimate of the number of tokens to be used in the prototype , so we can just times this by a unit rate and wallah.</p><p>#1 &amp; #4 seem to align in my head with our current Channel led GTM and #2 &amp; #3 seem to align with a PLG GTM.  But I think I am just making shite up with those mappings.</p><p>So no closer to a decision.</p><p>Next let&#8217;s think about the dreaded moat #AgileDataDisco</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/07/02</strong></p><h2>Next let&#8217;s review our GTM channel options for </h2><p>#AgileDataDiscover</p><p>I was going to call this post &#8220;lets pick our GTM channel option&#8221; but I am not at the stage where I have enough certainty on which option to pick, so I am going to hold off on this decision yet again.</p><p>I would love to hear from any Product Leaders who have any suggestions on the patterns they use to make this call.</p><p>One of the benefits of building in public and these posts, is the writing forces me to clarify my thoughts.  It helps me take the jumble and try and make some sense of it.  So let's get that jumble written down.</p><p>When I think about the channel options I think about three patterns.</p><p>First, we are great at building, ok at selling, crap at marketing.</p><p>So I naturally levitate towards Product Led Growth and Growth Marketing, it seems like the nirvana option.</p><p>This would require us to make #AgileDataDisco a no touch SaaS product.</p><p>We would auto provision, which is ok, we have a pattern for that already.  Sign-up is ok, we use Google Identity Manager for this already.</p><p>Onboarding would be a lot less complex than the full AgileData capability, we would have a simple flow of uploading a file (query log etc), pick your output types (Information Product Canvas, Conceptual Model, Data Dictionary etc) and then hit generate and wallah!</p><p>We would need to build out the subscription management, but we would use a SaaS subscription management solution for that and integrate it, rather than build our own.</p><p>That would still leave the marketing problem (unless we hit the magic viral nirvana from listing on Product Hunt which is unlikely).  As we are bootstrapping we don&#8217;t have the dolleros to spend big on ads and outbound email spam (which we wouldnt do anyway)</p><p>Second, we are already building out an AgileData Network of Consulting partners around the world.</p><p>We have learnt that providing them with a Swiss Army knife selection of things they can offer their customers, over and above the Fractional Data Service has value.  For example the ability to offer the AgileData Courses to their customers.</p><p>We could add AgileData Disco to this toolkit so they would be the only people who can use it.</p><p>When I talk to new potential partners one of the most common questions (after how much) is who finds the new customers.  </p><p>This GTM pattern means that effort still sits with them.</p><p>Which takes me onto the third pattern.</p><p>We offer Agiledata Disco using a freemium pattern. </p><p>Same work to be done as the PLG pattern, but we limit how much of the product a customer can use and if they want to carry on, we pass them over to an AgileData Network partner.</p><p>This approach would be good for us and the partner, not sure how a customer would feel about it.  I need to test that.</p><p>Of course it doesn&#8217;t solve our fiscal marketing constraint.</p><p>So I am no closer to a decision on this one.</p><p>Next let&#8217;s think about the pricing options #AgileDataDisco</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/07/01</strong></p><h2>There must be patterns I can use to help us decide our GTM for </h2><p>#AgileDataDiscover</p><p>I spent a short amount of time searching Google and browsing the Reforge templates, but in the end I reverted back to the help of the LLM, this time ChatGpt.</p><p>It&#8217;s interesting how much easier I find the ubiquitous ChatGPT app which can I access on both my iPhone, IPad and MacBook compared to the browser based interface of Google Gemini when I want to use an AskAI capability for something.</p><p>On the subject of GTM, after a bit of prompting ChatGPT replied with:</p><p>&gt;o&lt;</p><p>Top 7 Steps to Define a SaaS GTM Strategy</p><p>1. Identify Target Market and Segments</p><p>Conduct market research and create detailed buyer personas.</p><p>2. Define Unique Value Proposition (UVP)</p><p>Clearly articulate what makes your product unique and develop compelling messaging.</p><p>3. Choose the Right Channels</p><p>Select and utilise the most effective channels for reaching your target audience.</p><p>4. Develop a Pricing Strategy</p><p>Offer tiered pricing and consider a freemium model or free trial.</p><p>5. Create a Demand Generation Plan</p><p>Produce valuable content, optimise for SEO and SEM, and engage through email and social media marketing.</p><p>6. Implement Customer Onboarding and Success Programs</p><p>Develop a seamless onboarding process and provide robust customer support.</p><p>7. Measure, Analyse, and Iterate</p><p>Track key metrics, collect feedback, and continuously improve your product and strategy.</p><p>&gt;o&lt;</p><p>Target market is any organisation that has a legacy or current data platform and no adequate documentation for it, which is a bit broad.  Will need to refine this market a lot more as we get deeper into validation using the MVP.</p><p>For persona&#8217;s I have identified three main data personas that I think the AgileData Disco product will help, a Head of Data, a Data Governance Manager and a Data Consultant.  All of these of course have various different roles and titles depending on the organisation they work for.</p><p>Funnily enough only the Data Governance Manager is a new persona for us, so there is a risk that I have brought in a bunch of bias for these, time will tell.</p><p>For the Unique Value Proposition current draft is:</p><p>&gt;oo&gt;</p><p>For the Head of Data (or Data Governance Manager or Data Consultant)</p><p>Who needs to discover, document and understand their current Data Platform so they can rebuild it or augment it.</p><p>The AgileData Disco is a Product</p><p>Which automagically discovers and documents a data platform, producing actionable outputs in less than one hour.</p><p>Unlike the current manual task that takes multiple people multiple months.</p><p>The AgileData Disco Product will:</p><p>- Accept multiple input files</p><p>- Output multiple pattern templates that are actionable</p><p>- Not require a direct connection to the data platform</p><p>- Provide outputs that can be stored offline</p><p>&gt;oo&gt; </p><p>Next let&#8217;s pick the GTM channel option for #AgileDataDisco</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/29</strong></p><h2>GTM, Houston we have a problem </h2><p>#AgileDataDiscover</p><p>While I have worked in the Data Domain for over 3 decades I am fairly new to the Product Domain.  There are a bunch of product patterns I have not found or used.</p><p>I feel like defining a Go to Market approach is one of those.</p><p>I have a myriad of things buzzing around in my head.</p><p>Do we go SLG, PLG, CLG, ELG?  Are there other LG&#8217;s I haven&#8217;t found.  Are these LG&#8217;s strategies, patterns or tactics (and do I need to care about the distinction?)</p><p>How do tactics like Freemium fit into it, I am assuming you can only apply a Freemium tactic when you are using a PLG motion, is this true? I have done free consulting in the past as a loss leader, isn&#8217;t that freemium?</p><p>Is Freemium a tactic?  </p><p>I think I know why they call PLG a motion, it&#8217;s all about the flywheel, do I need to care about the definitions?</p><p>I have strong opinions on what I prefer and what I don&#8217;t prefer, I have strong opinions on how AgileData will behave and how it won&#8217;t behave.</p><p>There are patterns that although they are known to be effective, I am adamant AgileData won&#8217;t use them.</p><p>For example the whole GTM SLG pattern using SDR&#8217;s and AE&#8217;s, making pricing opaque, so they can make a price up to extract the most value out of the customer.</p><p>I dislike that pattern.</p><p>I posted this on another LinkedIn thread the other day that was discussing software vendors pricing tactics.</p><p>&gt;oo&gt;</p><p>I went into the Supermarket the other day to buy some bread and milk #SnarkyMcSnarky</p><p>I perused the aisles and found a bottle of milk I liked, I went to grab it but one of the supermarket staff told me to stop.</p><p>They took me to a counter where I was asked why I wanted to buy milk, when I was likely to buy the milk, how many people at home were going to drink the milk, how much everybody in the house earned, who&#8217;s name was on the credit card I was going to use and had they signed off on the credit card expenditure.</p><p>After I had answered those questions I asked how much the bottle of milk was.</p><p>I was told to take a seat and wait.</p><p>A second person eventually came along with the bottle of milk I wanted.</p><p>They brought out a glass, poured some milk into it, swished it under my nose, they took a drink of it and told me how good the milk tasted.</p><p>They asked would I like to buy some milk.</p><p>I said yes I would, how much is the bottle of milk.</p><p>They told me to sit down again and wait.</p><p>Eventually the second person came out with a sealed envelope.  In it was the price of the bottle of milk.</p><p>The price was $10,000</p><p>I didn&#8217;t buy the milk.</p><p>This is the process some vendors take a potential customer through.</p><p>Does that sound ridiculous to you?</p><p>&gt;oo&gt;</p><p>While I have strong opinions, can make a decision and can self justify how I made it, this build in public process is as much about the learning as the outcome.</p><p>There must be patterns I can use to help me decide our GTM.</p><p>Let&#8217;s explore patterns that are available.</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/28</strong></p><h2>Current AgileData Go to Market </h2><p>#AgileDataDiscover</p><p>I was talking to somebody the other day and they made a comment about startup founders who build the best tool in the world that nobody ever knows about.</p><p>When you are building a product you have to care as much about how you will sell it as you do about building it.</p><p>I much prefer building over selling.</p><p>For AgileData we did a bunch of experiments with our Go To Market (GTM) last year to see where we would place our bet for this year.</p><p>The experiments were based on the usual GTM patterns:</p><p>Sales Led Growth (SLG)</p><p>We have a team of people who find and sell direct to our customers.</p><p>Product Led Growth (PLG)</p><p>We let our customers serve themselves, they sign up, subscribe and use the product with minimal assistance.</p><p>Partner/Channel Led Growth (CLG)</p><p>We work with other organisations who sell our product to their customers.</p><p>EcoSystem Led Growth ( ELG)</p><p>We piggyback on a large technology vendors ecosystem/marketplace and customers find and buy our product via that.</p><p>Each of these GTM requires some sort of investment:</p><p>For SLG we hire a team of Sales Development Representatives (SDR&#8217;s) who do outreach and qualify the opportunity&#8217;s before handing it to an Account Executive (AE) who closes the deal.</p><p>For PLG we need to spend money advertising so people can find the product, we need to ensure the product is so easy to use that they don&#8217;t need any human assistance to use it and they get value out of it quickly so they don&#8217;t cancel.</p><p>For CLG we need to figure out how to find potential partners, convince them there is value for them if they partner with us, upskill them in our product and then wait until they find and onboard customers.</p><p>For ELG we need to pick a large vendor, integrate our product with theirs, validate our product so we can be listed on their marketplace, then wait for the deal to rolling in, or not as the case maybe.</p><p>All of these GTM pattens need a way to fill the top of the sales funnel, which is another set of patterns.</p><p>Most companies use a combination of these GTM patterns and investments, which becomes complex.</p><p>We are always focussed on simplicity over complexity.</p><p>So we decided that for 2024 we would place a bet on Partner / Channel Led Growth.</p><p>The logic and reasons behind placing this bet will require a much longer post, but one of the key reasons comes back to the vision Nigel and I have for AgileData:</p><p>&#8220;working with people they respect, who can work from anywhere in the world (we think of it as working from any beach), who get paid well for their expertise and experience, to support the lifestyle they want.&#8221;</p><p>Now we have the context for the current AgileData GTM bet, lets think about the GTM options for #AgileDataDiscover</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/27</strong></p><h2>Whats happening in the Data &amp; GenAI / LLM space, an #AgileData #Podcast with Joe Reis &#129299;  </h2><p>#AgileDataDiscover</p><p>The latest AgileData Podcast has hit the airwaves:</p><p><a href="https://agiledata.io/podcast/agiledata-podcast/ai-data-agents-with-joe-reis/%0A%0A">https://agiledata.io/podcast/agiledata-podcast/ai-data-agents-with-joe-reis/</a></p><p>As part of the 30 day experiment we are doing I wanted to understand whats going on in the wider Data / GenAI / LLM space.</p><p>A great way to understand this is chatting to Joe Reis to hear what he is seeing and hearing.</p><p>Then I thought why not record it as a podcast so we can share his insights.</p><p>So thats what we did.</p><p>Thank you as always to Joe Reis &#129299; for being so generous with his time!</p><div><hr></div><p><strong>2024/06/26</strong></p><h2>Opps where did that pesky data come from? </h2><p>#AgileDataDiscover</p><p>We are hyper paranoid about our customers' data, as any data platform provider should be.</p><p>We run a private data plane for our customer tenancy&#8217;s as part of our agile-tecture design. </p><p>So we of course adopted this pattern for the inputs we used in the Discover prototype to keep them secure.  </p><p>Even though the input files are secured in a private tenancy we made sure that we only used Metadata as inputs into the Prototype not actual data records.</p><p>We believe we can get the outputs that are needed without having to pass the LLM actual data and we know from experience the barrier requiring data has on a product&#8217;s adoption. </p><p>One of the inputs we tested was using query logs from the BI tools querying the data.</p><p>Imagine our surprise when we started seeing actual data values in the LLM&#8217;s outputs!</p><p>Lots of thoughts surging through the brain, until we realised where the LLM had got them from.</p><p>In the Consume view the reports were using we had a case statement.  The case statement was being used to map some reference data.  </p><p>It was an old pattern we used before we built the ability to dynamically collect and manage reference data via Google Sheets.</p><p>So of course this reference data mapping was in clear text in the query logs and that is where the LLM was getting it from.</p><p>We will have to think about a pattern for scanning the LLM output for data values.  Not sure how far we should take that.</p><p>The platform is secure, we are using Google Gemini within a private tenancy, rather than passing the inputs over the internet to OpenAi&#8217;s API like most other products so we know any data values are secure.</p><p>But should we surface them in the output or not.  </p><p>We will need to get some feedback when we test the MVP for this one.</p><p>Feel free to post a comment if you have an opinion.</p><p>Next let&#8217;s think about our ideal go to market #AgileDataDiscover</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/25</strong></p><h2>Whats happening in the Data &amp; GenAI / LLM space, an <strong>#AgileData</strong> <strong>#Podcast</strong> with <strong><a href="https://www.linkedin.com/feed/#">Joe Reis &#129299;</a></strong> </h2><p><strong>#AgileDataDiscover</strong></p><p>The latest AgileData Podcast has hit the airwaves:</p><p><a href="https://agiledata.io/podcast/agiledata-podcast/ai-data-agents-with-joe-reis/">https://agiledata.io/podcast/agiledata-podcast/ai-data-agents-with-joe-reis/</a></p><p>As part of the 30 day experiment we are doing I wanted to understand whats going on in the wider Data / GenAI / LLM space.</p><p>A great way to to understand this is chatting to Joe Reis to hear what he is seeing and hearing.</p><p>Then I thought why not record it as a podcast so we can share his insights.</p><p>So thats what we did.</p><p>Thank you as always to <strong><a href="https://www.linkedin.com/feed/#">Joe Reis &#129299;</a></strong> for being so generous with his time!</p><div><hr></div><p><strong>2024/06/24</strong></p><h2>Let&#8217;s look at the new patterns we need to move from Prototype to MVP</h2><p>#AgileDataDiscover</p><p>We have been able to use a lot of the patterns we have built into the AgileData Platform and App as part of the Discover prototype.</p><p>To move it from Prototype to MVP and add the initial list of features we need, a number of new patterns need to be implemented under the covers, including:</p><p>1. Logging of prompt tokens so we can keep track of how many are being used each time we send a prompt off to the LLM</p><p>2. Logging of responses from the LLM so we don&#8217;t need to make unnecessary requests, we can just show the latest response if its is still applicable</p><p>3. Uploading multiple input files and including them in the prompt sent to the LLM, this turns out to have the most complexity as the documentation is very light, and is currently skewed towards processing multiple image and video files</p><p>4. Lightly modelling the most extensible pattern to hold configuration data, ie bite size prompts that can be combined to produce different outcomes</p><p>5. Parsing and storing the raw markdown responses into separate buckets so they can be surfaced separately in the app.</p><p>Most of this activity happens in our API layer as thats where the AgileData magic happens. We add new endpoints when required or augment existing endpoints to deliver additional functionality for the web application.</p><p>In this case we re-use our existing file upload pattern but send discovery files to a separate bucket where we can access them from the new interfaces.</p><p>We re-use our existing LLM wrapper, but extend it slightly to provide the option to choose which model is called . We use different models depending on their strengths and weaknesses, some are better at &#8216;texty&#8217; stuff, while others are better at &#8216;codey&#8217; stuff.</p><p>So a few bits of behind the scenes plumbing we need to do to make the product scalable.  It&#8217;s tempting to bypass some of these for the MVP, but we already know after spending some time using the prototype, that without them we would end up in a world of manual effort hurt.</p><p>Scale the machine, don&#8217;t scale the team!</p><p>Next we will talk about a little surprise we encountered with the prototype.</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/23</strong></p><h2>Let&#8217;s review the feedback so far and the use cases that have started to emerge</h2><p>#AgileDataDiscover</p><p>After talking through the product idea with a few people and showing them the prototype the feedback has been positive.</p><p>The uses cases that have come out of the conversations look something like:</p><p><strong>Understanding a legacy data platform</strong></p><p>An internal data team or a data consultant(cy) wants to understand the current data platform and the human effort to do so is large and time consuming.</p><p>This might be supporting a green fields data platform, or making a change in the current data platform.</p><p>All the people who have built it have left and there is no upto date documentation.</p><p>An interesting variation is the senior leaders in the organisation have left and the new leaders have no idea what was built or why.</p><p>In a number of conversations I was asked if we could produce data lineage back to source systems.  </p><p>The typical approach to do this would be to parse the ETL code or execution logs for the code.  I can potentially see how the LLM might be able to create the lineage if we gave it a bunch of the inputs, but I am worried about the level of hallucination it will give back.</p><p><strong>Data Governance</strong></p><p>This is effectively the same pattern of documenting the data platform, but with slightly different use cases.</p><p>A lot of Data Governance teams have been reduced in size and the technical BA team members have been laid off, meaning the Data Governance Managers no longer have people available to manually document the data.</p><p>Or the Data Governance Managers have relied on the technical BA skills in the data teams, those teams have been downsized and can no longer do this work for them.</p><p>A lot have tried to do the work using a Data Catalog and that work has failed to deliver any results.</p><p>An interesting pattern emerged in this space.</p><p>Can we upload regulations or policies and determine if the data platform is complying with them?  I am going to have to experiment with this one, as I can&#8217;t think of a pattern we can use to deliver this use case yet.</p><p><strong>Automated Data Migration</strong></p><p>As with all things AI there are a myriad of startups experimenting in this space.  </p><p>As part of the conversations I have stumbled across a bunch doing similar things outside of the data domain.  And talked to people who know people who are doing similar things in the data domain.</p><p>A use case that came up a couple of times was automating Data Migrations from one data platform / technology to another data platform / technology.</p><p>Overall there seems to be a bunch of use cases that people have said will have value to them, let&#8217;s carry on and invest some more time and effort into it.</p><p>Next let&#8217;s look at the new patterns we need to move from Prototype to MVP.</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/22</strong></p><h2>One response to rule them all, not!&nbsp; </h2><p><strong>#AgileDataDiscover</strong></p><p>As I started showing people the prototype one bit of feedback I consistently got was that having all the outputs in one screen was confusing.</p><p>There are a few other problems with the single output model we have initially built into the prototype.</p><p>The number of output tokens the LLM will generate is limited, which means the LLM reduces the number of words used as it moves through the output types.&nbsp;</p><p>We want the definition of the Data Dictionary to be as verbose as the Information Product, even when the LLM produces it as the last part of the output.</p><p>We want to be able to regenerate just one of the output types in isolation, not all the output types.&nbsp; A single output response type makes this difficult and costly.</p><p>We want to make it easy to copy and paste one of the output types to another medium, right now I have to copy the entire output and then remove the bits I don&#8217;t want.</p><p>The single output pattern we have built into the prototype won't allow these things to happen easily.</p><p>And also scrolling down a long list of output text to find what you are looking for is just a bit of a pain in the arse.</p><p>So we need to break the various output types into their own unique objects.</p><p>Luckily its an easy enough change to experiment with (well Nigel made it look easy enough ;-).&nbsp;</p><p>We have already decided to break the Discover menu for the prototype out into its own menu for now, so it&#8217;s &#8220;just&#8221; a case of adding new menu options that only display the response for that output type.<br></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UTcb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UTcb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png 424w, https://substackcdn.com/image/fetch/$s_!UTcb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png 848w, https://substackcdn.com/image/fetch/$s_!UTcb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png 1272w, https://substackcdn.com/image/fetch/$s_!UTcb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UTcb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png" width="1258" height="860" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:860,&quot;width&quot;:1258,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:278960,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!UTcb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png 424w, https://substackcdn.com/image/fetch/$s_!UTcb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png 848w, https://substackcdn.com/image/fetch/$s_!UTcb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png 1272w, https://substackcdn.com/image/fetch/$s_!UTcb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6f69bde-e393-40c5-8927-e3a45a31c59c_1258x860.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>We have split the outputs into the following screens / menus / output types:</p><p>Information Product</p><p>Models</p><ul><li><p>Business Model</p></li><li><p>Conceptual Model</p></li><li><p>Physical Model</p></li><li><p>Reporting Model</p></li></ul><p>Glossaries</p><ul><li><p>Business Glossary</p></li><li><p>Data Dictionary</p></li></ul><p>Metrics</p><ul><li><p>Facts</p></li><li><p>Measures</p></li><li><p>Metrics</p></li></ul><p>Matrix</p><ul><li><p>Bus Matrix</p></li><li><p>Event Matrix</p></li><li><p>Concept Matrix</p></li></ul><p>One of the interesting benefits of this change is it makes it much clearer to explain to people what we are producing and what they can be used for.</p><p>I have spent the last decade finding and iterating pattern templates that have value in the data domain.&nbsp; That knowledge and content has been instrumental in defining these output types.</p><p>And that clarity has resulted in getting much clearer feedback on what output types we are missing.</p><p>Next let&#8217;s review the feedback we have had so far from surfacing the prototype.</p><p>Follow <strong>#AgileDataDiscover</strong> if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/21</strong></p><p>Let's sort out that menu problem, for now anyway&nbsp; <strong>#AgileDataDiscover</strong></p><p>It&#8217;s not a big thing, and I know I shouldn&#8217;t be sweating the small stuff but I also know that if I don&#8217;t it's going to really needle me until I scratch this itch.</p><p>And this is where I would normally hand the problem off to our UI designer to use their experience and expertise to solve the problem by using their dark design arts.&nbsp; But with our experiment in our new Way of Working it&#8217;s either Nigel or me, or both of us.</p><p>A problem shared and all that, so a Slack huddle with Nigel it is.</p><p>When talking through the problem Nigel mentioned what I had done to the header area in our marketing website.&nbsp; I have iterated it to use each of our core colours depending on what part of the AgileData product we are talking about, Network, Wow, Platform or App.&nbsp; Why can&#8217;t we do that for the App header?</p><p>Intriguing thought, we use those core colours heavily in our course material as well to indicate a transaction from one course module to another.</p><p>We could spin on this decision for months if we let ourselves, but one of the key things a Product Leader has to do is make decisions quickly if they can, and I can.</p><p>So we will introduce a pattern where the App header changes colour when you are in the Discover area.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8fAK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8fAK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png 424w, https://substackcdn.com/image/fetch/$s_!8fAK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png 848w, https://substackcdn.com/image/fetch/$s_!8fAK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png 1272w, https://substackcdn.com/image/fetch/$s_!8fAK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8fAK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png" width="1316" height="754" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:754,&quot;width&quot;:1316,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:152484,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8fAK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png 424w, https://substackcdn.com/image/fetch/$s_!8fAK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png 848w, https://substackcdn.com/image/fetch/$s_!8fAK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png 1272w, https://substackcdn.com/image/fetch/$s_!8fAK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d6a3b2e-4679-4932-a2f6-774e6123bc08_1316x754.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>Now how to get to it?</p><p>Well we always talk about Personas, and again we teach data and analytics teams how to apply the persona pattern in the data domain (hell it might even become the second AgileData Guide book ;-)&nbsp;</p><p>Let's add the ability to quickly change personas in the app and as a result change the menus that are presented to us so that we can get the job that personas needs to do, done.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DWA1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DWA1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png 424w, https://substackcdn.com/image/fetch/$s_!DWA1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png 848w, https://substackcdn.com/image/fetch/$s_!DWA1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png 1272w, https://substackcdn.com/image/fetch/$s_!DWA1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DWA1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png" width="1456" height="536" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:536,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!DWA1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png 424w, https://substackcdn.com/image/fetch/$s_!DWA1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png 848w, https://substackcdn.com/image/fetch/$s_!DWA1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png 1272w, https://substackcdn.com/image/fetch/$s_!DWA1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67c5e840-22f2-4c01-b84d-1c9afc3a78b6_1522x560.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>And speaking of jobs, on the menu options, job done (for now)</p><p>Now let&#8217;s move on and sort out the usability of the one big prompt response.</p><p>Follow <strong>#AgileDataDiscover</strong> if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/20</strong></p><h2>Protect my top menu at all costs, or not?</h2><p>#AgileDataDiscover</p><p>One of the patterns I have been focussed on since the first day we started building the AgileData product is trying to retain simplicity in the top menu of the AgileData App.</p><p>I have been in the software world long enough to remember the days when we had text only screens.&nbsp; I remember when the Graphical User Interface was introduced and we got the little icon instead of text for menus, and then funnily enough we got text as a mouse-over on the icons so we could know what they did.&nbsp; It still makes me giggle when a UI has the diskette icon as the save icon.</p><p>I have seen the complexity of menuing systems that come with enterprise products such as SAP and Oracle.</p><p>From day one I wanted to try and retain a simple top menu structure, again influenced by Xero.&nbsp; Originally I thought we would need to move the Manage menu to a left menu option at some stage to allow a myriad of options but we haven&#8217;t been forced to do that yet.&nbsp; We also haven&#8217;t needed to extend the top menu to more than a single level of sub-menu.&nbsp; I love this simplicity.&nbsp;</p><p>However we have extended the number of top menu items as we expanded the capabilities of the app.&nbsp; We introduced the Design menu option a while ago, we moved the Collect menu option out from Manage to its own top level position.&nbsp; And we are about to introduce Marketplace as a new top level menu.&nbsp; This will result in 7 menu options at the top and this in my view is the limit.&nbsp;</p><p>As part of the introduction of the Markekplace option I am rejigging the order of the menu&#8217;s as well.</p><p>Until now the order was:</p><p>Catalog | Consume | Design | Rules | Collect | Manage</p><p>It will become&nbsp;</p><p>Marketplace | Catalog | Collect | Design | Rules | Consume | Manage</p><p>Previously I had the Catalog and Consume on the left as those were the two menus designed to help Information Consumers.</p><p>The introduction of Marketplace is designed to help Information Consumers find the Information Products they need, while the Catalog will continue to help Data Magicians find the Data Assets they need.&nbsp;&nbsp;</p><p>As part of this change I have reordered the other menu options to follow the right hand side of the Information Value Stream flow that we teach, i.e Design &gt; Build &gt; Deploy &gt; [Value] &gt; Maintain.</p><p>So what to do about the AgileData Discover menu option?&nbsp;</p><p>The Discover option takes us into the left hand side of the Information Value Stream flow, i.e Problem &gt; Idea &gt; Discover &gt; Prioritise.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rho0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rho0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png 424w, https://substackcdn.com/image/fetch/$s_!rho0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png 848w, https://substackcdn.com/image/fetch/$s_!rho0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png 1272w, https://substackcdn.com/image/fetch/$s_!rho0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rho0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png" width="1456" height="1017" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1017,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:292582,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rho0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png 424w, https://substackcdn.com/image/fetch/$s_!rho0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png 848w, https://substackcdn.com/image/fetch/$s_!rho0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png 1272w, https://substackcdn.com/image/fetch/$s_!rho0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1fe0c68-0f9d-4388-9b08-09f97ba328aa_2388x1668.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>I can predict we may need to break the Discover option out into a series of sub menus, so that means it can not become a sub level menu under Design. Plus Discover is in the left hand side of the Information Value Stream and Design is in the right hand side.</p><p>That leaves it becoming a top level menu and that would make 8 and that&#8217;s a no.&nbsp;</p><p>Ok we need to find a different solution for my menu problem.</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/19</strong></p><h2>Let&#8217;s show a few people the initial prototype and see what feedback we get.</h2><p>#AgileDataDiscover</p><p>I am lucky to have a network of talented data peeps across the world, people I have connected with over the years, people whose opinion I respect.</p><p>As part of the No Nonsense Agile Podcast we have a series of awesome guests on the show, and one of those was Teresa Torres.&nbsp; One of the key takeaways I got from that chat was the pattern of continuous discovery, my key takeaway was talk to 3 people a week, and ask them about one thing that has popped up for me that week.&nbsp; Something I have been trying to do for a while now.</p><p>I combined those two things and started asking people about their data problems and showing them the prototype to elicit some feedback.</p><p>The conversations were enlightening, I can see a few problems we might be able to solve with this thing.&nbsp; Ill explore those in more depth later.</p><p>One bit of feedback I got as I started showing people the prototype was that having all the outputs in one screen was confusing, we need to iterate that.</p><p>Another thing that frustrated me from day one with the prototype was trying to find the url to demo it.&nbsp; Especially when we have a couple of different demo Tenancy&#8217;s.&nbsp; It&#8217;s a small thing, but it&#8217;s one thing that has caused me frustration and a surprising amount of wasted effort and time in the past, so i'm very conscious of it.</p><p>We were always going to have a bunch of decisions to make about where this fits in our current product Information Architecture aka our menuing system.</p><p>Let&#8217;s deal with that menu problem next.</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/18</strong></p><h2>Let&#8217;s build an initial prototype. </h2><p>#AgileDataDiscover</p><p>We have already done some prototyping as part of the initial McSpikey. </p><p>We can provide specific inputs into the LLM, we can give it a specific language to use, we can get the outputs we think have value.</p><p>But in the McSpikey we did that manually.</p><p>Next step is building out a prototype app that allows customers to do that with or without us.</p><p>Here is the first cut of what we built:</p><p>https://guides.agiledata.io/demo/clx2hlkru0ibi35xebw371v0f</p><p>In this demo example I used a file that contains the Consume query log for my demo AgileData Tenancy.</p><p>As part of this step we learnt a lot about the feasibility of building the potential product.</p><p>Application Framework:</p><p>We need to build, deploy and run a browser based application, this capability is a core part of the AgileData App.</p><p>Secure Sign-in:</p><p>We need to allow customers to securely sign in, this capability is a core part of the AgileData Platform.</p><p>File Upload:</p><p>We need to upload input files and store them for use by the LLM, this capability is a core part of the AgileData Platform and App.</p><p>Data Security / Privacy:</p><p>Even though we wouldn&#8217;t be using Customers actual data for the prototype we would be using their logs etc at the MVP stage, we need to make sure whatever we use is stored securely.  The AgileData Platform architecture provides a Private data plane for every customer tenancy, we can reuse this for the prototype and deploy a new AgileData Tenancy for each MVP customer in the future.</p><p>LLM:</p><p>We need to access an LLM via API so we can run it from within the protoype app.  AgileData is built on Google Cloud, Google Gemini is the obvious choice of LLM service for this.</p><p>We have already used Google Gemini as part of the Customer Trust Rules feature we recently released, we have a lot of the plumbing (engineering) patterns in place for it already.</p><p>Prompt Storage:</p><p>We need a way to store the prompts we are using so they can be used across all prototype Tenancy&#8217;s.  The AgileData App stores everything in Google Spanner which is then accessed by the AgileData Platform, so we can use this to store the prompts.</p><p>We were presently surprised how many reusable patterns we had built as part of the AgileData, that we could reuse for this protoype and the fact they are all production ready.</p><p>Let&#8217;s show a few people the initial prototype and see what feedback we get.</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><p></p><div><hr></div><p><strong>2024/06/17</strong></p><h2>Let&#8217;s experiment with our Way of Working while we do this product experiment. </h2><p><strong>#AgileDataDiscover</strong></p><p>In response to my last post on Research led vs Solution led <strong><a href="https://www.linkedin.com/feed/update/urn:li:activity:7208215515851292673/#">Chris Tabb</a></strong> replied with:</p><p>&#8220;Do both &#129335;&#8205;&#9794;&#65039;<br>Bet on two horses &#128014;<br>Increase your chance of winning.<br>Similar to the difference of</p><p>&#128073;Logical vs creative&#8221;</p><p>To which my responses was:</p><p>&#8220;funnily enough we have been using a hybrid pattern of the two for a while. We didn't end up with the worst of both worlds, but I'm not sure we ended up with the best of both worlds. So it&#8217;s time to try something new and see what happens.&#8221;</p><p>Until now we have been building something to solve a series of data complexities that we have experienced as data professionals over the last 3 decades.</p><p>In the beginning the target user for the product was me. If I could do the data work on my own, without having to ask <strong><a href="https://www.linkedin.com/feed/update/urn:li:activity:7208215515851292673/#">Nigel Vining</a></strong> to write code, then that was the initial goal achieved.</p><p>As we achieved that goal we started focussing on three measures of success:</p><ul><li><p>If we could reduce something that takes me 1 hour of effort to 10 minutes of effort, that would be a good thing</p></li><li><p>If we could reduce the cognition, expertise and experience required to do the data work, that would be a great thing</p></li><li><p>If we could automate the data work so the machine did it, not a human, that would be a magical thing</p></li></ul><p>As an engineer <strong><a href="https://www.linkedin.com/feed/update/urn:li:activity:7208215515851292673/#">Nigel Vining</a></strong> doesn&#8217;t really care how our product looks and behaves, but I do.</p><p>Having worked at Xero briefly in its early days I got to see the benefit of great UX and UI design. So early on we started working with an awesome product designer in <strong><a href="https://www.linkedin.com/feed/update/urn:li:activity:7208215515851292673/#">Kris Slazinski &#9774;&#65039;</a></strong></p><p>Being a fractional team working in the different timezones, we found the process of great design upfront started to slow us down and we got impatient.</p><p>Over the years we had built out a design system with a lot of reusable components and we found we could experiment by cobbling those components together and see if it helped us achieve one of our measures of success.</p><p>We started moving more and more towards the MVP pattern for how we built and tested new product features ideas.</p><p>So which pattern should we lean into for this product experiment.</p><p>Let&#8217;s look at the summary from ChatGPT again:</p><ul><li><p>User Research vs. Market Testing:<br>UX research perfects user experience; MVP tests market demand.</p></li><li><p>Development Time:</p><p>UX takes longer; MVP is faster.</p></li><li><p>Risk Management:</p><p>UX aligns with user needs; MVP quickly validates the market.</p></li><li><p>Iteration Approach:</p><p>UX iterates on design; MVP on product-market fit.</p></li></ul><p>Based on our journey todate we naturally lean towards MVP.</p><p>We are boostrapping which means we are cash constrained, and we have put a 30 day limit on this experiment so we are also time constrained.</p><p>Which naturally leads us to lean into our MVP bias with all the work being done by Nigel and Myself.</p><p>Let&#8217;s build a prototype to learn what we don&#8217;t know and have something to test with potential customers.</p><p>Follow <strong>#AgileDataDiscover</strong> if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/15</strong></p><h2>Research led vs solution led </h2><p>#AgileDataDiscover</p><p>Being a co-host on the No Nonsense Agile Podcast I have been lucky to speak to some of the worlds best product people.</p><p>I have come up with a hypothesis that there are two different Product Value Streams an organisation can adopt.</p><p>One is being research led the other is MVP or solution led.</p><p>Research led is where the organisation starts by researching the problems that exist in the world, identify problems that could be solved, ideate how they might solve those problems, and then discover whether those ideas do indeed solve it.  Only after all that do they build something.</p><p>Solution led is where you start with a problem you know or believe exists, you build a minimal viable product that you think solves that problem, then you test the MVP.  You are testing both problem space and the solution space and the value space all in one go.</p><p>Given #AgileDataDiscover is based on using an LLM I thought I would ask ChatGPT to given me more details on the differences between research and MVP led.</p><p>ChatGPT Prompt:</p><p>Whats the difference between a SaaS product company that takes a UX research approach vs a mvp lean startup approach?</p><p>Reduce it to 1000 characters</p><p>ChatGPT Response:</p><p>UX Research Approach</p><p>1. Focus on User Experience:</p><p>Goal: Excellent user experience.</p><p>User-Centric Design: Extensive research on user needs and behaviours.</p><p>2. Research Methods:</p><p>Qualitative &amp; Quantitative: Interviews, usability testing, surveys, and analytics.</p><p>3. Design Process:</p><p>Iterative Design: Continuous refinement based on feedback.</p><p>Prototyping: Detailed prototypes for validation.</p><p>4. Development Cycle:</p><p>Longer Initial Development: Extensive research and testing.</p><p>High Fidelity: Aligns closely with user needs from the start.</p><p>MVP Lean Startup Approach</p><p>1. Focus on Speed and Learning:</p><p>Goal: Quickly validate business ideas.</p><p>Build-Measure-Learn: Rapid development, market measurement, and learning.</p><p>2. Development Methods:</p><p>Rapid Prototyping: Functional versions to attract early adopters.</p><p>Lean Testing: Experiments and metrics for viability assessment.</p><p>3. Product Features:</p><p>Minimum Feature Set: Core functionalities for quick market entry.</p><p>Incremental Improvements: Based on feedback and market response.</p><p>4. Development Cycle:</p><p>Shorter Initial Development: Quick launch.</p><p>Pivot or Persevere: Adjust based on feedback.</p><p>Key Differences</p><p>User Research vs. Market Testing: UX research perfects user experience; MVP tests market demand.</p><p>Development Time: UX takes longer; MVP is faster.</p><p>Risk Management: UX aligns with user needs; MVP quickly validates the market.</p><p>Iteration Approach: UX iterates on design; MVP on product-market fit.</p><p>So which approach are we going to take for #AgileDataDiscover</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/14</strong></p><h2>Should we experiment with our Way of Working while we do this product experiment.</h2><p>#AgileDataDiscover</p><p>When I coach data and analytics teams, I coach them to reduce uncertainty as much as possible, make things simple and don&#8217;t boil the ocean.</p><p>This is going to be a case of do as I say not do as I do.</p><p>We have a massive amount of uncertainty in what this product is or will be, so the last thing we should be doing is introducing additional uncertainty by changing the way we work while experimenting with the product.</p><p>When we designed our product development Way of Working a few years ago we had to design it based on a fractional development team that worked in different timezones.&nbsp; That led us down to a value stream flow of work that was asynchronous and chunked down into UI Design, Backend Engineering and UI Build steps.</p><p>We were careful to not create a waterfall process, a process based on large requirements upfront, no discovery and a high cost of change.</p><p>But given the need to work asynchronously we naturally adopted a flow based way of working.&nbsp; And the initial flow was UI Design, then Backend build and then UI build.</p><p>Overtime we realised this linear flow wasn&#8217;t working for us.&nbsp; We were over investing in UI Design upfront, which we then discovered wasn&#8217;t feasible to build in the backend or the UI.</p><p>We ended up with multiple value stream flows depending on the level of uncertainty in what we were planning to build.</p><p>Sometimes we will do a very light UI design, build a MVP backend service, then build the UI, use it for a while to see if it had value and identify what we want to iterate,</p><p>Sometimes we will do a light UI design, then stubb a backend service, then loop back what we have learnt into the UI design process.</p><p>Sometimes we will build the backend service to reduce some uncertainty in what data structures we need and how we can model it, and then move onto the UI design process, then into UI build.</p><p>Sometimes we will build a backend service and cobble together a UI with our current components and no UI design work, to help us reduce some uncertainty on the problem we actually want to solve.</p><p>The key to all of this is Nigel and I were the key users, we were the customer for our product.</p><p>We knew the data problems we wanted to solve, we had lived with them for over 3 decades.</p><p>We were focussed on reducing the time it took us to do data work, reducing the cognition it took us to do it, or automating it completely so the work was done without us.&nbsp; We could measure how well we were delivering these.</p><p>For this product we are building it for somebody else, we have a high level of uncertainty, we want to do a high level of experimentation, so we might as well experiment with changing the way we work.</p><p>Let&#8217;s aggressively iterate the way we work while we do this.</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/13</strong></p><h2>If this new capability becomes both viable and feasible, where does it fit with our current product strategy. </h2><p>#AgileDataDiscover</p><p>We have a few simple choices:</p><p>Treat it as a completely separate product, give it a new name, a separate pricing model and separate Go To Market strategy.</p><p>Treat it as a separate module in our current product, give it a new main menu name, add a separate pricing model (unbundling the current pricing strategy).&nbsp; Retain the current GTM&nbsp; strategy for this module or create a new one.</p><p>Treat it as a bunch of features in our current product, make it part of the current pricing, make it a feature in our current GTM patterns.</p><p>There are a few other drivers I haven&#8217;t thought about as well.&nbsp; I immediately start diving down a rabbit hole into a complex multidimensional decision model, and want to reach out to Google Sheets to create a pivot table to manage it.</p><p>Sure sign that ugly complexity has appeared, so we need to move back to simplicity.</p><p>Lets ignore the Pricing and Go To Market options, we can deal with those later.</p><p>Still leaves us with a choice between a separate product, new module or a set of features.</p><p>As I have mentioned, we are technologists at heart, we have a small team, don&#8217;t plan to ever have a massive team, and as a result of these two things we are great at building, we are ok at selling, but we really struggle at marketing.</p><p>Introducing a whole new product would mean we would need to split our limited time and skills across two products.</p><p>For that reason alone the separate product option is out, for now.&nbsp;&nbsp;</p><p>This is not a decision that is set in stone, this is just a decision made quickly, so we can move onto the many decisions we need to make next.&nbsp; We can always change this decision as we learn more, but the cost and consequences of that change will be greater as we progress further into this process.</p><p>Also there is a massive amount of bias embedded in this decision.</p><p>I don&#8217;t want to have to design and build yet another website, which I would need to do if it was a separate product.</p><p>I have seen dual product strategies before, Tableau &amp; Tableau DataPrep, Wherescape Red &amp; Wherescape 3D, and I was never a fan of those strategies.</p><p>There are probably a bunch of other unconscious bias reasons why I have discounted this option.</p><p>That leaves a decision between a separate module, or just a bunch of features.</p><p>For some reason I am reluctant to make this call at the moment, I feel like I need some more certainty before we make the decision.</p><p>And that&#8217;s ok, there is so much uncertainty in everything we are doing for #AgileDataDiscover right now, we can afford to delay some decisions.</p><p>So before we make the decision on seperate module or a bunch of features, I want to explore where does building this fit in our current AgileData Way of Working?</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/12</strong></p><h2>Next we need to see if we should  adjust our current product strategy, or is this just product business as usual. </h2><p>#AgileDataDiscover</p><p>We are lucky at AgileData that we are purely a product company (even though we bundle services as part of our Fractional Data Team offering) and so our business strategy and our product strategy are closely aligned if not one and the same.</p><p>We made a conscious decision when we started out to reduce the complexity of our business as well as providing a product that reduces the complexity of managing data.</p><p>This aligns with Nigel and my personal goals of building a profitable and sustainable business, which we can work within from anywhere in the world, and which we can be part of for the next 20 years.</p><p>Part of our business strategy is to bootstrap our company and keep our team, processes and costs ridiculously lean.</p><p>As a result we have always gone for simplicity over complexity, and as a result have a single Product Strategy, and a single pricing model.</p><p>We know that most SaaS product companies choose to unbundle their products so they can &#8220;upsell&#8221; their customers to the next &#8220;tier&#8221; or by adding access to an &#8220;advanced&#8221; set of features.  To these companies revenue growth within their current Customer base is as important to their reporting metrics as new customer acquisition metrics.</p><p>Our view has always been that if the product capability makes the data work less complex, why wouldn&#8217;t we make it accessible to our partners, after all that's what we are promising them.</p><p>We don&#8221;t charge extra for more users consuming the data, we don&#8217;t charge more to use the Catalog features etc.</p><p>Each time we decide to experiment with something new, we need to review our current business and product patterns and see if we want to change them.  </p><p>So yes, it&#8217;s a good time to review our product strategy and see where this might fit within it, or if we need to iterate it.</p><p>Next up is where does it fit in our current AgileData product strategy?</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/11</strong></p><h2>Next we need to explore the initial viability of the product idea a little bit more.&nbsp; </h2><p><strong>#AgileDataDiscover</strong></p><p>I am lucky I have a network of people I&#8217;ve met over the 3 decades I&#8217;ve been working in the data domain.&nbsp; They span a breadth of backgrounds, skills, roles, organisations and locations.</p><p>Even more valuable is they are very giving of their time, something I am very conscious of and try not to waste.</p><p>We really want to explore the viability of the migration to the AgileData platform use case, but we have a hypothesis that Data Governance / Enablement might be the most valuable use case.&nbsp;</p><p>There is a growing trend for Data Governance teams to move towards being Data Enablement teams, a trend that was reinforced by an excellent presentation at the Wellington Data Governance Meetup I attended recently where somebody was playing back the key themes from the DGIQ conference in Washington DC last year.</p><p>The next step is to see if we can get some quick market validation on the value of the product supporting Data Enablement.</p><p>I reached out to a couple of people I know in the Data Governance space to &#8220;pick their brains&#8221;.&nbsp;</p><p>I know I should have taken a more structured product research approach to this rather than just reaching out to people I know.</p><p>We are a small team, we don&#8217;t have a researcher in the team, I don&#8217;t have those research skills, I make do with what I have and what I know.&nbsp; Then I live with an&nbsp; imposter syndrome most founders live with everyday, when I do something that is not a strong T-skill.</p><p>Here is what I think I heard:</p><p>Data Governance Managers are losing their BA team members as a result of the fiscal downturn, or they are losing access to those skills in other teams as a result of downsizing.&nbsp; They need to do the discovery work themselves.&nbsp;&nbsp;</p><p>How can they create this info as a team of one?</p><p>Data Governance Managers who get a new role in a new Organisation, are faced with a standing start. If the outputs they need do not already exist, they are blocked until they can get them created.&nbsp;&nbsp;</p><p>How can they quickly document what already exists?</p><p>How can they create insights into what exists, without directly accessing their source systems or internal data networks?</p><p>Starting a conversation with a blank piece of paper is always harder than starting with some known state.</p><p>How can they generate insights into the Org and its data, as research for themselves, before starting a conversation with stakeholders?</p><p>Data Policies and Procedures often exist but there is a lack of visibility if they are being complied with.&nbsp;&nbsp;</p><p>How can they compare what is actually happening with what should be happening?</p><p>These seem like problems we can help with.</p><p>We have quickly validated the feasibility of the product idea and we think we have quickly validated there may be a market and demand for the product.&nbsp;&nbsp;</p><p>Next up is where does it fit in our current AgileData product strategy?</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/10</strong></p><h2>Next we want to explore the initial feasibility of the product idea a little bit more.&nbsp; </h2><p><strong>#AgileDataDiscover</strong></p><p>As technologists at our core <strong><a href="https://www.linkedin.com/feed/#">Nigel Vining</a></strong> and I always err towards understanding the feasibility of building something, before we work on the viability of building it.&nbsp;&nbsp;</p><p>There is joy in building something that works, compared to getting a constant &#8220;no&#8221;, or even worse a shoulder shrug, to what you think is a great idea.</p><p>To stop us boiling the ocean and spending too much time validating the feasibility of the wrong thing, we have a process where we do internal research spikes, which we call McSpikey&#8217;s, to time box the feasibility research and force us to quickly swap back to the viability.&nbsp;</p><p>As part of the Greenfields Data Warehouse Rebuild research spike we did for a customer, we tacked on an internal McSpikey we had been thinking about for a while.</p><p>For this McSpikey we tested the LLM based on using these inputs:</p><ul><li><p>Screenshots of reports</p></li><li><p>Exports of report definitions</p></li><li><p>Query logs from the BI tools</p></li><li><p>Query logs from the ETL loads</p></li><li><p>The ETL code</p></li><li><p>DDL for the data warehouse schemas</p></li><li><p>DDL for the source system</p></li><li><p>550 page word document that contained a data warehouse specification</p></li><li><p>Sets of gherkin templates for transformation/business rules</p></li><li><p>Sets of data by example templates</p></li></ul><p>Then we created a series of tailored prompts, based on the shared language we have crafted and use when we are teaching via our AgileData Courses, coaching Data and Analytics teams or helping our AgileDataNetwork partners with their Way of Working.</p><p>Last we used the LLM to produce these artefacts:</p><ul><li><p>Information Product Canvas</p></li><li><p>Business Model</p></li><li><p>Conceptual Model</p></li><li><p>Physical model</p></li><li><p>Reporting model</p></li><li><p>Business Glossary</p></li><li><p>Data Dictionary</p></li><li><p>Definitions for Facts</p></li><li><p>Definitions for Measures</p></li><li><p>Definitions for Metrics</p></li></ul><p>The outputs the LLM produced were much better than we expected, the key seemed to be the quality of the shared language we used, which we have been crafting and refining for over a decade.</p><p>Another interesting discovery was the report screenshots cost us twice as much to process compared to the text based inputs.&nbsp; That's the value of McSpikeys, you always learn something new.</p><p>This product idea looks feasible, we should explore the viability of it some more.</p><p>Or put it another way, now we think we can build it, will anybody buy it or use it?</p><p>Follow <strong>#AgileDataDiscover</strong> if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/09</strong></p><p>Some background on what led us to the decision to do this 30 day bet on #AgileDataDiscover</p><h2>#3 Greenfields Data Warehouse Rebuild</h2><p>One of the things we have found our customers value, is the speed and cost which we can execute Data Research Spikes using AgileData.</p><p>We fix the delivery time period to 3 months and fix the cost for the work.</p><p>Often customers already have a data team and data platform, but the team is under the pump with higher priority data work and cannot do the research work anytime soon.</p><p>The goal of the research work is to reduce uncertainty, or show the art of the possible.&nbsp;&nbsp;</p><p>Often a business stakeholder has an idea and wants to know what is feasible, before they decide to invest in it fully.&nbsp;&nbsp;</p><p>The Head of Data wants to deliver the research work, but the data team has no spare capacity to do it.&nbsp; The Head of Data prefers the business stakeholder does not independently engage yet another data consulting company with whom the organisation does not already have a relationship and that often treats the work as a black box delivery where they only provide the answer but not the workings, so they engage us.</p><p>We have just finished one of these Research Spikes.</p><p>The organisation's data team is building a new greenfields data platform to replace their legacy data warehouse.</p><p>The legacy data warehouse currently provides over 1,000 separate reports all built in a legacy BI tool.&nbsp; The reports and data warehouse all have variable levels of documentation.&nbsp;&nbsp;</p><p>The team knows that a lot of the reports are slight variations on each other, where they have been copied and a filter added, or a different time period hard coded.</p><p>But the team is stuck with manually reviewing and comparing each report to see what it does, if it can be consolidated or decommissioned.</p><p>The research spike we did was to answer this question:</p><p>&#8220;Can we use a LLM to compare exported report definitions to reduce the manual comparison work required?&#8221;</p><p>We received a subset of the report defintions as XML.&nbsp; We received a cluster where the data team had already reviewed them and they were slight variations on each other.&nbsp; We received a second cluster that was based on a seperate set of core business processes.</p><p>We then used Google Gemini to compare the report definitions.</p><p>The answer to the research question was yes, the LLM approach could reduce the manual work required but could not automate it fully.</p><p>When we asked the LLM to merge some of the XML report definitions it politely responded with:</p><p>&#8220;I can't do that. The reports are complex XML documents that define the data source, layout, and other properties of a report. Simply combining three separate report XMLs will result in an invalid structure.&#8221;</p><p>There must be a better way to automate this data discovery work.</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/08</strong></p><p>Some background on what led us to the decision to do this 30 day bet on #AgileDataDiscover</p><h2>#2 From Data Governance to Data Enablement</h2><p>As we are bootstrapping AgileData, every now and again I do a side hustle consulting gig to refill the AgileData funding / runway bucket.</p><p>I did a side hustle earlier this year that involved a lot of collaboration with an enterprise organisation&#8217;s Data Governance team, well they were called a team by name, but in reality it was a team of one.  That one person was frickin awesome, but that is a different story for a different time.</p><p>The organisation was migrating from a legacy Data Warehouse to a &#8220;Modern&#8221; Data Platform.</p><p>The Data Governance lead was attempting to enable this to happen as quickly as possible, while putting in place the data Principles, Policies and Patterns that were lacking when the legacy Data Warehouse was created.</p><p>As you can imagine being a team of one meant that they could not actually do a lot of the work themselves, and by having no team members they had to ask for other data teams to help with the work. Those data teams were head down, bum up trying to rebuild everything on the new platform so the old one could be decommissioned. They didn&#8217;t have a lot of time to put into the Governance data work, and they treated it as not being their work to be done, but work the Data Governance team should do.</p><p>We decided to flip the model and move from being a Data Governance team of one trying to get the work done, to being a Data Enabler of one, helping the other data teams collaborate together to share and leverage the data Principles, Policies and Patterns they had each created independently.</p><p>We also focussed on helping to unblock those teams when they were stuck with something outside their control and also started a series of capabilities to increase the data fluency across the entire organisation, again to improve the ability for the data teams to have conversations with their stakeholders.</p><p>One area that was a real blocker for the data teams was the ability to document the current state of the Data Warehouse, especially based on a pattern of Information Products, identifying what was already available, what was being used, what was adding business value, what could be decommissioned and the effort / feasibility to rebuild those that had ongoing value.</p><p>As you would expect, the organisation tried to implement a data catalog solution, which had failed to produce these useful outputs.</p><p>The typical pattern of getting five business analysts to spend six months reverse engineering the legacy platform and engaging with business stakeholders to discover this information wasn&#8217;t a viable option.</p><p>There must be a better way to automate this data discovery work.</p><p>Follow #AgileDataDiscover if you want to follow along as we build in public.</p><div><hr></div><p><strong>2024/06/07</strong></p><p>Some background on what led us to the decision to do this 30 day bet on #AgileDataDiscover</p><h2>#1 Legacy Data Platform Migration to AgileData</h2><p>One of the blockers our #AgileDataNetwork partners hit when talking to organisations about becoming their Fractional Data Team, is the theory of sunk costs.</p><p>The organisation may have already invested in a data platform and maybe a permanent data team to build that platform and deliver data assets.&nbsp; Or they may have already paid a data consultancy to build a new modern data platform for them, and then continue to pay the consultancy for the ongoing data work.</p><p>Even when our partners offer to reduce the organisations annual data costs from $600k a year to $60k, the theory of sunk costs still seems to remain.</p><p>One of the barriers is the cost / time to rebuild the current data assets and Information Products in the AgileData Platform.</p><p>So we have always been keen on finding a way to remove or markedly reduce the time and that cost for that migration data work.</p><p>The way we think about it is this:</p><p>How do we automate that migration so it is automagic, so that it removes all human effort to do that data work.</p><p>We know that 100% automation is probably not achievable but it&#8217;s the vision we wanted to strive for.</p><p>In reality we would be happy with 80% of it being automated and human effort for the last 20%.</p><p>The obvious answer is we just migrate the organisation&#8217;s code and we run it on our platform.</p><p>The problem with this pattern is we lose all the secret sauce of what we have built in AgileData that allows our partners to reduce an organisation's data cost from $600k to $60k.</p><p>So we need to automate the process of discovering the core data patterns in the organisation's current data platform, map those to the core data patterns we have built into AgileData, then automagically generate the AgileData config to apply those patterns.</p><p>There must be a way to automate this data work.</p><div><hr></div><p><strong>2024/06/06</strong></p><h2>We are working on something new at AgileData, follow us as we build it in public </h2><p>As part of our constant experimentation we have stumbled on an interesting use case in the data domain.&nbsp;&nbsp;</p><p>It's a data use case that has got Nigel Vining&nbsp;and myself so excited that we have decided to dedicate the next 30 days to experimenting with it.</p><p>It might turn out to be nothing valuable.</p><p>It might turn out to be a set of features in AgileData, or a new module.</p><p>It might turn out to be a completely new product.</p><p>We have no idea, but we are interested enough in it to bet 30 days effort to find out the answer.</p><p>As part of this we are also going to completely change the way we do our product build, for this idea we are going to change the way we work.</p><p>As part of this process we are also going to post daily as we decide and execute each step of the product process.</p><p>If you want to follow along as we build in public, checkout this post on a regular basis, we will add each days update to it so you can watch as we build and learn.</p>]]></content:encoded></item><item><title><![CDATA[Upgrading Python: A Plumbing Adventure in the Google Stack]]></title><description><![CDATA[Time for an upgrade]]></description><link>https://agiledata.info/p/upgrading-python-a-plumbing-adventure</link><guid isPermaLink="false">https://agiledata.info/p/upgrading-python-a-plumbing-adventure</guid><pubDate>Sun, 06 Aug 2023 23:34:49 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ErtR!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8892c64-a0c7-4c7b-9f49-a73be5280f22_1280x1280.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote><p><strong>Time for an upgrade</strong></p></blockquote><p>As the AgileData journey continues, we find ourselves facing an interesting challenge &#8211; an email from Google urging us to upgrade our Python version. With the current version&#8217;s support ending next year, it&#8217;s time to embrace the latest and greatest, &#8230;. yeah, upgrade time !</p><p>If you&#8217;ve been following our previous posts, you know the AgileData Platform is built on the Google stack, relying heavily on Google Cloud Spanner as our backend config database and Google App Engine / Python for our API layer, Web-Sockets Service and AgileData App.</p><p>Cloud Functions serve as the glue holding everything together, providing a pay-as-you-go and scalable and cost-effective solution. We love this Functions as a Service (FaaS) pattern, it lets us run the AgileData App and API&#8217;s for a fraction of the cost of using dedicated servers or containers.</p><p>However, with the Python upgrade on the horizon, it&#8217;s time to ensure that our system remains robust and reliable.</p><blockquote><p><strong>Upgrading Python: The Plumbing Essentials</strong></p></blockquote><p>The AgileData Platforms backbone is built on Python 3.7, but it was time to transition to the newer Python 3.11 version.</p><p>The process is not without its challenges, as we must ensure that all our client libraries and dependencies are compatible with the latest Python version.</p><p>One critical aspect we knew we needed to address is a change in the client library&#8217;s handling of JSON data, which could potentially break one of our core functions.</p><p>So we decided we needed to bring the spanner library up to the latest version at the same time we did the python upgrade.&nbsp;</p><pre><code># before the python upgradegoogle-cloud-spanner==3.11.1

# after the after upgradegoogle-cloud-spanner==3.36.0</code></pre><blockquote><p><strong>The Query Spanner Function: Unveiling the Core</strong></p></blockquote><p>One of the most crucial functions in our backend is query_spanner(). It allows us to query data from Spanner using a simple SQL query and returns a JSON result payload.</p><p>This function serves as a pivotal connector, providing access to our data and ensuring smooth operations.&nbsp;</p><pre><code>query = &#8220;select table_id,topics,state from catalog where project_id = @project_id&#8221;results = query_spanner(query)</code></pre><blockquote></blockquote><pre><code>[&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&#8220;table_id&#8221;: &#8220;consume.cars&#8221;,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&#8220;topics&#8221;: [&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&#8220;Cars&#8221;,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&#8220;Vehicles&#8221;,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;],&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#8220;state&#8221;: &#8220;active&#8221;&nbsp; &nbsp; }]

# ========================== query_spanner ========================

def query_spanner(query):

&nbsp; &nbsp; &nbsp;&#8220;&#8221;&#8221;&nbsp; &nbsp; Simple function that takes a sql query and executes it&nbsp; &nbsp; &nbsp;&#8220;&#8221;&#8221;

&nbsp; &nbsp; &nbsp;schema = []

&nbsp; &nbsp; &nbsp;output = []

&nbsp; &nbsp; &nbsp;# remove line breaks (we may have formatted for readability)

&nbsp; &nbsp; &nbsp;query = query.replace(&#8220;\n&#8221;, &#8221; &#8220;)

&nbsp; &nbsp; &nbsp;try:

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;with spanner_database.snapshot() as snapshot:

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;results = snapshot.execute_sql(&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;query,&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;params={&#8220;project_id&#8221;: project_id},&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;param_types={&#8220;project_id&#8221;: spanner.param_types.STRING},&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;)

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;json_columns = []

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;for row in results:

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;# first read &#8211; pickup the schema for the results

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;if not schema:

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;for field in results.fields:

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;schema.append(field.name)

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;# create a list of json columns we need to parse

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;if &#8220;JSON&#8221; in str(field.type_):

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;json_columns.append(field.name)

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;# combine the two lists (schema and result row)

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;output.append(dict(zip(schema, row)))

&nbsp; &nbsp; &nbsp;# load json payloads

&nbsp; &nbsp; &nbsp;if json_columns:

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;for rec in output:

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;for json_column in json_columns:

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;json_payload = rec.get(json_column)

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;if isinstance(json_payload, JsonObject):

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;# Updated 15.07.2023&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;# Spanner library now returns json columns as a JsonObject

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;json_string = json_payload.serialize()&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;rec[json_column] = json.loads(json_string)

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;else:

&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;rec[json_column] = []

except Exception as e:

&nbsp; &nbsp; &nbsp;logging.error(query, e)

return output</code></pre><blockquote><p><strong>Adapting to the Change</strong></p></blockquote><p>Fortunately, the necessary code changes are minimal. The only modification required is to check if we are reading a JSON object from Spanner and then serialise it before passing it through json.loads() for our response payload. A smooth adjustment that keeps our plumbing intact!</p><blockquote><p><strong>Deployment and Beyond</strong></p></blockquote><p>With the code tested and validated, it&#8217;s time to deploy the upgrades.</p><p>For App Engine, a simple update to the app.yaml file, specifying the latest Python version, does the trick.&nbsp;</p><pre><code>runtime: python311</code></pre><blockquote></blockquote><p>Likewise, for Cloud Functions, we update the deployment template, ensuring the right Python version is set for each service.&nbsp;</p><pre><code>gcloud functions deploy bigquery_job_completed &#8211;runtime=python311 &#8212;source=cloud_functions &#8211;trigger-topic=biquery_job_completed &#8211;memory=512MB &#8212;timeout=540s &#8211;entry-point=bigquery_job_completed</code></pre><blockquote></blockquote><p>Our system is now upgraded and ready to take on the future with confidence!</p><blockquote><p><strong>Finally, the critical service we NEVER need to upgrade</strong></p></blockquote><p>Finally, there&#8217;s one service that stands tall, immune to the need for upgrades, the databases in our Customers private tenancies!</p><p>We rely on the mighty Google BigQuery, a server-less and cost-effective enterprise cloud analytics database that effortlessly scales with our customers data.</p><p>Put the data in, query the data out &#8211; it&#8217;s as simple as that.</p><p>No upgrading, no migrations, no worrying about disk space or temp space or log space or memory or release version or any of the hundred and one things my DBA friends spend all their time worrying about, BigQuery proves to be the indispensable backbone of our plumbing infrastructure.</p><p>Why wouldn&#8217;t you use a service like that ?</p><blockquote><p><strong>Flowing Ahead with Upgraded Plumbing</strong></p></blockquote><p>By adapting our code, upgrading the necessary libraries, and deploying with precision, we ensure that our customers data continues to flow seamlessly.</p><p>Leveraging the power of Google&#8217;s infrastructure, we maintain our momentum, confident that our data plumbing will stand the test of time.</p><p>And as we look to the future, we rest easy knowing that BigQuery will always have our back, ensuring a smooth and cost-effective journey through the data waters.</p><p>Onward and upward!</p>]]></content:encoded></item></channel></rss>