What Does Advanced ASP.NET Mean?

image This week I am teaching Advanced ASP.NET 2.0 at Interface Technical Training.

When I first introduced the Advanced ASP.NET training at Interface several years ago (version 1.1), it seemed easier to define what "advanced" meant.  Back then, .NET in was a paradigm shift for many developers.  Nowadays, the typical student isn't so typical.  With experience, "advanced" becomes a relative term.

What do you (the reader) consider an advanced topic in ASP.NET?  What advanced topic would be worth taking training for?

Technorati Tags:
Published Monday, January 28, 2008 1:12 AM by Palermo4
Filed under: ,

Comments

# re: What Does Advanced ASP.NET Mean?

Monday, January 28, 2008 4:51 AM by Plip

I think that's a great question.

To me there's a difference between a programmer and a developer in the same way.

Anyone who puts code down in any form can be classed a programmer, especially if they do it full time.

Only those who lay out code according to either patterns or in a format which they've come to find more efficient over time are developers.

So what are the differences between those two? Well, it's about the experience and the lessons learned from layout out code. Unfortinatly, my view of what's advanced and what's basic may differ from everyone else, it's a very personal thing.

So does this come down to tactics and approach? Correct usage of the "using" statement on IDisposable objects perhaps? Maybe it comes down to correct and efective diagnostic abilities when debugging an application (especially one that's already live). Perhaps it's more about the architecture and maintenance of the code, how secure is it, are there huge gaping holes in the code people write?

I's a great question, I can't wait to see what everyone else thinks.

# re: What Does Advanced ASP.NET Mean?

Monday, January 28, 2008 5:14 AM by Chris Gaskell

For me advanced ASP.NET isn't really about coding at all. I've met guys who know the framework inside out but are still capable of churning out trash.

I think it's more about approach, that's knowing where and how to use patterns, how to structure code, when to break code (into new methods - classes - namespaces etc), debugging and tracing effectively, how to successfully deliver/deploy and constantly remembering those non-functional requirements.

Perhaps the ‘advanced’ developer will have a sixth sense as to where the code may change (through ASP.net revisions or client change requests) and build accordingly.

I totally agree with Phil that an ‘advanced’ developer will have suffered with architecture and deployment difficulties – but I’m afraid these can’t be thought in classroom sessions.

# re: What Does Advanced ASP.NET Mean?

Monday, January 28, 2008 5:43 AM by Dave

Hmm, a tough question, such a relative term and a personal one too. I quite like the course outline; it seems to cover a nice variety of advanced topics.

One of the problems I've always had on courses is trying to get across to people how important it is to flick through APIs (using MSDN, class browser or my favourite, reflector). You'd be surpised how much many times I've used something and the students have said "I didn't know that existed". A lot can be learned from seeing a method call and going "ooh, I wonder what that does" and realise it can solve a problem. It's not a topic per se, but I think it's something you should do if you want to consider yourself an advanced developer.

I think some general architecture stuff is probably worth teaching too. I meet many people who are pretty good developers, but seem to be worried about how to architect applpications, even fairly simple ones. It's not really something that should be an advanced topic, but it doesn't seem to get tought on many lower level courses.

# re: What Does Advanced ASP.NET Mean?

Monday, January 28, 2008 8:06 AM by Joe Chung

* HttpCachePolicy and output caching

* IHttpHandler and IHttpHandlerFactory

* IHttpModule and HttpApplication events

* System.Web.Compilation

* System.Web.Hosting (IIS 7 integrated mode)

* System.Web.Management (IIS 7)

Cover anything outside the HtmlControls and WebControls namespaces and the HttpRequest, HttpResponse, and HttpServer classes.  Plus everything above will still be relevant when ASP.NET MVC becomes mainstream.

# re: What Does Advanced ASP.NET Mean?

Monday, January 28, 2008 11:48 AM by Guy

Advanced would be things like multi-threading on the server to do things like email sending and return a page back to the user quicker. i.e. Anything that can be passed to a thread (such as logging, stats collecting etc.) that won't influence the HTML that the server sends back to the user could be put into a thread and done after the server has responded to the user request. This sort of thing is an advanced concept, I think.

# re: What Does Advanced ASP.NET Mean?

Monday, January 28, 2008 1:53 PM by Mike

I would define Advanced to be dealing with problems that are uncommon in the typical developer world.  These usually involve weighing the pro/cons of solutions and understanding the nuances of different approaches, and how each approach scales both as development projects can larger and the user base increases.  For instance, it's easy to get up and running with Ajax using things like the UpdatePanel, but how do you know that solution will still be applicable when dealing with hundreds and thousands of users per day coming from all parts of the world?

# re: What Does Advanced ASP.NET Mean?

Wednesday, January 30, 2008 4:17 AM by Praveen

The provider model in depth? With a custom provider?

# re: What Does Advanced ASP.NET Mean?

Saturday, February 02, 2008 3:37 PM by Palermo4

Phil,

I like your statement: "Anyone who puts code down in any form can be classed a programmer..."

It takes more than the ability to write code to be an advanced developer.  I would also argue that it takes more than writing HTML to be an advanced web developer.  So what does it take to be an Advanced ASP.NET developer?

# re: What Does Advanced ASP.NET Mean?

Saturday, February 02, 2008 3:39 PM by Palermo4

Chris,

I am curious why you stated: "I totally agree with Phil that an ‘advanced’ developer will have suffered with architecture and deployment difficulties – but I’m afraid these can’t be thought in classroom sessions."

What is missing in the classroom that makes it unlikely to teach architecture and deployment scenarios?

# re: What Does Advanced ASP.NET Mean?

Saturday, February 02, 2008 3:40 PM by Palermo4

Dave,

What kind of architecture are you referring to?  The logical & physical layers of an application?

# re: What Does Advanced ASP.NET Mean?

Saturday, February 02, 2008 3:41 PM by Palermo4

Joe,

I agree that those technologies are advanced topics.  I currently teach them in ASP610 - Advanced ASP.NET course at Interface (in Phoenix)

# re: What Does Advanced ASP.NET Mean?

Saturday, February 02, 2008 3:43 PM by Palermo4

Guy,

Asynchronous activities and multi-threaded operations are advanced in my opinion as well.  This is also taught in my ASP610 Advanced ASP.NET class.

# re: What Does Advanced ASP.NET Mean?

Saturday, February 02, 2008 3:45 PM by Palermo4

Mike,

I agree with you.  Your example of AJAX is a good one.  In reality, using an UpdatePanel is not advanced.  Anyone can do it.  Knowing JSON syntax and effectively communicating between the browser and web server is more advanced.  It also requires understanding complicated troubleshooting techniques.  Yes, it is a shameless plug, but I teach that in my ASP610 Advanced ASP.NET class as well :-)

# re: What Does Advanced ASP.NET Mean?

Tuesday, February 05, 2008 4:24 PM by Dave

To me advanced ASP.NET means simply extenting the framework itself.

# re: What Does Advanced ASP.NET Mean?

Wednesday, February 20, 2008 10:19 AM by Jose

Hello John..

I will take this course, but I already have good experience asp.net but I dont know all the topics that you have on the asp.net200 outline.. Can you tell me what will be better asp.net200 or asp.net advance if I already have many years of experience working with .net 1.1 & .net 2.0 some knowlage of 3.5

# re: What Does Advanced ASP.NET Mean?

Sunday, February 24, 2008 11:34 AM by Palermo4

Jose,

If you have strong experience, I would recommend the ASP610 class.  The topics you do not know in the ASP200 should be easily acquired for experienced ASP.NET developers.  However, the concepts and practices in the ASP610 (advanced asp.net) class require a serious developer.

Leave a Comment

(required) 
(required) 
(optional)
(required)