Architectures for 2021 and Beyond - Episode 125

In this episode, your host Jeffrey Palermo is sharing his top list of the architectures you should be paying attention to in 2021 and beyond.

The software development world is changing at a faster rate every year. As we look back, there are architectures, infrastructure, and patterns that have often turned out to be nothing more than fads or distractions in hindsight — resulting in lost productivity, dead ends, and broken promises. To avoid this in 2021, Jeffrey is reviewing a survey of modern architectures that are sure to have staying power in 2021 and beyond.

Get ready to tune in and take some notes!

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:25] Clear Measure is hiring! Be sure to check out the link in the show notes.

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

[1:57] About today's episode.

[2:39] The different levels of architecture patterns and why it is important to know them.

[4:46] At the infrastructure level, this is the pattern to pay attention to: serverless architecture.

[8:03] At the system level, this is one of three patterns you should be paying attention to: domain-driven design.

[10:48] Also at the system level, you should pay attention to: microservices.

[12:35] Discussing the two different major architectures that distributed architectures generally come down to: event-driven and web services.

[16:27] Jumping down to the application level, Jeffrey begins highlighting the four must-know architecture patterns to be paying attention to, starting with: MVC and MVVM.

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

[20:17] Next on the application level, Jeffrey highlights: onion architecture and layered architecture.

[23:01] Next on the application level: CQRS vs. structured programming.

[25:24] Last on the application level: onion DevOps architecture.

[28:46] At the layer level, Jeffrey highlights several must-have patterns, starting with: the adapter pattern.

[30:45] Next on the layer level: mediator and chain responsibility.

[31:34] The overall family pattern that mediator and chain responsibility are a part of: hub-and-spoke.

[34:10] Lastly on the layer level: observer.

[36:21] For different design patterns you will want to know how to describe them and be able to create diagrams. Jeffrey recommends PlantUML for this.

[37:56] At the code level, Jeffrey highlights: generic code patterns, functional programming style, and object-oriented logging.

[38:38] Jeffrey closes out this week's episode.

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

Design Patterns: Elements of Reusable Object-Oriented Software, by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides

Domain-Driven Design: Tackling Complexity in the Heart of Software, by Eric Evans

DevOps Environment Poster PDF

PlantUML

Want to Learn More?

Visit AzureDevOps.Show for show notes and additional episodes.


Download this episode (MP3, 39:27, 37.9 MB)

Watch this episode on YouTube

This episode on the AI DevOps Podcast site

Charles Flatt on Learning as a Developer - Episode 124

Charles Flatt is joining the podcast today! He has been a software developer since 1994 and has helped over a dozen organizations succeed on over fifty projects, both small and large. Charles has an unusual breadth of business and personal experience from foodservice and retail to music, business management, hardware installation, and of course, software development.

In this episode, Charles talks about his learning as a developer and some of his successes, big lessons, and key takeaways from the course of his career. He shares actionable advice for developers, teams, and organizations on how to improve; his favorite resources and books for further learning; the metrics that matter the most; and what he sees as being the key components of what makes a DevOps organization successful.

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:24] Clear Measure is hiring! Be sure to check out the link in the show notes.

[1:34] About today's guest, Charles Flatt!

[1:57] Jeffrey welcomes Charles to the podcast.

[2:34] Charles shares his career journey before software development and how he began his career in software.

[6:49] Charles speaks about where he has worked and what he has been working on in the last decade.

[11:48] Charles shares some of the big lessons and key takeaways from the course of working on over fifty projects in software development.

[18:21] Charles and Jeffrey discuss their favorite books on DevOps and give their recommendations on what you should be reading as a developer today.

[20:50] A word from Azure DevOps Podcast's sponsor: Clear Measure.

[21:22] What Charles sees as needing to change within an organization in order to become more successful.

[23:01] Charles gives some actionable advice on how to begin improving as a developer, as a team, and as an organization.

[28:06] Charles and Jeffrey discuss the metrics that matter the most.

[29:18] Jeffrey and Charles discuss the importance of continuous integration and what it really means to do continuous integration.

[32:32] Charles recommends some go-to resources to check out after today's podcast!

[34:33] Jeffrey thanks Charles for joining the podcast!

Mentioned in this Episode:

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

Charles Flatt's LinkedIn

Azure DevOps Podcast Ep. 33: "Rockford Lhotka on Software Architecture"

Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations, by Nicole Forsgren PhD

The Phoenix Project (A Novel About IT, DevOps, and Helping Your Business Win), by Gene Kim

The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations, by Gene Kim, Patrick Debois, John Willis, and Jez Humble

Continuous Integration: Improving Software Quality and Reducing Risk, by Paul M. Duvall, Steve Matyas, and Andrew Glover

Good Habits, Bad Habits: The Science of Making Positive Changes That Stick, by Wendy Wood

Measure What Matters: How Google, Bono, and the Gates Foundation Rock the World with OKRs, by John Doerr

Want to Learn More?

Visit AzureDevOps.Show for show notes and additional episodes.


Download this episode (MP3, 35:13, 33.8 MB)

Watch this episode on YouTube

This episode on the AI DevOps Podcast site

Jérôme Laban on Multi-Platform DevOps - Episode 123

This week, Jeffrey is joined by Jérôme Laban, CTO of the open-source Uno Platform, and a 4x recipient of the Microsoft MVP award.

The Uno Platform is a framework that aims to improve the development cycle of cross-platform apps using Windows, iOS, Android, and WebAssembly using Mono and Xamarin. It is also Open Source (Apache 2.0) and available on GitHub.

In this conversation, Jérôme shares their DevOps success story and all of the thought that went into creating a complete DevOps environment for a platform that targets a multitude of computing environments. He also shares details of its creation, what developers should know about it, gives advice, and shares invaluable resources.

Topics of Discussion:

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

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

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

[1:33] About today's guest, Jérôme Laban!

[1:49] Jeffrey welcomes Jérôme to the podcast.

[1:58] About Jérôme's career background and what has led him to become the CTO of the Uno Platform.

[4:03] Regarding the Uno Platform, what should people be looking for now vs. what they should be looking for in the future for cross-platform and mobile development?

[8:00] Jérôme walks listeners through the creation of the Uno Platform.

[13:44] Jérôme elaborates on the design of the Uno Platform and the branching strategy that they put in place at the front-end.

[15:08] The Uno Platform has enabled automated builds upon pull request creation. How many tests are they able to fit into that and what duration does that pull request build take on the feature branch?

[16:28] Is there a short cycle build for smaller issues such as a spelling error?

[17:41] Jérôme explains what happens in the environment after the pull request is accepted and merges into master.

[20:25] A word from Azure DevOps Podcast's sponsor: Clear Measure.

[20:56] Do you fully deploy to target platforms on the pull request build process?

[22:08] Jérôme discusses Calculator.Platform.Uno.

[24:11] Jérôme received the codebase for the calculator from the Windows team. Did he also receive the test cases for it as well? And did those port over?

[25:28] With Uno, will WinForms applications and WPF desktop applications just be able to be "slid" into WebAssembly and URL launched?

[27:09] With Uno, how many different types of test frameworks are there and what are they?

[30:24] Is the state-of-the-art for web still Selenium? What about mobile?

[31:05] Does the Xamarin UI test cover Android and iOS?

[31:13] What would you use for UI testing for WebAssembly?

[32:38] If people are interested in this cross-platform UI testing do they need to use Uno Platform?

[33:33] For developers that are developing new applications now, what technologies and frameworks should they be investing in and which should they be letting go as we look ahead into the future?

[36:13] Jeffrey thanks Jérôme for joining the podcast.

[36:45] Where to get in touch with Jérôme and learn more about the Uno Platform.

Mentioned in this Episode:

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

Uno Platform

Uno Platform Discord Community

@UnoPlatform on Twitter

Jérôme Laban's Twitter @jlaban

Jérôme Laban's Blog

Blazor

.NET 5.0

NuGet

Xamarin

Calculator.Platform.Uno

Selenium

GitVersion

Mergify

Want to Learn More?

Visit AzureDevOps.Show for show notes and additional episodes.


Download this episode (MP3, 37:40, 36.2 MB)

Watch this episode on YouTube

This episode on the AI DevOps Podcast site

Sam Nasr on SQL Server for Developers - Episode 122

In this episode, Jeffrey is excited to be joined by his guest, Sam Nasr! Sam is an IT Consultant and a Sr. Software Engineer with a deep focus on the Microsoft stack of technologies (.Net, SQL Server, Azure). In his role of 12+ years at NIS Technologies, Sam provides consulting services, training, and custom app development to help bring more value to business applications. He is also incredibly passionate about giving back to the community and speaks at many events, conferences, and user groups; writes articles; and is always keeping on top of new technologies. He also serves as a leader at the Cleveland C#/VB .NET user group.

Together, Jeffrey and Sam discuss the ins and outs of SQL Server for developers, highlight the current state-of-the-art practices, what it looks like in 2020 to build a SQL Server database, and the go-to resources you should be looking at.

Topics of Discussion:

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

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

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

[1:39] About today's guest, Sam Nasr!

[2:13] Jeffrey welcomes Sam to the podcast.

[2:19] Sam shares some career highlights and speaks about his current role.

[3:46] Sam shares his philosophy on teaching and learning.

[7:34] Sam's mindset around SQL Server for developers and a brief history of it.

[10:44] Sam elaborates on the ins and outs of building on SQL Server.

[14:20] Can you do file tables through Entity Framework?

[15:12] Sam explains another cool feature of SQL Server: temporal tables.

[17:00] A word from Azure DevOps Podcast's sponsor: Clear Measure.

[17:32] Are temporal tables suited for time-based analytical queries?

[19:42] What do you need to do to get the temporal features added on?

[20:46] Sam speaks about one of his favorite conferences: SQLSaturday!

[22:18] The current state-of-the-art practices that Sam is employing for building the database, testing the database, and deploying changes.

[24:12] What does it mean in 2020 to build a SQL Server database?

[26:34] There's a lot of choices to make when it comes to databases. Sam shares his insights on these choices, the NoSQL movement, and what developers should be looking at and considering.

[29:54] Jeffrey and Sam shares some final words on the benefits and ease-of-use of SQL Server.

[32:17] Jeffrey thanks Sam for joining the podcast and Sam shares some go-to resources to check out after the show!

Mentioned in this Episode:

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

Sam Nasr's LinkedIn

Sam Nasr's GitHub

NIS Technologies

SQL Server

T-SQL

Entity Framework

SQL Azure

SQLSaturday

Entity Framework Code-First

MongoDB

Azure Cosmos DB

Meetup.com

Want to Learn More?

Visit AzureDevOps.Show for show notes and additional episodes.


Download this episode (MP3, 34:21, 33.0 MB)

Watch this episode on YouTube

This episode on the AI DevOps Podcast site