The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

Choose for new technology, a good idea or not?

Hi all.
We are starting a new project very soon in my company. I'm responsible of the design and I'm also the "lead" developer (we are a very small team, 3 members). Unfortunately I have a few months work experience, so... some help will be very helpful.

I was wondering if it's a good idea to use the new ASP.NET MVC framework. I know that's good to have a clean separation between context, but his youth make me think that maybe I'm better waiting and go ahead with the standard way.

The other big question I have is if I should use LINQ to SQL. The customer who asked us this software has SQLServer 2000, but I can't rely only on SQLServer, it should also support Oracle. So far there's no clue if LINQ will support Oracle in the future or not. Do you think it's better to have LINQ to Nhibernate instead?

Thank you so much!
Davide Send private email
Monday, March 24, 2008
You could use LINQ to Entities. It is more of a generic version of LINQ to SQL, and it has some features that LINQ to SQL doesn't.

There are some 3rd party Oracle providers from LINQ. None from MS or Oracle that I've seen yet, but I'm not 100% sure on that. Try these 2 or Google for "oracle provider linq".
Developer #13
Monday, March 24, 2008
If this new project is going to be under schedule pressure or is 'mission-critical' for the company, I would not be trying out new technology.  Check out that fun new stuff on small 'toy' projects first before you bet the farm on it.
Mike Stockdale Send private email
Monday, March 24, 2008
You can safely use LINQ to SQL assuming it meets your needs. LINQ to SQL has some limitations (doesn't support Many-to-Many relationships, etc.) which may affect some design decisions.

Neither LINQ to Entities (ADO.NET Entity Framework) and ASP.NET MVC Framework are still in CTP/Beta releases and probably shouldn't be used in production yet. If your release date is 4 - 6 months away you can consider these technologies.

Also, every technology has tradeoffs, so it is very important to be aware of the design tradeoffs the MVC Framework forces you to make (no ViewState/PostBacks, many third party controls don't work, etc). I'm a fan of the framework, but you definitely need to make sure it matches the requirements of your application well.
Monday, March 24, 2008
+1 to Mike.

If you use a new technology, assume the first 2 weeks you'll have 0 productivity, by a month and a half, you'll be at 1/2 productivity, and eventually you'll hit full speed.  (YMMV - I've seen technologies that took 6 months to hit full productivity, and others that took a couple weeks.)

If this is your first project that you're managing, assume that managing a project (correctly) will be sufficiently complicated that it will feel like drinking from the fire hose, and anything you can do to simplify things (e.g., not switching technologies) will bring you great bliss.

Also, if no one on your team knows the technology, that's a different ballgame than if a person or a couple people know it; if you have a guru or two to help bring people up to speed, that helps a lot.
Michael Gibson Send private email
Monday, March 24, 2008
Thank you guys! You have been very very helpful!!!

Actually, and unfortunately for me, I have no guru and worst, the other team mates are people not really want-to-program-in-the-right-way but more it-just-works (sooo frustrating...)

Reading your suggestion, I think I'll stay with no MVC and with DataSet + TableAdapter way..

Maybe we'll hire (soon I hope) someone who can help me in introducing these new technologies and make it a real development team!

Thank you again!
Davide Send private email
Monday, March 24, 2008
If you've got an inexperienced team and some budget then how about getting some training?
DJ Clayworth
Friday, March 28, 2008
Are you sure there's a (apparently future) requirement to support Oracle. If not then it sounds like you and your team are most comfortable with the Microsoft stack, so don't worry about Oracle requirements if they aren't actual real requirements today. I'm sure the MS stack is a good choice so go with it.
cbmc64 Send private email
Tuesday, April 01, 2008

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz