Skip Menu |

This queue is for tickets about the Data-Dumper-EasyOO CPAN distribution.

Report information
The Basics
Id: 4631
Status: open
Priority: 0/
Queue: Data-Dumper-EasyOO

People
Owner: Nobody in particular
Requestors: MARKSTOS [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.01
Fixed in: (no value)



Subject: negative documentation is confusing
I like the idea of this module, but the documentation is confusing. It spends a lot of time telling me what it /doesn't do/ Sometimes it looks like the code example are of what Data::Dumper does, /not/ what this module does. That's confusing. Here are some of the documentation headings that tell me what the module doesn't do: * calls to OO-DD are Too Verbose * Too Hard to Label data * Format Control is Cumbersome * Early Binding of Data I suggest making all the subject headings positive statements about features this module actually has. The code samples should all be samples of /this/ module as well, or they should be presented as a clear comparison between the old school way and the new school way.
Date: Wed, 10 Dec 2003 16:00:27 -0700
From: Jim Cromie <jcromie [...] divsol.com>
To: bug-Data-Dumper-EasyOO [...] rt.cpan.org
Subject: Re: [cpan #4631] negative documentation is confusing
RT-Send-Cc:
Guest via RT wrote: Show quoted text
>This message about Data-Dumper-EasyOO was sent to you by guest <> via rt.cpan.org > >Full context and any attached attachments can be found at: ><URL: https://rt.cpan.org/Ticket/Display.html?id=4631 > > >I like the idea of this module, but the documentation is confusing. It spends a lot of time telling me what it /doesn't do/ Sometimes it looks like the code example are of what Data::Dumper does, /not/ what this module does. That's confusing. Here are some of the documentation headings that tell me what the module doesn't do: > > * calls to OO-DD are Too Verbose > * Too Hard to Label data > * Format Control is Cumbersome > * Early Binding of Data > >I suggest making all the subject headings positive statements about features this module actually has. The code samples should all be samples of /this/ module as well, or they should be presented as a clear comparison between the old school way and the new school way. > > >. > > >
Thanks for your comments. 2 word answer; WHICH IT ? I think youre mixing up DD-OO, which refers to Data::Dumper Object Oriented style, and the limitations thereof, with EzDD. I tried to use $ezdd as a handle-var consistently to help clarify the virtues of ExDD vs DD-OO. Isuppose Ive implicitly assumed an experience with DD, and write from that knowledge. In next release, Ill preface my Pod with such a qualifier. Ill try to do a kinder-gentler version too, but can make no promises. Please let me know if these answers help you on a reread, thanks in advance jimc
Subject: negative documentation is confusing - now fixed
hey Mark, One year later, Im sufficiently distant from my prose to realize how right you were (ie what crap it was). Ive gutted the pod and replaced it with a 'you can do this' list. I hope you find it a significant improvement. thanks for the feedback, jimc
Subject: simple synopsis rerequested.
From: markstos [...] cpan.org
[JCROMIE - Tue Mar 8 10:55:43 2005]: Show quoted text
> hey Mark, > > One year later, Im sufficiently distant from my prose to realize how > right you were (ie what crap it was). Ive gutted the pod and replaced > it with a 'you can do this' list. I hope you find it a significant > improvement.
Thanks. Here's further documentatiomn suggestion. If you module is 'Easy', it doesn't look "simple" from the documentation. To use Data::Dumper, I can do this: use Data::Dumper; warn Dumper($foo); Any replacement needs to be nearly as easy to use, or it won't get used. From the current Synopsis, it looks like I might need to do 20 lines of setup just to dump some data. If your module has way to use it 'quickly', I would put that as a first stand-alone example in the Synopsis. I'm hoping something like this might be be possible: use Data::Dumper::EasyOO ( alias => EzDD ); EzDD->Dumper($foo); Perhaps the user needs to initialize it with more options to be valuable. Whatever it is, I would begin the Synopsis with the simplest possible common example usage. Save some of the features that are less important for the detailed documentation. Mark
Date: Tue, 08 Mar 2005 13:08:21 -0700
From: Jim Cromie <jcromie [...] divsol.com>
To: bug-Data-Dumper-EasyOO [...] rt.cpan.org
Subject: Re: [cpan #4631] simple synopsis rerequested.
RT-Send-Cc:
via RT wrote: Show quoted text
>This message about Data-Dumper-EasyOO was sent to you by MARKSTOS <MARKSTOS@cpan.org> via rt.cpan.org > > > > Here's further documentatiomn suggestion. > >If you module is 'Easy', it doesn't look "simple" from the documentation. > >To use Data::Dumper, I can do this: > > use Data::Dumper; > warn Dumper($foo); > > >
the nearest (current) equivalent would be use Data::Dumper::EasyOO(init => \our $ez); $ez->($foo); # output like DD's Dumper($foo) $ez->(foo=>$foo); # labelled like output from DD::Dumper->Dump([$foo],['foo']) Show quoted text
>Any replacement needs to be nearly as easy to use, or it won't get used. >
>>From the current Synopsis, it looks like I might need to do 20 lines of
>setup just to dump some data. > >If your module has way to use it 'quickly', I would put that as a first >stand-alone example in the Synopsis. > >I'm hoping something like this might be be possible: > > use Data::Dumper::EasyOO ( alias => EzDD ); > EzDD->Dumper($foo); > > >
Hmm. the object is a blessed codref, and needs a variable to hold the reference. But wrt your specific example, I *could* do it. I could export ezdump ( this is less polluting than dump, or pp ) this would be most DD like; with a default export, no use-time stuff is needed. use Data::Dumper::EasyOO; ezdump($foo); or I could pollute &{$callrpkg}::EzDD (reasonable when alias is used) then &EzDD could return a ref to a (newly constructed) default object, thus supporting EzDD->(@args) and while im in a polluting mood, $EzDD might as well hold that default object, so $EzDD->(foo=>$bar) also works. Show quoted text
>Perhaps the user needs to initialize it with more options to be valuable. > >
this is the crux of it. EzDD is for adjusting DD the way I like it, the rest is just feeping creaturism. Show quoted text
>Whatever it is, I would begin the Synopsis with the simplest possible >common example usage. > > >
it would certainly be easy to move the big synopsis down into desc, and write a 2 liner, as you suggest. Show quoted text
>Save some of the features that are less important for the detailed >documentation. > > Mark > > > >
Hmm, I started this response thinking I was going to solicit further input, but Im pretty much sold already. though Im still listening. Now to find out if I can cram all that in w/o breaking something else. thanks again jimc
Date: Tue, 08 Mar 2005 13:08:35 -0700
From: Jim Cromie <jcromie [...] divsol.com>
To: bug-Data-Dumper-EasyOO [...] rt.cpan.org
Subject: Re: [cpan #4631] simple synopsis rerequested.
RT-Send-Cc:
via RT wrote: Show quoted text
>This message about Data-Dumper-EasyOO was sent to you by MARKSTOS <MARKSTOS@cpan.org> via rt.cpan.org > > > > Here's further documentatiomn suggestion. > >If you module is 'Easy', it doesn't look "simple" from the documentation. > >To use Data::Dumper, I can do this: > > use Data::Dumper; > warn Dumper($foo); > > >
the nearest (current) equivalent would be use Data::Dumper::EasyOO(init => \our $ez); $ez->($foo); # output like DD's Dumper($foo) $ez->(foo=>$foo); # labelled like output from DD::Dumper->Dump([$foo],['foo']) Show quoted text
>Any replacement needs to be nearly as easy to use, or it won't get used. >
>>From the current Synopsis, it looks like I might need to do 20 lines of
>setup just to dump some data. > >If your module has way to use it 'quickly', I would put that as a first >stand-alone example in the Synopsis. > >I'm hoping something like this might be be possible: > > use Data::Dumper::EasyOO ( alias => EzDD ); > EzDD->Dumper($foo); > > >
Hmm. the object is a blessed codref, and needs a variable to hold the reference. But wrt your specific example, I *could* do it. I could export ezdump ( this is less polluting than dump, or pp ) this would be most DD like; with a default export, no use-time stuff is needed. use Data::Dumper::EasyOO; ezdump($foo); or I could pollute &{$callrpkg}::EzDD (reasonable when alias is used) then &EzDD could return a ref to a (newly constructed) default object, thus supporting EzDD->(@args) and while im in a polluting mood, $EzDD might as well hold that default object, so $EzDD->(foo=>$bar) also works. Show quoted text
>Perhaps the user needs to initialize it with more options to be valuable. > >
this is the crux of it. EzDD is for adjusting DD the way I like it, the rest is just feeping creaturism. Show quoted text
>Whatever it is, I would begin the Synopsis with the simplest possible >common example usage. > > >
it would certainly be easy to move the big synopsis down into desc, and write a 2 liner, as you suggest. Show quoted text
>Save some of the features that are less important for the detailed >documentation. > > Mark > > > >
Hmm, I started this response thinking I was going to solicit further input, but Im pretty much sold already. though Im still listening. Now to find out if I can cram all that in w/o breaking something else. thanks again jimc
Alrightee, now have simple SYNOPSIS, and 2 new exports: ezdump() - a Dumper equivalent $ezdump - the EzDD object that ezdump() uses. it lets you alter the object's print-style after use-time. the old synopsis is now A FULL-FEATURED EXAMPLE. thanks for the feedback. Jim Cromie