Solved

Desktop Application - What is the best programming language to use?

Posted on 2010-11-26
9
716 Views
Last Modified: 2012-05-10
Hi There,

I would like to get a freelancer to develop a windows based piece of software but I'm a little unsure of what language should be used. The software is something that I can give to my clients to install and use and needs to perform a similar roll, in principle, as the Adwords Editor application distributed by google. It  is not PPC related but my clients need to be able to manage information we publish via this application.

The user enters the information either by form on the application or via CSV upload. Once they are happy with the info, they then upload it to our web based database. Similarly if they make changes on our site they can download those changes to their local version for editing etc.

Any advice on what language is most commonly used or is most flexible?
0
Comment
Question by:Mulith
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 2
  • +1
9 Comments
 
LVL 52

Expert Comment

by:Carl Tawn
ID: 34216460
If you're not planning maintaining the code yourself then the language probably doesn't matter too much. If you want to target the .Net framework then VC++, C# and VB.Net are the primary options, although there are about 27 CLR compliant languages available.
0
 
LVL 5

Expert Comment

by:Xper4net
ID: 34216486
A .Net application (no matter if it will be done with VB or C#) could easily do the job. But first application's loading could be a little long on some machines (.net framework).
A C++ application starts faster in any cases, but development time could be slightly longer -but in fact, it depends more on developer's competence-.
0
 
LVL 5

Expert Comment

by:Xper4net
ID: 34216491
I mean a "not managed" C++ application, like MFC.
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 1

Author Comment

by:Mulith
ID: 34216497
I would love to be able to maintain it myself but I ony know web based languages like PHP so not that useful. It's going to need regular upgrades so development cost will need to be kept as low as possible. Do any of these lend themselves better to this scenario?
0
 
LVL 52

Accepted Solution

by:
Carl Tawn earned 167 total points
ID: 34216512
C# and VB.Net tend to be the more prevalent languages for .Net, C++ tends to be a bit more specialised.

C# and VB.Net developers are ten-a-penny so you should have no problem being able to swap developers if you need to.
0
 
LVL 1

Author Comment

by:Mulith
ID: 34216530
OK, sounds good. Any idea on what I should be expecting to pay for the development? I know it's difficult to say without knowing the exact requirements but a rough idea would give me an idea.
0
 
LVL 5

Assisted Solution

by:Xper4net
Xper4net earned 167 total points
ID: 34216537
By reading again your requirements, and realizing that it's related to web, I think now that the better solution would be either a RIA (Silverlight or Flex) or a Java plugin.
By this way, you'll be able to push upgrades in an easier way.
These three solutions are easy to maintain.
0
 
LVL 52

Expert Comment

by:Carl Tawn
ID: 34216547
It will vary from developer to developer. Some will work for an hourly rate, some will offer a fixed price for the contract. The thing that is going to matter most is the feature requirements, which will dictate the length and complexity of the project.

As a rough guide I would say you should be budgeting between $35-45 p/h for a decent developer. Offshoring is a cheaper option but, from past experience of having to fix some of it, you get what you pay for.
0
 
LVL 7

Assisted Solution

by:JimBeveridge
JimBeveridge earned 166 total points
ID: 34220681
The answer to your questions is dictated by your customers' environments, especially if you are working with the Fortune 500. You need to know whether they've rolled out .Net 2 / 3 / 3.5 / 4 to their desktops. You need to know how they do software deployment. Employees generally aren't allowed to install software themselves. Do you need to be cross-platform (Macintosh/Linux/iPhone/Android)? C++ is king for fast startup and small deployment, but cross-platform is painful, user interfaces are harder to build and development time is generally longer.

$35-45 p/h may per for a "decent" developer. It won't pay for a developer who can handle project management, requirements, client relations, unit testing, performance testing, configuration testing, source control, incremental releases, and other minutiae required of a commercial application. If you plan to do that onshore, expect to pay a company $125 to $175/hr, blended rate - that means that it's an average of the billing rates of junior developers all the way through project managers/architects.

Finally, whatever they quote you, expect to spend 50% more to actually get it out the door. Then, expect to spend another large outlay of dollars to get the 1.1 release out the door that fixes the bugs and makes features work the way you actually want them. If you are hiring an individual develop who doesn't have demonstrable experience in testing and project estimation, then increase these multipliers substantially.

If it sounds like I'm being cynical and pessimistic, then you are exactly right. I speak from experience of several years in the outsourcing industry and rescuing numerous projects from competitors (both companies and single developers) who got in over their head on supposedly "simple" applications, or, even worse, the installer.

In any case, I agree with Xper4net about trying a Silverlight/Flex solution. They can be prototyped quickly to see if they'll meet your needs. I think a C++ application should be a last resort.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Templates For Beginners Or How To Encourage The Compiler To Work For You Introduction This tutorial is targeted at the reader who is, perhaps, familiar with the basics of C++ but would prefer a little slower introduction to the more ad…
Creating an analog clock UserControl seems fairly straight forward.  It is, after all, essentially just a circle with several lines in it!  Two common approaches for rendering an analog clock typically involve either manually calculating points with…
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.

724 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question