Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Timing is king. For MS it means that they have to adapt to new trends faster if they don't want their products abandoned.

MVC is a really big step forward, something that most people didn't expect from MS (meaning the inclusion of third party stuff).



Also the fact that the ASP.NET MVC framework is itself open sourced (the code is available on Codeplex).

I've been using this framework for a recent project at my day job and it's definitely a step in the right direction (i.e. toward design patterns common in other popular web development frameworks such as MVC, pluggable ORM system, use of third-party libraries such as jQuery, clear separation of concerns, and a strong focus on test driven devlopment).


Have you used Rails or another MVC framework? How does ASP.NET MVC compare?


Fundamentally, it's heavily inspired by Rails. Although it doesn't have an ORM, there are ActiveRecord clones available for .NET anyway. The components that resemble Rails resemble it a lot. ASP.NET MVC was not meant to recreate the entire Rails environment and tool chain. So it does not have things like database migrations, automated deployment scripts, etc. built in. These things are provided by third-parties however.

I wouldn't choose ASP.NET over some other open source framework because of this MVC framework. But it would make ASP.NET development a lot less aggravating if I were forced to do development on ASP.NET.


I've dabbled with Rails and Django, but not extensively so I'm not in a position to give a detailed comparison.

The features of ASP.NET MVC as listed "on the box", as it were, sound similar to those in frameworks like Rails and Django. Since the MVC framework is open sourced, I suppose there is nothing stopping somebody from verifying the quality of Microsoft's implementation.

However, this new ASP.NET MVC framework comes out far ahead of the standard ASP.NET WinForms system, whose PageView model was certainly not comparable to frameworks like Rails.


Thank you.

Could you elaborate on that? I have never used ASP.NET. The ASP.NET WinForms model sounds good in theory. It's a little bit like Seaside: you have components on the page that have callbacks, etc. Yes, it isn't like the web, but I imagine it could work for web applications. Why is WinForms bad?


The WinForms model for web development is absolutely atrocious. It has an event model that only makes sense on the desktop. To get this event model working on the web, they literally shoe-horned a size 6 stiletto onto a size 12 male foot. They invented all sorts of hacks like viewstate just to get this event model to work. And in the end, it does not buy the developer anything other than lots of confusion when they initially begin working with the framework over the order of events.

Seriously, if you've ever been to some beginner/intermediate MS conference lectures, they need to cover topics that no other web developer needs to even worry about, like how to keep your viewstate nice and trim, how to ensure that your web app works across a cluster and doesn't cough because the viewstate was generated on one server and consumed by another one (http://msdn.microsoft.com/en-us/library/ms998288.aspx), etc..

It's a terrible terrible terrible monstrosity that should only be interesting in the academic sense of "I wonder if it's possible to do that" kind of way.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: