Crafting Code Podcast

~/podcast

$ cd episodes/003-two-conversations-pass-in-the-night

~/podcast/episodes/003-two-conversations-pass-in-the-night $ ls -1a
. .. episode-summary.txt get-mp3.sh
~/podcast/episodes $ cat episode-summary.txt

Coding is a specialized skill where we learn to communicate with a machine. Unfortunately, this can often blind us to the fact that crafting code involves a lot of communication with humans. Writing clean, expressive code communicates with other coders. Communicating well with non-coders helps us understand business needs so we can write the right code.

Timestamps

[00:00:00] Host introductions. Writing code for humans.

[00:08:08] Why is naming things so hard? Don't tell lies in the code.

[00:13:32] Clean code in practical terms. Communicating intent. Understanding why code was written that way.

[00:17:45] Skiing metaphor: are there black diamond codebases? Don't be the abominable snowman.

[00:24:49] How do we effectively communicate between "engineering" and "the business?"

[00:30:20] Using concepts from Domain Driven Design: ubiquitous language and the bounded context.

[00:39:30] Being on the same page with your terminology can help you go fast. Learn how to articulate the concepts of code so you can "do the thing."

[00:45:51] Saying yes, no, and giving estimates. What did the other person think you just agreed to?

[00:51:52] A whiteboard is a great tool for communicating an architectural vision. Hands-on exercises reinforce fast feedback.

[00:59:04] Focus on what brings customer value; they don't care about the technology you used to build it. Don't let the technique or tech eclipse the business value.

[01:05:20] Outro

Books mentioned during this episode: Articles referenced: ~/podcast $ cat copyright.txt

Copyright © 2022 - Crafting Code Podcast