Hello all,
I started my business a couple of months back and at that time I wasn't sure whether my business will do well or not ,so I developed the website on my own on drupal.The website I made served all the purposes but didn't have a very professional design.
Fortunately, now I have started earning a good amount of money and I want to get a world class website made. I talked to 2-3 website development companies in my area and all of them said that it'd be better that I get the website developed on ASP.net as it is a more robust platform.
I said that I absolutely love drupal because of the great amount of resources available on the internet and that it enables me to tackle all the issues with my website even though I don't know coding. They're of the opinion that I wouldn't have to even worry about these issues if I get the website developed on ASP.net because NO such issues will arise .

I wanted the opinions of you all wonderful people out here to help me evaluate whether what these companies are saying is correct or not. I don't mind spending money but what I don't want to do is that if any problems arise on my website ,I shouldn't be clueless or running after a company to get it fixed. I'd rather like to fix things on my own.

Comments

WorldFallz’s picture

i would be highly suspicious of any one or business saying 'no issues will arise'-- total bs. no matter what the platform-- there are always issues.

jarodms’s picture

ASP.net is more robust? In what way did they say? Is it because you can put an ASP.net website on any server and it's easier to deploy than a LAMP app? no wait...I don't think that's the case. :)

I would assume that maybe the development firms you are talking to specialize in Micro$oft products? So they are leaning that direction and perhaps want your business. Like a Ford dealer talking about a Chevrolet dealer.

Also, saying "NO such issues will arise" is a salesman approach and like WorldFallz pointed out, it's suspicious. Maybe not suspicious, but rather blind? I think some of the best developers out there have the confidence to say what the issues are with their preferred development software. Maybe you should ask them what the downfalls/issues of ASP.net are. If they say "nothing", then walk away. Nothing is perfect.

Just looking at the Drupal home page and all of its stats...now close to 8400 modules. All those developers. The community support. Awesome I think.

And in the end, if you love Drupal as much as you say you do, go with what you love. You'll have more fun if you like doing it!!!
Have fun! :)

Jarod Smith
JarodMS

nakins’s picture

First, you should know that Drupal is a software package. It is a type of software package that is intended to be used for web applications, meaning it is used to create websites with. It is written with the PHP scripting language. The reason why a person would use Drupal and the reason it was created was and is to give that user like you the ability to create a professional looking web site with lots of features without having to know how to write the code to make it all happen.

It does this by creating an interpretation layer between you and the code. The interpretation layer allows you to say "I want this picture here, and this text here, and my address and phone number here" to make what you want show up on the web page. To do this, Drupal makes assumptions about what a web page should look like and what it should do and how it should do it. The best way to recognize this is the template you chose for your web site. Making a change to that template could be very hard. In short, you are confined or limited to what you can do, unless you know how to write PHP (and html and css and javascript, etc).

PHP is a scripting language that in the past required a Linux like web server to run on. ASP.NET is the functional equivalent to PHP. In the past, and still today, you can choose what kind of web server you want to have, either a Linux operating system/PHP based one or a Microsoft operating system/ASP.NET. In fact, ASP was Microsoft's response to the development of PHP.

PHP and ASP.NET do the same thing in general, that is they can be used to write the code to create a dynamic interactive web site. And if you are writing code, then you are not limited to following a certain model or limitations. Drupal, on the other hand provides a certain model. The Drupal model gave you some ability to create a web site. But the cost of that ability meant you have to follow the model.

The reason a lot of web designers like ASP.NET is because that is what they were taught and it is fairly easy and quick to crank out web pages of a certain level of complexity. Most web site that are built for businesses are not highly complex. And this is what ASP.Net good at. Time is money in the web industry. If it takes me three hours to crank out ASP. Net web site and five hours to do the same in PHP, I might be prone to use ASP.NET in a web design business where fast production matters.

Your web site could be made with either PHP or ASP.NET, or you can continue to use Drupal.

brisho’s picture

Are you sure that your needs are such that you HAVE to deal with a local developer to get your site done? There are MANY experienced and knowledgeable Drupal developers worldwide, and I would say that in many if not most cases contracting with a remote developer would not be all that much different from contracting with someone local.

If you love Drupal, my advice would definitely be to stand firm, stick with it, and tell the ASP folks to take a hike. I agree with the others that no solution is without issues. As long as imperfect humans are involved and as long as hardware eventually breaks down, there will be issues. And if you stick with Drupal, when those issues arise you would have the advantages of an open platform, a tremendous variety of potential solutions, and a cooperative community that's ready, willing and able to help. With an ASP.NET developer, you're much more likely to find yourself locked into their solution and dependent upon them for assistance if/when problems arise or you need some updates made.

All you need to do is check the Drupal Marketplace or ask around for recommendations. Local or remote, you CAN find someone who can produce a world-class Drupal-based web site for you!

msrrautela’s picture

Thanks a lot guys! Really appreciate your inputs. This is for the very same reason that I hate to leave Drupal to go to some other platform for the great community we have here.
@Jaredms and ninks
Thanks for the insights.
@Brisho
Yeah, I agree with you. In the "flat" ,globalized work, I do not need to look for someone in my local area, but don't you think that face-to-face communication is important while explaining what exactly do you want -say what kind of flash images do you want to put or what kind of color do you want to add to a certain piece of text?I am a little skeptical about the fact that whether there'll be coherence between what I want and what someone from a company whom I have never seen will interepret.Apart from that, I want to get an application developed for my website ,so don't you think that remote development may not allow for that smooth flow of information?

brisho’s picture

You do have a valid concern about whether it's possible to get the same level of interaction remotely as you would in person. There may certainly be instances in which a physical meeting is necessary in order to achieve a satisfactory result. However, given the many tools that are now available to remote workers such as Skype, desktop sharing, TeamViewer, CrossLoop and the like, I'd say that it's certainly possible to get the level of coherence and communication that you're seeking. It really depends on your communication skills and those of the person you're considering for the job, and how well both of you are able to use available remote communication tools. If you're not as familiar with those tools and don't feel as comfortable with the idea of working with a remote contractor, then by all means it would be wise to look for someone close by that you can meet in person.

aloyr’s picture

just a quick note to mention that a lot of the development of drupal itself is done remotely. i've also worked on remote projects and the more time passes, the more those are becoming the norm...

the more "remote" project i've worked on had people on australia and holland communicating without problems (except the extreme difference in time-zone).

even last week, during drupalcon, i had to still deliver work for my day job and did it without any problem from the hotel, even from the conference room, before the keynote (and before the wireless meltdown)... i was writing code, committing to our git repository, just as if i was back at work...

perl -e 'print unpack(u,";8F4@=&AE(&-H86YG92P@=7-E(&1R=7!A;\"\$*");'

msrrautela’s picture

Thanks guys for your inputs. Really appreciate the help!

Starbuck’s picture

I'm primarily a C# developer but I work with PHP a lot and I've been working with Drupal in particular for a few years. I'll toss some thoughts out and will be happy to follow-up as required. To avoid flames from either site, let's assume that every point begins with "I'm of the opinion that ..." or "It's been my experience that ..."

  • To correct prior a prior comment, PHP is not the same as ASP.NET. PHP is a language and ASP.NET is a framework. More accurately, PHP is like C# or VB.NET where Zend, or Drupal itself is more like ASP.NET. ASP.NET provides structure which guides requests from a browser through server rules and on to application rules. This is really what Drupal does as requests are routed through the core, on to modules, and then to your data.
  • ASP.NET with C# or VB.NET is as capable as any framework with PHP. Let's put aside posturing about how FOSS is better than a proprietary OS, the cathedral vs the bazaar, and other such things. Stability is determined by the individual developers. At the technology level they are all as competent and equally stable.
  • Comparing Drupal to ASP.NET isn't really apples-to-apples. Drupal is not just a "framework", it's a Content Management System. It's a framework for managing content. ASP.NET is a framework for routing transactions, with no inherent application tier at all. CMS systems, arguably comparable to Drupal, have been written in ASP.NET. Examples include DotNetNuke and SiteFinity. Notice how these are applications over the technology, just as Drupal is an application over basic PHP.
  • Should developers write a website in ASP.NET vs Drupal? The better question is, what are you going to do with a website where the technology is at all important? Rather than writing a new website in ASP.NET, why not start with a CMS written in ASP.NET? What does writing a new site get you? If you want to administer the site on your own, you need a CMS. Is that what they are writing? That's a lot of code just to get you to exactly where Drupal already is. Again, what else are you getting with whatever they want to write, beyond a basic website where you can administer content?
  • Perhaps they want to make use of ASP.NET code behind your website. Are they aware that it's easy to invoke an ASP.NET page/component within a Drupal website using an IFrame. Again though, what is the specific functionality that they want which is not already in Drupal? The choice of a platform requires compelling information, not just personal preferences.
  • If you have an application where you need to integrate website data with other business data, there can be some disparity. ASP.NET apps usually use SQL Server for the database. Drupal generally uses MySQL. If a user registers in Drupal, the .NET guys will need to extract that data out in order to use it with their app based on SQL Server. Some cross-referencing will need to be established. Periodic updates will need to be done, or a hook will have to be made into the Drupal user maintenance code (or a trigger needs to be used) which then makes a remote call to update the SQL Server database. Someone only familiar with ASP.NET might be inclined to avoid that sort of database integration and just write everything over SQL Server. That said, it's just as easy to write an ASP.NET app over MySQL. The issue is when Drupal updates the database outside of the ASP.NET app. Again, to avoid unknown issues, the .NET guys might be inclined to write everything on their own. I don't think that's a great reason to undertake such a massive development effort.
  • As to the multitude of Drupal modules, the world full of developers, etc. Let's get real. Every Drupal release has a large number of modules that simply don't work well. We have a very large selection of modules here, but only "some percentage" of them are actually usable. In the FOSS world in general, the number of crapware projects and modules by amateur developers vastly outnumbers the volume of quality offerings. For every successful PHP class there are hundreds that never made it. For every decent Drupal module there are dozens, perhaps hundreds that are simply junk. I'm not saying this is an issue with PHP. This applies to freeware available in any language including Java, Perl, C++, and C#. I'm just saying that claims of "masses amounts of FOSS and millions of developers" does not translate to good and usable software. Just look at Sourceforge, Github, and Codeplex, where the number of junk projects seems to outweigh usable software by perhaps 100 to 1. Quantity != Quality.
  • Similarly, with every new Drupal release, now D7, there is a large number of modules that just don't get brought forward. We lost a lot from D4 to D5, D5 to D6, and now we're seeing that many aren't ready for D7. Sure, this happens everywhere, but the reality of "thousands of modules" translates to "a lot now, but some of them will be unusable later, so don't get too attached to them." Very few modules get a critical mass of users, and of those that are successful, very few get more than one developer. All of us who drink the Drupal Kool-Aid must accept that some of these developers are going to get burned out, and the software might need maintenance that it's never going to get. We're faced with the choice of fixing it ourselves (Viva le FOSS!), looking for a new module, or simply doing without functionality. I'm not going into this to denigrate Drupal anyway but to ensure that we acknowledge the reality that this is not the panacea that some people claim
  • Coming back to the "what are you going to get with ASP.NET that you won't get with Drupal" question, I'll ask: Rather than writing a new CMS from scratch, why not put your development funds into helping with Drupal development? If you find a module here that needs work, it's not tough to find a PHP developer who will gladly enhance it on a for-fee basis. The developer burnout and graveyards of dead projects mentioned above are the result of simple economics: we can't pay the rent working on everything for free for someone else. Inherent in the FOSS model is that the software is "free" (beer) so the money you save you can now be invested in making the FOSS better for yourself and everyone else. The question becomes: do you really need a new CMS written in ASP.NET, or might you get what you need with significant enhancements to existing Drupal modules (perhaps some of the nice but abandoned ones out there).
  • With respect for all developer colleagues, and in particular the guys pushing for "ASP.NET vs Drupal", I think passion for technology stems from ignorance of the alternatives. I have simultaneously seen people in forums say "PHP is the only language I know" and "PHP is the best language". Such claims frequently accompany comments equating to "anything from Microsoft is bad". It's impossible to compare alternatives if you don't understand what you're comparing to. Sun Tzu said you need to know yourself, the enemy, and the terrain. It's possible that anyone who says they want to write a new ASP.NET website rather than using Drupal simply doesn't know anything about Drupal. They might not be skilled with PHP and it's financially not in their best interest to even give PHP-based offerings a fair critique.

As you see, unfair bias can be present on both sides and for different reasons. If you're going to be paying for development, you need people who can provide you with solid consultation without unreasonable bias, or based on their own lack of understanding. You need a solution that's good for you, not the developer. You'll need to use the software long after they're gone.

I guess that's enough food for thought for now. The bottom line is that the technology is not important. Make a list of your requirements, then shop around for what you can get out of the box with various solutions, and then find out how much it will cost to make up for whatever is left.

HTH
(Wow, I really didn't intend to write that much...)

msrrautela’s picture

Visiting this thread after sometime and didn't expect that there'd any reply.Lo and behold!There's a gem of a reply here.Whoa! Starbucks, that was a freaking amazing post,probably one of the most resourceful posts I have ever read anywhere. You weaved and compared everything well with your impeccable way to put thoughts across!
Have sent you a PM.

nakins’s picture

ASP.net is really two things. To put a fine point on it, one would have to say .net is a framework. At least Microsoft calls it a framework. And within this framework, one can use VB.net or C# to further provide the server side dynamic functionality that the native ASP does not. The ASP part, and if you remember stands for Active Server Pages, was a scripting language developed by Microsoft to challenge PHP. ASP was around before the advent of the .net framework, and it is still possible to write the old ASP. And, you can create a dynamic page using just ASP.net tags with no VB or C# in sight.

And, if you don't mind, I said the ASP.net was the "functional equivalent" to PHP. I didn't say they were the same. But, they both deliver the same thing in the large, that is dynamic web pages.

My point was to give this poster the idea Drupal was/is an intermediary product that allows him to add functionality to his website without having to write code. ASP.net, on the other hand, like PHP, can be use to create custom code it get a desired result. This desired result may not be available from the Drupal product family. And, in some cases, it my not make sense to use Drupal for a web site. Certainly, it can do a lot. It just depends on the needs and desires of the web site owner.

jaspher’s picture

@starbuck: "I think passion for technology stems from ignorance of the alternatives..." Wow, so true..

---
my blog

Veshalen.R’s picture

HI , Starbuck .. if i were to compare "äpples with apples" .. and would like to create a site similar to the stack exchange ...can I achieve this using php,Drupal and MySQL ? . I would up against ASP.NET, C#,Visual Studio SQL Sever,data access layers and a couple source control tools, I am very inclined to Drupal you see and well open source is just awesome. I would definitely need much more than just php,Drupal and MySQL .. but is it possible?

WorldFallz’s picture

Your comment really deserves it's own thread, but the short answer is yes, it can be done.

Veshalen.R’s picture

Thank you

Druid’s picture

The bottom line is that a developer familiar with ASP.Net is going to push that product/framework. A developer familiar with PHP or Drupal is going to push that product/framework. They will tend to recommend what they know (and thus can make money on). There are probably very few developers proficient in both, who could give an honest answer as to which is best for you. Beware of anyone who guarantees "no issues", unless they have written guarantees and post a performance bond to ensure they'll quickly deal with any problems (which there will be).

If you're still here (msrrautela), just out of curiosity, were you going to outside developers because you felt that you couldn't design a good site on your own? Otherwise, are you comfortable with the mechanics of the site (via Drupal), and it was a matter of design quality? Perhaps hiring a website designer to look over your current implementation and suggest look-and-feel changes for you to make to update the site would have been better? Even if your business has been a success, you don't want to spend money for the sake of spending money. You want to get the most bang for the buck, realizing that completely rebuilding a site from scratch carries its own risks to your business (loss of customers, etc., while kinks in the live site are worked out).