Why would a C# or .NET or JAVA or any other programmer want to start providing Drupal Based Solutions?

This blog post is sparked by the conversation, going on right now, over my interview with OpenSource.com
See the post and lively comments here: http://opensource.com/business/12/10/whats-holding-back-mainstream-drupal-adoption 

One of the commentors, Mickey, made the claim that "...a solid C#, MVC3/TwitterBootstrap developer is not going to jump ship without a forced push."

My reply follows:
I hear you and you're on to something here.
I'm not selling Drupal for Drupal's sake. If a solution isn't a good fit for Drupal then I won't bid on it. I am far more interested in seeing the client's needs satisfied. In this day and age, clients are getting quite savvy. They expect a LOT out of their websites. They watch videos on youtube where you can find Case-Studies of major government and private sector sites. They see how easy managing content is and managing users is and they wonder why their custom CMS doesn't have that. The answer is that they didn't ask for it when they asked the C, C#, JAVA or .NET developer to build the site. Then they naturally wonder if they should have chosen Drupal instead of that custom JAVA or .NET solution.
In this sense the CLIENTs out there are asking for more control of their site. Many even want the ability to train someone internally to learn Drupal and make minor [or not so minor] changes to the site. In keeping with that line of thinking, many clients want to invest in books and events and consulting to REALLY educate their marketing and/or IT department about Drupal so that they can launch and manage their own micro-sites or other projects. [This is exactly where I spend a LOT of my time; training clients onsite to take better advantage of what Drupal offers them. I've done this for NASA, many Universities, BlueCross BlueShield, and many more.]

As more and more "solid C#, MVC3/TwitterBootstrap developers" realize that clients want THIS kind of solution, it is my hope that they will see the fruit on the trees and climb a ladder and start grabbing some!
At some point or another many of these coders are going to realize that 40+ hours a week in a code editor is only ONE way to build a client's website. Another is to be committed to a quality CMS with a quality community behind it. And know that you don't have to pack up your editor and do everything with a mouse. Many Drupal sites contain volumes upon volumes of custom code all written within the Drupal API and framework.
If the .NET and C# and JAVA coders out there are really committed to state of the art, best in class solutions to the web needs of clients some of them [NOT all or most, but SOME] will realize that the perpetual innovation and expanding solutions-base of Drupal is an exciting and very lucrative career choice.
At the end of the day this is all about providing solutions. I believe Drupal has an edge that is unmistakable in its appeal to developers, designers, end users and potential clients.
Jaguar used the tag-line "The art of performance." In that vein I would say "Drupal, the Art of Web Based Solutions!" We have a LOT to offer any programmer who wants to deliver a whole new kind of solution to end users; a solution that more and more are asking for by name!


C# and JAVA are compiled languages whereas php is interpreted. They will always be more efficient and performant. Drupal cannot be used for highly scalable application. Instead use nodejs/meteorjs.

First, nothing prevents you from precompiling your PHP into bytecode like Jave/C#. The only difference there is that it's not part of the core language, but a separate tool -- a non issue, really. Second, efficiency and performance are generally in the domain of the programmer, not the language. It is trivial to create inneficient programs in all 3 languages, and conversly it's anything but trivial to create efficient, performat software in EITHER of the 3 languages.

asp.net is faster than java which is faster than php. You cannot compile php unless you use HipHop, which is very difficult to implement in drupal. APC is not a complier, it stores the interpretation in memory. APC is way slower than binary, which is ASP.net compiler. Java doesnot compile to binary but rather bytecode and it requires a VM to run.