Don't let the word "minimum" throw you off. This is not about cutting corners or taking shortcuts.
The ides behind a minimum viable product is to strip away everything that is not essential to the end goal of your project. For example, if your project's goal is to get your first customers, then we'll decide what are the most basic features that are required to make your product useful enough to pay for.
Half a product, not a half-baked product
We take a lot of inspiration from 37signals, the firm that arguably started the SaaS movement with their iconic Basecamp app. In their book "Getting Real", they argue that the inability to pare a project down to its essential features is the primary reason why most software projects fail to meet budget and schedule goals.
Beware of the "everything but the kitchen sink" approach to web app development. Throw in every decent idea that comes along and you'll just wind up with a half-assed version of your product. What you really want to do is build half a product that kicks ass. Stick to what's truly essential.
Good ideas can be tabled. Take whatever you think your product should be and cut it in half. Pare features down until you're left with only the most essential ones. Then do it again.
This is far from being a frivolous exercise in minimalism. Paring the scope of your project down in this way minimizes waste—wasted time, wasted money—and consequently reduces your risk.
By reducing waste we increase turnaround time and make it possible to deliver your project faster. Which then, in turn, allows us to move on to what's next. Whether that's adding features, making changes to better target your audience, or refining the user interface, we can move on to the next phase of the project with the confidence that we are making meaningful progress toward your goal.