3 ms·
There are a lot of variables that go into this decision. First of all, is this a solo project or is a group of people going to be working on it? If it's a solo
by greydius 10y ago
There are a lot of variables that go into this decision.
First of all, is this a solo project or is a group of people going to be working on it? If it's a solo project, then you are far less constrained. If it was a small proof of concept or otherwise throwaway project, I'd probably use it as an opportunity to try a new language. If it's a real deliverable and doesn't involve hard real time performance, I'd choose Haskell because it's a language with which I'm proficient and I enjoy using.
If this project is going to be developed and maintained by more than just myself, then the story changes. With an existing group of developers, you have to play to their strengths and get buy-in, so use either a language they already know, something similar, or something they've shown an interest to learn. If you don't yet have developers, consider the difficulty of hiring for certain technologies. There are also performance and correctness requirements to consider.
If you happen to be an enterprise decision maker (which is unlikely since this is a community for intelligent critical-thinkers) then the only correct choice is Java. No one gets fired for choosing Java. There's a framework for everything. There are plenty of cheap developers. It's popular, so it must be good.