Simon Timms on Microservices Architecture — Episode 128

Simon Timms on Microservices Architecture — Episode 128

This week, Jeffrey is joined by return guest, Simon Timms, to discuss microservices architecture.

Simon Timms is a long-time freelance Software Engineer, multi-time Microsoft MVP co-host of ASP.NET Monsters on Channel 9, and also runs the Function Junction Youtube channel. He considers himself a generalist with a history of working in a diverse range of industries. He's personally interested in A.I., DevOps, and microservices; and is skilled in Software as a Service (SaaS), .NET Framework, Continuous Integration, C#, and JavaScript. He's also written two books with Packt Publishing: Social Data Visualization with HTML5 and JavaScript and Mastering JavaScript Design Patterns.

Two years ago when Simon was last on The Azure DevOps Podcast, he and Jeffrey discussed Azure Functions and Processes. In their conversation today, they're focusing on all things microservice-related. Simon has done a lot of work in the space of microservices and has a lot of insight on best practices; when (and when not) to use it; how you run it in production; how to build, test, configure, and deploy; what a visual structure solution looks like for a microservice; how to make a decision if you're looking at a software system; and much more. If you've been wanting to learn more about microservices architecture, this is a not-to-miss episode!

Topics of Discussion:

[:38] Be sure to visit AzureDevOps.Show for past episodes and show notes.

[1:00] About The Azure DevOps Podcast, Clear Measure, and Jeffrey's offer to speak at virtual user groups.

[1:45] Clear Measure is hiring! Be sure to check out the link in the show notes.

[1:55] About Jeffrey's newest podcast, Architect Tips!

[2:19] About today's episode with Simon Timms.

[2:51] Jeffrey welcomes Simon to The Azure DevOps Podcast.

[3:38] About today's discussion with Simon on microservices.

[4:54] Microservices: what it is and how it is different from simply splitting up a system into multiple applications.

[7:43] Does a microservice architecture have its own version control repository?

[8:45] Does Simon tend to have a microservice in its own version control repository, or, does he tend to have many microservices in the same version control repository?

[9:38] What are shared dependencies? What does that mean in the context of microservice architecture?

[12:26] Key tenets to keep in mind if you're going to use microservices.

[15:09] How to identify if utilizing microservices is the right (or wrong) architecture pattern for what it is that you're doing.

[19:53] A word from Azure DevOps Podcast's sponsor: Clear Measure.

[20:26] What is and isn't considered a microservice?

[25:02] What would cause you to choose one protocol/type of web service/messaging queue over another?

[27:40] If Simon was to start a project today, would he say that there is a go-to way to do asynchronous queue-based messaging?

[31:35] For someone new to the space of microservices, would Simon recommend NServiceBus as a good start?

[33:57] With each different version, do control repositories have their own DevOps pipeline?

[34:55] Is there a product or a method that works great when you have half a dozen independent programs running?

[38:18] Simon's recommendations on further resources to check out to learn more.

[40:12] Jeffrey thanks Simon for joining the podcast once again!

Mentioned in this Episode:

Architect Tips — New video podcast!

Azure DevOps

Clear Measure (Sponsor)

.NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon!

bit.ly/dotnetdevopsebook — Click here to download the .NET DevOps for Azure ebook!

Jeffrey Palermo's Youtube

Jeffrey Palermo's Twitter Follow to stay informed about future events!

The Azure DevOps Podcast's Twitter: @AzureDevOpsShow

Simon Timms (Blog)

Social Data Visualization with HTML5 and JavaScript, by Simon Timms

Mastering JavaScript Design Patterns, by Simons Timms

Function Junction Youtube Channel

ASP.NET Monsters

The Azure DevOps Podcast Ep. 23: "Simon Timms on Azure Functions and Processes"

NServiceBus

Azure Application Insights

Want to Learn More?

Visit AzureDevOps.Show for show notes and additional episodes.

Avsnitt(373)

Rob Richardson: Web Services in .NET 6 - Episode 213

Rob Richardson: Web Services in .NET 6 - Episode 213

Rob Richardson is a software craftsman who is building web properties in ASP.NET, Node, React, and Vue. He's a software developer, a community leader, a mentor, and the business owner of Richardson & Sons. Additionally, Rob is a Microsoft MVP; a published author; a frequent speaker at conferences, user groups, and community events; and a diligent teacher and student of high-quality software development. Topics of Discussion: [3:25] Rob starts us off with a cool trick to remember how many days of the month there are. [5:25] Rob talks about why he invested in getting really good at unit testing and integration testing. [5:50] What is the big "wow" factor that developers should not miss with .NET6? [8:35] With minimal APIs, is it different capabilities, or have they mapped all of the capabilities of web API down into those extension methods that you can use? [10:25] What is the difference between authorization and authentication? [17:25] What's Rob's preferred mechanism for internal private web services? [21:30] Where Raspberry APIs really shine. [22:08] Rob tells us about a very cool talk he has coming up. [27:03] DevContainers is such a magical thing. [28:02] Rob is digging deep into GitHub actions, and he is starting to build out custom GitHub action tasks for interesting things. Mentioned in this Episode: Architect Tips — New video podcast! Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's YouTube Jeffrey Palermo's Twitter — Follow to stay informed about future events! Programming with Palermo programming@palermo.net Episode 131 jwt.io Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

3 Okt 202229min

Mark Miller: The Science of Great UI in Software - Episode 212

Mark Miller: The Science of Great UI in Software - Episode 212

Today's guest is Mark Miller, a seven-year C# MVP with strong expertise in decoupled design, plug-in architectures, and great user interfaces. He is the Chief Architect of the IDE Tools division at Developer Express, as well as the visionary force behind productivity tools like CodeRush. Mark is a top-ranked speaker at conferences around the world and has been creating tools for software for almost four decades. On top of all that, Mark also streams live C# and typescript coding and design on Twitch.TV/CodeRushed! Topics of Discussion: [2:45] Mark lives in Spain without speaking Spanish. [4:09] Over the recent months, they have made DevExpress free for everyone. [9:49] How did CodeRush start? [11:37] Products like CodeRush typically are leaders in innovating new features that are often incorporated into the IDE. [12:09] Intellicode is a brilliant innovation. [17:08] Mindset tips on using features to make your product better, and to make the important function available where the user is. [21:49] Mark shares the key to winning long-term in the IDE world — discoverability. [26:03] You want it to be easy for your customers to discover how to use the app, and what features are in the app. Mentioned in this Episode: Architect Tips — New video podcast! Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's YouTube Jeffrey Palermo's Twitter — Follow to stay informed about future events! Programming with Palermo programming@palermo.net "Mark Miller on Developer Productivity — Episode 37" WCAG Standards and Guidelines CODERUSH "The Science of Great UI" Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

26 Sep 202245min

Scott Hunter: Microsoft's Azure & .NET Strategy- Episode 211

Scott Hunter: Microsoft's Azure & .NET Strategy- Episode 211

Topics of Discussion: [2:27] What are some things happening and that have happened at Microsoft that we may not be aware of? [7:25] Scott talks about some of the upcoming developments he is excited about that will make using the cloud in the future even better. [9:00] Scott's favorite part of that whole journey was that reboot, learning from the shifts and the ebbs of the industry and, asking how to make .NET the right product for that next wave. [12:20] Scott also talks more about Microsoft's strategy with Azure & .NET. [27:41] Scott gives a preview of the Azure Dev CLI. [30:52] What is the difference in strategies between Azure and .NET, and how do we bring those together? [36:59] What are the big things that we need to put on our calendar for this fall? Mentioned in this Episode: Architect Tips — New video podcast! Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's YouTube Jeffrey Palermo's Twitter — Follow to stay informed about future events! Programming with Palermo programming@palermo.net Scott Hunter on .NET6 Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

19 Sep 202239min

Rocky Lhotka: CSLA - Episode 210

Rocky Lhotka: CSLA - Episode 210

Rockford Lhotka is the creator of the widely used CSLA .NET open-source development framework. He is the author of numerous books and regularly speaks at major conferences around the world. Rockford is a Microsoft Regional Director and MVP. He is co-chair of Visual Studio Live!, and the chair of the Cloud & Containers Live! Conferences. Rockford has worked on many projects in various roles, including software architecture, design and development, network administration, and project management. Over his career, he has designed and helped to create systems for bio-medical manufacturing, agriculture, point of sale, credit card fraud tracking, general retail, construction, and healthcare. Topics of Discussion: [4:00] How an arcade game led Rocky to his career in software architecture, design, and development. [5:05] What is CSLA, and what problems does it solve? [8:40] Rocky defines business logic and what is not considered business logic. [17:11] Rocky discusses his object-oriented approach, and inspiration from computer science Professor David West. [19:25] A function library is where each rule is a function or a procedure. [20:58] Rocky thinks that using object-oriented concepts is the way to go. [23:51] Rocky's preferred naming convention is to use a verb in the name. [28:20] CSLA tries as much as possible to give you this home for business logic and then also provides some buffer between your business logic and everything from Windows Forms all the way up through Blazer. [30:00] How does CSLA like to be used? [31:00] The CSLA framework is geared around an architecture where you have, at the center, this business logic layer, and below that you have a data access layer, and above that, you have an interface control layer. Mentioned in this Episode: Architect Tips — New video podcast! Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's YouTube Jeffrey Palermo's Twitter — Follow to stay informed about future events! Programming with Palermo programming@palermo.net Rocky's Blog Rocky on Episode 33 Marimer LLC David West — Object Thinking Marimer LLC Project Tracker Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

12 Sep 202238min

Steve Smith: Domain-Driven Design and Architecture - Episode 209

Steve Smith: Domain-Driven Design and Architecture - Episode 209

Steve works with companies that want to avoid the trap of technical debt by helping their teams deliver quality software quickly. Steve and his team at NimblePros have been described by clients as a "force multiplier," amplifying the value of existing development teams. Steve's client list includes Microsoft, Quicken Loans, Celina Insurance, and many other satisfied customers. And he also offers career coaching to developers through Dev better.com. Topics of Discussion: [3:20] What is onion architecture? [4:07] Steve discusses Domain-Driven design. [5:15] Domain-Driven Design is all about how to take big complicated problems in software, and break them up into smaller pieces that we as developers can isolate, think about, design, test, and then construct together in a modular fashion with other pieces. [6:00] The key concepts of Domain-Driven Design. [9:13] How and why DDD came about. [12:28] Why Steve thinks about it in terms of having a bounded context per application that you deploy. [16:33] Historical records of things should always be duplicate data. There should be a snapshot of the data at that time. [17:06] Where should people begin if/when they are new to the book? [17:54] What exactly is clean architecture? [23:01] Steven talks about having one infrastructure project where there are all these dependencies versus multiple. [24:09] Steve names the three main projects. [30:49] Very mature and high-stakes professions have chosen to put constraints on themselves, and with positive effect. How can we take this into architecture and design? Mentioned in this Episode: Architect Tips — New video podcast! Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's YouTube Jeffrey Palermo's Twitter — Follow to stay informed about future events! Programming with Palermo programming@palermo.net devBetter NimblePros Ardalis Domain-Driven Design Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

5 Sep 202235min

Mathias Brandewinder: Math and Machine Learning using .NET - Episode 208

Mathias Brandewinder: Math and Machine Learning using .NET - Episode 208

Mathias Brandewinder enjoys solving challenging business problems with software engineering and applied mathematics techniques, and some creativity. His current focus is on functional programming with F#, machine learning, and data science, and on putting them together to help companies make smarter decisions with their data. He loves teaching and mentoring, and is a regular speaker at conferences and community events all over the world. A former Microsoft F# MVP, he holds an MS in Operations Research from Stanford, an MS in Economics from University of Paris X, and an MBA from ESSEC. Topics of Discussion: [3:15] Mathias talks about how his love of math got him into programming. [5:57] Mathias discusses what intrigued him about F# and the scripting environment. [6:29] What about when a computer's version of a number doesn't really line up with the math version of a number? [11:51] What issues does F# help more than C#? [15:22] What is Mathias's favorite charting component for .NET? [18:27] What inspired Mathias to write his book, Machine Learning Projects for .NET Developers, and is there a new book on the horizon? [20:09] Mathias is here to say math can be genuinely fun! [24:03] Jupiter appears to be an on-the-fly evaluator of code that runs on a server somewhere through the browser. [29:13] What other math-related libraries should we be aware of, and what are some other resources we can check out? Mentioned in this Episode: Architect Tips — New video podcast! Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's YouTube Jeffrey Palermo's Twitter — Follow to stay informed about future events! Programming with Palermo programming@palermo.net Mathias Brandewinder Website Mathias Brandewinder Bio mathias@brandewinder.com Five obscure charting tips with Plotly.NET Machine Learning Projects for .NET Developers DiffSharp Math.Net Numerics F# Get Started with OR-Tools for C# Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

29 Aug 202231min

Jeffrey Palermo: The Process of Architecture - Episode 207

Jeffrey Palermo: The Process of Architecture - Episode 207

This is a special episode. I wanted to interrupt our fabulous stream of expert guests to talk about a topic that I think needs to be talked about, and that is architecture. What is it? What should we think about it, and how do we approach the process of architecture? To derive the verb, how do we go about determining and implementing a fitting architecture? To architect. If you are in this role, what is it that you do? What thought progression do you use? I'll share some thoughts on that from 25-plus years of programming, and then I have a very special announcement at the end, so be sure to check that out. Topics of Discussion: [2:19] Architecture is the intersection of the process that we use for software and the structure we want the software to be. Right there in that intersection is where leadership is required. [4:22] What are the building blocks of architecture, and what is the progression from the smallest building block up to the most complex and large software system? [9:24] If you're creating a very, very small piece of software, you don't need much architecture. [11:08] Jeffrey breaks down the term "monolithic" and how it relates to code. [11:15] If monolithic is bad, isn't "polylithic" bad too? [15:18] What makes an application an application, and not just a library? An application is greater than a library because it has abstractions, and then it has configurations. [28:12] Special announcement: new video show is launched! Check out Programming with Palmero. Mentioned in this Episode: Architect Tips — New video podcast! Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's YouTube Jeffrey Palermo's Twitter — Follow to stay informed about future events! Programming with Palermo programming@palermo.net Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

22 Aug 202231min

Damian Brady: GitHub Actions - Episode 206

Damian Brady: GitHub Actions - Episode 206

Damian Brady is a Developer Advocate at GitHub. He's a developer, speaker, and author specializing in DevOps, MLOps, developer process, and software architecture. Formerly a Cloud Advocate at Microsoft for four years, and before that, a dev at Octopus Deploy and a Microsoft MVP, he has a 20-plus year background in software development and consulting in a broad range of industries. In Australia, he co-organized the Brisbane .Net User Group and launched the annual DDD Brisbane conference. Topics of Discussion: [2:45] How does Damian describe the landscape between Microsoft and GitHub? [4:12] What is it about automated development that jazzes Damian up? [5:57] Damian describes the lay of the land with GitHub Actions. [10:39] Does GitHub have a package repository? [14:19] For your build, you can keep them as just artifacts that are for that particular workflow, or you can create a package and put it into one of those package repositories for later retrieval. [14:25] Damian talks about the transition to deploying to the first pre-production environment in your chain. [19:12] What do the non-secret variables look like? [22:09] To what extent is there still overlap from Azure, and how does it deviate? [26:22] There are two options: there are actions that are in the marketplace, and then you can also run your own scripts. [30:10] Damian and his team are building around a pretty core experience where you have a project that you're deploying to multiple environments. [34:24] How is Octopus Deploy similar? How is it different? Mentioned in this Episode: Architect Tips — New video podcast! Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's YouTube Jeffrey Palermo's Twitter — Follow to stay informed about future events! Damian Brady On DevOps for Data Science and Machine Learning Chris Patterson on Github Actions Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.

15 Aug 202237min

Populärt inom Politik & nyheter

aftonbladet-krim
motiv
fordomspodden
p3-krim
rss-krimstad
blenda-2
rss-viva-fotboll
flashback-forever
aftonbladet-daily
svenska-fall
rss-sanning-konsekvens
rss-vad-fan-hande
rss-krimreportrarna
dagens-eko
rss-frandfors-horna
olyckan-inifran
rss-svalan-krim
krimmagasinet
rss-klubbland-en-podd-mest-om-frolunda
rss-flodet