1.9.1?


#1

Hi there,

I’m about 2 weeks into my learning attempt at Ruby (1.8.6 is what I’ve
cut my teeth on).

Can someone give me a rational assessment of the differences between
the two language versions, and which one I should continue to pursue?

I’m mainly using Ruby with Rails to make basic webapps for my own
edification.

Thanks!

Alex


#2

On Tue, Feb 3, 2009 at 6:14 PM, yuckysocks removed_email_address@domain.invalid
wrote:

Thanks!

Alex

Very short answer:

  • new virtual machine (previously just AST interpreter)
  • memory diet for some objects (Object, Array, String etc)
  • improved speed (see
    http://antoniocangiano.com/2008/12/09/the-great-ruby-shootout-december-2008/)
  • added character encoding support (previously works only with raw
    bytes)
  • new syntax for hashes with symbols as keys, hashes preserve keys order
  • many changes to API (improved, added consistency, removed deprecated
    code etc)
  • changes in language semantics (for example block arguments now works
    (almost?) the same as method arguments)
  • new lambda literal: ->
  • external iterators (class Enumerator) now are built in
  • new concept such a fiber (class Fiber)
  • native threads (but with GIL like python)
  • rubygems, rake are built in
  • minitest supercedes old test/unit


Pozdrawiam

Rados³aw Bu³at
http://radarek.jogger.pl - mój blog


#3

So since these changes have been made, will us noobs be hurting
ourselves
starting off learning 1.8.6? Books to learn from are teaching from 1.8.

thanks

2009/2/3 Radosław Bułat removed_email_address@domain.invalid


#4

Hi –

On Wed, 4 Feb 2009, Zayd A. wrote:

So since these changes have been made, will us noobs be hurting ourselves
starting off learning 1.8.6? Books to learn from are teaching from 1.8.

If you can wait about 1.5 months or so you can read “The Well-Grounded
Rubyist” (already available in early-access PDF), which is about
1.9.1. See http://www.manning.com/black2. Meanwhile there’s a ton of
stuff you can learn in 1.8.6 that hasn’t changed, or where the changes
are likely to make more sense to you anyway (like “abc”[0] being “a”
rather than 97).

See also my recent blog posts on 1.8/1.9:

http://dablog.rubypal.com/2009/1/14/10-things-to-be-aware-of-in-moving-to-ruby-1-9
http://dablog.rubypal.com/2009/1/16/son-of-10-things-to-be-aware-of-in-ruby-1-9

David


David A. Black / Ruby Power and Light, LLC
Ruby/Rails consulting & training: http://www.rubypal.com
Coming in 2009: The Well-Grounded Rubyist (http://manning.com/black2)

http://www.wishsight.com => Independent, social wishlist management!


#5

Not all books. Take a look at Programming 1.9 by Pragmatic Programmers
(http://preview.tinyurl.com/7xfvk7). They constantly update their PDF
books to keep in step with the latest changes to Ruby.

Good luck.

2009/2/3 Zayd A. removed_email_address@domain.invalid


#6

On Feb 3, 2009, at 12:52 PM, Zayd A. wrote:

So since these changes have been made, will us noobs be hurting
ourselves starting off learning 1.8.6? Books to learn from are
teaching from 1.8.

No, you will be fine. It’s not a super tough transition when you are
ready.

James Edward G. II


#7

Hey Alex,
How is your learning process going? I’m currently learning Ruby also. I
picked up “Beginning Ruby” by Peter C.(Excellent read), and “Design
Patterns In Ruby”. What kind of projects are you creating and practicing
to
sharpen your skills? I need some simple projects to start creating. Do
you
have any suggestions?

Thanks
Zayd


#8

Thanks Guys. So in a short list, what should be the features to stay
away
from in 1.8, I just purchased “Beginning Ruby” by Peter C., I really
would hate to struggle trying to get something then find out its no
longer
needed or being used in 1.9 lol.

Thanks

2009/2/3 Jonathon B. removed_email_address@domain.invalid


#9

Hi,

On Feb 3, 2009, at 12:52 PM, Zayd A. wrote:

Books to learn from are teaching from 1.8.

In addition to those already mentioned in this thread, Flanagan’s The
Ruby P.ming Language
(O’Reilly) is a great book in general and
touched on Ruby 1.9 even though it was published over a year ago. It’s
not completely up to date with 1.9.1, but covers many of the
conceptual changes.

Stephen


#10

WHEW!! :slight_smile: okay cool

Thanks


#11

On Feb 3, 2009, at 1:05 PM, Zayd A. wrote:

I need some simple projects to start creating. Do you have any
suggestions?

You might try some of the easier questions from Ruby Q.:

http://rubyquiz.com/

The problems a bunch of people solved are generally the easiest. For
example, have a look at:

http://rubyquiz.com/quiz14.html

and:

http://rubyquiz.com/quiz84.html

James Edward G. II


#12

James G. wrote:

On Feb 3, 2009, at 1:05 PM, Zayd A. wrote:

I need some simple projects to start creating. Do you have any
suggestions?

You might try some of the easier questions from Ruby Q.:

http://rubyquiz.com/

The problems a bunch of people solved are generally the easiest. For
example, have a look at:

http://rubyquiz.com/quiz14.html

and:

http://rubyquiz.com/quiz84.html

James Edward G. II

Thanks James I will try some of the easier ones :slight_smile:


#13

Keep going with 1.8. There’s more in 1.9 and strings are unicode.

Blog: http://random8.zenunit.com/
Learn rails: http://sensei.zenunit.com/

On 04/02/2009, at 4:14 AM, yuckysocks removed_email_address@domain.invalid


#14

2009/2/3 Zayd A. removed_email_address@domain.invalid:

So since these changes have been made, will us noobs be hurting ourselves
starting off learning 1.8.6? Books to learn from are teaching from 1.8.

I think things are looking up for Ruby 1.9 books, actually. Here’s
the path I’d recommend (with some obvious bias)

= To grasp the fundamentals

“The Well Grounded Rubyist” [0]

= To understand the details

“Programming Ruby 1.9” [1] and/or “The Ruby P.ming Language” [2]

= To use Ruby effectively

“Ruby Best Practices” [3]


This will give you a very well rounded experience, and once you
understand Ruby 1.9, quite a bit of your knowledge will still transfer
smoothly back to 1.8.
Most of these books are in Beta right now, all except [2], but if you
pick them up know you will help us catch problems before we go to
print, improving the situation for those taking the plunge directly
into Ruby 1.9.

-greg

[0] http://www.manning.com/black2/
[1] http://www.pragprog.com/titles/ruby3/programming-ruby-1-9
[2] http://oreilly.com/catalog/9780596516178/
[3] http://rubybestpractices.com


#15

Thanks Guys!!


#16

On Feb 3, 7:12 pm, Zayd A. removed_email_address@domain.invalid wrote:

Thanks Guys. So in a short list, what should be the features to stay away
from in 1.8, I just purchased “Beginning Ruby” by Peter C., I really
would hate to struggle trying to get something then find out its no longer
needed or being used in 1.9 lol.

I’d definitly put the whole string encoding: that’s changed pretty
much completely. And there are a few more things within the string
class but they are pretty minor. Also there’s some trickery about
variables scopes in 1.8 that has been “fixed” in 1.9.1.

But as others said for most people the transition from 1.8 to 1.9
should be pretty painless (transitioning the actual codes may be
another matter, I don’t know). And if you are stuck at any point, feel
free to send a message to this list and I am sure you’ll get tons of
advices plus people will warn you if that’s something that’s been
changed in 1.9.

So in the end, enjoy learning 1.8: 1.9 is still pretty similar! :slight_smile:

Diego


#17

On Tue, 03 Feb 2009 09:14:42 -0800, yuckysocks wrote:

Thanks!

Alex

AFAIK, Rails isn’t available for 1.9 yet, and much of the good stuff in
the Ruby 1.9 APIs is actually inspired by and taken from Rails. Stick
with 1.8 for now. Learning the new stuff for 1.9 should be relatively
easy – I’ve been able to move some code I’ve written for 1.8, and run
it
on 1.9 without changes and all unit tests pass.

–Ken


#18

On Thu, Feb 5, 2009 at 4:09 AM, Ken B. removed_email_address@domain.invalid wrote:

AFAIK, Rails isn’t available for 1.9 yet, and much of the good stuff in
the Ruby 1.9 APIs is actually inspired by and taken from Rails.

I don’t think so. I can name only one thing (Symbol#to_proc) which was
popularized by rails (and even not invented by rails itself).


Pozdrawiam

Rados³aw Bu³at
http://radarek.jogger.pl - mój blog


#19

2009/2/5 David A. Black removed_email_address@domain.invalid

I don’t think so. I can name only one thing (Symbol#to_proc) which was
popularized by rails (and even not invented by rails itself).

There’s also #each_with_object.

No, it looks like this went from Ruby 1.9 TO Rails

http://rails.lighthouseapp.com/projects/8994/tickets/962-injecting-on-enumerable


Rick DeNatale

Blog: http://talklikeaduck.denhaven2.com/
Twitter: http://twitter.com/RickDeNatale


#20

unsescribe me.

2009/2/3, yuckysocks removed_email_address@domain.invalid:

edification.

Thanks!

Alex


Jawad ZOULGAMI
Omnidata
74,Bd Abdelmoumen
20100 Casablanca - Maroc
Gsm: +212 (0) 67 43 25 78
removed_email_address@domain.invalid
www.omnidata.co.ma