|
Recent
Articles |
ASP.NET - Block IP Addresses From Your Site Recently, one of my readers asked me how to block certain IP addresses from accessing his ASP.NET website. It was a good question that could be answered in multiple correct ways. My answer was a plug 'n...
ASP.NET: Maintain Scroll Position After Postbacks To maintain the scroll position after postbacks is important for larger web pages in order to let the user know exactly what is going on. It is good usability and something you would expect in modern web...
GZip Vs. Deflate - Compression And Performance After I wrote about a HTTP compression module in ASP.NET 2.0 one of my colleagues pointed out that the Deflate compression is faster than GZip.Because the HTTP compression module chooses GZip over Deflate if the browser allows it, I thought that I'd better...
App_Code: Why It's Better I remember when ASP.NET 2.0 beta 1 was released about 2 years ago and I eagerly tried it out. The first thing that struck me as strange was the new application folders like App_Code, App_Data, and App_Themes etc.
Refactoring Your ASP.NET Project One day at work i was refactoring my code as I do everyday, when it suddenly hit me that our ASP.NET projects were also refactored in a sense. For those of you who don't know what refactoring is, here's...
ASP.NET: Permanent Redirection The easiest way to make a redirection in ASP.NET is using Response.Redirect(url). What it actually does is, that it creates a response with the "302 (Object Moved)" status code and the target destination. It tells the...
|
|
|
02.16.07
ASP.NET: Is It Too Easy?
By
Mads Kristensen
Some time ago, I wrote a post called "Is ASP.NET too difficult?" and I strongly believe that it is.
Yet at the same time it cause problems by making it too easy to do relative advanced programming. It doesn't seem to be a problem. On the contrary it appears to be a good thing, but an important thing is missing.
Step-by-step learning
Before ASP.NET when we used PHP and ASP, there was a certain step-by-step learning curve that everybody followed. You started out by learning basic HTML and then moved on to PHP/ASP. When you built your first projects it was time to learn about how to implement databases into them. When you mastered that, you were pretty good at building dynamic websites. This was the way that many of us took and it made us understand the platform before proceeding to more advanced features.
In ASP.NET there is no step-by-step learning in the old sense, because everything has become very easy. Database development has never been easier with all the wizards and easy-to-use ADO.NET features that handle it for you. It is more likely for an ASP.NET newbie to building database and AJAX driven websites before learning basic HTML or JavaScript.
From good to great
Still, that may not sound like a problem but I beg to defer. Because the previously difficult things have become very easy, it is no longer necessary to have a basic understanding of the request/response model of a web server or be concerned about how garbage collection works. You can still build good stuff.
From building good stuff to create great solutions is a huge leap. That will be much more difficult to be a great developer if you started out using all the wizards and other cheap tricks because you have to learn it all backwards. You really have to want it to begin reading books about basic programming techniques when you've just created a cool AJAX website without that knowledge.
Microsoft isn't helping
This tendency to learn programming backwards is bad. The advantages are short lived and in the end, you have to pay the price. It seems that Microsoft is doing much to promote this backward learning by always doing their demos using the designer in Visual Studio. "Just drag n' drop controls to your web page and it's all great". The designer cannot, I repeat cannot let you utilize the whole ASP.NET platform and all its features - far from it.
If you get stuck in the designer, you get stuck as a developer. I have never seen a professional web developer use the designer for other than personal hobby projects and there is a reason for that. It hides many decisions from you and leave them to the controls and wizards. The fewer decisions you are forced to make, the easier it becomes but as stated above, it comes at a price.
Make the decisions
This is the hard part. Before you are capable of making decisions based on your experience level, you have to know what the alternatives are. Otherwise it wouldn't be a decision at all. Learn about the alternatives instead of leaving it to Visual Studio to decide. As Rocky Lhotka once said; developers are paid to think. What's left afterward is code. Wise words.
Not all programmers want to take it further than as a hobby and that is perfectly fine. Just consider the consequences before taking the easy way. My advice is to throw away the designer and start writing code.
Comments
About the Author: Mads Kristensen currently works as a Senior Developer at Traceworks located in Copenhagen, Denmark. Mads graduated from Copenhagen Technical Academy with a multimedia degree in 2003, but has been a professional developer since 2000. His main focus is on ASP.NET but is responsible for Winforms, Windows- and web services in his daily work as well. A true .NET developer with great passion for the simple solution.
http://www.madskristensen.dk/
|