





















































HubSpot’s AI-powered ecosystem is projected to become a $10.2 billion opportunity by 2028. To help developers tap into that growth, we're opening up the platform—introducing expanded APIs, customisable app UIs, and tools built to support a unified data strategy.
Hi ,
Welcome to a brand new issue of ProgrammingPro.
In today’sExpert Insight, we bring you an excerpt from our interview with Francesco Abbruzzese and Gabriel Baptista, authors of Software Architecture with C# 12 and .NET 8, Fourth Edition, where they discuss how AI is being used in architecture today, why it won’t replace human expertise anytime soon, and the evolving skill set software architects need to stay relevant.
News Highlights: Google releases an open source Python toolkit for building and deploying AI agents; JetBrains launches Junie AI agent, updates AI Assistant, and adds a free IDE tier; Symbiotic Security unveils an AI tool for real-time code vulnerability fixes; and .NET 10 Preview 3 boosts C# 14, Blazor WebAssembly, and AOT support.
My top 5 picks from today’s learning resources:
But there’s more, so dive right in.
Stay Awesome!
Divya Anne Selvaraj
Editor-in-Chief
ValidationContext
constructor, expands C# 14 extensions, and improves Blazor WebAssembly performance.field
keyword for simpler property backing, implicit Span<T>
conversions, unbound generics in nameof
, parameter modifiers in lambdas, partial constructors and events, and null-conditional assignments.-Werror
, expands coverage of hardening options such as -fstrict-flex-arrays=3
, and improves guidance for development versus production builds.Promise.withResolvers()
, structuredClone()
, tagged templates, and more..ts
files, type annotations in JavaScript, and the evolving roles of JSX.os/signal
package, demonstrating how to listen for signals like SIGINT
to implement features such as graceful shutdowns, and more.TaskGroup
, returning whichever completes first.kotlin-json-stream-serializer
, a compile-time code generation tool for type-safe, multiplatform JSON serialization in Kotlin using OKIO streams.Q: What inspired you to write Software Architecture with C# 12 and .NET 8?
Francesco:
The main point was that this book brings together various subjects that are hard to find in one place. I wanted to collect my experience and put it into something solid—a book that could be useful in my advisory work, in courses, and also for my customers. It’s a practical tool for all of that.
Gabriel:
For me, it marked a really important point in my career. I’ve worked both in the college environment and in industry for a long time. This opportunity allowed me to give back to the community a complete material, a full pipeline on how to create an enterprise solution.
It was a great chance to work with Francesco too—we found a lot of common ground. I think readers will notice that the book reads as though it was written by a single person. We worked closely and it was a really enjoyable collaboration.
Q: Could you give us a few examples of how AI-driven tools are currently being used in architectural design and what new paradigms you see emerging?
Gabriel:
AI is definitely the topic on everyone’s mind right now. But a good AI still depends on a good software architecture—because AI needs good data. Without good data, you can't have good AI.
As architects, we’re going to be impacted by AI, positively or negatively, depending on how we work with it. For example, today it’s possible to upload an architectural design into a tool like ChatGPT and have a conversation about whether it’s good or bad. I’ve done this—it can suggest changes or provide feedback. But you still need to analyse that feedback and judge if it's correct, especially in enterprise environments where things are more complex.
So AI will change the world, but we need to use our intelligence to evaluate its output. Architects need to design systems that can produce good AI—because poor architecture means poor data, and that leads to poor AI.
Francesco:
AI is a valuable tool, but it can’t fully replace a professional’s experience—at least not yet. It helps save time and can suggest options, but sometimes those suggestions are wrong. Other times they’re a useful starting point for further investigation.
AI can write some code, create diagrams or designs that serve as a base to work from. It might remind you of something you’d forgotten to analyse. But that doesn’t mean it’s giving you the best solution—it’s just helping you avoid overlooking things.
Right now, it’s still far from the kind of general intelligence that could fully take over an architect’s job.
Q: What remains irreplaceable about human architects—and how they can use AI to enhance, rather than replace, their role?
Francesco:
Architects should use AI to save time—for instance, to generate some starting designs or initial code. In my company, we developed an AI tool that can generate a complete Visual Studio solution, with all the needed projects and some basic starting code. It doesn’t always work perfectly, but it’s a useful starting point and it saves time, especially with complex architectures like those based on microservices or onion architecture.
In those cases, setting everything up manually would take a long time. With this tool, we can automate 50–60% of that groundwork. But even then, the hard part is modelling the real world—and AI doesn’t have enough understanding of the world to do that on its own. It still needs a human to interpret the requirements and guide the process.
Gabriel:
Our book focuses a lot on the architect’s role in a team. Architects design the solution pipeline and are responsible for the technical direction of enterprise projects.
Today, AI can be used to accelerate things for the whole team—not just the architect. But it’s still just a starting point. You need someone with experience to evaluate whether the output fits the requirements. This is especially true for enterprise systems, where quality and correctness matter a lot.
Even tools like GitHub Copilot don’t just help you write code—they also help analyse if you’re following best practices. But it’s still the architect’s responsibility to decide which tools are appropriate and whether they’re improving the team’s performance.
Q: What skills do you see becoming essential for software architects as technology continues to evolve?
Gabriel:
If you look at everything we’ve talked about so far—distributed systems, AI, security—they all point to one thing: the future is distributed. So, understanding how to build distributed applications is going to be essential. Architects also need a solid grounding in information security.
And beyond the technical, I’d say soft skills are critical too. When you introduce changes like DevOps or observability, you’re impacting the entire team. The ability to bring people along with you—to communicate, to influence—is just as important as technical skill.
Francesco:
I agree with Gabriel. Many developers and architects still think of security as something you add at the end—firewalls, updates, patches. That mindset has to change. Security needs to be part of how we design and write code from the beginning.
Architects preparing for the future should update how they design, how they build, and how they think about development. That means learning about DevOps, distributed systems, and modern development methodologies—and making them second nature.
Francesco Abbruzzese is a software architect and the creator of the MVC and Blazor Control Toolkit. He has extensive experience in designing enterprise-grade applications and consults on scalable architectural solutions. Francesco also trains development teams and contributes actively to the .NET ecosystem.
Gabriel Lara Baptista is an Azure PaaS specialist and university instructor with a strong focus on cloud-native applications and team enablement. He brings together academic depth and real-world implementation in his work and is passionate about building resilient systems that scale with business needs.
Their book Software Architecture with C# 12 and .NET 8, Fourth Edition was published in February 2024. It serves as a practical, end-to-end guide to designing scalable, secure, and modern enterprise applications using proven architectural patterns and real-world .NET tooling. It’s designed to help developers move confidently from high-level design to implementation across today’s complex cloud-native environments.
That’s all for today.
We have an entire range of newsletters with focused content for tech pros. Subscribe to the ones you find the most usefulhere.
If your company is interested in reaching an audience of developers, software engineers, and tech decision makers, you may want toadvertise with us.
If you have any suggestions or feedback, or would like us to find you a learning resource on a particular subject, just respond to this email!