Hello all: I am planning to outsource a new software project in the near future, and was looking for some input. First of all, do I need to suggest a programming language for the project, or will programmer know best? I am looking to develop a desktop application that has similar features to http://www.webcompanalyst.com or http://www.marketsamurai.com. Market Samurai is more visually appealing, but I am not as interested in looks as I am in functionality. What programming language do you think would be the best for this type of project? Thanks!
I guess it will be a Windows application, and if so, most likely it will be created in .NET, then languages used, again most likely, will be C# or VB. .NET is fantastic as it allows to create such desktop apps a lot easier and faster. I myself worked as a .NET (C#) developer for a year professionally. Also there is always Python, this beautiful language.
I know you aren't initially interested in the look of the program but it might be a key point once the functionality is implemented. The best combination of technologies for a desktop app these days is C# and .Net as previous posters have said. However, I'd recommend that you ask for the app to be written using C#/.Net and WPF rather than C#/.Net and Winforms as there is greater flexibility in reskinning the app after the functionality has been implemented. Ultimately, the programming language itself isn't the most important aspect but rather it's the capabilities you require for the application. By going down the C#/ .Net route you'll have an app that is fairly platform independent (Windows 32 and 64-bit capable with fewer differences between operation on XP, Vista and Windows 7 and even Linux (at a push!), and with WPF you'll have an app that can be fairly easily restyled in a roughly similar way to restyling a website with CSS.
You need to chose a developer who can develop in C# in .Net environment. The best combination for Desktop applications. Java is not suitable for desktop apps as it is lacking performance.