As an indie development team/business with no projects released and therefore no income, should abstraction or development speed be prioritized?

This question assumes the following:

  • This is the first project
  • Future projects are likely whether this game flops or not
  • The game is already well planned and documented


The creation of generic interfaces, classes, methods, etc. to create an easier to read, easier to use framework to build the application upon. It requires some amount (depending on project size, potentially a significant amount) of initial overhead to create the structure to develop the game upon.

The benefit is that down the road, updates and future projects already have a firm foundation to be built upon with reusable and easy to understand code.

Development Speed:

There may be a better term for this, but I think it gets the point across. Development speed in place of abstraction is sacrificing that layer of abstraction to prioritize building this initial project faster.

The upside is that the game will be produced faster and potentially get the team on it's feet with a budget to build further games.

  • 1
    \$\begingroup\$ Come talk about this in the chatroom chat.stackexchange.com/rooms/19/game-development It's off-topic for the main site. \$\endgroup\$ – Almo May 27 '16 at 13:21
  • \$\begingroup\$ Why is it off topic? \$\endgroup\$ – Skyl3r May 27 '16 at 13:22
  • 1
    \$\begingroup\$ Read the help center it should become apparent. \$\endgroup\$ – Almo May 27 '16 at 14:09
  • \$\begingroup\$ +1 good question. On topic question. The problem is that only full time indie developers will really understand the question you are trying to answer. I'd give an answer myself, but I'm afraid of the non-indie developers :-( \$\endgroup\$ – Evorlor May 27 '16 at 15:20
  • 1
    \$\begingroup\$ @Almo, After reading the help center, I'm fairly confident that this question is on topic. \$\endgroup\$ – Skyl3r May 27 '16 at 15:31

As lincon said: " If I had eight hours to chop down a tree, I’d spend six hours sharpening my ax."

I would bid for the clean path, game with spagetti code wont work as expected

  • 1
    \$\begingroup\$ Please don't answer off topic/too broad/opinion based questions. \$\endgroup\$ – Vaillancourt May 27 '16 at 13:56
  • \$\begingroup\$ +1 nice metaphor, and I agree with your answer (despite lack of detail) \$\endgroup\$ – Evorlor May 27 '16 at 15:21
  • \$\begingroup\$ There is a big IF in that quote. What if you had food to survive only 2 hours? \$\endgroup\$ – Vaillancourt May 27 '16 at 15:42
  • 2
    \$\begingroup\$ @AlexandreVaillancourt then you wouldn't have 8 hours \$\endgroup\$ – PRDeving May 27 '16 at 16:10
  • 1
    \$\begingroup\$ Games can and do work with spaghetti code quite well. You'd be surprised how many shipped and (successful) games have messy code. Even downright spaghetti level of messiness. But you wouldn't know about it, because you don't see the code when you play the game. A shipped spaghetti code game always beats an unshipped game no matter how beautiful the code may be for the later. \$\endgroup\$ – JBeurer May 27 '16 at 18:54

Not the answer you're looking for? Browse other questions tagged or ask your own question.