Another point I hear frequently debated is “How many languages should be in your tech stack?”. Some might say “as many as it takes to get the job done” and I agree with that but there is a caveat. Of course you are not going to run PHP in the browser or use Python as your basis for a mobile app. And if your application is monolithic, not MicroService based, then the chances of using multiple backend languages is smaller.
With that said, if you can do the job with fewer languages I encourage you to do it. I have a client with a dev team of about 20 developers, their primary language is PHP. One day I came to find some random one off service written in Python. So I asked them “How many developers do they have on the team that know python?”. Oddly enough their answer was “None”. So I asked “Who wrote it?”. Their answer was “Someone in marketing”. I noted my concerns to them at the time.
Fast forward a few years and evidently not only the person that knew python had moved on, but everyone that knew why the service was written in python and what it did had moved on as well. No one knew how to maintain it and financially it didn't make sense to hire a Python developer just for this one random service. It was a maintenance nightmare.
The same can be said to a lesser extent for using multiple competing frameworks. For example it wouldn’t make sense for half your project to use React and the other half Angular.
Just keep this in mind when picking your tech stack. Your team will likely change, and the more languages you have to staff for the more difficult hiring is. Keeping just your tech stack simple helps you hire and cross train your team to be effective in building and maintaining your tech platform.
If you are interested in engaging my services as a Web Application Architect check out my Group Coaching Program or 1 on 1 Consulting at schematical.com and check out my FREE eBook 20 Things You Can DoTo Save Money On Your Amazon Web Services Bill Today ~Cheers
Signup for the mailing list