Which language to use?

Soldato
Joined
17 Oct 2002
Posts
3,084
I'm in the preliminary planning stages for my final year project (my course is Internet Technology and Applications) and I'm thinking of going with some sort of social networking website (yes, I know :rolleyes: )

I can't decide which language to go with though. If it's one I haven't used before then I'll have the whole of summer to play around with it so that's not really an issue and I can pick things up pretty quick. At the moment I'm thinking of either using Ruby on Rails or ASP.net

Pros for RoR:
  • It's easy
  • It's newish
  • If it takes off then I'll be in a good position to get a job
  • I've used it before
Cons:
  • Little support (on web and from university)
  • Might not take off = waste of time

Pros for ASP.net:
  • Lots of support
  • Useful skill in regards to employment
  • I don't really know what else
Cons:
  • Will need a PC
  • New hosting

Anyone have any thoughts on the matter or suggestions for other languages?
 
Beansprout said:
Any reason you haven't considered PHP?

I've considered it but after having worked with classic ASP and then moving onto RoR, scripting languages seem a bit long winded and in-efficient. There's probably something I'm missing though as some big sites use PHP such as last.fm.
 
I would personally go for Ruby on Rails. It may well become the Lisp of the web programming world (See this blog post titled "Why Ruby on Rails won't become mainstream") but shared hosting support at the moment is reasonable (see the list of web hosts currently supporting the framework) and if you're going to be using a dedicated server you should have no trouble installing it yourself. Even if it never takes off outside enthusiast "Web 2.0" circles, you will still have learnt Ruby (which is a relatively established language) and it's not as if you won't be able to learn other languages at the same time.

If you haven't already got it, I highly recommend purchasing the book "Agile Web Development With Rails." It's slightly outdated now, considering how fast Rails development is going, but it's still an excellent resource :)
 
punky_munky said:
Pros for RoR:
  • It's easy
  • It's newish
  • If it takes off then I'll be in a good position to get a job
  • I've used it before
Cons:
  • Little support (on web and from university)
  • Might not take off = waste of time

Presumably if its a final year project you will need to justify your choice of language. Just a few pointers:

The following are NOT valid reasons for selecting a language that you can put in a final report:
- Its new
- Its easy
- I've used it before
- Job prospects
All these may be true, but from a project point of view they are invalid. You need to justify that your choice of language is the language most suited for the thing you are developing.
 
@OP - ah, cool :)
Lagz said:
You need to justify that your choice of language is the language most suited for the thing you are developing.
Aye. From what I've seen RoR is very neat and you can write stuff very quickly with it - but I've never used RoR or ASP.NET in depth to know the useful differences between them.
 
Lagz said:
Presumably if its a final year project you will need to justify your choice of language. Just a few pointers:

The following are NOT valid reasons for selecting a language that you can put in a final report:
- Its new
- Its easy
- I've used it before
- Job prospects
All these may be true, but from a project point of view they are invalid. You need to justify that your choice of language is the language most suited for the thing you are developing.

I've already done a bit of work with RoR so by saying it's easy I mean it's a very efficient framework and I can get an app done in a lot less code than most other languages. I'm sure those same things apply to ASP.net too though. Thanks for your input nonetheless.

@Al Vallario

I have that book and I've got a Dreamhost account already.

Maybe I should borrow a PC and have a play with asp.NET before making a decision on this.
 
Whilst RoR is cool and all, it's hardly a hugely employable skill. If you're looking down that road, then ASP.NET (and C# in general) would be much better.

Of course it's totally different if you're just a hobbyist, in which case RoR might be more fun :)
 
robmiller said:
Whilst RoR is cool and all, it's hardly a hugely employable skill. If you're looking down that road, then ASP.NET (and C# in general) would be much better.

Of course it's totally different if you're just a hobbyist, in which case RoR might be more fun :)


That's pretty much what my brother said to me. There is the chance that RoR may take off in a big way though which would put me in a good position come graduation. Thanks for the input. :)
 
I honestly don't think RoR will be that much of a big thing within the "mainstream" - or certainly with the enterprise market, at least. I think even Al Vallario (our resident RoR uberfanboy :p) would acknowledge that.

Having said that, it's a wonderful framework, Ruby has some really nice features, and it makes development quick and easy. If you're a hobbyist then you can do much worse than RoR.
 
I work in a large international company and use ASP.NET(C#) for pretty much all our new projects (intranet, extranet sites, web services etc), everything is shifting to ASP.NET 2.0 in the near future too.

As much as I am a fan of other languages (I'm also a PHP man outside of work) I honestly can't see RoR making it into the enterprise market, thus there will be few potential vacancies for it.

/prepares for this post to be dredged up in a couple of years to prove me wrong ;)
 
think not just about the coding, but areas where you can increase your mark

go for ruby on rails - it's a doddle to learn, apparently, and is pretty powerful. I really like the look of ruby as a language anyway, meta-programming is the way forward :-)

from what I've seen and read about ruby, and rails, you can get a half-decent functional web app up in a few days. not only is it going to be a good framework for your project, but there are so many concepts it introduces that you can research and use, for maximum extra-points scoring when the project is marked. in particular, I'd advise you get to grips with using RoR as a continuation server, your lecturer will be more impressed if you explore something like this and fail, rather than take the easy safe well-worn route of ASP. plus, continuation servers are genuinely useful. also, look closely at meta-programming; if you can do something interesting with that, your project will be easier to code AND earn you big points with your lecturer

I'd really advise against using ASP.NET for this, since there's really nothing out of the ordinary about it, other than having the whole .NET framework on hand. RoR is new, and exciting, lecturers always give marks to people who use - and justify the use of - something new, whether it works or not

plus, of course, RoR is open source, which again gives you potential for discussing something in the write-up that would earn points. explore the pros and cons of using open-source software for a commercial product, that sort of thing

more and more professionals are looking to RoR as an alternative to all sorts of frameworks, too. get a copy of "Beyond Java" by Bruce Tate, he rambles on a load of b0llocks quite a bit, but he makes some very interesting points
 
Back
Top Bottom