Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor timers into module #27

Closed
wants to merge 4 commits into from
Closed

Refactor timers into module #27

wants to merge 4 commits into from

Conversation

ioquatix
Copy link
Member

I welcome all feedback. This is a pretty minor change, functionally, but would be good going forward to use a top level module Timers rather than a class.

@digitalextremist
Copy link
Contributor

You added yourself to the copyright @ioquatix?

@tarcieri
Copy link
Contributor

@digitalextremist lots of discussion about that, see #28 and #29.

I'm going to add a standard copyright header that can be used on all files, potentially across all Celluloid projects

@digitalextremist
Copy link
Contributor

Thanks @tarcieri. I have comments on this, since this is apparently happening.

@ioquatix, I don't understand your tone or the time taken to debate this, compared to working.

I personally don't need attribution, and I've done a lot. At the risk of discussing this further and losing more time in the process, the argument I hear is "legal protection!" and then "we need attribution!" with one being the answer to the other, and visa versa. It's a cyclical non-sequitur. Which is it? It seems like attribution is the priority -- but that is such a thin desire. I am perfectly fine with all attribution showing Tony Arcieri because of how present he is, and how current he remains with the code. He answers hours of questions from fly-by-night Type-A personalities and from gracious producers alike, not showing any kind of frustration toward people being down right ridiculous at times. It's not about putting lines of code in a file that gets attribution in my book -- it's actual leadership and availability of the person named. So I would not make a list of contributors if that takes away from writing code. Unless we form some kind of non-profit, Celluloid is not multi-author in my opinion.

And with MIT, it is as-is. It is free and unconfined. There is no attempt made to do anywhere near the kind of "legal protection" I hear demanded or inferred as being unfoolish. So since it's MIT licensed, it's not about legal protection, but attribution that copyright naming would be changed or added to. That's why I say I don't understand the tone here. Who are you? There are a lot of contributors on Celluloid code and it seems totally unnecessary to list them all. This is just what we do, and we can be easily found and interacted with, which is the real point - not attribution. It has always felt like current participation ( i.e. working; today, now ) is much more important to us.

The way this has come up feels wrong to me. If it's going to be like this then there apparently needs to be voting now about how things are done, but this has always been a benevolent dictatorship which is typical of Free Open Source Software historically. @halorgium has pulled an extreme amount of weight and I've never seen him challenge that even. There are several constant contributors and a deluge of infrequent contributors, and literally no one I've seen has ever broached this, much less just injected their name in a pull request like it's nothing.

@ioquatix
Copy link
Member Author

ioquatix commented Jun 2, 2014

The MIT license explicitly requires copyright to be declared, it is part of the license definition: http://opensource.org/licenses/MIT

Yes, this is about both attribution and also a legal protection.

@benlangfeld
Copy link

With all due respect, @ioquatix, I don't see how indenting some code requires attribution. You're trying to set a precedent here on the basis of your contribution which appears to be the smallest of any... This seems premature. I'm not sure what you want your indenting legally protected from, either.

@halorgium
Copy link

@benlangfeld Whitespace is important. 😀

@ioquatix
Copy link
Member Author

ioquatix commented Jun 2, 2014

@benlangfeld @halorgium Before you jump on the bandwagon, at least take the time to understand the entire situation, otherwise you just come across as being rude and insensitive. I assume you are just joking around but in another possible interpretation it sounds like you are trying to belittle my contribution and the fact that I've dedicated several days tracking down an incidious bug. I'm sure this isn't the kind of environment you want for the project?

I personally believe that it is respectful to acknowledge people who contribute to a project, no matter how small or large the contribution. I'm not sure if you also believe this or not, but it seems reasonable to me.

I don't really care if the PR is accepted or not, but I do care about the bug being fixed. I've worked with @tarcieri (#28) and incorporated all his constructive feedback. Seriously, I'm doing my best to get this PR to a point where it is good to be merged and if you have constructive feedback about how this issue can be resolved by all means make a suggestion.

I'm closing this PR, please continue the discussion where productive on pull/28 as linked above since that one incorporates all the changes.

@ioquatix ioquatix closed this Jun 2, 2014
@ioquatix ioquatix deleted the refactor-timers-into-module branch June 2, 2014 00:58
@benlangfeld
Copy link

@ioquatix All I'm saying is that I think you're approaching this wrong. If you believe there should be a change to how contributors are acknowledged, or to licensing, perhaps raise it in an entirely separate issue to your own contribution, and start with the people who have contributed most. If you only incorporate your own minor contribution, regardless of your overall view on attribution, it just looks like blowing your own horn, and it's a little distasteful.

I'm not sure, frankly, that I do agree that the technicalities of copyright management and "legal protection" being important for a project as liberal as Celluloid. On the group of projects I manage we have established a non-profit 501(c)(3) corporation to which copyright is assigned for the purpose of preventing challenges against the project. Your desire to see individual contributors copyright acknowledged here has only one purpose - a potential legal challenge on the project's licensing from the contributor. If your contribution comes with the possibility of demanding that your code be removed in future, I'm not sure it's a useful contribution. Celluloid does not currently employ any copyright assignment, but has up to now assumed copyright surrender, or at the very least skirted the subject. I'd like to understand what sort of protection you're looking for.

As for belittling your contribution, if you check the title of this PR (which basically means mass indent and the addition of module Timers and not a lot more) against the first change in the diff, you'll perhaps understand people's reaction.

Attribution in a list of contributors (perhaps in the README, via git log, etc) is fine, and I would support such a thing if it were comprehensive, but to just add yourself alongside Tony as if there's some equality in the amount of work done is a little absurd. I'm sure you can appreciate this.

@ioquatix
Copy link
Member Author

ioquatix commented Jun 2, 2014

@benlangfeld My contribution comes with a standard copyright addition to the MIT license. If that isn't appropriate, it needs to be clearly documented in the Contributing section that no contributions will be attributed. "Blowing my own horn" is so far out there I'm not sure what to say.

I'd like to understand what sort of protection you're looking for.

I think I've described my opinion on the matter in several places, however I'll summarise some of the points:

(a) disclaim warranty (b) ensure the code carries an explicit license (c) explicit list of contributors (d) acknowledge contributors (e) make explicit the protections usually already covering the work.

As for belittling your contribution... (which basically means mass indent and the addition of module Timers and not a lot more)

As I've already said, this discussion spans a number of PRs and changes. I don't feel that it is worth my time to understand people's reactions when they themselves won't take the time to understand the entire situation?

celluloid/celluloid#432
celluloid/celluloid#435
celluloid/celluloid#436
celluloid/celluloid#426
celluloid/celluloid-io#56
celluloid/celluloid-io#101
celluloid/celluloid-io#111

but to just add yourself alongside Tony as if there's some equality in the amount of work done is a little absurd. I'm sure you can appreciate this.

Not sure where you are getting this from. There is no easy measure of the importance of a given PR. Although, the work I've done fixes some major bugs with Celluloid and Celluloid::IO - good luck trying to use them for anything serious without my PRs.

Attribution in a list of contributors (perhaps in the README, via git log, etc) is fine, and I would support such a thing if it were comprehensive

To keep the license and attributions up to date, this is the role of the project maintainer and the contributor who made the contribution. Putting this all on my shoulders is completely unrealistic. To retroactively add attribution might be against the original authors wishes. I'm not sure how you fix this without contacting all the original authors - my goal was to fix the bug, not fix problems with how the project has attributed past authors. With my bug fix comes an attribution in a standard way which makes sense to me given that there is no current established method. I'm very flexible on this and have already changed the PR based on feedback.

All I'm saying is that I think you're approaching this wrong

Okay, how should I approach it? Here are my goals in order of importance: (1) the bug fixed (2) acknowledgement and clear licensing/copyright status.

@digitalextremist
Copy link
Contributor

Fixing the bug, I feel, is always priority number one here.

What @benlangfeld said about the liberality of Celluloid I agree with completely. If there were a desire for formality or voting processes, or a lot of protection for contributors, or for in-depth attribution, a non-profit or unincorporated association would be appropriate. But the decision to do that, and the conversation/debate of whether to handle attribution differently, is not for a pull request or issue on GitHub. That's for Google Groups, or an in-person meet up. It's an issue of philosophy and convention. It's a standards oriented conversation, not to be even attempted alongside code being adopted. And no one is asking you to handle licensing and attribution.

The blowing your own horn comment is not far out there, it did come off as that. And talk about code being essential for other code so "good luck with that" is probably the worst move in trying to have a positive working arrangement with those who contribute. There is a lot of respect here.

To assume your contributions are not appreciated is an unsafe bet -- they are appreciated; but the trade-off of turmoil and difficulty here versus contributions made, is pretty extreme. If you feel strongly, bring it up in the right channel, and don't bog down a library you use and respect, or those who work together to maintain it. There's a lot of negative momentum here, which can end. Are you here to dictate policy, or are we all here to work together on what deserves good work?

@ioquatix
Copy link
Member Author

ioquatix commented Jun 2, 2014

The blowing your own horn comment is not far out there, it did come off as that. And talk about code being essential for other code so "good luck with that" is probably the worst move in trying to have a positive working arrangement with those who contribute.

It's not my fault the current code is buggy as hell and doesn't work. I couldn't care less about politics, I just want the code fixed and working. Since when did adding your name to a copyright statement come across as "blowing a horn"!?

of whether to handle attribution differently, is not for a pull request or issue on GitHub

Okay, what is the CORRECT way to handle attribution in this project? Tell me clearly and I'll update the PR.

@digitalextremist
Copy link
Contributor

  • Clean Up: Remove all ( new ) attribution and licensing from all your code, unless specifically asked to do otherwise. This includes notes inside comments and comment blocks of who wrote the comment. The comment ought to be enough explanation without someone needing to be contacted to explain an explanation of code that ought to explain itself. If there is a need for description of a complex process or library used, put the link in as a comment.
  • Propose: Submit your thoughts on legal protection and handling of attribution to the Google Group.
  • Wait: Allow the discussion there, and on IRC ( freenode, channel #celluloid ) to progress naturally.
  • Watch: If there is an agreement of how to handle licensing, and/or attribution, that will lead to its own Issue, and not at all be lumped into another PR. The appropriate person for the job will take over the ticket, or the right person ( a contributor with rights to commit ) will be assigned the Issue. Discussion of attribution in an Issue IMO is also not appropriate. Use the Google Group for all discussion of convention, philosophy, standard, etc.
  • Interact: If you don't like something that happened, or you want something different, return to the Google Group and hash it out, or use IRC, and if there are files for which you have a specific suggestion, give the link of the line(s) directly.

Use the IRC channel and Google Groups to all our advantage.

If you want to talk about this on IRC, you can find all of us there, with the same handle there as on Github, usually. There is no one at Celluloid paid to do this full time or part time such as sponsored projects have. The Google Group allows conversations to progress well, then they usually lead to Wiki content. Otherwise if you push too hard on IRC you won't get much done some times, just like this PR and the associated Issues with discussions outside pure code being committed, because all of us have lives outside talking about Celluloid and working on its suite of technologies. Most of us are very busy. We're really fortunate to even get time at all with the contributors around us. Google Groups is the default, IRC is a great option but often a luxury.

Oh, and walls of text are discouraged... On GitHub and on Google Groups. Especially on Google Groups though. On GitHub we just want to enact what is already decided. Terse comments ( not like this one now, or many of yours ) are ideal.

Everything in a ticket or PR ought to require no discussion except clarification of the technical issue experienced, feedback on specific technical behaviors experienced, instruction on how to correct or change something that exists right now, descriptions on what ought to exist next, etc. GitHub is where we do work, not debate or decide things having to do with internal dynamics, making legal decisions, critiquing each other personally, etc.

@digitalextremist
Copy link
Contributor

And in response to why there are bugs, here is the culprit.

©️ @halorgium

@benlangfeld
Copy link

Not sure where you are getting this from. There is no easy measure of the importance of a given PR. Although, the work I've done fixes some major bugs with Celluloid and Celluloid::IO - good luck trying to use them for anything serious without my PRs.

It's not my fault the current code is buggy as hell and doesn't work.

I think these two comments explain why you consider yourself creditable as secondary author of Celluloid, and I doubt you're going to understand why people disagree with you. It's this arrogance that is generating objections.

As for not being interested in politics...you're the one who started the non-technical discussion here.

The correct way to handle attribution currently is git log. No other format has been established, and listing only yourself alongside Tony comes off not as avoiding the work of completing the list (which would take all of 2 minutes for a simple list of contributors in the README), but rather as trying to overstate your contribution and compare it to the years of work Tony (and some others) have done to arrive at this state of "buggy as hell and broken" that we have.

@tarcieri
Copy link
Contributor

tarcieri commented Jun 2, 2014

I've added a toplevel AUTHORS.md file which credits all the current authors. @ioquatix feel free to add yourself to that in future PRs (or rebase).

I was planning on adding a rake task to generate some header boilerplate which points to LICENSE and AUTHORS.md ala Rust. Maybe I'll get to it tonight. I don't think this should hold up getting any PRs merged in the meantime, though.

@ioquatix
Copy link
Member Author

ioquatix commented Jun 2, 2014

@benlangfeld I'm arrogant because I spent a week fixing bugs in an open source project and submitted what I thought was a reasonable PR and asked for open discussion? Thanks for that.

@digitalextremist Thanks for the clear list. Have you actually read the PR #28 source code rather than this one? Have you read the discussion between myself and @tarcieri which resulted in AUTHORS.md (PR #29)? Anyway, I think the list is already all done in #28 after I rebased #29. Thanks for the other clarifications about how things are discussed. Perhaps you should put this into the README under contributions section.

@tarcieri Yes, thanks for bringing sanity to this issue. I think that the solution you are proposing is reasonable and will bring a systematic form of attribution for all authors.

@benlangfeld
Copy link

The arrogance comes through in your comments to the effect I of "you'd all be fucked without me" and the implication that your contributions are worth more than everyone else's.

We're never going to understand each other here though, so that will be the sum of my comments on the matter.

@digitalextremist
Copy link
Contributor

@ioquatix I thought @benlangfeld went easy on you!

I pounded out my todo list as a way to curb my frustration, fully agreeing with Ben.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants