• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Ruby is good learned concurrent with Java, or better cover most java first

 
Ranch Hand
Posts: 403
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Ruby is good learned concurrent with Java, or better cover most java FIRST (like ALL text JAVA HTP7 DEITEL) and after start with Ruby?
Ruby is Learned in how many semesters(InterMediate), suppose background in PHP, js, Java/JSP?
 
author
Posts: 27
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Actually, if I was starting from scratch, I'd rather learn Ruby first, and Java second. You can become productive with Ruby extremely fast compared with Java. For comparison, when I teach Object-Oriented Programming, sometimes I do a 4-hours crash-course in Ruby, and then use Ruby to introduce OOP concepts. With Java, you can take an entire day just to explain all the things going on in "Hello World".

On the other hand, Ruby is like the English language: you can pick up the basics extremely fast, but it takes time to learn the nuances. I took a few months before I quit writing Ruby programs that just looked like Java programs written in Ruby.

It's up to you whether to learn Ruby alongside Java. For sure, it's a great language to use alongside Java, for all those things where Java is not a perfect match (like batch jobs, automation scripts, stuff that integrates with the system, etc.).
 
Leonidas Savvides
Ranch Hand
Posts: 403
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
generally, are you strongly recommend, either in Semester or Self-Learn, at a time being learning ONLY one programming lang, and after master it enough(eg intermediate-adv) then move to other programming lang??? Also somebody must learn languages in some order(of languages) like each subsequent lang be relative or in the same family?

Studying Ruby, how many semesters to get in (middle) intermediate level? After that is it good move to C/C#/C++...?
 
Author
Posts: 27
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I definitely agree that Ruby is a much better first language - it is just more expressive and has fewer things to learn before you can get into the good parts.

I would stick to learning one language at a time, but that may be a personal limitation ;)

I think it takes a week ( a hour or two at a time) to get the basics - syntax, looping, collections, conditionals, OO techniques, etc. At that point you know if you are going to like the language and can look into tool support, like editors, full IDEs, build tools, and unit test support. If you still like it at that point, then you need to write some slightly larger code - maybe file IO, XML creation, basic classes, and a network echo server. After that, I like projecteuler.net for small (and very geeky) programming puzzles and the Ruby Quiz for medium sized project ideas.

Hope you have a fun ride!
- CT


 
Paolo Perrotta
author
Posts: 27
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I agree with Ct Arrington estimates, and I also agree that it's easier to learn one language at a time. Still, you don't need to master one language before moving on to the next.

Look at "Programming Ruby 1.9" and "Metaprogramming Ruby" together. Getting one third through the first book, you'll be productive. If you finish (most of) both books, you can call yourself a very advanced Ruby coder. But you still need practice to be a "native Ruby coder".

Learning C# after Java is easy. C, and especially C++, tend to have a much steeper learning curve.
 
clojure forum advocate
Posts: 3479
Mac Objective C Clojure
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I don't recommend learning two languages concurrently, switching context is damaging (at least to me).
 
Ranch Hand
Posts: 235
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
One thing that stands out from this question is the number of languages the OP is trying to tackle. What is driving all this language acquisition?

My recommendation would be to learn a language for a purpose. I know a number, including Java. I chose to learn Ruby to enable me to look at OO programming from a different paradigm, and explore more powerful language features not found in Java.

As for the question of "how long does it take", that depends. Java took me a decent amount of time to learn, mainly because it takes longer to get things accomplished. With Ruby, I achieve more - faster, and therefore learn more about the language (and programming in general) in a shorter amount of time.

The other thing that's going to help you learn a new language is to have a goal for using it - beyond the academic exercise of language assimilation. Still, even if that's your only goal - Ruby is a fantastic choice.
 
Hussein Baghdadi
clojure forum advocate
Posts: 3479
Mac Objective C Clojure
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Michael Sullivan wrote:
As for the question of "how long does it take", that depends. Java took me a decent amount of time to learn, mainly because it takes longer to get things accomplished. With Ruby, I achieve more - faster, and therefore learn more about the language (and programming in general) in a shorter amount of time.


If Java requires more code to get things done comparing to Ruby (lets say you are writing a file scanner), this doesn't mean Java takes more time to learn.
After all the concept is the same (open a file, scan for something).
 
Michael Sullivan
Ranch Hand
Posts: 235
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Are you sure about that? If it takes me one hour to learn how to open a directory and scan it's contents in Java, vs. 15 minutes to do the same in Ruby - I'd argue that Ruby gives me 45 minutes to "learn" additional things. As Paolo described earlier in this thread, it even takes significantly longer to explain concepts in Java.

To be fair though, it's probably not a "time" issue at all. Java requires a developer to concentrate on low-level tasks (which lead to more lines of code and time spent), whereas Ruby requires considerably less low-level coding - allowing the developer to shift their attention to more important things. This surplus is often a side-effect of low-ceremony languages like Ruby.

 
reply
    Bookmark Topic Watch Topic
  • New Topic