iteration cover image

iteration

Principles in Refactoring

Apr 1, 2019
42:51

Chapter 2 Principles in Refactoring

A weekly podcast about programming, development, and design through the lens of amazing books, chapter-by-chapter.

  • Define Refactoring
  • “If someone says their code is broken for a couple days while they are refactoring =, you can be pretty sure they aren’t refactoring.
  • Adding Features Vs Refactoring

Why should we refactor?

  • Code rot - overtime the code decays - rushed or poorly executed changes
  • Regular refactoring helps keep things in shape
  • Makes things easier to understand
  • (Delegating issues in clean codebase vs rough)
  • Refactoring helps find bugs
  • Refactoring helps us work faster long term - cleaning your workspace
  • Over time adding new features is easier

Getting buy in for refactors:

  • Don’t tell your manager / client
  • Build it into your estimates
  • You are being paid for your expertise
  • be confident in somewhat hiding the implementation. (Depends on your role)

When to refactor:

  • Prepatory Refactoring
  • Comprehension refactoring
  • Long term refactor - Ech small change leaves everything is a still working state, not just “up to date”
  • In code reviews

When to not refactor:

  • If the code is working fine and it doesn’t need to be changed
  • If it works like an API
  • When it will slow down an essential new feature.

Legacy Code


Refactoring Tools for future episodes?

  • Writing Ruby Gems
  • Renovate Bot

Picks

  • JP: Free Event Tickets
  • John: Eero wifi router

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode