Wednesday, May 25, 2011

Decisions Decisions

Here's a list of the following issues that I have ran into just deciding how to start my project:

jQuery or Prototype
ASP.NET MVC or ASP.NET Web Forms
Razor or Spark
NHibernate or Entity Framework 4
MS SQL Server or MySQL
Castle Windsor or Unity or ...
Mercurial or Git

Why did I choose jQuery over Prototype? I'm more familiar with it. jQuery is easily more popular as well. That doesn't really mean anything to be honest. Prototype could probably be just as capable. If not, more.

ASP.NET MVC over WebForms? That's quite simple. WebForms has the page lifecycle. I hate the page lifecycle mechanism. You either play with the web or you don't. Also, the fact that Ruby and Python follow this type of methodology: it just makes me think there's no going back. What's funny is that I've been doing WebForms for a while and things have just gravitated away from using .NET controls.

I chose Razor over Spark just because I went through a Razor tutorial. I don't think ViewEngines are particularly special. I'm sure I could swap and rewrite entire Views if there was a giant issue ... which I don't think is possible.

NHibernate VS EF4 ... this has been my biggest battle. I'm choosing NHibernate simply because it's more mature. I don't doubt that EF4 has its advantages but I've decided on what I've decided on.

MS SQL Server vs MySQL. For this stuff, it's quite obvious. I'm going with MS SQL ... it's a .NET Stack. It's an expensive option though. I would not want to get licenses for my servers for this stuff.

Castle Windor ... for the hell of it. There's also Ninject and a few others. I don't really care that much about IoC containers right now. Castle Windsor is easier to set-up so it wins.

Mercurial has BitBucket, so it wins. Otherwise I'll need to OpenSource my projects. TortoiseHg looks like an interesting product as well. Straying away from TFS now reminds me of the TortoiseSVN days.

My task list for tomorrow is to go through FluentHibernate / Hibernate and Mercurial tutorials. Also writing the scripts to set-up the database and then check-in the solution for the first time.

Joys.

No comments:

Post a Comment