Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at
If I Am Ulysses, Monorail Is A Siren

One of the projects I am working on right now is using Web Forms and has taken a very loooong time. Part of the problem has been me...learning and hard-knock-schooling and all that. But mostly now it is a matter of dealing with the idiosyncrasies of Web Forms that are by now well-documented and not worth repeating here.

I was fine until I did my first Monorail project and am about to release it having spent easily a tenth of the time to do as it would have using Web Forms. Now as I am back working on this project I can't help but keep thinking how simple all the different things I am trying to accomplish would be if only I were using the MVC of Monorail.

I am even considering porting it to use Monorail instead. But these questions arise: what about the Microsoft MVC framework? Should I wait to port to that instead? I hear the Microsoft model will let me plug in the Brail view engine but I wonder how true that will be in four months.

First, this is a financial decision and my first question is whether we can afford to port it over to anything else. But as I deal with the event lifecycle I often wonder if I can afford not to.  There are just too many times where I am using my debugger for trivial gotchas. This probably points, at least partially, to bad testing skills on my part. I'm okay admitting that. But the complexity of Web Forms still keeps me from the simplicity that is possible.

Second, I am not interested in playing the future proofing game either, as waiting for technology to be 'done' seems to me a bad idea. Remember Object Spaces?

What do you think?

Posted 10-10-2007 9:32 AM by Michael Nichols



joeydotnet wrote re: If I Am Ulysses, Monorail Is A Siren
on 10-10-2007 2:12 PM

I know exactly what you mean.  Frameworks like Monorail have spoiled me to no end.  But before I discovered the goodness that *is* MVC web frameworks, I was fairly successful for a couple years implementing web forms projects using MVP.  It's still far less than ideal, but if you can get as much "stuff" out of the code-behinds as possible, and into your presenters, it can make your life a bit easier.  So if you decide you can't make the switch, perhaps consider refactoring towards MVP, if possible.

I'm getting ready to feel the pains of webforms again soon myself.  I'm temporarily getting thrown on an existing web forms project with a large code base and 0, count 'em 0, automated tests.  

After using Monorail pretty much exclusively for the past year on various projects, the decrease in productivity when moving to web forms is going to kill me!  :S

Ben Scheirman wrote re: If I Am Ulysses, Monorail Is A Siren
on 10-10-2007 2:30 PM

I'd be very careful in that line of thinking, because it is a typical programmer mentality and usually doesn't equate to business value (or $$$).

But that doesn't mean you're wrong.

I'd say, make some minor adjustments to the code that get you half of the way there.  Take small steps.  Just like you wouldn't take a 2 month break to back fill a bunch of unit tests for an application, you can't take the big bang approach here either.

Right now if I was doing a new project I'd pick Monorail.  I would still probably port that to ASP.NET MVC once it comes out, but I think that it would be pretty easy to convert.

J.P. Hamilton wrote re: If I Am Ulysses, Monorail Is A Siren
on 10-10-2007 2:47 PM

All I would ask is this: From a maintenance perspective what would be quicker/easier in the long run?  Personally, I think the maintenance phase is the most important phase of a project and that it often does not get the consideration it is due. If you have to spend the $$$ up front to port, how much will you save on the backend? As someone who has had to deal with large web forms apps, I bet it could be a considerable amount.

Mike wrote re: If I Am Ulysses, Monorail Is A Siren
on 10-10-2007 4:30 PM

@Joey - I am using MVP in the existing code...The problem is that the app requires very intensive ajaxey forms AND I have grown a ton since this app started so I kind of have an over-architected headache.

@Ben - great counsel and I agree. However a red flag to me right now is that I am not as flexible as I'd like to be in responding to model insight.

@JP - I have to agree here with you, esp since I AM the programmer/dba/infrastructure team.

Steve Gentile wrote re: If I Am Ulysses, Monorail Is A Siren
on 10-11-2007 6:36 PM

I wouldn't wait on MS, do what you need to do today to solve your problems.

If it's true that viewengines would be supported, there is a good chance your migration would be minimal?

About The CodeBetter.Com Blog Network
CodeBetter.Com FAQ

Our Mission

Advertisers should contact Brendan

Google Reader or Homepage Latest Items
Add to My Yahoo!
Subscribe with Bloglines
Subscribe in NewsGator Online
Subscribe with myFeedster
Add to My AOL
Furl Latest Items
Subscribe in Rojo

Member Projects
DimeCasts.Net - Derik Whittaker

Friends of
Red-Gate Tools For SQL and .NET


SmartInspect .NET Logging
NGEDIT: ViEmu and Codekana
NHibernate Profiler
Balsamiq Mockups
JetBrains - ReSharper
Web Sequence Diagrams
Ducksboard<-- NEW Friend!


Site Copyright © 2007 CodeBetter.Com
Content Copyright Individual Bloggers


Community Server (Commercial Edition)