Beneath any modern software project lies a vast, invisible effort. The typical user sees only the the tip of an enormous iceberg.
Seemingly-simple ideas can take longer to implement than one would expect. Pushing an application into production requires many crucial decisions in disciplines ranging from systems design to engineering to security to performance management.
It takes balance and maturity to face the realities of internet projects without delusion. Over-zealous belief in the market potential of an idea combined with the notion that one can get to market more rapidly than is humanly possible is a recipe for disaster. Discipline, patience and time are the great levelers.