Что лучше: долгое планирование проекта до мельчайших деталях или прямая разработка без плана и макетов?
По моему опыту - это две независимые стратегии. Нельзя пить горячий чай и жаловаться что обжигает. Равно как и холодный, и сетовать что не греет. 
* Если вы копируете чей-то проект или бизнес-модель. Если вы делаете что-то, что у других уже давно работает. Если вы точно знаете что приносит доход, а на чем нужно сэкономить. Если на рынке уже есть аналогичные решения и они давно известны пользователям. Тогда только серьезный подход к планированию. Сырой продукт не взлетит.
* Если вы что-то придумываете сами. Если ничего подобного на рынке нет. Если только вы знаете, что нужно вашим потенциальным пользователям - начинайте хоть с деплоя пустого проекта черновика. Вас всё равно никто не знает Ваш продукт, никто не знает как им пользоваться. Ниша свободная и пока люди прочухают, что им этот ваш сервис нужен - вы успеете до альфа версии вырасти. 

Проблема инди-разработчиков в том, что их планы могут не совпадать с требованиями пользователей. То что вы сделаете в "аналоговнет" проекте, просто может быть не нужно реальным людям. Вы считаете что нужно, а они вам докажут, что нет. И выбрасывать то, что находится в черновиках или альфе, гораздо легче, чем то что вы пол-года или год планировали и вылизывали.
1. Быстрое создание архитектуры кода и построение диаграммы состояний для увеличения производительности за счёт параллельной обработки везде, где это возможно (5% проектного времени). 
2. Можно ещё нагрузку промоделировать и выявить все возможные bottleneck. (+5%)

После, сразу же непосредственная работа: дизайн интерфейса, дизайн файловой структуры проекта, дизайн центрального хранилища, кодирование, тестирование, релиз, профит!