Blog

What's wrong with ASP.NET

January 30, 2007

While I was doing the dishes today, I was thinking about the programming model of ASP.NET and the fact that I don't like it (just as don't like doing the dishes). The model it uses for developing web applications just doesn't feel right to me. Now I have to admit, that I don't have that much experience with developing ASP.NET applications, except some small projects with just a few pages. When I finished these projects, I had the feeling that I did a terrible job. The code is wrote is just not that maintainable as I want it to be. I think this feeling originates from the fact that the most important code of a web page is scattered all of the place.

Then I came up with using some presentation patterns like Model View Presenter. This approach results in a more testable design and a better Separation of Concerns. But still I am  convinced that it's too easy to clutter up the code, as this approach requires a lot of self-discipline.

While I was reading my daily portion of blog posts, I came across some rants of another tormented soul:

Microsoft chose to shoehorn an event model onto the web and use a page-oriented implementation. Not only did they get the medium wrong, they also got the model wrong. And this decision resulted in an outrageously complex pipeline processing model with tons of code that is hard to debug or even understand, and that requires lots of high end developers to figure it out and repeatedly explain to newbies what they need to do just be able to do some of the simplest things, things that are brain-dead easy in PHP for example.

I'm glad that I'm not the only one who feels this way.

How can something like Open-Source PHP on Apache take on mighty Microsoft's ASP.NET and IIS, and win? Because they answer the right questions, and they did so in far less than a decade.

I can only agree that the open-source community does a much better job in providing innovating stuff than Microsoft does. A few examples are:

... just to name a few. Using these libraries makes me focus on the Domain Model, solving the real-world problems, instead of focusing on technology. 

I think I'm going to keep an eye on MonoRail as it looks very good. 

PS: I still believe that Microsoft is doing a great job with the .NET Framework: I find that WCF and especially WPF is very innovative.

If you and your team want to learn more about how to write maintainable unit tests and get the most out of TDD practices, make sure to have look at our trainings and workshops or check out the books section. Feel free to reach out at infonull@nullprincipal-itnull.be.

Profile picture of Jan Van Ryswyck

Jan Van Ryswyck

Thank you for visiting my blog. I’m a professional software developer since Y2K. A blogger since Y2K+5. Provider of training and coaching in XP practices. Curator of the Awesome Talks list. Past organizer of the European Virtual ALT.NET meetings. Thinking and learning about all kinds of technologies since forever.

Comments

About

Thank you for visiting my website. I’m a professional software developer since Y2K. A blogger since Y2K+5. Author of Writing Maintainable Unit Tests. Provider of training and coaching in XP practices. Curator of the Awesome Talks list. Thinking and learning about all kinds of technologies since forever.

Contact information

(+32) 496 38 00 82

infonull@nullprincipal-itnull.be