views:

932

answers:

8

I'm having a hell of a time trying to find information on the comparative costs of developers between these three platforms.

I would expect PHP and ASP.NET developers to be in the same ballpark due to the size of both development communities. However, Coldfusion has what, a half million developers? That's a medium size, but it's a relatively closed off community.

Do we have to pay a premium to bring ColdFusion developers on board?

I understand the primary issue that I should be focusing on is evaluating the platforms capabilities and costs with regards to our pending projects, but this potential for a ColdFusion Developer premium has me leaning, perhaps, unfairly away from the CF Platform even though I haven't gotten my hands on any decent data.

Thanks.

+1  A: 

I am an ex CF developer. I left the "community" for 2 reasons. The first is that the technology just can't compete with .Net or PHP (I code in both). The second is that because of the small size of the development community, there is even less money put into enhancing the products. As a result, the capabilities of CF do not grow at the same rate .Net or PHP (and Java for that matter) do.

Please let CF die. You'll end up paying about the same for a CF developer of any caliber and in the process you'll shoe-horn yourself into a technology that is not as flexible nor as scalable as the others.

I "grew up" on CF, so I really dig it, but as an enterprise platform, it just doesn't have the muscle anymore.

Joel Etherton
Thanks for your input. Much appreciated
hamlin11
Sorry, but your knowledge seems to be outdated.
Sergii
Not really. I still keep abreast of CF. I don't own a license to the server anymore, but I still have the Adobe Suite of products. I've used CF since it was produced by Allaire. It was fabulous in the late 90's early 2000's. It just doesn't have the beefcake to keep up anymore.
Joel Etherton
Joel,What can .net/php do natively that CF cannot. Not picking a fight, I'm curious. Thanks.
Travis
Nothing specifically. Each of the platforms has its own benefits and drawbacks. The platform should really be chosen based on the need being met. Personally, CF (IMO) is too beholden to markup and its processing. For small scale applications, CF is probably the fastest development tool around for a skilled developer. My first CMS was in CF. I find .Net has surpassed CF in just about every way. While you CAN accomplish all of the same tasks, I would suggest that the most complex tasks can be accomplish with .Net much faster, more efficiently, and more "scalably".
Joel Etherton
Actually the latest version of ColdFusion puts a large emphasis on beefing up its scripting language. Additionally, since ColdFusion 8 we've added the ability to talk to .Net assemblies, and create and consume SharePoint, Excel and Powerpoint in 9.
Terry Ryan
@Terry Ryan - and why do you think that is? Because CF hasn't been keeping up. Adobe recognizes that .Net is beginning to dominate the production sphere. Notice all of the things you mentioned are already integrated into .Net and have been for some time. Playing catch up does not make a good planning strategy. My point stands.
Joel Etherton
+14  A: 

With PHP, there's an abundance of developers who can write code in PHP. They may or may not write the best code, but the barrier to entry is much smaller. So, given that there are more of them, you can get PHP developers at a bargain basement price. My advice though; don't go for the bargain. The technical debt will be more than you save. This is not because of the language. At. All.

With ASP.NET, you're going to pay more. The platform costs money, so the developers you're likely to attract are those currently working at medium, to large size corporations or small development firms with big customers. There's also a lot more to know when it comes to .NET, i.e. the page request model, MVC, threads, etc. Also, you didn't say if you were looking for C# or VB.NET developers. VB.NET is likely going to be cheaper to find someone to onboard, but for some reason, the C# developers tend to know more than just VB. It all depends on the candidate.

ColdFusion, that's the skill that got me my current job. If you're going this route, be prepared to train someone or search high and low for a very long time. ColdFusion is great, but its popularity is dwindling. Here at the office, we're converting all of those applications over to ASP.NET 2.0 using VB.NET. There are a few shops still using CF, but the talent pool is rather small. Training someone would be your best bet, but you'll need people who can train the neophyte CF programmers. If you're using Mach or any of the other frameworks, the same applies. The more things you require them to know about CF, the more you're going to pay.

If I were you, I wouldn't bother choosing your technology using your budget. Find the talent, then see what it costs to hire them. The best developers will be polyglots, multi-lingual, and agile enough to pick up new technologies.

Whatever you do, do not, under any circumstances, list " W years of XYZ required" in your job posting. That's a dead ringer that you're not looking in the right place.

Good luck with your hunt!

If you're looking for good, stable CF developers -- check the user groups and talk to the Adobe Evangelists. They have a nice job board. :)

Abyss Knight
Thanks for your advice. Much appreciated
hamlin11
@Abyss - definitely agree with you on the choose the platform around the talent rather than the budget and the best developers being polyglots. Most of the best programmers I know are programming outside of their original element.
Joel Etherton
How come you are converting the applications to .NET 2.0 and VB.NET, when you could use a newer version of the framework and C# ? Just curious really!
Zeus
+1  A: 

I think you'll generally find that you have to pay more for skills that are rare and/or for skills that people don't enjoy employing. Cold fusion is not rare but it's not as common-place as .NET or PHP. In addition, most developers would choose .NET/PHP over Cold Fusion as it is more enjoyable (newer stuff, less frustration, etc.). The only way to keep a developer in Cold Fusion is to pay more.

Mayo
"In addition, most developers would choose .NET/PHP over Cold Fusion as it is more enjoyable (newer stuff, less frustration, etc.). The only way to keep a developer in Cold Fusion is to pay more." I have to disagree with that statement. It all depends on your background. PHP and .Net are extremely frustrating for me, but ColdFusion is a breeze. As far as not having newer stuff goes...that's just flat out incorrect. CF has a new version every 18-24 months, with so many new features and enterprise integration toys built in that it's hard to keep up with all the new stuff in CF.
Eric
I have to agree, Eric. I hate .net and PHP, I've used both and they seem counter-intuitive. .net makes sense in an OS/mobile environment but not in a web environment. It's easier to use CF to connect to exchange than it is to use .net too. Even authenticating with LDAP is easy. CF can call .net and java objects natively as of CF8 and 9 is loaded with new features. I do CF work for far less than I charge to do PHP/.net because I much prefer to work with CF and it takes less time to do the same thing.
Travis
CF can call Java objects natively, but not .NET. Yes, you can call .NET classes from CF, but you're doing so through a Java proxy object that communicates with .NET via TCP. That's not native.
Joel Mueller
+6  A: 

Unfortunately, I can't offer you any hard data on that, so I'll try to compensate by providing perspective.

For senior level developers, you may be facing a premium for ColdFusion developers, simply on account of our rarity. Junior- and mid-level developers shouldn't necessarily cost you more because, frankly, it's a pretty simple language to learning in a hustle. ColdFusion 9 makes it easier for folks with a PHP skill set to pick up CF since the internal support for cfscript has been broadened to cover everything.

The best developers tend to be polyglots. Someone whose resume consists of nothing but ColdFusion is a box-thinker, a dead end. (That's true of any language.) Someone who has a limited skill set, particularly one with a smaller pool of candidates, is going to want to turn their handicap into perceived scarcity. Look for developers who have command of multiple languages - CF/PHP, CF/ASP, CF/Flex - and you'll find people who want you to pay them for what they know and not for what they don't.

Eric Kolb
Thanks for your advice
hamlin11
+3  A: 

Disclaimer: highly subjective answer.

IMO the only real thing was keeping CF community from growing was the price of the engine. Now times changed. We have enterprise-level free engines. Even Adobe will possible change their pricing policy in next releases, actually they do this already in some areas.

I can tell a bit about the outsourcing side.

I work with US customers remotely for a few years. Difference between searching PHP developer (I was one of them) and CF developer is simple: your chanses to find bad programmer in PHP is dozens times higher. Just because there are tons of them on the market.

Smaller "market" means that people who stays there for some time almost definitely have some skills and experience to survive. Even when they are proposed to switch to the mainstream ROR or anything to get higher rates immediately. They are confident in own future and perspectives, and can give you same confidence.

P.S. Sorry for the possible bad-grammar.

Sergii
Thank you Sergii
hamlin11
@Sergii - I agree with you that the likelihood of finding a good CF developer is higher than a good PHP programmer. It's just too easy for the masses to pick it up and write bad "working" stuff.
Joel Etherton
+1  A: 

I have experienced a few situations, and each was relatively successful. Let me explain...

1) Company that hires young HTML devs with programming experience, with the expectation of providing a good amount of training and mentorship. Paid about $20-30k/yr. Keep the most productive ones, release the ones that don't perform after a year or so.

2) Company that hires everyone that will bite at $30k/yr, based on their resume and verbal confirmation "Yes, I know ColdFusion. I'm a programmer.", then fires 95% within the first 48 hours when they obviously can't cut it. Actually, probably 50% of that number quit on their own when put to the code and asked to do something (make a report, make a form, etc). Personally, I think this is an evil practice, but it was one way to filter out the riff-raff. I guess small companies can get away with that.

3) Company that pays on the center of the salary.com scale, with standard benefits. There are a bunch of ColdFusion people doing this, but they have wide variance in their skill and depth of ColdFusion knowledge. It makes people comfortable.

4) Company that pays over the top of the salary.com scale for the best CF developers, negating the developers' ability to leave and find anything whatsoever comparable, but this also gives the developers a feeling of importance that empowers them to build great software (and work extra hours).

Nathan Strutz
A: 

As a development company we have worked on all - .Net, PHP Coldfusion. Coldfusion developers are hard to find and become a rarer species every passing day. This is the reason turn out to be the most expensive.

.Net Development on the other hand is relatively cheaper on account of abundance of resource availability and the ease of training them. But the bottleneck in a recessionary economy is cost of development and deployment of .Net applications.

PHP is the cheapest to develop, programmers are most economical, but PHP projects invariably come with a shoe string budgets, plus the platform is not very flexible in enterprise applications.

You read more about .Net & ColdFusion application development on our company website

iSummation
+1  A: 

It doesn't matter what language you use - Server-side: ColdFusion, Ruby, PHP, ASP.NET - Client Side: Javascript, CSS, HTML, jQuery etc etc etc. It's all about the person behind it. Anything you create on the Web can be made in the right way by the right person or the wrong way by the wrong person.

All the Fore-mentioned server-side technologies can, by and large, be made to do similar things if the right person knows both enough about the syntax of the language and how to be a professional programmer, thats the important part, being a programmer.

Personally, I am not a programmer, I found that out a couple of years ago when I decided to stick to what I'm good at and passionate about (cross browser design, web standards, accessibility & usability - basically Front End Design). I simply don't think that way and I'm not ashamed to admit it. Thats the difference, many 'programmers' will call themselves programmers when their code isn't actually that clever. They will tell you that it isn't possible to do something with, say, Coldfusion when in fact they simply can't think of a way to program it with their chosen language.

The only way to find good programmers is to test them, or find someone who can prove their skills with examples that are verified to be their work. Tricky but they do exist!

Matthew
While I agree with your language selection strategy given a static development team, I think it's important to look at the cost, in general, of third party development teams by language. A closed off, less popular platform may or may not suffer a change in average labor rate compared to its more popular competitors
hamlin11