> How dare you assume that your competitors have the time and skill to copy you.<p>Unfortunately your competitors don't need your skills to copy you; once you make your thing public, everybody will see how to do it and copying your product becomes trivial. But the good part is that only successful projects are copied, so you really shouldn't worry about it -- when people start copying you, it means you are on the right track.
Compressing all the questions into one: "How dare you want to be a web developer instead of being a businessman?"<p>Well, being a businessman sometimes makes sense.<p>But usually I deliberately pick being an engineer and <i>not</i> a businessman. Doing business takes a different mindset and a lot of time; it's not easy to do both, and often not fun.
It took me a while to convince myself that this wasn't a joke. Obviously, nobody wants to ship a crappy product, and obviously if you insist on perfection your product will never ship. Deciding when a product is "good enough" is a judgement call.<p>Shouting "how dare you" at people who disagree on this judgement call is just stupid.
Great post. I think a similar issue is when an engineer feels they need a certain set of infrastructure or algorithmic features before they can start building their program. If you end up finding out that most potential users have a different problem though it can all be for waste. I've met many programmers who seem to have forgotten (or never learned) how to prototype, and can't imagine building something with a fundamental security or scalability flaw.<p>There's also a far more difficult one to become aware of, which is building an overly complex solution when a simpler one exists for the problem.
>When you spend weeks or months perfecting your product in the name of 'user experience' or 'design' before selling it, you are doing more harm than good for your users and yourself on your quest to be financially independent<p>Some of us are serious about delivering quality. You are trivializing 2/3 of the web application right there. If it looks like shit and confuses people, no one is going to use it, unless it meets a serious pain point and has absolutely no competition yet, which, is not the case for most of us.
Great post, Jon. I real all these "How Dare You" statements as exhortations for developers to <i>question</i> perfection. That questioning is useful, maybe even necessary. Questioning default assumptions is powerful.