Skip to main content

From OpenJS World 2023: To Rewrite, or Not to Rewrite, That Is the Question – Bryan Hughes

Talk from Bryan Hughes, Staff Software Engineer, Patreon at OpenJS World 2023 in Vancouver, Canada, May 10-12.

We all know those OSS codebases; old, brittle, and getting in the way of adding new features and onboarding new collaborators. “I know!” you think, “Let’s rewrite this using shiny new tech! It’ll solve all our problems!” Sometimes rewriting is the best option, and sometimes it’s not. Even when it is, successfully rewriting a codebase is quite difficult in practice. Based on personal experience, in his talk, Bryan walks through the planning and implementation process to actually finish that long-desired rewrite.

Bryan covers key topics such as decomposing the codebase, different types of rewrites (full rewrite, partial rewrite, heavy refactor, light refactor), project planning, implementation, and the broader impact of rewriting code to benefit others. The presentation concludes with a gratitude message and a Q&A session.

Full talk available here: To Rewrite, or Not to Rewrite, That Is the Question

Bryan’s slide deck is available here.

Main Sections

0:00 Introduction

1:38 Decomposing in December 2014

3:47 A taxonomy of rewrites

5:35 Full rewrite

7:17 Partial rewrite

8:17 Heavy refactor

9:12 Light refactor

9:49 Define the problem

13:05 Determine constraints

17:16 Project planning 

21:47 Implementation

25:22 Release

33:05 The big picture 

36:35 Rewrite to serve others

37:15 Thank you and Q&A

OpenJS Resources

About the OpenJS Foundation

Join the OpenJS Foundation

Follow Us on Social