Daniel Markham on Teaching Programmers - Episode 107


Manage episode 272536854 series 2446935
By Jeffrey Palermo. Discovered by Player FM and our community — copyright is owned by the publisher, not Player FM, and audio is streamed directly from their servers. Hit the Subscribe button to track updates in Player FM, or paste the feed URL into other podcast apps.

In this episode, Jeffrey Palermo is joined by Daniel Markham! Daniel is a semioticist logician (otherwise known as a programmer). He likes to help people learn to make better tech. He believes that once you know the ‘why,’ you can figure out the ‘what’ on your own.

As an active coder and manager, Daniel has spent time the last several years with clients as an Agile/XP Technical Coach, helping them rediscover how to discover and create value at speed. His clients include several Fortune 100 companies all over North America. He is also a technical coach and the author of Info-Ops and Info-Ops ll.

In their conversation today, David and Jeffrey discuss changes in technology, what modern training for programmers new to the industry should look like, and various trends. David shares about the importance of ‘good enough’ programming, measuring the quality of your work, what it really means to ‘finish,’ and how test-driven development should be done. He also discusses key insights around TDD and infrastructure, what should be accomplished at varying team sizes, patterns he has seen over the course of his career, and his predictions for the future of the industry.

Topics of Discussion:

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

[:46] About The Azure DevOps Podcast and Jeffrey’s offer to speak at virtual user groups.

[1:10] About today’s episode with Daniel Markham.

[1:45] Jeffrey welcomes Daniel to the podcast.

[2:17] Daniel tells the story of why he originally decided to get into programming.

[3:52] Daniel’s early experiences with programming.

[6:00] Daniel shares about his career and important lessons he has learned throughout.

[7:28] The importance of ‘good enough’ programming.

[9:34] Daniel speaks about another important practice: measuring the quality of your work.

[10:39] What does it mean to ‘finish’ and be able to walk away from a program?

[14:06] Who should be doing test-driven development (TDD) and why? How does Daniel view it as an engineering practice?

[15:25] A word from Azure DevOps Podcast’s sponsor: Clear Measure.

[15:57] Daniel’s key insights around the relationship between TDD and infrastructure.

[18:38] A rundown of EasyAM keywords and why they simplify the process.

[20:12] Understanding what’s necessary to achieve the goal and not accidentally adding too much scope.

[21:46] Daniel shares his views on what can or should be accomplished at varying team sizes.

[24:06] Daniel discusses taking a startup app to market.

[25:43] Daniel’s thoughts on how we should actually be teaching new programmers to the industry.

[26:19] If Daniel was putting together a programming school, what would his approach be?

[27:27] Talking Javascript.

[30:30] With so many changes in technology, what does Daniel predict we’ll see in the next 10 years?

[31:56] Talking WebAssembly and patterns Daniel has seen over the years.

[35:40] Talking Microsoft Orleans.

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

Daniel Markham on GitHub

Daniel Markham’s Twitter @DanielBMarkham

EasyAM on GitHub

Daniel Markham | Chessboard

Join the Daniel B. Markham Community on Locals

Microsoft Orleans - Virtual Actors

Leanpub | Info-Ops ll by Daniel Markham

Agile Coaches’ Corner Ep. 105: “Bob Martin on Agile and Extreme Programming”


Want to Learn More?

Visit AzureDevOps.Show for show notes and additional episodes.

137 episodes