seungwon

Make it work, make it right

Created: 2025-05-01

Updated: 2025-05-06

Created: 2025-05-01 09:53

Updated: 2025-05-06 19:45

This article aims to guide you towards becoming a "good" developer who can properly balance priorities within realistic constraints.good"

Make it work, make it right.

Software development involves the pressure of needing to deliver results "quickly" and the responsibility of building it "right".

Which value takes precedence? Is there no way to make it "quickly and perfectly"?How to make it quickly and perfectly?

"Make it work", in other words, "making it work first" is more important than you might think.
However, if you focus on perfect structure and optimal performance from the start, the implementation of the crucial business logic is often delayed.

"Duct Tape Programming"—quickly implementing core features, visually verifying, and obtaining feedback—most reliably shows us what the real problem is and what technical difficulties lie hidden. It's a process of paving the way amidst uncertainty.

However, stopping here only creates "working garbage".working garbage"Make it right",Make it right, in other words, "making it right" must follow.making it right

Once you have secured working code,working codeit's time to improve the internal structure.
This involves removing redundancies, enhancing readability, and making changes easier through refactoring.refactoring
This process reduces code maintenance costs and enables flexible adaptation to future requirements, creating sustainable code.sustainable code

"Make it work, make it right" is not simply a matter of sequence; it is a cyclical process and a balanced approach repeated throughout the development cycle.cyclical process and a balanced approach repeated throughout the development cycle

Sometimes, release speed is crucial, so more emphasis may be placed on "work" and sometimes the stability and scalability of the system are important, requiring more time to be invested in "right".workright

"Make it work, make it right" is a journey to find a balance between fast execution and code quality, and it is a key attitude of a "good" developer to create sustainable software within realistic constraints.fast executioncode qualitygoodsustainable software



Comments are disabled for this post.