Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re^2: RFC: Language::Logo

by liverpole (Monsignor)
on Jan 31, 2007 at 01:26 UTC ( [id://597480]=note: print w/replies, xml ) Need Help??


in reply to Re: RFC: Language::Logo
in thread RFC: Language::Logo

Yes, I have.

To be very honest with you, I was somewhat amazed that he did that.

After presenting my own idea and working code to the group (including all of the Tk drawing primitives which he then reimplemented, as well as a number which he did not), he then apparently thought it enough of a good idea to try rewriting (partially) and uploading to CPAN himself, but not good enough of an idea to mention my presentation or prior work, or the fact that he used the exact same "look and feel" of a "pen-up" turtle vs. a "pen-down" turtle.

Additionally, he points out that "his" work allows for multiple turtles simultaneously.  In fact, this was an idea which came out of the client/server model I had already used (and presented), and was in fact originally an idea proposed to me by my colleague wulvrine.

Now it may be that I'm just being naive to how open-source is supposed to work.  But after emailing Mr. London, and telling him that I was still planning on releasing my work to CPAN, he wrote back that it wasn't his intent to take anything away from what I had done, and offered to let me take over what he had already done.

So the way it's been left is that I'm going to maintain the Tk::CanvasLogo project.  I still need to find out exactly what the process is for doing that.


s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/

Replies are listed 'Best First'.
Re^3: RFC: Language::Logo
by belg4mit (Prior) on Feb 01, 2007 at 04:48 UTC
    Well, I think the point was that he really wanted you to inherit from Canvas. uri bitched about other aspects of the code, not inheriting bugged Greg. I was surprised at the module implementation though, as I still think that some division between Language::Logo and the visual aspect (Tk::Canvas::Logo, or what have you) be separated.

    As for taking over, the easiest is for him to give you commit bits to the project on PAUSE. You will then both have the ability to publish, though he would still be the first listed name in the module list. You could of course try to "set the record straight" in the POD with any updates.

    --
    In Bob We Trust, All Others Bring Data.

      So if someone feels strongly about the way a module is written, he should be allowed to take someone else's idea and implement it as his own?!  Wow ... I'm at a loss for words ...

      A good friend of mine told me a story years ago, when he had some novel ideas for a product (his field was biochemistry), and was trying to start his own company, but needed to get financing for it.  The venture capital corporation which he was talking with told him they were NOT willing to finance the development of a new technology.  "However", they said, "we would be fine with having you steal the technology from another company, and we will pay to defend you in court".  Apparently, that was a much cheaper, and presumably profitable strategy.  My friend was very disappointed, but he gave up the idea because the thought of stealing someone else's ideas went against his values.

      So let me ask you ... let's say you had presented one of your modules before publishing them, perhaps this or maybe this.  And Greg London heard your presentation, but felt strongly about the namespace, or other implementation details.  Or maybe he simply noticed that you hadn't yet published it on CPAN.  Would that have given him the ethical right to publish it first?

      I wonder how Mr. London would feel if I started distributing this or this with my own name on it instead of his own?  (I wouldn't do that of course -- it goes against my moral standards).


      s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/
        | ...
        |   In Mr. London's case, you should probably think of it as a proof of concept for you, 
        | rather than be so offended. I did also indicate that you could ammend the POD in the future. 
        | You are conflating two separate issues, "no credit" and "reinventing the wheel."
        | ...
        
        I personally, see CPAN very similar with how the scientific comunity behaves with new published investigations. You shouldn't feel so naive in the future. You are the one that 'loves' your creation. You can make it improve if you want...

        I heard the story of the creator of the silicon transistor at Science Friday a month or two ago. Even though he was recognized as the real inventor, the world remembers other two scientists.

        He was, though, very paranoid and I guess that with a reason. A reporter has recently interviewed all the people that knew him, and noone accepted him as the real creator. Nobody liked him. To such a level as to psychollogically deny his invention. He was a real genius. But not even I that now know the real facts can remember him (not joking!). I heard that it was scientifically explained as an effect that is completelly the oposite to what charisma is. At the moment that he came into a room everybody started hating him for no reason :) .

        But what that proved to me is to what an extension does love come to be what matters. If you developed the complete idea, it is very difficult for someone else to improve it unless he is a real empathic person. And in that case, he wouldn't do that... There is a paralell thinking involved in all the creation that nobody is able to understand. What is always possible is to grab your created object and use it for something different. But you are the father of your creation. And you are the only one 'author ized' to possibly improve it... CPAN is not bad.

        It's not a matter of namespace, and I did not create either of those modules, but am a maintainer. On the other hand, I did create Data::JavaScript::LiteObject in response to Data::JavaScript (of which I am now maintainer, and intend to one day merge the two), and I see no problem with that. In Mr. London's case, you should probably think of it as a proof of concept for you, rather than be so offended. I did also indicate that you could ammend the POD in the future. You are conflating two separate issues, "no credit" and "reinventing the wheel."

        --
        In Bob We Trust, All Others Bring Data.

        So if someone feels strongly about the way a module is written, he should be allowed to take someone else's idea and implement it as his own?!

        Not exactly, no; and I don't think anyone means to imply that. However, there's a subtle point that I think should not be so subtle.

        Open-source thrives on people feeling strongly about the way something is done, taking its core idea, and implement it in their own way. The fact that Mr. London seems to have used your ideas to create his own implementation is not a problem, and I hope you realize that varieties of implementations like that are part of how the community works. It may not be always ideal, but it's commonly an improvement (look at the X.org fork that's replacing the slow-moving XFree86 X11 servers).

        However, it is considered inappropriate in the Open-source community (and just about everywhere else) to do something like that and not credit the original ideas. It's called plagiarism when one person claims another's ideas as his own.

        That said, it seems like Mr. London's intentions were honorable, as evidenced by his willingness to hand control of the module to you -- you can easily update the docs to say something like "Mr. London's implementation of the ideas in Language::Logo, which were pitched by liverpole at a Perl Monger's meeting...".

        Intentions aside, though, we do have a responsibility to credit others' work -- and that includes ideas, etc. that feed that work. The reward for contributing to Open-source is credibility and recognition; it's important that we as a community pay extra-special attention to making sure credit is given when due.

        <radiant.matrix>
        Ramblings and references
        The Code that can be seen is not the true Code
        I haven't found a problem yet that can't be solved by a well-placed trebuchet

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://597480]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chilling in the Monastery: (5)
As of 2024-04-18 14:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found