Ask HN: What's your ideal tech stack for 2019?
I'm specifically interested in a consumer facing mobile/web app scenario. I'd love to hear how some of my requirements are excessive in other scenarios. That said, I have several priorities I'm thinking of:
Language:
- end-to-end testing. Not selenium. As close to the edges as possible.
- a large standard library/blessed common libraries. I don't really want to implement `sort` or `groupBy` outside of whiteboarding interviews. That said `tree-seq` (Clojure's depth-first tree traversal as an iterator, part of `clojure.core` - no extra imports) is not strictly required.
- decent concurrency support. Parallelism would be even better, but that's severe limiting factor AFAICT.
- REPL support. Mostly so I can cache things on successive test runs :P.
- It'd be awesome if I didn't have to reimplement everything between serving & ETL. e.g. Imagine ETLing your permission system outputs.
Platform (i.e. serving infrastructure): - Off-hands DB/data data management (e.g. AWS RDS/GCloud SQL/Spanner/etc).
- Off-hands traffic management - i.e. DNS/load balancing.
- Automated, rolling deploys
- Single command rollback
- Easy logging (i.e. stderr) & aggregation.
Data-Platform: - Record everything, forever. Not to say that the business should do that (i.e. user privacy matters), but starting here makes debugging easier.
- I have no desire to manage a spark/HDFS cluster.
- Testability would be awesome.