<?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[Yevgeny Pats Blog]]></title><description><![CDATA[Stuff about entrepreneurship and engineering]]></description><link>https://yevgenyp.com</link><image><url>https://substackcdn.com/image/fetch/$s_!GKa4!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c24b3f3-70ff-4763-a7e8-d8a565c8483d_400x400.png</url><title>Yevgeny Pats Blog</title><link>https://yevgenyp.com</link></image><generator>Substack</generator><lastBuildDate>Sun, 19 Apr 2026 08:42:14 GMT</lastBuildDate><atom:link href="https://yevgenyp.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Yevgeny Pats]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[yevgenyp@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[yevgenyp@substack.com]]></itunes:email><itunes:name><![CDATA[Yevgeny Pats]]></itunes:name></itunes:owner><itunes:author><![CDATA[Yevgeny Pats]]></itunes:author><googleplay:owner><![CDATA[yevgenyp@substack.com]]></googleplay:owner><googleplay:email><![CDATA[yevgenyp@substack.com]]></googleplay:email><googleplay:author><![CDATA[Yevgeny Pats]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[English is The New No-Code]]></title><description><![CDATA[Brainstorming through the impact of AI Code generation on No-Code tools.]]></description><link>https://yevgenyp.com/p/english-is-the-new-no-code</link><guid isPermaLink="false">https://yevgenyp.com/p/english-is-the-new-no-code</guid><dc:creator><![CDATA[Yevgeny Pats]]></dc:creator><pubDate>Sat, 31 Aug 2024 19:01:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!otpg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>No-code tools have been around since the dawn of computers (Excel is probably the great-grandfather) and have been solving important but difficult problems by creating no-code abstractions for things that &#8220;are code.&#8221; Given that a one-to-one abstraction is not really possible, these tools have encountered various challenges and use cases where the abstraction no longer works, forcing users to fallback to &#8220;code.&#8221; In this short blog, I&#8217;ll walk through two popular segments of no-code tools and run a thought experiment on how these tools could potentially evolve with the advancement of large language models (LLMs) that are very good at generating code. We are still in the early days, so it&#8217;s pretty hard to predict with so many moving pieces, but it&#8217;s fun to try!</p><h2>Integration Platforms</h2><p>"Integration Platforms" is quite a broad term and can include several types of tools. You can think of automation tools like Zapier, Workato, Torq, and Tines, as well as data tools like Boomi and Fivetran. Both categories share similar technical challenges and business economics.</p><h4><strong>Challenges</strong></h4><ol><li><p><strong>Limited Capabilities of No-Code Abstractions</strong>: If a user has a more complex automation requirement, it becomes very hard or expensive to modify it, or the user has to fallback to code (e.g., for loops, complex conditional logic).</p></li><li><p><strong>10%/90% Rule</strong>: 10% of integrations bring in 90% of the revenue, leaving the other 90% of the market underserved because it becomes uneconomical for the vendor to create more integrations.</p></li></ol><h2><strong>Website Builders</strong></h2><p>Website builders like Webflow and Wix represent another interesting no-code category. These tools face similar challenges and drawbacks that resonate with integration platforms and no-code tools.</p><h4><strong>Challenges</strong></h4><ol><li><p><strong>Limited Capabilities of No-Code Abstractions</strong>: Once users require more custom features, customization becomes hard and expensive. Eventually, it becomes easier to hire a React/Next.js/JavaScript developer than a Webflow/Wix developer.</p></li><li><p><strong>10%/90% Rule</strong>: Website builders are essentially abstractions of JavaScript and web frameworks. Typically, 10% of the features generate 90% of the revenue and use cases for users who need a no-code website builder. Beyond that, there is a long tail of features that bloat the no-code framework, making it hard to develop and maintain.</p></li></ol><h2><strong>What&#8217;s Next for No-Code Tools</strong></h2><p>Looking at the two segments and some of the challenges from both the user and vendor perspectives, I see a number of interesting developments with the advancement of LLMs for code generation:</p><ol><li><p><strong>Integrated AI</strong>: Current no-code tools can integrate LLMs into their frameworks to make it easier for users to create new integrations without hiring an expensive engineer who is a pro at the specific no-code product. We have some early signs of this already, such as<a href="https://zapier.com/ai"> Zapier AI</a>.</p></li><li><p><strong>New No-Code Tools with a Code-First Approach</strong>: This could be an interesting middle ground and an opportunity for new tools (aka AI Native &#128518;). Original no-code tools break down when customization or code is required. If tools can be built around code-first frameworks and give users the ability to always modify the underlying code, that could be a sweet middle ground. This is, of course, the holy grail and still poses many questions about feasibility, as some guardrails will need to be in place. The best example I found is the very early version of<a href="https://v0.dev/"> Vercel&#8217;s v0.dev</a>. Vercel is a hosting company and by integrating a code generation LLM into their UI, it allows users to generate websites and deploy them immediately&#8212;all without coding.</p></li><li><p><strong>Direct LLM Usage in Development Environments (GitHub Copilot, Claude.ai)</strong>: More and more users can now code basic stuff whether it&#8217;s a small automation or a small website from scratch. This trend makes coding cheaper and lowers the barrier to entry for simple application development and maintenance , even for end users.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!otpg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!otpg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg 424w, https://substackcdn.com/image/fetch/$s_!otpg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg 848w, https://substackcdn.com/image/fetch/$s_!otpg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!otpg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!otpg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg" width="588" height="424" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:424,&quot;width&quot;:588,&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_!otpg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg 424w, https://substackcdn.com/image/fetch/$s_!otpg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg 848w, https://substackcdn.com/image/fetch/$s_!otpg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!otpg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05abef60-7369-4386-91cd-ea6019586f6e_588x424.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>Personally, I'm most excited about options two and three as I think no-code UI abstractions are expensive to maintain and have too many limitations. I'm also a big believer that the &#8220;the best component is no component&#8220;, so if we can achieve the same business/user goals without having yet another component or abstraction this might be the best way to go.&nbsp;</p><p>There are probably more interesting segments with similar challenges and limitations in the current landscape, so it will be fascinating to watch how the use of LLMs in different stacks affects both enterprise and consumer products.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://yevgenyp.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://yevgenyp.com/subscribe?"><span>Subscribe now</span></a></p>]]></content:encoded></item><item><title><![CDATA[The Current State of Open Source Licenses and What’s Next]]></title><description><![CDATA[Comparison of open source companies, business models, licenses, recent changes and a brief look into the future.]]></description><link>https://yevgenyp.com/p/the-current-state-of-open-source-licenses</link><guid isPermaLink="false">https://yevgenyp.com/p/the-current-state-of-open-source-licenses</guid><dc:creator><![CDATA[Yevgeny Pats]]></dc:creator><pubDate>Sat, 10 Aug 2024 16:57:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!BBHx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Open source software has been around for quite some time, powering a lot of innovation and still powering key parts of our internet and technology infrastructure. However, we live in a capitalistic world, which means people need to be paid for their work, and users of products or services usually have to pay, directly or indirectly. Consequently, open-source businesses have always struggled with monetization and have gone through various changes.</p><p>Instead of diving into the entire history of open source (starting with the Linux kernel, compilers, Git, etc.), I will focus on the last decade, comparing different companies, their strategies, licenses, changes they went through, and the lessons learned from those companies. I&#8217;m old enough to know that the future is unpredictable, so 80% of this post is dedicated to summarizing the recent past and 20% is reserved for my predictions and suggestions about what open-source business might look like in the future&#8212;because predicting is all the fun!</p><h1>Comparison</h1><p>I created a list of 9 companies (there are many more open source companies that changed licenses but I tried to focus on &gt;100M in revenue companies and kept it short for the sake of brevity).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BBHx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BBHx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png 424w, https://substackcdn.com/image/fetch/$s_!BBHx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png 848w, https://substackcdn.com/image/fetch/$s_!BBHx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png 1272w, https://substackcdn.com/image/fetch/$s_!BBHx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BBHx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png" width="1024" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/983d5bc3-adea-407d-bee1-d2928ce99b82_1024x768.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:75228,&quot;alt&quot;:&quot;Open source companies original licenses and changes&quot;,&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="Open source companies original licenses and changes" title="Open source companies original licenses and changes" srcset="https://substackcdn.com/image/fetch/$s_!BBHx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png 424w, https://substackcdn.com/image/fetch/$s_!BBHx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png 848w, https://substackcdn.com/image/fetch/$s_!BBHx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.png 1272w, https://substackcdn.com/image/fetch/$s_!BBHx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d382553-1ff9-4cb5-8bd1-db51c93b564c_1024x768.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><figcaption class="image-caption">Open source companies original licenses and changes</figcaption></figure></div><p></p><p>Let&#8217;s take a look at a few key trends:</p><ol><li><p><strong>Permissive (Apache 2.0, MIT, BSD, MPL) to Restrictive License (SSPL, AGPL, BSL) change</strong> - Six out of nine companies that started as open source shifted towards more restrictive licenses, beginning with MongoDB in 2018. Without delving too deeply into what SSPL, AGPL, or BSL are, the bottom line is that these licenses aim to prevent cloud providers and competitors from offering managed solutions without contributing back or paying to the open-source project (links to all license changes are in the footnotes).</p></li><li><p><strong>Closed source features - </strong>Even with the move to restrictive licenses, companies still maintain closed-source commercial features to ensure there is a journey from free to paid, preventing major customers from remaining on a free plan indefinitely.</p></li></ol><p>Now, let&#8217;s look at a few companies that didn&#8217;t change their licenses, as each represents an interesting case study:</p><ul><li><p><strong>GitLab:</strong> Open Core from the start. GitLab's initial version was open source, but the company was incorporated shortly after with the intent to monetize. They were relatively diligent in deciding which new features would be free and which would be paid to ensure the free version didn&#8217;t give away too much.</p></li><li><p><strong>Confluent:</strong> Kafka was spun out of LinkedIn to the Apache Foundation, meaning the initial risk and R&amp;D weren&#8217;t on the company&#8217;s budget. The company focused on building a commercial, closed-source platform on top of a mature and popular open open source project (that said, Confluent is still a major contributor to Kafka).</p></li><li><p><strong>Vercel:</strong> Next.js was developed by Vercel, it didn&#8217;t undergo license changes and stayed with permissive open source MIT license. This is due to a few reasons I can think of. Vercel is a &#8220;frontend cloud,&#8221; as they call it, or in simpler terms, a hosting company for frontend frameworks. Vercel's product is commercial closed source software, and it would be successful even without Next.js, perhaps even more so. It supports hosting websites written in almost all current frameworks, both client-side and server-side (<a href="https://vercel.com/docs/frameworks">https://vercel.com/docs/frameworks</a>). The reason for Next.js being open source with a permissive license is actually technical, as there is no other way or license that would work for a library where developers need to import code.</p></li></ul><p>Looking at these nine companies and the recent changes some of them underwent to ensure their businesses are sustainable, let&#8217;s recap the current options/models:</p><ol><li><p>Restrictive (RSAL, AGPL, BSL) source available license + closed source features.</p></li><li><p>Open core with a small set of features being free with a permissive license and others being commercial and/or closed-source.</p></li><li><p>Closed source or commercial platform on top of an established open source product.</p></li><li><p>Closed source or commercial platform with a separate and standalone piece/ library/framework being open source.</p></li></ol><h1>What&#8217;s Next</h1><p>I think the future is still unclear, and companies are mostly in a reactive state. We will likely see different approaches emerge, as companies can succeed despite not having a perfect business model or license.</p><p>That said, out of the four options mentioned in the previous sections, I&#8217;m most excited about options 3 and 4 (an already existing mature OSS project incorporated into a commercial platform, or a completely separate standalone OSS project that is supported or incorporated into a commercial platform). The reason for this is that it removes any confusion and constant discussion about what should or shouldn&#8217;t be in the open-source version. It also avoids the license sprawl and gymnastics (AGPL, BSL, SSPL) that everyone is trying to navigate to remain both open source while simultaneously avoiding being fully open source to combat cloud providers and competitors.</p><p>Another trend I think we&#8217;ll see more of is closed source but self-hosted. In the last few years, we&#8217;ve seen open-source projects that were started as open source primarily for marketing purposes rather than solving a real pain point by being open source. A common theme is that many open-source projects can be easily self-hosted, which is a real need, especially in the enterprise. By also offering a free tier, enterprises have the option to test a product for an extended period in their own environment, which provides real value&#8212;but this doesn&#8217;t necessarily mean the product has to be open source.</p><p>OSS licenses is a hot topic, so I&#8217;m curious to hear your comments and new ideas &#128071;</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://yevgenyp.com/p/the-current-state-of-open-source-licenses/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://yevgenyp.com/p/the-current-state-of-open-source-licenses/comments"><span>Leave a comment</span></a></p><div><hr></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://yevgenyp.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Subscribe to get updates and train your own bio-LLM on startups, engineering and other hallucinations. </p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div><hr></div><ol><li><p><a href="https://redis.io/blog/redis-adopts-dual-source-available-licensing/">Redis License Change</a></p></li><li><p><a href="https://www.elastic.co/pricing/faq/licensing">Elastic License Change</a></p></li><li><p><a href="https://www.mongodb.com/legal/licensing/server-side-public-license/faq#:~:text=license%20for%20MongoDB%3F-,Why%20are%20we%20changing%20the%20license%20for%20MongoDB%3F,open%20source%20server%20side%20software.">MongoDB License Change</a></p></li><li><p><a href="https://grafana.com/blog/2021/04/20/grafana-loki-tempo-relicensing-to-agplv3/">Grafana License Change</a></p></li><li><p><a href="https://www.hashicorp.com/blog/hashicorp-adopts-business-source-license">Terraform (Hashicorp) License Change</a></p></li><li><p><a href="https://www.cockroachlabs.com/blog/oss-relicensing-cockroachdb/">CockroachDB License Change</a></p></li></ol>]]></content:encoded></item><item><title><![CDATA[What is a Security Data Fabric]]></title><description><![CDATA[This post was originally published on https://www.cloudquery.io/blog/what-is-a-security-data-fabric]]></description><link>https://yevgenyp.com/p/what-is-a-security-data-fabric</link><guid isPermaLink="false">https://yevgenyp.com/p/what-is-a-security-data-fabric</guid><dc:creator><![CDATA[Yevgeny Pats]]></dc:creator><pubDate>Sat, 03 Aug 2024 22:27:58 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3lxW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Industry buzzwords are all around us. Sometimes, they are helpful, but sometimes, they cause more confusion, which, in this case, they do. So, I will try to break down what they mean and suggest alternative non-buzzwords for those terms (or at least as to how I currently understand them&#8212;it&#8217;s an opinionated piece, so feel free to disagree).&nbsp;</p><p>Just to give a bit more history on buzzwords, buzzwords are helpful sometimes, and sometimes they help describe a very big shift in technology, architecture, or way of operations sometimes they are helpful in the beginning and then stop being useful (see <a href="https://roundup.getdbt.com/p/is-the-modern-data-stack-still-a">modern data stack</a> - now it&#8217;s just a data stack) and sometimes they are also not useful from the start because they try to identify a trend that's happening but it either end up not being a trend or just being a sub-case of an already well known technology.&nbsp;</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://yevgenyp.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Yevgeny Pats Blog! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>Enough with the introduction and disclaimers, let&#8217;s dive right into that.</p><h1>What is a data fabric?</h1><p>First, let&#8217;s break down what is a &#8220;data fabric&#8221; before going into &#8220;security data fabric&#8221;.</p><p>&#8220;data fabric&#8221; is also a pretty confusing buzzword, in my opinion, but I will try to break it down (on what I think it means). Data fabric is not a technology but rather a strategy of building your data strategy and stack in the company and collecting, storing, enriching and analyzing that data. This is it. So now you think, Oh, so why do we need a word for it? Well, because there are vendors that try to sell more integrated solutions rather than you buying different pieces and trying to differentiate themselves in the market. Not to say that what those vendors provide is not useful as you can definitely buy more integrated solutions, either one or multiple, and build your stack in many different ways depending on requirements and business goals. So now that we have a better understanding that it&#8217;s a combination of technologies, I&#8217;d like to suggest a different term for that and call it just a &#8220;<strong>data stack</strong>.&#8221; Just like in more mature markets, we have a &#8220;marketing stack&#8221; or &#8220;martech&#8221; (collection of tools and software that marketers use to improve, analyze, and perform their services, and it&#8217;s up to the marketing team to build their stack with integrated and non-integrated solutions).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3lxW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3lxW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png 424w, https://substackcdn.com/image/fetch/$s_!3lxW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png 848w, https://substackcdn.com/image/fetch/$s_!3lxW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png 1272w, https://substackcdn.com/image/fetch/$s_!3lxW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3lxW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png" width="902" height="1210" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1210,&quot;width&quot;:902,&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_!3lxW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png 424w, https://substackcdn.com/image/fetch/$s_!3lxW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png 848w, https://substackcdn.com/image/fetch/$s_!3lxW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.png 1272w, https://substackcdn.com/image/fetch/$s_!3lxW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe575a76b-afc4-451c-8095-ff64fbc7f9ac_902x1210.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><h1>What is a security data fabric?</h1><p>Now that we have defined &#8220;data fabric,&#8221; what is a &#8220;security data fabric&#8221;? If &#8220;data fabric&#8221; is &#8220;data stack&#8221; then &#8220;security data fabric&#8221; is "security data stack&#8220;? Doesn&#8217;t make a lot of sense as you have one data stack for different types of data and use cases. So what is it then? Well, actually, I'm not sure myself, but I&#8217;ll try to explain. First, from the end, what does a &#8220;security data fabric&#8221; try to solve? The challenge is the rise of the number of security tools in an organization (solving different problems) and getting <strong>insights/analytics</strong> from <strong>data</strong> that is generated by those <strong>tools</strong>. If we look at the last sentence, we can actually take the goal or the challenge and describe the category in those words, which we think will make it much clearer then <strong>&#8220;security data fabric&#8221;</strong> is a way to run <strong>analytics </strong>on your <strong>security</strong> <strong>data </strong>from different security tools.</p><p>So now that we have eliminated the &#8220;security data fabric,&#8221; we can just call it <strong>&#8220;analytics for security data,&#8221;</strong>&nbsp; which both describe the goal and the &#8220;category.&#8221;&nbsp;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BeSn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BeSn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png 424w, https://substackcdn.com/image/fetch/$s_!BeSn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png 848w, https://substackcdn.com/image/fetch/$s_!BeSn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png 1272w, https://substackcdn.com/image/fetch/$s_!BeSn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BeSn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png" width="914" height="1220" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1220,&quot;width&quot;:914,&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_!BeSn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png 424w, https://substackcdn.com/image/fetch/$s_!BeSn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png 848w, https://substackcdn.com/image/fetch/$s_!BeSn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.png 1272w, https://substackcdn.com/image/fetch/$s_!BeSn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F81b56151-37a9-4ba7-bda9-8f9457e0f18c_914x1220.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><h1>How to build one?</h1><p>Now that we have cleared both terms, let's discuss how to build one (if you need one). So, assuming you already have some sort of data stack or even if you don&#8217;t, you will need at least one central location like a database, data warehouse, or data lake where you are going to run your analytics (can be PostgreSQL for smaller amount of data and BigQuery, ClickHouse, Snowflake, Databricks, and other data warehouses and data lakes for a larger amount of data).</p><p>Now you will need to get the data out of different security systems such as CSPMs/CNAPP, Vulnerability management, EDRs, MDMs, and any other stuff that you have in your security stack to that central location. Here, I&#8217;m going to plug <a href="https://cloudquery.io">CloudQuery</a>, which part of what we do is an ELT (Extract-Load-Transform) for cloud and security tools, so you don&#8217;t need to write your own connectors (though you definitely can; it&#8217;s not a lot of fun and usually not the interesting business part like writing the analytics that you want to get ).</p><p>Once you have the data in your central queryable location, you can start running your analytics, creating query views, creating the necessary answers, and exposing those programmatically or via BI/Dashboarding tools.</p><h1>Final Thoughts</h1><p>Before committing to any new buzzwords, first, understand what you are trying to solve. If you are looking to run analytics on your security data and (have the bandwidth to create those analytics), then definitely<a href="https://www.cloudquery.io/download"> give CloudQuery a go</a> to remove the slog of writing connectors for security APIs so you can focus on your business use case!&nbsp;</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://yevgenyp.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Yevgeny Pats Blog! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item></channel></rss>