"We’re losing them to PHP, .Net, Python, Ruby, Java, etc. "
I'm sure you have heard this quote before, on forums, blogs, twitter, etc... and I wanted to share a bit of my opinion about it. The big players right now are .NET, Java and "PHP". Reason is not because of frameworks, open source, language features, etc...
There has been a huge shift in how technology is adopted in the enterprise, where technology is not the main focus, (remember the IBM ad? "Shirts! We sell Shirts!"). Decisions about technology is no longer being driven from the confines of the IT department but from top management focusing on short and long term strategic goals. Organizations now have CEO’s that are asked to do more with less (that’s why being a software engineer is now a great field to be in!). But the days of building applications to support initiatives from the scratch are now gone!
So here’s the problem in my opinion (here are some examples to make my point, by no means a complete list):
- .NET has Sharepoint and Microsoft CRM
- Java has Oracle software, IBM software, SugarCRM, etc...
- PHP has Drupal
All these technologies have a great number of web based enterprise ready software (both commercial and open source) that can be quickly acquired and implemented and customized directly or via third party plugins/modules (not saying it’s always smooth) that is being marketed deliberately to the top level management. Meanwhile, we in the ColdFusion community debate feverishly over whether or not the server or the IDE should be open source, or what frameworks to use, should we have this feature or that feature... etc.. But we are lacking those products (yes we have Mura and a few others, and I’ll address that in a bit, so please bear with me) that make organizations feel confident that they are not taking a huge gamble starting something from scratch or whether or not it will have a well supported upgrade path.
ColdFusion is an awesome platform, I love it and it has been great for me, my career and my mortage bank! ;)
But unless we stop blaming Adobe for all the problems, and start building applications/products that will matter to organizations and make investing in this platform more attractive and worthwhile to upper management it doesn’t matter how many features you put in ColdFusion and it will remain a niche market. I see MuraCMS as a great catalyst for that change, taking how well Drupal has evolved from a simple CMS to an application stack full of different modules built by the community so business can quickly mashup applications to serve their needs.
PHP's popularity is not because of the features or syntax (who in their right mind want to use object->property instead of object.property!) but hugely because Drupal has been the catalyst, Sharepoint has been a huge catalyst for .NET, Oracle and IBM software are a huge catalyst for Java. We as a community need to stop blaming and making excuses (I’m by no means innocent here!). We need to get more in tune with the business world, find out what they want and need and deliver them. I think ColdFusion’s future is not as a server but as a platform full of customizable COTS products that helps business grow! Folks want to talk open source, ok. let’s do it.. but let’s focus on the great thing about open source (which is not about free software!) and let’s start as a community building these products (CRMs, CMSs, ERPs) that can be customized by ColdFusion developers and earn the market share back.
I’m curious what you guys think, feel free to bash me (or more preferrably my thoughts) if I’m wrong here (as my friends say, I have thick skin!)