It's lazy thinking to decide to throw away an MVP outright. It's more sensible to decide which pieces are fine the way they are, and which pieces need to be refactored or rewritten, and to do so as the opportunities arise.
In particular, you're setting yourself up for failure if you're building a product knowing that you're going to throw it away-- you'll make poor choices that will stick with you for longer than you expect. Besides that, rewrites are risky for a business; they are often never completed since requirements and scope are constantly changing.
I totally disagree with this post as well. I agree that decoupling the backend API from the front-end makes sense from a maintenance perspective but that's all I agree with in this article. I'd assume this is the default behavior for most developers.
However there's no way that I'm going to build something so crappy that I want to toss the entire thing out. I've decided to completely reprogram a system after realizing the first approach was the wrong way to do things, but that's different than deciding to toss your first product out the door from the get go. I gotta agree with smilliken, you're going to write bad code if you know it's going to be thrown out the window.
Comments
It's lazy thinking to decide to throw away an MVP outright. It's more sensible to decide which pieces are fine the way they are, and which pieces need to be refactored or rewritten, and to do so as the opportunities arise.
In particular, you're setting yourself up for failure if you're building a product knowing that you're going to throw it away-- you'll make poor choices that will stick with you for longer than you expect. Besides that, rewrites are risky for a business; they are often never completed since requirements and scope are constantly changing.
I totally disagree with this post as well. I agree that decoupling the backend API from the front-end makes sense from a maintenance perspective but that's all I agree with in this article. I'd assume this is the default behavior for most developers.
However there's no way that I'm going to build something so crappy that I want to toss the entire thing out. I've decided to completely reprogram a system after realizing the first approach was the wrong way to do things, but that's different than deciding to toss your first product out the door from the get go. I gotta agree with smilliken, you're going to write bad code if you know it's going to be thrown out the window.