新项目和过度优化

I'm currently working on the beginnings of an iPhone app which will have a Laravel backend. As I comb through various concepts on Laraacasts while architecting, it's evident that there's certainly more than one way to skin a cat.

This is my first solo-attempt at a large project, and after being involved in many team projects that get a little out of hand and difficult to scale, I'm trying to implement solid practices on the onset.

However, I find I'm getting so hung up in design principles and optimization, that I'm not getting the meat of my idea out.

I know this is largely due to the fact that some of these concepts are new to me, so breaking things up into commands, and repositories and so forth is also part of my learning curve.

So I'm curious what methodologies people use when embarking on a larger project. Are there any guiding principles for determining the balance between solid design, and getting the "prototype" off the ground? Is it wiser to build in chunks with the intention of "making it work" and then refactoring as needed afterward?