To_yaml method

Hello,

In order to learn Ruby, I am trying to write a Getting Things Done
manager in Ruby+YAML.

So, here is where I am : Parked at Loopia
Be carefull… Store#to_yaml is realy ugly !
So, how can I make this method prettier ?

BTW, this is probably not the only ugly method… so feel free to
correct me, it’ll
help me to learn the Ruby Way :slight_smile:

Thanks in advance,

Check out http://RubyMentor.rubyfoge.org for exactly this kind of
help/advice.

Aur

Thanks. I feel a bit uncomfortable with having a mentor (I don’t know
exactly why… maybe that’s too easy ?) but I’ll try to contact a
mentor and see what happen :slight_smile:
BTW, the concept is realy interesting… IMHO having a mentor is the
best way to learn something. AFAIK I haven’t seen project like this on
other porgramming language communauty.

2007/4/7, SonOfLilit [email protected]:

Thank you.

Don’t be uncomfortable, the worst that could happen is nothing.

I agree that the concept is interesting and great, and I, too, think
it’s original.

Hopefully you’ll join the rank of mentors soon :slight_smile:

Aur

On 4/7/07, Simon R. [email protected] wrote:

So, how can I make this method prettier ?


Simon R., http://atonie.org/sr/

A few style notes. The multiple assignment you do “tasks, projects =
Array.new, Array.new” is usually done on two lines, just for
readability, and dropping some complexity. Also you can just assign
to [], which gives you a blank array ({} for hashes).

@projects.each_pair { |k, v| projects << v }
@tasks.each_pair { |k, v| tasks << v }

Can be replaced with

tasks = @tasks.map {|x| x }
projects = @projects.map {|x| x }

With this you can also drop the array initialization. This method is
in the Enumerable module, which Hash and Array mixin. You could even
make it just be

    dump = @tasks.map {|x| x }
    dump << @projects.map {|x| x }
    return YAML.dump(dump)

Hope that helps you some!

On Apr 7, 5:27 pm, “Simon R.” [email protected] wrote:

correct me, it’ll
help me to learn the Ruby Way :slight_smile:

Thanks in advance,


Simon R.,Simon Rozet

Hey cool! A GTD application in ruby. I’m looking forward to see this
project on rubyforge.org :wink: