views:

105

answers:

3

I'm having a bit of an overload of information these past two days.

I'm planning to start my own website that will allow local businesses to list their items on sale, and then users can come in and search for "Abercrombie t-shirt" and the stores that sell them will be listed.

It's a neat little project I'm really excited for and I'm sure it'll take off, but I'm having problems from the get go.

Sure I could use ASP.Net for it, I'm a bit familiar with it and the IDE for ASP.Net pages is bar-none, but I feel this is a great chance for me to learn something new to branch out a bit and not regurgitate .NET like a robot.

I've been looking and asking around but it's all just noise and I can't make an educated decision.

Can you help me choose a framework/platform that will make me learn something that's a nice thing to know in the job market, but also nice for me to grow as a professional?

So far I've looked at:

  • Ruby on Rails
  • Kohana
  • CakePHP
  • CodeIgniter
  • Symfony

But they are all very esoteric to me, and I have trouble even finding out which IDE to use to that will let me use auto-complete for the proprietary keywords/methods.

Thank you for your time.

+4  A: 

Have you considered ASP.NET MVC?

You will learn MVC architecture and client-side programming with javascript and jQuery, in a nimble platform that produces clean markup. If you are used to ASP.NET, you will be surprised at the clarity of design.

The NerdDinner tutorial is the go-to guide for getting started.

Robert Harvey
Do you use Visual Studio 2008 Professional for developing ASP.Net MVC applications? Or do I have to use something else? Also, imagine I've done my application with MVC, where do I host it? Can any old ASP.Net hosting provider host MVC Applications?
Serg
I use Visual Studio 2008.
Robert Harvey
ASP.NET MVC runs on IIS6 and (preferably) above. Most hosting providers who can support ASP.NET can also support ASP.NET MVC, but ask first, so that you know the level of support they provide.
Robert Harvey
This suggestions really does make me salivate and makes me wonder how I missed it in the first place. But it seems I'm digging myself deeper in the .Net trench.
Serg
MVC is great since you wish to developer yourself. It will require you to learn and understand the underlying mechanics of the web like http.
Jan Aagaard
If this is a serious project (and not a hobbyist one), I would suggest that you do something that leverages off your existing skills while allowing you to learn something new, rather than starting from scratch. Everything that you learn in ASP.NET MVC is transferrable to other technologies, especially the Javascript and jQuery client-side programming. If you use C#, it is very similar to Java.
Robert Harvey
Thanks for the help Robert.
Serg
+1  A: 

I suggest you try the whole Java eco-system.

Both similar and different to the .NET world, a lot of open-source frameworks.

Eclipse is a very good free IDE.

Also, why not go with GWT for the client side ?

In any case - enjoy !

ob1
A: 

Because nobody's mentioned it yet, I'm gonna have to suggest Rails.

I'm sure you're going to hear arguments for each framework you mentioned (and probably some you didn't), but I"ll be brief and explain why I got into Rails, having tried several of the others in your list:

It's beautiful. Coding in Ruby actually makes me happy. I find that I'm removed from a lot of tedium I've come to associate with large projects, and it's totally changed my coding career - I would literally hate to think how much less content of a programmer I'd be had I not taken the plunge. My only suggestion here would be to just try it.

Besides the succinctness of Ruby, Rails got me thinking in a more modular, logical and maintainable manner. As well as the great community, I really subscribe to the principles Rails stands for (especially the emphasis on DRY code), but all of the frameworks you mentioned have their recognized (and controversially disputed) pros and cons.

Each one is both similar and unique in varying degrees and aspects, and ultimately it's up to you to decide - Do some research; deliberate as to whether you're looking for huge libraries, a strong community, cutting-edge updates or assurances in tight documentation. Figuring out what you hope to gain from a framework is a great way of choosing the right one. But you should go for Rails anyway ;P

Good luck!

Jeriko
Good call. You can also combine what the others have said with this and give Nerd Dinner on Rails a shot. Works with IronRuby as well: http://www.code-magazine.com/Article.aspx?quickid=1006071
John