If there is one advice I would give, is launch it, ship it, test it, get feedback and optimize. Don’t wait to perfect it. Usually you’re doing that because of the fear of negative feedback. But realistically what happens is that you spend more time and resources to launch something that won’t be perfect anyway. That is if you ever end up launching it at all.