I was reading “ASP.NET gets no Respect“, this morning and I have some things to say. First, a bit of history. My first experiences as a web developer were with ASP.net. It was really elegant for me as kid (3 years ago, now!). (Note: I added all of the bolds in the quoted text.)
In reality ‘not-free’ is a weak argument given that the Window Server Web Edition is pretty inexpensive at around $300. The Web Editon is fully loaded with everything to get an ASP.NET app up and running although the database needs to be added separately.
Pretty inexpensive? Oh, suppose I’m just getting into web technology. Do you actually believe $300 can be cheap? I don’t even pay $30 for games, let alone server software when xampp can get me a fully work ftp/smtp/http/mysql server for nothing.
ASP.NET from the outside is seen as a big and bulky solution. Huge framework, huge runtime requiring large servers, lots of memory etc. This criticism is really leveled against Windows as the platform rather than ASP.NET since the bulk of those requirements are for the operating system.
When I first came to web development three years ago, not just html and css, but server side development, I never knew that there were other things. I made a website with a login system with ASP.net using built in tools. I only recently did that with PHP and my implementation is a huge mess.
I find this argument very common, but it’s also pretty weak given that high end hardware and memory are becoming so very cheap in recent years.
I doubt that many people setup their own servers. You go for shared hosting, or VPS or dedicated.
Compared to other solutions like PHP, Python or maybe even more drastically ASP Classic ASP.NET is a monstrous beast that can be a blessing for those that feel comfortable with the framework and know how to leverage the rich functionality, or a curse for those just starting out to become proficient and become overwhelmed and confused by the myriad of choices.
This was covered above, but let’s go over it again. Once, I wanted to compress my html code which was generated from ASP.net. You can do this with something called, iHTTP or something strange and totally ambiguous. In PHP, you can do it with a str_replace and ob_start. ASP.net is really easy to get started in. However it’s really hard to take seriously when doing something another thing can do in four seconds takes four months.
ASP.NET Ã¢â‚¬â€œ at least using the Web Forms engine – uses a different approach to Web development that is based on abstraction and effectively hiding many of the HTTP semantics from developers. In some ways this can be very efficient and produce very rapid results if you know what you’re doing and you flow with this concept, but if you are coming from a raw HTML and CSS background or even as a developer from other tools that are based on raw HTML/CSS principles it’s actually difficult to get your head around the abstraction that Web Forms provides.
I honestly love the web forms in ASP.net. I wish PHP had something like them too. Really. It saves so much time. My computer teacher in 7th grade brought some security expert down to the room (he was a friend of his, not sure who he was exactly) and I was showing the interesting little no-change-address-redirect. That’s cool. You can’t do it in PHP. I’ve looked. You can’t do postbacks very easily in PHP. You can’t have such an elegant code container. By the way, IDE tools win for .net and fail for PHP (most of the time.)
ASP.NET has gone Stale
This is the last one. I can’t believe this either. I started .net before Vista was named as the next Windows OS. I was excitied for ASP.net 3 but then, I come out of the Vista experience disapointed. I might not have been doing any ASP.net work, but I was still a fan. I still don’t even know the state of the framework. They totally messed up the numbering. What is it now? 3.5 with LINQ?
That’s my ASP.net rant.