<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: B Donald Harris</title>
    <description>The latest articles on DEV Community by B Donald Harris (@bdonald).</description>
    <link>https://dev.to/bdonald</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F975620%2Fbba86449-e100-4b37-b923-d8e13135df38.jpg</url>
      <title>DEV Community: B Donald Harris</title>
      <link>https://dev.to/bdonald</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/bdonald"/>
    <language>en</language>
    <item>
      <title>What Building a Social Platform Taught Me About Software Discovery</title>
      <dc:creator>B Donald Harris</dc:creator>
      <pubDate>Sun, 27 Sep 2026 20:46:52 +0000</pubDate>
      <link>https://dev.to/bdonald/what-building-a-social-platform-taught-me-about-software-discovery-3c9g</link>
      <guid>https://dev.to/bdonald/what-building-a-social-platform-taught-me-about-software-discovery-3c9g</guid>
      <description>&lt;p&gt;When I started building BitVoices, I knew why I wanted it to exist before I knew exactly what it needed to be. The idea grew naturally out of the mission behind NotableBIT: amplifying Black excellence in tech. I wanted Black technologists to have a place where we could be visible, share what we were building, celebrate achievements, publish articles, make connections and see more of ourselves represented in technology.&lt;/p&gt;

&lt;p&gt;At the time, my mental model for an online community was pretty straightforward. A social platform seemed like the natural way to create that space, so the first version of BitVoices took shape around profiles, posts, comments, reactions, follows, notifications, videos, news and a feed. It looked like a social network because that's what I understood an online community platform to be at the time. What I didn't understand yet was that building the software would become part of discovering what the software was supposed to be.&lt;/p&gt;

&lt;h2&gt;
  
  
  When the software doesn't feel right
&lt;/h2&gt;

&lt;p&gt;The more I built BitVoices, the more it started to feel like everything else. One of the things that really started bothering me was the news feed. I found myself spending time every day curating articles about Black people in technology so there would be fresh content on the platform, but almost nobody was reading them and, realistically, they probably weren't going to. I could continue finding more content and adding more features, but neither answered the question that had started bothering me: &lt;strong&gt;What is BitVoices actually supposed to be?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I started asking more fundamental questions. Why am I building this? What am I expecting builders to actually do when they get here? What should they get from being here? What should happen because BitVoices exists that wouldn't otherwise happen?&lt;/p&gt;

&lt;p&gt;I spoke with people about it. Low Key, my ChatGPT agent, and I had many conversations about it. I also started looking at other modern platforms to understand what they were doing and how they were thinking about community. I wasn't necessarily looking for features to copy. I was trying to understand what fit what I was building and, probably more importantly, what didn't.&lt;/p&gt;

&lt;p&gt;As I got clearer about the purpose, I started seeing possibilities that weren't obvious when I was thinking primarily about building a social network. The question was becoming less about what content should be in the feed and more about what a builder should be able to accomplish by being part of BitVoices. That distinction changed the software.&lt;/p&gt;

&lt;h2&gt;
  
  
  The product changed as my understanding changed
&lt;/h2&gt;

&lt;p&gt;Builder HQ began shifting the center of BitVoices away from the feed and toward the builder. I had started moving away from the "feed-first" assumptions behind the original platform and thinking about a different set of questions. Instead of primarily thinking about what someone wants to post or consume, I was thinking about what they're building, what they need, what they can offer another builder, what needs their attention and who in the network might be able to help them.&lt;/p&gt;

&lt;p&gt;I was also thinking more deeply about what community could actually mean in this context. What could builders offer each other beyond reading and reacting to one another's posts? What relationships could form because two people found each other here? Could builders with complementary skills decide to work together on something? Could a team form? Could a company eventually come out of a relationship that started because two builders met on BitVoices? I didn't know what would happen, and I still don't, but those possibilities were much closer to what I wanted the platform to enable.&lt;/p&gt;

&lt;p&gt;The original social features didn't need to disappear. Posts, comments, reactions, articles and connections still serve a purpose. What changed was my understanding of their role. They were no longer the organizing idea behind the product. The network itself, and the relationships that could develop within it, had become much more important.&lt;/p&gt;

&lt;p&gt;That also changed how I thought about Hubs. Builders don't only need a network of people. Sometimes they need a place to gather around a particular interest, technology, business model or geography. That thinking eventually led to Hubs such as AI Builders, SaaS Builders and Tulsa Builders.&lt;/p&gt;

&lt;p&gt;Even there, the discovery continued. The interesting problem wasn't simply how to add groups to the platform. It was understanding what gives builders a reason to participate once they're there. That has led me to think about things like prompts and Hub Check-ins that can create rhythm, accountability and collaboration without turning every community into a formal program.&lt;/p&gt;

&lt;p&gt;Somewhere through this process I arrived at a phrase that now influences how I think about BitVoices: &lt;strong&gt;Community is culture, not features.&lt;/strong&gt; That's different from saying features don't matter. Obviously they do. I'm still building software. But I can build profiles, feeds, messaging, reactions, groups and every other feature we associate with online communities and still not create a community worth participating in. The features have to support the culture, relationships and purpose of the community rather than becoming substitutes for them.&lt;/p&gt;

&lt;h2&gt;
  
  
  I was listening to the software
&lt;/h2&gt;

&lt;p&gt;Months later, I finally found language for what had been happening. I had been listening to the software. I don't mean that in some mystical sense where the application suddenly developed an opinion about its product roadmap. 😂 I mean that the process of building, operating and observing the software was producing information that I didn't have when I started.&lt;/p&gt;

&lt;p&gt;The news nobody was reading was information. My frustration with spending time curating it was information. Conversations with people were information. Watching how the platform was being used was information. Even the fact that I kept returning to the same questions about BitVoices' purpose was information.&lt;/p&gt;

&lt;p&gt;Building in public amplified that process because BitVoices was publicly live in both forms. People saw the earlier feed-centered social platform, and they've been able to watch it change as my understanding of the product has changed. I've been talking about what I'm building while simultaneously building and operating it. I didn't disappear for a year, figure everything out and then unveil the answer. I was discovering BitVoices while BitVoices was already alive. That's what I've started thinking about as &lt;strong&gt;software discovery&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;We usually put discovery before implementation. We gather requirements, understand the problem, make architectural and product decisions, and then build the software. I still believe that work matters. Software discovery isn't an argument for skipping it and figuring everything out while you're coding. It's an acknowledgement that discovery doesn't necessarily stop when construction begins.&lt;/p&gt;

&lt;p&gt;Once an idea becomes working software, you can interact with assumptions that previously existed only in your head, a document or a mockup. You can operate the thing. Other people can use it. You can see where you're spending effort that isn't producing value. You can notice where the software technically works but somehow doesn't fit the purpose you thought you understood.&lt;/p&gt;

&lt;p&gt;The implementation itself becomes another source of information. That's what happened with BitVoices. I didn't discover that the original social features were bad ideas. BitVoices still has a feed, profiles, posts, articles, comments, reactions and many of the things I started building in the beginning. I discovered that I had mistaken some of the mechanisms of an online community for the community itself.&lt;/p&gt;

&lt;p&gt;I'm still discovering what BitVoices is becoming. The difference is that now I recognize discovery as part of building it. Requirements, conversations and research can tell me a lot about what software should be, but sometimes I also need to build enough of it to hear what the software has to say.&lt;/p&gt;

</description>
      <category>softwaredevelopment</category>
      <category>community</category>
      <category>productdevelopment</category>
      <category>ai</category>
    </item>
    <item>
      <title>Follow Existing Patterns” Is Not Enough Context for an AI Coding Agent</title>
      <dc:creator>B Donald Harris</dc:creator>
      <pubDate>Tue, 28 Jul 2026 22:33:35 +0000</pubDate>
      <link>https://dev.to/bdonald/follow-existing-patterns-is-not-enough-context-for-an-ai-coding-agent-18kd</link>
      <guid>https://dev.to/bdonald/follow-existing-patterns-is-not-enough-context-for-an-ai-coding-agent-18kd</guid>
      <description>&lt;p&gt;Many engineering teams give AI coding agents instructions that sound perfectly clear:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Follow existing patterns.&lt;/p&gt;

&lt;p&gt;Do not introduce new abstractions.&lt;/p&gt;

&lt;p&gt;Use the established architecture.&lt;/p&gt;

&lt;p&gt;Follow project standards.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A human developer can usually interpret those instructions because the words are only part of the communication. The developer also brings professional experience, familiarity with the codebase, conversations with teammates, code-review feedback, and an understanding of how the organization makes engineering decisions.&lt;/p&gt;

&lt;p&gt;The human fills in the missing context.&lt;/p&gt;

&lt;p&gt;An AI coding agent does not necessarily make the same expansion. It may recognize the existing pattern in one layer while overlooking another place where the same principle should apply. It may reproduce the visible structure of a nearby implementation without understanding why that structure exists.&lt;/p&gt;

&lt;p&gt;This does not mean general engineering principles are useless. It means they are incomplete when they stand alone.&lt;/p&gt;

&lt;p&gt;A useful instruction must route the agent toward authoritative context. It should identify which architecture guide, repository standard, testing guidance, data-access convention, security requirement, or implementation example the agent must review before beginning the task.&lt;/p&gt;

&lt;p&gt;The goal is not to copy every rule into every prompt. That creates duplication, contradiction, and drift. The goal is to maintain canonical engineering documentation and explicitly direct agents toward the relevant sources.&lt;/p&gt;

&lt;p&gt;This is also why some criticism of AI-generated software misses part of the problem.&lt;/p&gt;

&lt;p&gt;Critics are right to object to insecure code, fragile systems, unnecessary abstractions, inconsistent implementations, and applications that nobody can maintain. But many of those failures are not proof that AI has no useful role in engineering. They are signs that organizations are using agents without adapting how engineering knowledge is communicated.&lt;/p&gt;

&lt;p&gt;Experienced engineers often carry large amounts of organizational knowledge implicitly. They know which patterns are intentional, which compromises are temporary, which architectural boundaries matter, and which production lessons must never be forgotten.&lt;/p&gt;

&lt;p&gt;AI systems do not inherit that cultural understanding automatically.&lt;/p&gt;

&lt;p&gt;Organizations have to digitize it.&lt;/p&gt;

&lt;p&gt;That means turning tribal knowledge into explicit organizational intelligence that can guide both humans and AI systems. It means preserving not only what a codebase does, but why it works the way it does and which decisions should not be casually reversed.&lt;/p&gt;

&lt;p&gt;The teams that do this well will not merely generate code faster. They will make the quality standards of experienced engineers available at the point where AI-assisted work actually occurs.&lt;/p&gt;

&lt;p&gt;I explore the complete argument in:&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://bdonaldharris.com/writing/the-myth-of-general-ai-instructions" rel="noopener noreferrer"&gt;The Myth of General AI Instructions&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;Originally published on &lt;a href="https://bdonaldharris.com/writing/the-myth-of-general-ai-instructions" rel="noopener noreferrer"&gt;bdonaldharris.com&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>coding</category>
      <category>softwareengineering</category>
    </item>
    <item>
      <title>Why I’m Building BIT Voices in Public</title>
      <dc:creator>B Donald Harris</dc:creator>
      <pubDate>Wed, 18 Mar 2026 13:36:24 +0000</pubDate>
      <link>https://dev.to/bdonald/why-im-building-bit-voices-in-public-2a81</link>
      <guid>https://dev.to/bdonald/why-im-building-bit-voices-in-public-2a81</guid>
      <description>&lt;p&gt;After two decades working in software engineering, one thing became very clear to me:&lt;/p&gt;

&lt;p&gt;There are incredible Black technologists building powerful things — but their stories rarely reach the broader tech conversation.&lt;/p&gt;

&lt;p&gt;So I started building a platform to change that.&lt;/p&gt;

&lt;p&gt;It’s called BIT Voices Network.&lt;/p&gt;

&lt;p&gt;The goal is simple: create a place where Black technologists can share what they’re building, what they’re learning, and what they’re discovering.&lt;/p&gt;

&lt;p&gt;In this article I want to share:&lt;/p&gt;

&lt;p&gt;• why I decided to build the platform&lt;br&gt;
• what I’ve learned so far&lt;br&gt;
• what comes next&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.bitvoices.network/articles/470b2cc1-f1ac-4bd2-a5ab-03ceb7a33b14" rel="noopener noreferrer"&gt;Black Tech Stories Deserve Their Own Stage&lt;/a&gt;&lt;/p&gt;

</description>
      <category>buildinpublic</category>
      <category>career</category>
      <category>community</category>
      <category>startup</category>
    </item>
    <item>
      <title>I Built a VS Code Extension to Simplify .NET Project Creation</title>
      <dc:creator>B Donald Harris</dc:creator>
      <pubDate>Wed, 08 Oct 2025 18:55:10 +0000</pubDate>
      <link>https://dev.to/bdonald/i-built-a-vs-code-extension-to-simplify-net-project-creation-5efa</link>
      <guid>https://dev.to/bdonald/i-built-a-vs-code-extension-to-simplify-net-project-creation-5efa</guid>
      <description>&lt;h2&gt;
  
  
  I Built a VS Code Extension to Simplify .NET Project Creation
&lt;/h2&gt;




&lt;p&gt;After years of typing the same &lt;code&gt;dotnet new&lt;/code&gt; commands over and over, I finally decided to do something about it. Today, I'm excited to share &lt;strong&gt;.NET Scaffolder by NotableBit&lt;/strong&gt;—a VS Code extension that makes creating .NET projects feel effortless.&lt;/p&gt;

&lt;h2&gt;
  
  
  🤔 The Problem
&lt;/h2&gt;

&lt;p&gt;As a .NET developer, how many times have you done this?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;dotnet new webapi &lt;span class="nt"&gt;-n&lt;/span&gt; MyProject &lt;span class="nt"&gt;-f&lt;/span&gt; net8.0
&lt;span class="nb"&gt;cd &lt;/span&gt;MyProject
dotnet new sln
dotnet sln add MyProject.csproj
git init
git add &lt;span class="nb"&gt;.&lt;/span&gt;
git commit &lt;span class="nt"&gt;-m&lt;/span&gt; &lt;span class="s2"&gt;"Initial commit"&lt;/span&gt;
&lt;span class="c"&gt;# ... and so on&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It's tedious, error-prone, and breaks your flow. You have to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Remember exact template names (&lt;code&gt;webapi&lt;/code&gt;, &lt;code&gt;blazorwasm&lt;/code&gt;, &lt;code&gt;xunit&lt;/code&gt;, etc.)&lt;/li&gt;
&lt;li&gt;Type out full paths or navigate directories&lt;/li&gt;
&lt;li&gt;Manually configure Git&lt;/li&gt;
&lt;li&gt;Remember which .NET version you want&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;There had to be a better way.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  💡 The Solution
&lt;/h2&gt;

&lt;p&gt;.NET Scaffolder brings visual, intuitive project creation to VS Code. Instead of memorizing CLI commands, you get:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Tree View of Templates&lt;/strong&gt; - Browse 12+ templates organized by category&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interactive Configuration&lt;/strong&gt; - Fill out a form, not a command line&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Browse Button&lt;/strong&gt; - Click to select folders (no more typing paths!)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hybrid Git Integration&lt;/strong&gt; - Choose your workflow&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One-Click Creation&lt;/strong&gt; - Watch your project scaffold in real-time&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  ✨ Key Features
&lt;/h2&gt;

&lt;h3&gt;
  
  
  📚 12+ Project Templates
&lt;/h3&gt;

&lt;p&gt;All the templates you use regularly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Console Apps&lt;/strong&gt;: Console, Worker Service&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Web Apps&lt;/strong&gt;: Web API, MVC, Razor Pages, Blazor Server, Blazor WebAssembly&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Libraries&lt;/strong&gt;: Class Library, Razor Class Library&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tests&lt;/strong&gt;: xUnit, NUnit, MSTest&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🌿 Flexible Git Integration
&lt;/h3&gt;

&lt;p&gt;Choose what works for you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Local Only&lt;/strong&gt; - &lt;code&gt;git init&lt;/code&gt; + commit, no remote&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub CLI&lt;/strong&gt; - Creates repo and pushes automatically&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Custom Remote&lt;/strong&gt; - Push to GitLab, Bitbucket, self-hosted&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No Git&lt;/strong&gt; - Skip it entirely&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  🎯 Framework Selection
&lt;/h3&gt;

&lt;p&gt;Support for .NET 6.0, 7.0, 8.0, and 9.0—all in a dropdown.&lt;/p&gt;

&lt;h3&gt;
  
  
  📦 Solution Support
&lt;/h3&gt;

&lt;p&gt;Automatically creates solution files and adds your project to them.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔒 Privacy First
&lt;/h3&gt;

&lt;p&gt;Telemetry is anonymous and respects VS Code's telemetry settings. No tracking, no surprises.&lt;/p&gt;

&lt;h2&gt;
  
  
  🛠️ How It Works
&lt;/h2&gt;

&lt;p&gt;Here's the full workflow:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Open the Extension
&lt;/h3&gt;

&lt;p&gt;Click the &lt;code&gt;.NET Scaffolder&lt;/code&gt; view in your VS Code sidebar.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Select a Template
&lt;/h3&gt;

&lt;p&gt;Browse categories and click any template to configure it.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Configure Your Project
&lt;/h3&gt;

&lt;p&gt;Fill out the interactive form:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Project Name&lt;/strong&gt; - Type it in&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Project Path&lt;/strong&gt; - Click "Browse..." to select a folder&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Framework&lt;/strong&gt; - Choose from .NET 6-9&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Git Option&lt;/strong&gt; - Pick your workflow&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Create Solution&lt;/strong&gt; - Toggle on/off&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Watch It Build
&lt;/h3&gt;

&lt;p&gt;Real-time progress tracking shows each step.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Start Coding
&lt;/h3&gt;

&lt;p&gt;Your project opens ready to go—everything configured!&lt;/p&gt;

&lt;h2&gt;
  
  
  🤖 Full Transparency: AI-Assisted Development
&lt;/h2&gt;

&lt;p&gt;Before diving into the technical details, I want to be upfront: &lt;strong&gt;I built this extension with AI assistance&lt;/strong&gt; (Claude/ChatGPT). This was a collaborative effort where:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I provided:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The vision and requirements&lt;/li&gt;
&lt;li&gt;Architecture decisions&lt;/li&gt;
&lt;li&gt;Feature specifications&lt;/li&gt;
&lt;li&gt;Testing and validation&lt;/li&gt;
&lt;li&gt;Final code review and approval&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AI helped with:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Code generation and boilerplate&lt;/li&gt;
&lt;li&gt;TypeScript implementation&lt;/li&gt;
&lt;li&gt;VS Code API integration&lt;/li&gt;
&lt;li&gt;Documentation writing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is increasingly how modern development works—AI as a powerful co-pilot, but human judgment driving the ship. Every line of code was reviewed, tested, and understood before making it into the extension.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why share this?&lt;/strong&gt; Transparency matters. AI-assisted development is a tool, not a shortcut. The extension is no less valuable because AI helped write it—just like using Stack Overflow, libraries, or frameworks doesn't diminish a developer's work.&lt;/p&gt;

&lt;h2&gt;
  
  
  🎓 What I Learned
&lt;/h2&gt;

&lt;p&gt;Building this extension taught me a lot:&lt;/p&gt;

&lt;h3&gt;
  
  
  TypeScript &amp;amp; VS Code API
&lt;/h3&gt;

&lt;p&gt;Working with webviews, tree views, and VS Code's extension API was challenging but rewarding. The documentation is excellent once you understand the patterns.&lt;/p&gt;

&lt;h3&gt;
  
  
  Cross-Platform Considerations
&lt;/h3&gt;

&lt;p&gt;Making sure Git integration works on Windows, macOS, and Linux required careful testing. The &lt;code&gt;gh&lt;/code&gt; CLI made GitHub integration much simpler than I expected.&lt;/p&gt;

&lt;h3&gt;
  
  
  User Experience Design
&lt;/h3&gt;

&lt;p&gt;Balancing power and simplicity was key. I wanted advanced features (like 4 Git options) without overwhelming users. Radio buttons and conditional fields solved this nicely.&lt;/p&gt;

&lt;h3&gt;
  
  
  Privacy Matters
&lt;/h3&gt;

&lt;p&gt;Developers care about privacy. Making telemetry opt-in via VS Code's settings was non-negotiable.&lt;/p&gt;

&lt;h2&gt;
  
  
  🚀 Technical Stack
&lt;/h2&gt;

&lt;p&gt;For those interested in the implementation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Language&lt;/strong&gt;: TypeScript&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Framework&lt;/strong&gt;: VS Code Extension API&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;UI&lt;/strong&gt;: Webview API with HTML/CSS/JS&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Build Tool&lt;/strong&gt;: TypeScript Compiler&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Version Control&lt;/strong&gt;: Git + GitHub&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Publishing&lt;/strong&gt;: vsce (VS Code Extension Manager)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Key APIs used:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;vscode.window.createTreeView()&lt;/code&gt; - Template browser&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;vscode.window.createWebviewPanel()&lt;/code&gt; - Configuration forms&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;vscode.window.showOpenDialog()&lt;/code&gt; - Browse button&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;child_process.exec()&lt;/code&gt; - Running &lt;code&gt;dotnet&lt;/code&gt; and &lt;code&gt;git&lt;/code&gt; commands&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  📈 What's Next?
&lt;/h2&gt;

&lt;p&gt;The roadmap is already filling up! Here's what's coming:&lt;/p&gt;

&lt;h3&gt;
  
  
  v1.4.0 (Planned)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Add to Existing Solution&lt;/strong&gt; - Create a new project and add it to an existing &lt;code&gt;.sln&lt;/code&gt; file&lt;/li&gt;
&lt;li&gt;Detect workspace solutions automatically&lt;/li&gt;
&lt;li&gt;Maintain consistent project structure (&lt;code&gt;src/&lt;/code&gt; folder patterns)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Future Ideas
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Custom template support&lt;/li&gt;
&lt;li&gt;Project preview before creation&lt;/li&gt;
&lt;li&gt;NuGet package addition during setup&lt;/li&gt;
&lt;li&gt;Docker configuration generation&lt;/li&gt;
&lt;li&gt;Template favorites&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🎯 Try It Out!
&lt;/h2&gt;

&lt;p&gt;Ready to scaffold your next .NET project in seconds?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Install via VS Code:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ext install notablebit.dotnet-project-creator
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Or search:&lt;/strong&gt; &lt;code&gt;.NET Scaffolder&lt;/code&gt; in the Extensions marketplace&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Links:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🌐 VS Code Marketplace: &lt;a href="https://marketplace.visualstudio.com/items?itemName=notablebit.dotnet-project-creator" rel="noopener noreferrer"&gt;https://marketplace.visualstudio.com/items?itemName=notablebit.dotnet-project-creator&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;💻 GitHub Repository: &lt;a href="https://github.com/bdonaldharris/dotnet-project-creator" rel="noopener noreferrer"&gt;https://github.com/bdonaldharris/dotnet-project-creator&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;📋 Documentation: &lt;a href="https://github.com/bdonaldharris/dotnet-project-creator#readme" rel="noopener noreferrer"&gt;https://github.com/bdonaldharris/dotnet-project-creator#readme&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  💬 Feedback Welcome!
&lt;/h2&gt;

&lt;p&gt;This is my first published VS Code extension, and I'd love to hear your thoughts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What features would make your workflow smoother?&lt;/li&gt;
&lt;li&gt;What templates are you missing?&lt;/li&gt;
&lt;li&gt;Any bugs or issues to report?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Drop a comment below or open an issue on GitHub!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Building tools that developers actually want to use&lt;/strong&gt; is incredibly rewarding. If this extension saves you even 30 seconds per project, it's worth it.&lt;/p&gt;

&lt;p&gt;Happy scaffolding! 🚀&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Follow me for more developer tools and open-source projects. More extensions coming soon!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Connect:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GitHub: &lt;a href="https://github.com/bdonaldharris/dotnet-project-creator" rel="noopener noreferrer"&gt;https://github.com/bdonaldharris/dotnet-project-creator&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Marketplace: &lt;a href="https://marketplace.visualstudio.com/publishers/notablebit" rel="noopener noreferrer"&gt;https://marketplace.visualstudio.com/publishers/notablebit&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>dotnet</category>
      <category>vscode</category>
      <category>csharp</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
