First time here? You are looking at the most recent posts. You may also want to check out older archives or the tag cloud. Please leave a comment, ask a question and consider subscribing to the latest posts via RSS. Thank you for visiting! (hide this)

Today is a sunny (even if damn cold) day in Milano so while I was coming to work I decided I wanted write something good about Oxite, the CMS built by the MIX Online team.

The point I want to make is: Oxite is the best example to show how bad WebForms are when it comes to rendering standard compliant HTML.

There has been a lot of  negative talking about Oxite: it’s not working out-of-the-box, it’s not such a good example of how to implement something with the ASP.NET MVC framework, people looking at it as state-of-the-art  will learn bad practices, and so on.

But its 200 lines long controller actions and its ‘99 spaghetti style views state a great point: you can reuse your skills from “Classic” ASP.NET webforms (and probably even some code) and just by using the the ASP.NET MVC framework you can get a clean and standard HTML. And for public facing websites and web applications this is incredibly important.

Sure, the at the moment Oxite is not exploiting all the possibilities that framework gives you to allow you to build a maintainable, testable web application, but hopefully it will get better now that Rob Conery started to help them refactoring to a best practice application, hopefully by the time ASP.NET MVC RTMs before MIX 09 it will be a good example of MVC.

kick it on DotNetKicks.com

Technorati Tags: ,,
posted on Tuesday, December 30, 2008 11:55 AM

Comments on this entry:

# re: Looking at Oxite the “glass half full” way

Left by Gianluca Gravina at 12/30/2008 12:22 PM

Hi Simone,

Well, I followed all the critic twits on Oxite from many people from the community. I didn't have a real experience with Asp.NET MVC, but I have with Monorail.
I neither get a deeper look to oxite source code, so I don't have a proper background to talk about Oxite and MVC.

But ...

The ROI that comes from reusing asp.net skills to write mvc apps is quite a good thing, but I think we have to fear about it. Nowadays we have so many datasets floating around our apps (but it's another story :) ) ... so advertise a "mixed approach" as a best practice I don't think is a good thing.

Well, let's look at Rob Conery's advices and have a look at the results, perhaps after the redesign and a bunch of refactoring will made oxite a good starting point to learn from.

In Conclusion
PROS:
- Open Source from microsoft
- A test bench to learn how not to do something
- In progress (perhaps we will see how a not so good project could be refactored to a best practice, learning from the change)

CONS
- As Rob Conery said in his post about Oxite, it have been advertised like the open source cms published BY MICROSOFT, and we know how it can be dangerous :)

# re: Looking at Oxite the “glass half full” way

Left by Keyvan Nayyeri at 12/30/2008 1:02 PM

I agree with you about the usefulness that it may have, but I don't think it's a good idea to release such a software by Microsoft because it's misleading for all the ASP.NET MVC learners. You know, many guys follow the same pattern as Microsoft without thinking about its correctness.

# re: Looking at Oxite the “glass half full” way

Left by Jason at 12/30/2008 3:09 PM

You raise a good point Simone. Even if you're not taking advantage of ALL the framework has to offer, there is still a big benefit to moving to MVC. The sins of the design will be fixed, in big part due to the strong response from the community - a good thing in my opinion. In the end, the code will evolve into a much better example for MVC and a better website platform overall. Thanks for taking the "silver lining" view!

# re: Looking at Oxite the “glass half full” way

Left by Simone at 12/30/2008 3:25 PM

I agree with all of you on the fact that Oxite is seen as an "official" product/sample released by Microsoft, and people are going to look at it a dogma or the RIGHT way to write MVC apps.

My point was that, as it is now, with all the ugliness of its controllers that resemble the old Page_Load of webforms, it shows how a migration path from a WebForm skillset can be.
First migrate to ASP.NET MVC framework but still use the old'n'ugly all-in-one-place approach, and then refactor it to the real MVC pattern.
Also it shows that you can use a mixed approach because just want parts of the benefits, like, in Oxite, the compatibility of HTML to web standards.

# re: Looking at Oxite the “glass half full” way

Left by Ben Scheirman at 12/30/2008 3:37 PM

You can take strides to make your WebForms markup more readable, though it is sometimes a hefty chore to do so.

What they've done here is really messy, view & all. They clearly didn't take the time to learn MVC, and if they weren't going to learn MVC, then they should have just stuck with WebForms.

Just because the markup was "standards compliant" doesn't mean the view wasn't full of a tangled mess of code & html.

# re: Looking at Oxite the “glass half full” way

Left by Ryan Lanciaux at 12/30/2008 3:48 PM

My problem with Oxite is that they released it as a learning resource for the community. I am happy they released the code to the public, however, it was marketed it as something to help people learn MVC. If they said "here's a start lets make it better" I would have no real complaints.

As it stands now, if Oxite was my first attempt at learning the MVC framework, I would probably stay with WebForms.

# re: Looking at Oxite the “glass half full” way

Left by Arjan Zuidhof at 12/30/2008 3:58 PM

I absolutely think that Microsoft takes a good step in offering projects like this in open source format. However, from what I heard about it, this was just a group within Microsoft (the group that put up the MIX website) that thought "let's release something and throw it out in the wild". Now people like Rob Conery get to clean up after them in a way. While his efforts are greatly appreciated by the community, one would say that a little more care and internal review could have given the project a much better head start.
Disclaimer: All this is said without having seen one line of Oxite code, so my opinion is based purely on the critiques that I've seen everywhere.

Additionally this comment gives me a fresh New year's resolution: comment more on other people's blogs. Let's all do that and get more connected in 2009!

# re: Looking at Oxite the “glass half full” way

Left by Simone at 12/30/2008 4:14 PM

I should have made my point clearer... probably I'll write a followup post in the New Year :)
I absolutely agree that Oxite's code is crap. The point was that it shows a possible way people can use the MVC framework just for something, and not for everything, and still going on with the same bad (or good) architecture they had before on webform.

I definitely need to make a better post :)

# re: Looking at Oxite the “glass half full” way

Left by Nate Kohari at 12/30/2008 4:26 PM

Good points Simone. I've said before, outside of the XSS problems (which happen everywhere), there's nothing really wrong with Oxite as a *product*. The only thing I ever took issue with was Microsoft proffering it to the community as an example of how to write an app with ASP.NET MVC.

I'm sure that there will be growing pains as developers move from WebForms to MVC -- but I'll consider it a win if they move to MVC at all! :)

# re: Looking at Oxite the “glass half full” way

Left by Maarten Balliauw at 12/30/2008 6:07 PM

The Oxite story never seems to come to an end :-)

IMHO, Oxite is not that bad as a source repository. Why? Well, as they state themselves, they provide an example of how to implement some "core" blog functionality like trackbacks and RSS, for example. You can use this code or portions of it in your own application.

Curious on what Rob Connery is going to produce out of this, though...

# re: Looking at Oxite the “glass half full” way

Left by raffaeu at 12/30/2008 11:25 PM

Hi Simone, I'm glad to participate to this discussion. As you know I started to use MVC from the beginning of its born. I like it and I used the same pattern also in my Win applications (well sometimes I use MVP).
There are a lot of advantages to use this technology and we cannot discuss about them now, in a blog comment but in my opinion Microsoft should produce a better example which shows all the benefit of moving from ASP.NET to MVC. You cannot mix the two technologies and you cannot show only something because the developers must know the differences (abiss ...)
Also in my opinion they should remove the bad example in www.asp.net which explains how to implement an n/tier application by using the Dataset! Come'n or you want to implement a Framework, follow some patterns and show the right way to do it, or leave it.
Anyway I really hope in the future there will be a more comprensive understand on what you can really do with MVC and how it can change the way to develop a web app. I don't want to see another trend just because it's new, but implemented in the ASP.NET way. It will really have any sense.
Finally I really hope they will implement like it was for AJAX, a comprensive web site with examples and source code for who want to start to use MVC.

# re: Looking at Oxite the “glass half full” way

Left by Jarrett at 12/31/2008 1:02 AM

Our ASP.NET MVC content management/blog engine takes using standards to the extreme. The latest release of BlogService http://blogsvc.net version 0.8 is able to clean all html into xhtml strict, even comments and the crap live writer produces. We love ASP.NET MVC!

# re: Looking at Oxite the “glass half full” way

Left by Daniele Alessandri at 12/31/2008 10:34 AM

I pretty much like the idea of Oxite as a sort of bridge between the plain old (?) ASP.NET WebForms and ASP.NET MVC: "let's start by reusing you skills, you'll see the rest later on". I fear, however, that the vast majority of devs (that is, the ones who aren't really up to date with the cool and better practices) might simply end up following Oxite as a state-of-the-art example of usage of the brand new ASP.NET MVC framework without giving it much though and, honestly speaking, it has always been like that in the Microsoft world after all.

Now onto the plus point of the story: there was an external offer for help in refactoring by Rob Conery and the MIX Online team accepted it. Am I the only one who see this as a further step by Microsoft toward being more open and collaborative?

# re: Looking at Oxite the “glass half full” way

Left by Jarrett at 12/31/2008 4:25 PM

"Now onto the plus point of the story: there was an external offer for help in refactoring by Rob Conery and the MIX Online team accepted it"

Hardly external. Rob Conery is a Microsoftie and it has yet to be seen how well Oxite will take patches.

Comments have been closed on this topic.