Coding Blocks

It’s our favorite time of year where we discuss all of the new ways we can spend our money in time for the holidays, as Allen forgets a crucial part, Michael has “neons”, and Joe has a pet bear.

Reading this via your podcast player? If so, you can find this episode’s full show notes at https://www.codingblocks.net/episode144, where you can join the conversation.

Sponsors

  • Datadog – Sign up today for a free 14 day trial and get a free Datadog t-shirt after your first dashboard.
  • Teamistry – A podcast that tells the stories of teams who work together in new and unexpected ways, to achieve remarkable things.

Survey Says

Which do you want the most?

Take the survey at: https://www.codingblocks.net/episode144.

News

  • Thank you for the latest new review!
    • Stitcher: wsha

And I’m Spent

Allen’s List for the Content Creators

Price Description  
$149.99 Elgato Stream Deck (Amazon)
$69.99 TDisplay Capture Card (Amazon)
$329.00 Oktava MK-012 Small Diaphragm Condenser mic (Amazon)
$199.99 Zoom Podtrak P4 (Best Buy)
$7.00 Oktava WS-012 foam Wind-Screen for MK-012 (Amazon)
$16.99 LYRCRO Microphone Shock Mount Holder (Amazon)
$274.99 product (TechSmith)
$26.99 Kasa Smart Plugs 4 Pack (Amazon)
$14.99 3 prong extension cables 1′ (Amazon)
$29.99 Toazoe Articulating 11″ Arm (Amazon)
$12.99 Mounting pole (Amazon)
$14.99 Desk mounting bracket for pole (Amazon)
$199.99 Elgato Key Light (Amazon)
$90.00 Aputure Amaran MC RGBWW (Amazon)
$186.20 Silverstone ATX CS380B (Amazon)
$139.99 Ryzen 5 3400G (Amazon)
$99.99 Silicon Power 32GB 3200Mhz (Amazon)
$217.99 WD Easy Store 12TB (Amazon)
$44.99 Thermaltake 500w 80+ (Amazon)
$365.00 ZSA Moonlander (ZSA)



Michael’s List to Pimp Your Desk

  Description Price
Apple iPad Pro (12.9-inch, WiFi, 256GB) (Amazon) $1,079.00
amFilm (2 Pack) Glass Screen Protector for iPad Pro 12.9 inch (2020 & 2018 Models) (Amazon) $12.99
ProCase iPad Pro 12.9 Case 4th Generation 2020 & 2018 (Amazon) $21.99
Apple AirPods with Charging Case (Wired) (Amazon) $129.00
Honorable mention: Apple AirPods Pro (Amazon) $219.00
Philips Hue 555334 BLE Lightstrip LED Light strip, 2m / 6ft Base Kit (Amazon) $79.99
Philips Hue Indoor Motion Sensor for Smart Lights (Amazon) $38.95
Elgato Stream Deck (15 Keys) (Amazon) $149.99
Knox Microphone Shock Mount for Audio-Technica ATR2100-USB and Samson Q2U (Amazon) $19.99
On-Stage Foam Ball-Type Microphone Windscreen (Amazon) $2.99
ZSA Moonlander (ZSA) $365.00
Glorious 3XL Extended Gaming Mouse Mat/Pad (Amazon) $49.99
Razer Gaming Mouse Bungee v2 (Amazon) $19.99
ALIENWARE AW3420DW Curved 34 Inch WQHD 3440 X 1440 120Hz Monitor (Amazon) $1,029.99
Honorable mention:Dell AW3418DW Alienware 34 Curved Gaming Monitor (Amazon) n/a
Microsoft Xbox Series X (Amazon) $499.99



Castle Grayskull …

  Description Price
Tilted Nation RGB Headset Stand and Gaming Headphone Display with Mouse Bungee Cord Holder with USB 3.0 HUB (Amazon) n/a



Joe’s List to Make Bank

Well, first there’s *the* chair …

Price Description  
$3,299.00 Cluvens Scorpion Computer Cockpit (Cluvens)



  • Flippa – Buy an online business, become an acquisition entrepreneur, and invest in digital real estate.
  • Start Engine – Invest and buy shares in startups and small businesses.
  • (DEFUNCT) Gratipay – An open source startup helping open source projects.
  • Liberapay – A recurrent donations platform. Fund the creators and projects you appreciate.
  • Wefunder – Back founders solving the problems you care about and help their startups grow.
  • Crowdfunder – Where entrepreneurs and investors meet.
  • Fundrise – The future of real estate investing.
  • Localstake – Connecting businesses and local investors.
  • SeedInvest – Own a piece of your favorite startups.

Resources We Like

  • Indoor Boom Microphones: Oktava MK-012, RODE NT5, Audio Technica AT4053b (YouTube)
  • The Aputure MC Video LED Light is Amazing! (YouTube)

Tip of the Week

  • The Docker image for Google Cloud SDK is the easiest way to interact with the Google cloud. (hub.docker.com)
  • Play Hades. Play it now. (Steam)
  • Use git log --reverse to see the repo history from the beginning. (git-scm.com)
Direct download: coding-blocks-episode-144.mp3
Category:Software Development -- posted at: 9:09pm EDT

We dive into the benefits of enabling daily learning into our processes, while it's egregiously late for Joe, Michael's impersonation is awful, and Allen's speech is degrading.

This episode’s show notes can be found at https://www.codingblocks.net/episode143, for those reading this via their podcast player, where you can join the conversation.

Sponsors

  • Datadog – Sign up today for a free 14 day trial and get a free Datadog t-shirt after your first dashboard.
  • Teamistry – A podcast that tells the stories of teams who work together in new and unexpected ways, to achieve remarkable things.

Survey Says

How often do you change jobs?

Take the survey at: https://www.codingblocks.net/episode143.

News

  • Thank you to everyone that left us a new review!
    • iTunes: John Roland, Shefodorf, DevCT, Flemon001, ryanjcaldwell, Aceium
    • Stitcher: Helia
  • Allen saves your butt with his latest chair review on YouTube.

Enable and Inject Learning into Daily Work

  • To work on complex systems effectively and safely we must get good at:
    • Detecting problems,
    • Solving problems, and
    • Multiplying the effects by sharing the solutions within the organization.
  • The key is treating failures as an opportunity to learn rather than an opportunity to punish.

Establish a Just, Learning Culture

  • By promoting a culture where errors are “just” it encourages learning ways to remove and prevent those errors.
  • On the contrary, an “unjust” culture, promotes bureaucracy, evasion, and self-protection.
    • This is how most companies and management work, i.e. put processes in place to prevent and eliminate the possibility of errors.
  • Rather than blaming individuals, take moments when things go wrong as an opportunity to learn and improve the systems that will inevitably have problems.
    • Not only does this improve the organization’s systems, it also strengthens relationships between team members.
  • When developers do cause an error and are encouraged to share the details of the errors and how to fix them, it ultimately benefits everyone as the fear of consequences are lowered and solutions on ensuring that particular problem isn’t encountered again increase.

Blameless Post Mortem

  • Create timelines and collect details from many perspectives.
  • Empower engineers to provide details of how they may have contributed to the failures.
  • Encourage those who did make the mistakes to share those with the organization and how to avoid those mistakes in the future.
  • Don’t dwell on hindsight, i.e. the coulda, woulda, and shoulda comments.
  • Propose countermeasures to ensure similar failures don’t occur in the future and schedule a date to complete those countermeasures.

Stakeholders that should be present at these meetings

  • People who were a part of making the decisions that caused the problem.
  • People who found the problem.
  • People who responded to the problem.
  • People who diagnosed the problem.
  • People who were affected by the problem.
  • Anyone who might want to attend the meeting.

The meeting

  • Must be rigorous about recording the details during the process of finding, diagnosing, and fixing, etc.
  • Disallow phrases like “could have” or “should have” because they are counterproductive.
  • Reserve enough time to brainstorm countermeasures to implement.
    • These must be prioritized and given a timeline for implementation.
  • Publish the learnings and timelines, etc. from the meeting so the entire organization can gain from them.

Finding more Failures as Time Moves on

  • As you get better at resolving egregious errors, the errors become more subtle and you need to modify your tolerances to find weaker signals indicating errors.
  • Treat applications as experiments where everything is analyzed, rather than stringent compliance and standardization.

Redefine Failure and Encourage Calculated Risk Taking

  • Create a culture where people are comfortable with surfacing and learning from failures.
  • It seems counter-intuitive, but by allowing more failures this also means that you’re moving the ball forward.

Inject Production Failures

  • The purpose is to make sure failures can happen in controlled ways.
    • We should think about making our systems crash in a way that keeps the key components protected as much as possible i.e. graceful degradation.

Use Game Days to Rehearse Failures

“A service is not really tested until we break it in production.”

Jesse Robbins
  • Introduce large-scale fault injection across your critical systems.
  • These gamedays are scheduled with a goal, like maybe losing connectivity to a data center.
    • This gives everyone time to prepare for what would need to be done to make sure the system still functions, failovers, monitoring, etc.
    • Take notes of anything that goes wrong, find, fix, and retest.
  • On gameday, force an outage.
    • This exposes things you may have missed, not anticipated, etc.
    • Obviously the goal is to create more resilient systems.

Resources We Like

  • The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations (Amazon)
  • The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win (Amazon)
  • The Unicorn Project: A Novel about Developers, Digital Disruption, and Thriving in the Age of Data (Amazon)
  • Netflix Chaos Monkey (GitHub)
  • Chaos Mesh, a cloud-native platform that orchestrates chaos on Kubernetes environments. (GitHub)
  • Alexey Golub’s Twitter response (thread) to our discussion of his article Unit Testing is Overrated during episode 141.
  • Esty’s post mortem tracker: morgue (GitHub)
  • 1987 Crash Test Dummies PSA – Buckle Up (YouTube)

Tip of the Week

  • Firefox Relay – Hide your real email address to help protect your identity (relay.firefox.com)
  • How I Built this with Guy Raz – Khan Academy: Sal Khan (NPR)
  • Automate your world at the push of a button with the Elgato Stream Deck. (Elgato)
  • /the social dilemma – A hybrid documentary-drama that explores the dangerous human impact of social networking. (Netflix)
  • Migrate your repos from TFVC (aka Team Foundation Version Control) to Git using git-tfs. (GitHub)
  • What’s the difference between git-tf and git-tfs? (Stack Overflow)
Direct download: coding-blocks-episode-143.mp3
Category:Software Development -- posted at: 8:01pm EDT

1