Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There's no real answer to this question. Use a stack a few times in a row from scratch and it's now the most prudent stack for you to use on your next project hands down.

Also, focusing on "rapidly building" possibly over-fixates on Day 1 when it's Day 60+ where your stack choice is really going to matter once you need to respond to changes in business requirements.

However, there are a few high level decisions I'd consider pretty uncontroversial:

1. Relational databases like Postgres tend to be ideal for fast development since you can respond to requirement changes by atomically migrating your entire data layer to a different schema. This is pretty hard in NoSQL databases for example. You can also encode constraints in the data layer and then the application layer can just depend on them always being true instead of trying to encode them into the application layer.

2. Keep the application server as stateless as possible. For example, use something like S3 instead of going the tempting route of saving to the filesystem. A filesystem dependency is convenient on Day 1 but now you cannot spin up more than one server nor launch an application off of that machine. For similar reasons, it's also nice to host your database in the cloud like on RDS.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: