Log in

goodpods headphones icon

To access all our features

Open the Goodpods app
Close icon
iteration - Refactoring Wrap Up & Summary

Refactoring Wrap Up & Summary

Explicit content warning

07/15/19 • 35 min

iteration

Iteration Podcast S06E08

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

Work Stuff

  • Work / Life separation
  • Playing a lot with Vue JS - did an implementation on top of rails and loved it.
  • Rivets JS
  • Pre-built Sketch UI components (https://craftwork.design/)
  • Refactoring UI (https://refactoringui.com/)
  • Breaking things up! Learning more about technical design patterns.

Summary of "Refactoring"

  • The Two Hats - Divide time between adding functionality and refactoring.
  • Lots of Nested Functions read like a story
  • Refactoring and performance
  • Bad Smells
  • Catalog of refactors / Catalog of patterns
    • Patterns of Enterprise Application Architecture
    • Decorator / Presenters (Displays Stuff)
    • Query Objects (Looks for stuff)
    • Service Objects (Does stuff)
    • Gateway Object (Defines access)
    • Mapper Object (Pricing Package) that associates customer lease and asset

Picks:

  • Send later in Gmail
  • Time Timer
  • Angeles Crest Highway

Things mentioned
Craftwork design https://craftwork.design/

  • Rivests JS
  • Vue JS
plus icon
bookmark

Iteration Podcast S06E08

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

Work Stuff

  • Work / Life separation
  • Playing a lot with Vue JS - did an implementation on top of rails and loved it.
  • Rivets JS
  • Pre-built Sketch UI components (https://craftwork.design/)
  • Refactoring UI (https://refactoringui.com/)
  • Breaking things up! Learning more about technical design patterns.

Summary of "Refactoring"

  • The Two Hats - Divide time between adding functionality and refactoring.
  • Lots of Nested Functions read like a story
  • Refactoring and performance
  • Bad Smells
  • Catalog of refactors / Catalog of patterns
    • Patterns of Enterprise Application Architecture
    • Decorator / Presenters (Displays Stuff)
    • Query Objects (Looks for stuff)
    • Service Objects (Does stuff)
    • Gateway Object (Defines access)
    • Mapper Object (Pricing Package) that associates customer lease and asset

Picks:

  • Send later in Gmail
  • Time Timer
  • Angeles Crest Highway

Things mentioned
Craftwork design https://craftwork.design/

  • Rivests JS
  • Vue JS

Previous Episode

undefined - Building Tests

Building Tests

Chapter 4 - Building Tests

To do refactoring properly, I need a solid suite of tests to spot my inevitable mistakes.

The Value of Self-Testing Code

  • make sure all tests are fully automatic and that they check their own results
  • a suite of tests is a powerful bug detector that decapitates the time it takes to find bugs

If you want to refactor, you have to write tests

A First Test

  • simplicity of feedback from tests. just dots
  • personally like verbose test output

Add Another Test

Testing should be risk driven; remember, I'm trying to find bugs, now or in the future. Therefore I don't test accessor methods that just read and write a field. They are so simple that I'm not likely to find a bug there.

My focus is to test areas that I'm most worried about going wrong.

Probing the Boundaries

  • Seeing what happens when things go wrong

Whenever I have a collection of something, ... I like to see what happens when it's empty

  • What happens when negative numbers are passed to a function that expects positive numbers? Division by zero?
    How do you probe boundaries?

Much More Than This

When you get a bug report, start by writing a unit test that exposes the bug


Picks

  • JP: Taking time off

Next Episode

undefined - Career Development Roundtable: Getting Great Work in Tech

Career Development Roundtable: Getting Great Work in Tech

Iteration Season 06E09 - Release July 22nd 2019

A weekly podcast about programming, development, and design through the lens of amazing books, chapter-by-chapter.
Roundtable: Getting a Job in Tech

Between books - Discussion about career development in tech

Guest: John Rivera - Link?

John S to lead discussion -
Where do you work now? What do you do?
John S: Run an agency, we are a small team of remote developers, we do mobile apps and web apps.
John R: Just started working on Amazon photos mobile app for the prints feature team, I do cross-platform mobile development primarily using React Native. But I’ve also gotten to do my fair share of project management with ChefSteps, and am seeking to pursue that at Amazon
JP: Opendoor
Where did you start? Where were you before tech?
5mins each on origin story
John S: Dabbled in design + web for ever — I was working in the corporate world a job I didn’t love but I was successful. Stepped back and switched careers at November 2015 - switched career at 25
John R: I worked at uhaul and albertsons as a meat clerk. Started things off by saving up for a bootcamp. Did freelance.
JP: MySpace layouts in 9th grade, 13-14 years ago. Then web design until about 2015
What’s been a key practice or tool in moving your career forward?
John R: Networking, Diving deep, embracing things that aren’t in my domain
John S: Consistency, Keeping up with friendships (networking), Blogging, pushing outside comfort zone.
How do you balance getting work done now vs ongoing learning?
John S: Use new tools and techniques in the day to day
John R:
JP: Being proactive with code review and looking to senior engineers
How do you get a good Job in tech?
John S: Network, publishing, making your work visible, random blog post from 2016
John R:
JP: I got my job from meetups

What would you have told yourself 3 years ago?
John S: Consistency, life is a marathon not a sprint. Keep stretching yourself outside comfort zone. Focus on less, go deeper on less things.
John R:
JP: Take breaks, you won’t forget how to code if you take a day off

CLOSE - no picks

John R - Where can people find you?

Episode Comments

Generate a badge

Get a badge for your website that links back to this episode

Select type & size
Open dropdown icon
share badge image

<a href="https://goodpods.com/podcasts/iteration-225636/refactoring-wrap-up-and-summary-25584497"> <img src="https://storage.googleapis.com/goodpods-images-bucket/badges/generic-badge-1.svg" alt="listen to refactoring wrap up & summary on goodpods" style="width: 225px" /> </a>

Copy