tags:

views:

294

answers:

4

I wonder that,

  1. Ruby programming language is ...(easy/difficult) to learn.
  2. I can develop web application %x faster than asp.net.
  3. There are a lot of screen casts to learn Ruby.(http://xxxRubLearn.xxx, etc.)
  4. The principle(s) of Ruby is(are) only ......
  5. You can increase work proccessor (like W3P on IIS) and make faster your web app.
  6. Future of Ruby looks like it will be the most ... programming lang.
  7. The comparison of Ruby and ASP.NET shows us .....

Or

Don't leave your way, because it is the easiest way. And new technologies can die very soon while you are learning them... ?

What do you say?

+2  A: 

You'll know more - I guess.

And I think you're mixing Ruby with Rails (a framework for web-apps written in Ruby). Ruby is a programming (leaning towards scripting) language. But both Ruby and Rails are beautiful in their own ways - Ruby with its constructs and ease of expressing a solution to a problem, Rails with underlining how a framework should just work.

And as with learning any language sufficiently different from your weapon of choice, it'll expand how you look at solving problems in the future - you'll see further than you used to.

Gishu
Ruby with Rails. You are right. Not only ruby.
uzay95
+2  A: 

I'll tackle the first couple points.

1) Ruby is easy/hard to learn:

Like so many things in life this depends on your experience and resources. If all you now is C#, than Ruby likely is going to be hard to learn because it's your second language. In my experience the second language is often the hardest. The second language is also the one that teaches you the most. If you know 3 or 4 other languages, than I suspect you'll find it no harder to learn than the those you learned before. If you're in a Windows environment it can be a bit harder to install the needed tools than ASP.net, but nothing you probably shouldn't learn anyway.

2) Write web:programs faster:

Let's just say those are fighting words. Some people believe it's faster, others believe ASP.net is faster. I will say if you want to do web-apps, than you also need to learn the Rails framework. You can learn Ruby without learning Rails, but the talk around Ruby is all about Rails.

3) Where to learn:

I like learning from books, so that's what I used to learn ruby. There are tons of examples on the web. I expect Google will show you the way if you like to learn that way.

acrosman
I liked your answer because it isn't like programming language holiganizm.
uzay95
+4  A: 
  • Easy to learn Ruby programming language is damn easy to learn. You will start building apps in days. If you enjoy programming, I think you will love programming in Ruby.

  • Web Apps? I have not used Rails for serious web apps. Even though I stick with ASP.NET for my web project, Rails is quite nifty and I strongly recommend it.

  • Comparisons I dont think ASP.NET is a "programming language". I cant compare it to Ruby. However people tell me Ruby on Rails is a good alternative to ASP.NET in some cases (could somebody here please help me by citing a real life scenario)

  • Philosophy Ruby is one of the languages which strongly believes that programming is not about spoon feeding the compiler. See the interview with the creator, Matz.

  • Resources There are plenty of nice resources to learn Ruby.

    1. Basics of Ruby Video
    2. Envy Casts' Advanced Ruby Topics and Ruby 1.9 Coverage
    3. Lot of Free Books on Ruby

I strongly urge you to learn Ruby. I learned a lot of new concepts in programming in general and had loads of fun coding in it.

kunjaan
+1, and they can be compared as web application frameworks.
Bratch
+2  A: 

For me, the big thing was that Ruby is fun to write code in. It took me awhile to "get" it, but once I did it was like a giant lightbulb lit up, and it changed the way I code.

Specifically, understanding the concept of blocks is key. As a trivial example, here is something that I'd write in Delphi (or C#, similarly):

for j := 0 to SomeListObject.Count - 1 do
  DoSomething(SomeListObject[j]);

In Ruby, it's more like this:

some_list_object.each do |item|
  do_something(item)
end

or, more compactly, like this:

some_list_object.each { |item| do_something(item) }

It's a subtle change, but once you get the hang of it things just become easier, without iterator variables or anything messy.

To get started, I highly, highly recommend getting Programming Ruby 1.9 to get started, and Agile Web Development With Rails for getting started with Rails. You don't need to know Ruby very well to get started with Rails, but it'll make more sense more quickly if you do.

Tim Sullivan
just sheer curiosity: how would you find out if `item` is the first/last item on the list? I mean, when you don't have iterator variables?
Peter Perháč
@MasterPeter, a collection knows its "first" and "last" items, so you can ask "some_list_objects.first == some_item" or "some_list_objects.last == some_item". All together: "some_list_objects.each { |item| some_list_objects.last == item ? "foo" : "bar" }. This is a dumb example, but you get the idea.
Cody Caughlan
In addition to what Cody said, there is also an each_with_index method, which passes out two parameters: |item, index|.
Tim Sullivan