But, users don't care which language your solution is written in.
No one remembers Steve Jobs because his company, Next, created Objective-C. They remember him because help create an elegant product which everyone wants to use (iPhone).
Before the iPhone Steve Jobs was in love with another product. It was something he wanted. It was a portable music player that Steve himself wanted to use.
Steve wanted a cool device that would allow him to listen to any / all of his music no matter where he was.
Tens of millions of other people wanted this solution also.
As Software Developers we often get all caught up in technologies & the best programming language and pedantic details of technology. Users don't care about any of that.
Users just want solutions to their daily challenges which are easy to use and work properly.
If we change our thinking towards what a user really wants:
- easy to use solution
- works properly
- low cost (lowest possible)
then we can begin to see behind the reasons that they want the thing they are requesting. If we become users of our own software we will discover that we want it to be easier to use -- no confusing UI and our solutions will become far better.
So the next time you're arguing about which language is better just remember the best language is the one that helps you create a solution that:
- creates an easy to use solution (easily deployed to users)
- works properly -- doesn't confuse the user, use it yourself
- is the right price
You'll have to understand much more than just programming languages to create a great product.
You'll need to understand:
- what the user wants
- how to make it easier for the user
- how the business works
- how to deploy it so the user can get the product
- COGS (Cost of Goods Sold) -- how much does it cost you to create it?
You'll learn far more from creating a usable solution than just learning a new programming language.