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

Welcome, a heap of gratitude and update! #574

Closed
elbenfreund opened this issue Mar 1, 2020 · 82 comments
Closed

Welcome, a heap of gratitude and update! #574

elbenfreund opened this issue Mar 1, 2020 · 82 comments
Labels

Comments

@elbenfreund
Copy link
Contributor

elbenfreund commented Mar 1, 2020

To everyone involved, be it on the sidelines or right down in the thick of it for the past weeks:
Thank you all for your continued interest and investments.

After two years of work related neglect, I am starting to slowly claw my way back towards hamster.
As this is just the start, I want to focus on one big message right here:

THANK YOU ALL I understand there has been friction among some of our recent contributors and I would like to offer the following solution: Just dump your frustrations on me. Whilst there clearly are differences in approach the sad truth is the main reason things escalated, more than they probably needed to, is because I failed to provide the required guidance and structure.

If you can find it in your heart, I would like to invite all of you, @ederag , @jtojnar , @hedayat @DirkHoffmann , @mwilck and everyone I failed to mention here (I am still catching up, so pretty please do mind me not listing you here...) to work with me towards turning hamster into a well maintained and productive tool. Lets try to forget about the frictions of the past and try to establish a productive and friendly future community spirit!

Immediate actions taken

For now, in order to unblock some of the outstanding contributions so far, I have done the following:

  1. Invited @ederag to the main 'legacy-hamster' team, granting full (provisional) write permissions.
  2. Invited @hedayat , @mwilck and @DirkHoffmann to join the hamster-shell-extenion team, granting (provisional) write access to all of its members.
  3. I made sure master and develop branches in hamster and hamster-shell-extension repositories are "protected", so we keep merges clean and tidy using PRs.

Near future topics

Whilst the recent developments have succeeded in getting my head out of my ass, I would be lying if I would claim that I do have the resources to start proper full time work on hamster in the immediate future. My current work and private live does not permit that. What I can and will do is commit 4-6 hours of "catching up and maintenance" contributions for now.
I hope that helps elevating some of the current social friction and provides a overarching perspective into the future.

  • I will post a much needed update on the current situation on projecthamster.org.
  • I will upload any build artifacts we generate to extentions.gnome.org. I will also investigate if we can streamline this process.

Questions

That being said, I can not address all outstanding issues right away, so I will be needing your help :)

  • Where are we on your preferred communication channel? Do we want to keep the ML or focus on Issues? Or "github team discussions"?
  • In order to deal with low hanging fruits and getting things done, I would like to focus on those development efforts / PRs that deal with uncontroversial maintenance work. I would kindly ask of you to give me a bit more time to read up on any actual design decisions that are currently disputed (links welcome) before we merge. Ultimately, some of the (currently discussed) problems stem from legacy-hamster's monolithic design, which makes it sometimes hard to accomodate different user expectations. Overcoming those limitations is one of the main goals of the (now stalled) rewrite.
  • What are your most urgent pain points right now?
@elbenfreund elbenfreund pinned this issue Mar 1, 2020
@ederag
Copy link
Collaborator

ederag commented Mar 1, 2020

@elbenfreund Glad to see you back !
Thanks for the invitation, although that did not grant any further rights AFAICS.

Friction on this repo is very localized IMO, and had been sorted out, from my point of view.
Friction on the whole project is mainly due to the fact that I did not have the necessary rights.

From the mails that I have seen recently,
IMO your comprehension of the current status is tainted by @mwilck's known concerns
and by @DirkHoffmann subterranean fighty messages.
It's a bit sad that you seem to have mainly listened to them up to now.
But that's it, some people make a lot of noise,
and can easily give the impression that everything is going to pieces, including this repo.

To catch up, I'd advise to read #433, #493 before going any further.
I do hope you'll revise your judgment and we'll be able to work hand in hand eventually.


Edit here, since I have been denied the right to conclude

It's a long noisy thread. Here are important posts IMO:

@elbenfreund
Copy link
Contributor Author

I do hope you'll revise your judgment and we'll be able to work hand in hand eventually.

We will, absolutely. I hoped my original message made a big point in "not taking sides", as I fell the best way forward is for all of you to just blame me ;) and get on with it.

@DirkHoffmann
Copy link
Member

Thanks, @elbenfreund. Good to hear and see that the boat still has a captain.
As requested, here is one hint to steer in the right direction:

Invited @hedayat , @mwilck and @DirkHoffmann to join the hamster-shell-extension team, granting (provisional) write access to all of its members.

Please add @benjaoming to make the Three Musketeers complete.

@ederag
Copy link
Collaborator

ederag commented Mar 1, 2020

@elbenfreund Your message was very negative,
and you did that, not in the extension you are the sole owner of,
but here, in the repo I am responsible for.

That might be a mistake due to writing on sunday after a busy week,
and the last days have been draining,
so don't blame you too much 🙂

Besides, you did not take into account my explicit recommendation (by mail)
of giving access to @hedayat only, following the community consensus summarized here.
I expressed strong support in favor of @benjaoming as well (after taking community consensus),
and he's not in the extended list.
Edit: the last one was based on superficial knowledge.

That does not bode well, that's not how a team should start.
I hate forks, but that's it, life is too short, and I'm tired of fighting.
So I'll just continue in my fork, hoping you'll integrate as much as possible
in the main repo and in the rewrite.
Please do ask if certain design choices are unclear, or if I can help with technical issues.


Edit:

repositories are "protected", so we keep merges clean and tidy using PRs.

Wow, that means that I actually lost rights. That only confirms my impression.

Edit 2: (3 days later)
about the fork idea: #574 (comment)

Edit 3: Why the OP was "playing the savior" and negative, from the active maintainer perspective.

I failed to provide the required guidance and structure.

towards turning hamster into a well maintained and productive tool.

so we keep merges clean and tidy using PRs.

current social friction

@elbenfreund
Copy link
Contributor Author

@elbenfreund Your message was very negative,

As I said via mail, I didnt mean to and quite frankly do not see where I was. I feel very positive we can overcome this misunderstanding :)

and you did that, not in the extension you are the sole owner of,
but here, in the repo I am responsible for.

I did that in the place that I thought would get the most attention in order to reach the biggest audience with my "news". To be honest, I would have preferred using the mailinglist (which is in fact intended for exactly this kind of stuff), but was unsure if everyone was reading there.

That might be a mistake due to writing on sunday after a busy week,
and the last days have been draining,
so don't blame you too much slightly_smiling_face

I suspect the last days were busy and straining for all of us, so I am confident all of this will appear less conflict prone once we get some rest and a fresh week :)

Besides, you did not take into account my explicit recommendation (by mail)
of giving access to @hedayat only, following the community consensus summarized here.
I expressed strong support in favor of @benjaoming as well (after taking community consensus),
and he's not in the extended list.

Yes, that is correct. Quite frankly: I am in no position to judge who is best suited to take the lead, and so far all members of the extension team seem to be on generally good terms as far as I can see in the issues/PRs I've read so far. The extension's scope is rather limited and I trust that all contributers involved will work together to move things forward.

I hate forks, but that's it, life is too short, and I'm tired of fighting.

I am very sad to hear that, and I honestly do not understand the strength of your reaction.
I would love to keep the lones of communication open and hope that some rest and distance will bring you back as the valued contributor that you are.

@ederag
Copy link
Collaborator

ederag commented Mar 2, 2020

the valued contributor that you are

Contributor, but not maintainer, yeah, again you marked well your territory.

You have no legitimacy to do so because

  1. You did well earlier, but then have left the project for years;
    I'm the one who brought it back to life recently,
    together with many people, notably @GeraldJansen
    (by the way, he's great, and should be invited to be part of the organization)
  2. Most of your perception of my maintainer skills is based on unverified ill hear-say.
    You should have contacted me to have a full understanding before posting.

I'll leave you play the savior here.

To the many kind users who trusted me, most of the experience was a nice one,
and I liked the constructive discussions,
so it's not my intention to let you down, don't worry.
Edit: the "don't worry" link means there's a backup. A hard fork would just harm the project.

@GeraldJansen
Copy link
Contributor

GeraldJansen commented Mar 2, 2020

@elbenfreund Actions speak louder than words, and much louder than loud announcements and promises. How can you be trusted this time around given that as project "captain" you practically shipwrecked the project with the abandoned rewrite initiative?

On the other hand, @ederag has put in two years of solid actions and demonstrated his strong commitment to this project. He has been the de facto project leader during this this time, much more so than simple "contributor" or "maintainer". It's great to see him finally added to the list of project members. I do trust that he will be granted full control of the "legacy" Hamster sub-project as an encouragement to stay with the project.

@matthijskooijman
Copy link
Member

As a user, occasional contributor and planning-to-be-Debian-maintainer for hamster, let me also chip in.

I'm a bit surprised by the intensity of @ederag's comments here. I did not read anything particularly negative about @ederag or anyone else in @elbenfreund's comments and posts. There are a few things that, now that they're pointed out, could be read like that (protecting branches to take away rights, not following some advice given, saying "contributor" rather than "maintainer"), but I also tend to believe @elbenfreund when they explicitly say things like "I didnt mean to and quite frankly do not see where I was. I feel very positive we can overcome this misunderstanding :)" (about the negativity of his post).

Admittedly, I have not read all previous discussions here (only recently subscribed to the repo as a whole) and of course have not seen any private e-mails, so maybe that would put things in another light. I did read some of the linked discussions just now, and it looks to me, @ederag, that you have a tendency to quickly read negativity and attacks in comments. Personally, I'm usually on the other side of that (I often assume good intentions even they are not there), but in my experience it seems better to not feel attacked when you are, than to fell attacked when you are not :-) And to be explicit: Please do not take this as an attack or judgement, but just as a (subjective) observation and suggestion.

All in all, @ederag, I really hope you will reconsider staying on-board with the project, rather than doing your own fork. If there is anything that needs to happen (e.g. in terms of repository access, or stated responsibilities, etc.) for that, please also make that explicit.

@GeraldJansen said:

@elbenfreund Actions speak louder than words, and much louder than loud announcements and promises. How can you be trusted this time around given that as project "captain" you practically shipwrecked the project with the abandoned rewrite initiative?

This is also a concern of mine. It seems that some of this is mitigated by sharing at least access to some repositories, and I think sharing access to things like the projecthamster.org and extensions.gnome.org might also be useful here (but maybe that's already the plan?).

However, I'm not so sure if @elbenfreund is intending to the "captain" that some people now name him. He writes to have limited time and wants to focus on making things move again, which for a most part, I think, is forming a team and making collaboration work even without his direct involvement (but I am filling in some blanks, so maybe @elbenfreund can confirm).

@elbenfreund said:

In order to deal with low hanging fruits and getting things done, I would like to focus on those development efforts / PRs that deal with uncontroversial maintenance work. I would kindly ask of you to give me a bit more time to read up on any actual design decisions that are currently disputed (links welcome) before we merge. Ultimately, some of the (currently discussed) problems stem from legacy-hamster's monolithic design, which makes it sometimes hard to accomodate different user expectations. Overcoming those limitations is one of the main goals of the (now stalled) rewrite.

I think that the most effort is needed in the shell extension department, where no development (at least no merges) have been happening for quite some time, and some forks have been uploaded to extensions.gnome.org that really need to be unified.

As for the main hamster repository (referred to as hamster-legacy, but given the state of the rewrite, I do not think the "legacy" label is applicable already), I am under the impression that that is actually in a good state, thanks to @ederag's efforts. There is probably a lot of development work that can happen to further improve things, but I think there's not much lacking in project maintainance or stalled pull requests (but I might be wrong - I have not been too closely involved).

Where are we on your preferred communication channel? Do we want to keep the ML or focus on Issues? Or "github team discussions"?

Personally, I like the github issue structure, since that really allows in-depth discussion about specific issues. OTOH, a mailing list might be useful (in addition to github issues) for over-arching discussions and project directions, or to get help with specific problem (though I only just discovered the mailing list actually existed, so was not subscribed before).

As for github team discussions, I think those are access-limited to organization members only, which would make development discussions non-public, which is a bad thing IMHO.

I also like a chat channel for quick questions and discussions, but that mostly works if sufficient people are on-board. I have been one of the few people that hung around in the IRC channel (#projecthamster on Freenode) for the past few years, but maybe something more modern (Riot/matrix is nice and open and can even bridge to Freenode easily) could be better, if we want to use this at all.

@ederag
Copy link
Collaborator

ederag commented Mar 2, 2020

@matthijskooijman
Please read again #574 (comment) and #574 (comment) and
try to walk in my shoes, you might see better. Or not, I'm done fighting.

And to be clear, I did not feel attacked by the philosophical part of your post 😉,
but it does not help at all. It is just common sense.
It's clear that you don't know me,
and did not read carefully the links.
I never felt personaly attacked by @mwilck,
IMO a good will, trying too hard to help the project and hurting it instead, but there's hope.

Thanks for the support expressed in the remainder.


OTOH, a mailing list might be useful

Splitting channels does not work, not enough critical mass. It was already tried by @elbenfreund.
Discussions can happen in dedicated issues (see #433), no big deal.


I really hope you will reconsider staying on-board with the project, rather than doing your own fork. If there is anything that needs to happen (e.g. in terms of repository access, or stated responsibilities, etc.) for that, please also make that explicit.

Copied from #575 (comment):

This was a cold and well thought decision.
(I saw something coming, not that nasty, but enough to be prepared)
I will not fight with @elbenfreund and those who do not see the wrong in his acts.
Life is too short.

And how could I continue in an organization owned by someone
who proved yesterday disrespect to me and the community
(as explained in #574 (comment)).

No, the only way to continue is where I have full control.
[meaning last resort control;
I'd rather resign than go against the community will
]

@mwilck
Copy link
Contributor

mwilck commented Mar 2, 2020

I think that the most effort is needed in the shell extension department, where no development (at least no merges) have been happening for quite some time, and some forks have been uploaded to extensions.gnome.org that really need to be unified.

All that's needed to keep the extension going again is a merge and an upload to https://extensions.gnome.org. Branches for different GNOME versions might be in order, too, but that shouldn't be too hard. The commit history of the 3.34 PR mentions every stable GNOME release since then. Out of these, 3.32 with the JS6 classes was the most intrusive one. I believe it should be possible to maintain just two versions of the extension, one for GNOME 3.22 - 3.30 and one for 3.32 and newer. The "official" extension, as currently uploaded to e.g.o. by @elbenfreund, supports GNOME up to 3.20, and could be left as-is for now.

On e.g.o there's currently @jasuarez version with GNOME 3.32 and 3.34 support. He did what I didn't dare / care to do (upload his stuff to e.g.o. without @elbenfreund's blessing). He has merged a previous version of my 3.34 branch, and added features from his PR projecthamster/hamster-shell-extension#305. I think @jasuarez should also be invited, or otherwise encouraged to participate in maintaining the official GNOME extension.

What the extension still needs most is testing. As of today, I test with 3.34 and 3.26, but I can't promise much for other GNOME versions. As we have so few active people, I guess the "dirty" approach would work best: fork at 66a717d, claim support for all GNOME versions from 3.22 to 3.30, and see if any bug reports come in. After all, for those using 3.22 - 3.28, things can't get worse as they're now.

Of course, these are only the commits necessary to make the extension work again for users, with basic functionality. I don't deny that there are other areas where the extension might be improved, but all that can be done on a relaxed time scale.

@mwilck
Copy link
Contributor

mwilck commented Mar 2, 2020

He did what I didn't dare / care to do (upload his stuff to e.g.o. without @elbenfreund's blessing)

Clarification to avoid misunderstanding: this was not meant as criticism from my side.

@elbenfreund
Copy link
Contributor Author

elbenfreund commented Mar 2, 2020

@ederag

So, I have repeatedly asked for any factual referance where I did speak ill of you. So far, the comments referenced simply re-state that you feel insulted, not why.

Quite frankly, I do not feel particulary inclined to continue being insulted and made out to be some kind of evil persion that goes around insulting people being mean to them.
I am not, and I am sure you will have a hard time providing references to the contrary.
As far as I can tell you seem to have a very firm opinion on whats going on and that everyone that does not agree with you wholehartedly is out to get you.
You keep going on that my comments are informed by "ill advice" when really you are the only one harming my perveption of you.
As I have repeadedly pointed out I feel that I do not know any of the people involved well enough to have even a hint of an opinion.

Or not, I'm done fighting.

If you intend to stay with your perception that I am offending you and "take what is rightfully yours", I agree that moving on with your current work is probably for the best. While I would prefer you stayed and worked with us, I can understand if you rather focus on an environment fully under your control. As this seems very important to you.
If you decide to go on with this, I wish you all the best and and thank you once again for all the work you have done so far.


@ GeraldJansen

@elbenfreund Actions speak louder than words, and much louder than loud announcements and >promises. How can you be trusted this time around given that as project "captain" you practically >shipwrecked the project with the abandoned rewrite initiative?

Given that we had zero interaction so far, I am a bit disapointed about your assertive tone. I am not going to justify my live choices and priorities to you as an individual. I was quite transparent about my lack of time and it was for that very reason I trusted ederag with the hamsterrepository. None of my, apparently evil, actions had any implication on his work what so ever. If all you care about is hamster, my disapointing existance should be of no concern to you.


@matthijskooijman

I'm a bit surprised by the intensity of @ederag's comments here. I did not read anything particularly negative about @ederag or anyone else in @elbenfreund's comments and posts.

That is what startles me the most, that as far as I can tell, hardly any 'actions' that would have any consequence have been taken.

There are a few things that, now that they're pointed out, could be read like that (protecting branches to take away rights,

To be honest, protecting direct pushes to master/develop is common an best practice anyway. If this is really what this is about, we should be able to talk about it calmly.

not following some advice given, saying "contributor" rather than "maintainer"),

Again, if this is really what hurt people: yeah, my apologies. This was not a particular choice and I have no issue what so ever acknowledging that @ederag is the sole maintainer of the old hamster.

but I also tend to believe @elbenfreund when they explicitly say things like "I didnt mean to and quite frankly do not see where I was. I feel very positive we can overcome this misunderstanding :)" (about the negativity of his post).

Thanks :)

Admittedly, I have not read all previous discussions here (only recently subscribed to the repo as a whole) and of course have not seen any private e-mails, so maybe that would put things in another light.

If so, I would like to know as well. As far as I can tell my few mails with ederag were pretty much the same as my comments here.

I did read some of the linked discussions just now, and it looks to me, @ederag, that you have a tendency to quickly read negativity and attacks in comments.

I start to get the same feeling.

Please do not take this as an attack or judgement, but just as a (subjective) observation and suggestion.

Again, full ack.

All in all, @ederag, I really hope you will reconsider staying on-board with the project, rather than doing your own fork. If there is anything that needs to happen (e.g. in terms of repository access, or stated responsibilities, etc.) for that, please also make that explicit.

👍

@GeraldJansen said:

@elbenfreund Actions speak louder than words, and much louder than loud announcements and promises. How can you be trusted this time around given that as project "captain" you practically shipwrecked the project with the abandoned rewrite initiative?

This is also a concern of mine. It seems that some of this is mitigated by sharing at least access to some repositories, and I think sharing access to things like the projecthamster.org and extensions.gnome.org might also be useful here (but maybe that's already the plan?).

Here I tend to disagree, I don't want to get bogged down in a "who said what", but it is simply not true that the project was is a great state when I took over. I did so because things where not moving forward as it was. As said above, I am happy to work with the existing community to improve the situation and distribute responsibilities. And I said so several times. There may be some kinks to iron out with regards to the website and/or extensions.gnome.org, but nothing that should be impossible.

However, I'm not so sure if @elbenfreund is intending to the "captain" that some people now name him. He writes to have limited time and wants to focus on making things move again, which for a most part, I think, is forming a team and making collaboration work even without his direct involvement (but I am filling in some blanks, so maybe @elbenfreund can confirm).

👍

And honestly, so far this is not the "restart" I hoped for. I have spend more time defending myself for things I aparently have done than actually getting productive things done for the project.
While I agree that a healthy discussion in the open is important, I also will not spend infinite resources on answering to unsubstantiated accusations and hurt egos.

I think that the most effort is needed in the shell extension department, where no development (at least no merges) have been happening for quite some time, and some forks have been uploaded to extensions.gnome.org that really need to be unified.

👍 4 People have full write access to the repository. If more is needed, I am more than happy to help.

As for the main hamster repository (referred to as hamster-legacy, but given the state of the rewrite, I do not think the "legacy" label is applicable already),

I did not rename the hamster repo for a reason. The legacy label is more of an internal shorthand to avoid confusion, as I did not want to continue to spend time on this code. If anyone feels downplayed by that label, I am more then open to alternatives.

Where are we on your preferred communication channel? Do we want to keep the ML or focus on Issues? Or "github team discussions"?

Personally, I like the github issue structure, since that really allows in-depth discussion about specific issues. OTOH, a mailing list might be useful (in addition to github issues) for over-arching discussions and project directions, or to get help with specific problem (though I only just discovered the mailing list actually existed, so was not subscribed before).

That would be my preferred separation of concerns as well.

As for github team discussions, I think those are access-limited to organization members only, which would make development discussions non-public, which is a bad thing IMHO.

Thats a good point. If true, I would agree.


So, to sum things up: I am happy to engage in a healthy and respectful discussion about how to move forward and helping with admin stuff. I am not willing to be your continued punshingbag for hurt egos that feel dismissed without any actual proof of ill intentions.
When ederag approached me with his offer to maintain hamster I agreed without much hesitation and doubt as it was clear that I would not deal with this codebase in the future and noone else would be either. I did so in good faith and without any fuss. I would be sad if my trust and goodwill would prove to be ill placed.

I sincerely hope we can find a way to calm things down and move forward. Either as a unified project, or if @ederag prefers on his own.

@ederag
Copy link
Collaborator

ederag commented Mar 2, 2020

You're the one shouting
(Edit: that was referring the first version of the above comment),
beyond the no-return line.

Please stop here,
take a week or more to read and think,
then come back, apologize in due form,
with a header to your top post stating that you were misinformed,
and it will be settled (no return, but no hard feelings either).

would not deal with this codebase in the future and noone else would be either

Yet you shut me out deliberately (reducing my rights to push at will),
without any discussion beforehand (that's disrespectful).

I made sure master and develop branches in hamster and hamster-shell-extension repositories are "protected", so we keep merges clean and tidy using PRs.

Note: as if it were not "clean and tidy" already.

As I said, I'm done fighting,
the future will depend on the reaction of the community.

@elbenfreund
Copy link
Contributor Author

elbenfreund commented Mar 2, 2020

Please stop here,
take a week or more to read and think,
then come back, apologize in due form,
with a header to your top post stating that you were misinformed,
and it will be settled (no return, but no hard feelings either).

Dear ederag, I am very disappointed by your patronizing and condescending tone and general attitude. I am confident that I repeatedly stated my desire to work with you and asked you for your constructive feedback. Yet, all you do is repeating your feeling of being insulted and demanding my subordination under your perceived reality. That is not going to happen and I am done trying to accommodate your hurt ego.

As I feel we are going in circles and loose faith that you have any interest in actually improving the current communication I wish you all the best and good luck with your future endeavors. As per your request in #575 I will remove you as the maintainer remain grateful for your work so far.

@ederag
Copy link
Collaborator

ederag commented Mar 2, 2020

Your choice.
You did not prove any gratitude so far, except in empty words.

You shut me out deliberately (reducing my rights to push at will),
without any discussion beforehand (that's disrespectful).

As I said, I'm done fighting,
the future will depend on the reaction of the community.

@ameenross
Copy link

ameenross commented Mar 2, 2020

You did not prove any gratitude so far, except in empty words.

Just an onlooker here, don't know everything that happened, but this caught my attention. @elbenfreund repeatedly thanked you for your efforts in this issue. So I think this statement of yours is unfair.

Also, I get how suddenly missing push access to a certain branch might piss you off, but given @elbenfreund 's explanation, I feel like you're overreacting. Thirdly, you requested being removed as a maintainer and you already posted a link with your fork. What more do you want? Move on...

@GeraldJansen
Copy link
Contributor

@matthijskooijman Thanks for your level-headed assessment. This project needs more well-balanced people like you in a top level team that provides overall coordination and control of the project. Having all control in the hands of a single person who can disappear at any time has already proven to hurt the project.

@elbenfreund I am interested in this project! (You can ascertain that through my concrete contributions in terms of testing, bug reports and pull requests.) I am worried about the future of the project with you alone at the helm (and nothing to do with your own terms like "evil" and "disappointing existence"). It's simply a matter of track record. I hope you will demonstrate your interest in the future of the project by opening up and empowering a team with top-level powers.

@ederag
Copy link
Collaborator

ederag commented Mar 2, 2020

@ameenross
I was moving on (actually preparing my repo, and just sent this answer because I still care).
Now I have to answer you. Thanks 🙂
But I understand that it is easy to overlook, as some people surely make a lot of noise,
more than actions, so here are more facts.

It's not "a certain branch".
It's my master branch, of the repo I'm maintaining since 2018-11-23,
repo which has been dead since 2016-07-16, save for a translation commit.

The organization owner has not been active since (that's his repo, often called the "rewrite")
Screenshot_20200302_180711
and even the simplest PRs were ignored.

So I'm not a random contributor.
I resurrected the whole project, as noted above.

Edit:
There was a condition to my work: being the benevolent dictator, no share of power.
I'm methodical, and there are very impatient people out there.
This was legitimate as the legacy repo had been abandoned anyway.
Now that most of the issues mentioned there have been reduced,
they want the power back. So be it.

repeatedly thanked you for your efforts in this issue

My technical contribution is clear, he couldn't do less, and that allows him to play the nice guy.
But if you read the top post carefully, you'll see the marks of the owner wanting to reclaim his territory.
To this aim, he trashed my maintainer skills, reduced my rights without discussion beforehand,
and called that gratitude.

Except, as should be obvious from the above facts, he has no legitimacy to do so.

Thanks for pushing me to give more facts,
as I guess that information was indeed not known by passers-by.

@benjaoming
Copy link
Contributor

I want to take the time to thank you @ederag for saving the repository and recognizing all your tremendous efforts. I find it very unfortunate that this thread has seen you step back, but I really understand your decision -- no one wants to engage in Open Source just to have a bunch of controversy.

@ameenross
Copy link

sigh well, good luck to everyone. I'll crawl back into the hole I came from, as I can't really judge the situation and have no further interest either as I stopped using Hamster some time ago

@ederag
Copy link
Collaborator

ederag commented Mar 3, 2020

@ameenross That's understandable. Thanks again for sharing your thoughts.
That might help the truth to surface
about the nature of what happened here;
although that would probably require people having time and interest to dig deeper.
This might become an interesting case for humanities studies on FreeSoftware 🙂.

I stopped using Hamster some time ago

There was a dip in usability due to the necessary gtk3 migration,
which was also an opportunity to modify the design.
@tstriker did an amazing job at it (again), and after the work we did on v3.0,
in months they should be able to bring hamster on par with v1
(especially if @GeraldJansen stays on board to guide them),
and even better than v1 as the overview was highly improved by @tstriker : #507 (comment)

Yes, the new overview is definitely better. :) Easier to read, and more powerful to query.

So I'd recommend to wait, but definitely give it a try again then !

@benjaoming
Copy link
Contributor

benjaoming commented Mar 3, 2020

@elbenfreund there are still issues with write access on hamster-shell-extension. None of the members of the new team have access to merge to master.

I recommend that you grant full access to the github organization to @DirkHoffmann and thereby remove yourself from the equation. You don't want to develop the "legacy" (your wording) parts anyways, so it doesn't make sense that you govern them or cause further frustrations among the active developer community.

@hedayat
Copy link
Member

hedayat commented Mar 3, 2020

I hope that this will settle nicely soon. And it is unfortunate that the situation has escalated this much. Everything was about the extension, and suddenly there is a debate with regards to the legacy part; which is completely separate...

I don't have any right to talk about the legacy part, but as a dead project revived by @ederag, I also think he should be its 'owner'. And I guess that he is the one that will keep developing there (either here or in his own fork).

@benjaoming
Copy link
Contributor

Yup, I agree @hedayat - unfortunately, @ederag has stepped back and been removed as the maintainer. The reasoning seems to be that @elbenfreund wants to reserve unique permissions whilst @ederag wants to have full control of what seems rightfully to be @ederag 's project. Which is/was a clear conflict.

I would also hope that it would settle nicely -- but for now, the settlement isn't nice for anyone, as hamster now misses an active owner and maintainer 😢

@GeraldJansen
Copy link
Contributor

Perhaps I am too pessimistic, but in my opinion projecthamster has been in a state of compromised health for quite a while. I doubt it will survive a major amputation (i.e. fork) now. The community is just too small. I hope it is not too late for both @elbenfreund and @ederag to both calmly take a couple of steps back so that we can all move forward together from there.

@DirkHoffmann
Copy link
Member

So, @DirkHoffmann, @benjaoming, @matthijskooijman (naming the most obvious candidates), please consider.

Thank you for the flowers. But for the reasons given above, I cannot commit to anything more than the work on the extension right now. I would like to reach zero issues count there before opening a new bottle.

I think we all need some time to digest what has happened here. I succeeded (with a bit of emphasis, sure) to bring in three contributors for the orphaned extension project, and as a net result after long exchanges, two developers for the core have left. That is puzzling and not logical for me. And unfortunately this is very likely to confuse third parties and preclude them from joining for some time.

And yes, this issue is closed for me and will stay in the memories as the story where a heap of gratitude was transformed into disappointment and confusion.

@mwilck
Copy link
Contributor

mwilck commented Mar 9, 2020

@DirkHoffmann, all of us (who are still here) feel this way, I think. I fully understand if you want to keep out. But in order to avoid scaring even more people away, we need to have some interim maintainership.

@DirkHoffmann
Copy link
Member

DirkHoffmann commented Mar 9, 2020 via email

@matthijskooijman
Copy link
Member

I think I would take a similar stance: I'd rather someone with a bit more time and drive picks this up, but lacking that, I would be ok to be part of a team effort to keep things running (which mostly means fixing bugs and handling contributions I expect, not so much new development). Regarding the size of such a team, N=3 sounds more comfortable than N=2 to me.

In summary, it sounds like giving @mwilck, @benjaoming and myself access is a good way forward for now, keeping @DirkHoffmann in mind in case anyone drops out. When this is done, we should probably make some changes to the docs to reflect the current state, with an open invitation for others to step forward and take on (part of) the maintainership (but let's discuss that in a separate issue later).

@mwilck
Copy link
Contributor

mwilck commented Mar 10, 2020

IMO Dirk should also be given access, in a passive role for the time being. That's not to say that I'm planning to be extraordinarily active - none of us seems to have such intentions. I believe it's understood that being in this team comes with minimal obligations only. No single person should feel obliged to keep this project alive.

@DirkHoffmann
Copy link
Member

All right. Thanks for your comittment and understanding, everybody.

We have the case N=3 now. An odd number will necessarily lead to a majority, so please make up your mind, if you need to bring it up to N=4, by taking me or anybody else on board now.
And let's hope that the current situation is temporary anyway.

@ederag
Copy link
Collaborator

ederag commented Mar 10, 2020

Answer to @DirkHoffmann #574 (comment)

I think we all need some time to digest what has happened here. I succeeded (with a bit of emphasis, sure) to bring in three contributors for the orphaned extension project, and as a net result after long exchanges, two developers for the core have left. That is puzzling and not logical for me. [...]

This might shed some light:
https://www.kilpatrick.one/pioneers-drivers-integrators-and-guardians/

I have strong aspects of pioneer and driver, but my core would be guardian/integrator,
especially

Guardians value stability, and they bring order and rigor. [...] Data and facts are baseline requirements for them, and details matter. Guardians think it makes sense to learn from the past.

Integrators value connection and draw teams together. Relationships and responsibility to the group are paramount. Integrators tend to believe that most things are relative. They’re diplomatic [at least I care] and focused on gaining consensus.

So there was a long running clash with a single person because posts like #549 (comment)
were clashing with both the integrator (consensus broken)
and the guardian (more gut-feeling than facts-based).

These dissensions had been patiently worked upon, and settled in my opinion after #568 (comment).
That was behind us, and v3.0 had been released.

Then our lord "savior" came, stressing on dissensions,
and not clearly limiting the scope of these allegations to the extension (under his responsibility),
hence clashing with the integrator.

Your emails did not help, since they did not follow the community consensus summarized here.
And one of them had a fighty tone. All this clashed with the integrator.

None of this taken individually would change much, but the accumulation makes sense.

Finally, I have to admit that
https://www.kilpatrick.one/pioneers-drivers-integrators-and-guardians/
allowed me to better understand all of you (my impression at least):

Working with Kim and the broader team sometimes feels to Suzanne like trying to thread a needle in the midst of a hurricane. To Kim, working with Suzanne sometimes feels like running in deep water.

This does resonate here, doesn't it ?

@elbenfreund
Copy link
Contributor Author

elbenfreund commented Mar 10, 2020

As per your suggestions invitations to join the repository team have been issued for @mwilck, @benjaoming, @DirkHoffmann and @matthijskooijman . Whether you accept or not, is up to you :)

Either way, a big thank you to all of you for offering your help!

As such, I consider this issue done and will close (in favor of issues with a clearer scope) it by the end of day, unless anyone feels things left unaddressed here.

@mwilck
Copy link
Contributor

mwilck commented Mar 10, 2020

@ederag,

So there was a long running clash with a single person because posts like #549 (comment)

In that post, I demonstrated that your code allowed arbitrary code execution in a dbus method call. Was that the wrong thing to do? Sure, I used language like "I'm not happy about this change at all" and "I think you're on the wrong track". It's the "driver"-like communication style I'm used to from most FLOSS projects I've been involved with, and I can see that a sensitive mind might find the critique to be too direct and too personal. OTOH, you being such a sensitive-minded "integrator" doesn't sit well with the harsh tone you've been using against myself and others, and your frequent usage of the thumbs-down emoji, which I confess I'm a little sensitive about (I know you don't mean it that way, but I think of gladiators in ancient Rome when I see it).

Believe it or not, I've re-read, edited, and re-written almost every post I've made here an estimated dozen times before clicking on "Comment", trying not to be offensive. I failed, obviously, at least in your opinion, and I'm sorry about that.

@ederag
Copy link
Collaborator

ederag commented Mar 10, 2020

@mwilck You were always civil, never offensive, and this is a reason why I still esteemed you.

There is a misunderstanding:
I did not mean you were doing wrong,
just that your posts had a peculiar influence, and kindly asked you to stop it, please.

I can see that a sensitive mind might find the critique to be too direct and too personal

You are the one making it personal. Please don't.
Quoting #574 (comment):

I never felt personally attacked by @mwilck,
IMO a good will, trying too hard to help the project and hurting it instead, but there's hope.

Hopes fade slowly.

About the thumb down, I almost never use it, because it can be harsh to some.
This thread was unusual. What do you call "frequent usage" ?

(I know you don't mean it that way, but I think of gladiators in ancient Rome when I see it)

Fair enough. Some thumbs down removed from this post. Please let me know if there are leftovers.

I always took great care and time to answer you in an adequate tone,
while still saying what had to be said, for the good of the project.

In that post, I demonstrated that your code allowed arbitrary code execution in a dbus method call.

The dbus session should be somewhat isolated

The D-Bus maintainers recommend using a separate session bus per (user, machine) pair
as additional safeguards.

Yet I took your remark seriously, and added the int check you mentioned (+ other safeguards), thanks for that.


What bothered me was the general tone:

You had sophisticated DBus message passing in clean python, and now, instead, you fork/exec first a shell, and then fork/exec another hamster instance. You think this is an improvement wrt the code we had before?

I don't like saying it because I much appreciate the work you do, but I think you're on the wrong track here.

Please try to walk in my shoes:
imagine you have hundreds of hours behind you, and are about to release v3.0,
running full speed with a clear goal in mind,
you said it's WIP, but now all users might fear you're about to screw the project.
Fun fact, I was a fool, almost no one looked at it 😄
So you have to stop, reevaluate, and take time to explain.
For something that can be changed back any time.

These concerns were answered in #563 (comment).

@sh-zam
Copy link
Contributor

sh-zam commented May 10, 2020

It is pretty upsetting, a project which seemed like an active project few months ago (all thanks to @ederag and @GeraldJansen), is now dead again (besides few issues, comments and PRs, but who are we kidding?)

Thanks to "a heap of gratitude", the person who was generously maintaining this project, feels this project is no longer worth their time. I am not sure if they'd still be willing to contribute. But thanks to this, project hasn't gotten anywhere since.

@mwilck
Copy link
Contributor

mwilck commented May 11, 2020

@sh-zam, thanks for your feedback. As you correctly observed, the situation has changed. The previous maintainer has driven the project more or less on his own, at his own discretion. That allowed for a high development pace. Now we have a maintainer team, meaning that progress is slowed by the need to discuss and either agree or find compromises. Such processes are tedious and consume time, but more often then not they lead to better end results. This is what - we hope - will happen for hamster, too.

The new maintainer team has focused on the GNOME shell extension lately, making it work with recent GNOME releases, which was quite some work in its own right.

Constructive criticism is always welcome, so if you want to contribute, or have constructive ideas how to make hamster better, please go ahead.

@sh-zam
Copy link
Contributor

sh-zam commented May 11, 2020

Now we have a maintainer team, meaning that progress is slowed by the need to discuss and either agree or find compromises.

If having a team means that for past two months this repository would go nowhere, then I think the team is doing a great job!

Sorry, if I sound too harsh, I know you people don't owe me anything and you might be even thinking that you are helping this project. But, in my opinion you people are being a MAJOR blocker.

@matthijskooijman
Copy link
Member

@sh-zam, I'm sorry, but that's not quite how things have gone done. I'd rather not spend too much further time on this issue, but let me at least correct the view that is now sketched.

In my recollection, the previous maintainer has decided to step down (for reasons I do not fully understand so I will not try to summarize them here, see above or ask them if you want to know). Only after that, a number of contributors (including myself) has reluctantly stepped forward as maintainers of this repo. All of us did not expect to spend much time, but would rather not leave the project completely unmaintained. So while I agree that the project is not in a great state right now, I'm afraid that you are putting blame where there is none.

Note that I'm talking about this repository, for the extension there was some more enthusiasm and time dedication to develop that, so there is some more movement there.

@sh-zam
Copy link
Contributor

sh-zam commented May 13, 2020

In my recollection, the previous maintainer has decided to step down

If that is the case, then it's really sad :-(

Anyways, I geniunely hope this project doesn't halt. Since this has been my daily driver for a really long time now. I want to and have wanted to improve this. Hopefully, soon I can work on some features/bugs that I want in.. :-)

Thanks!

@rhertzog
Copy link
Contributor

Hey everybody, I'm late in the game but I'm a long time user of hamster and the shell extension and I care about it as well. I have submitted fixes to the shell extension multiple times because as a Debian developer I use Debian Unstable and I'm exposed to the latest GNOME version quite early...

I have recently re-introduced hamster to Debian when I discovered that the package that I used was dropped a long time ago.

My time is also rather limited but I'd be willing to join a maintenance team for legacy hamster and the shell extension. I can help review and merge submissions at least. I don't expect to submit a lot of code on my own but I can certainly help to bring some leadership. I have a strong experience in python programming (eg https://salsa.debian.org/qa/distro-tracker/) and test driven development.

FWIW I'm using hamster to record the time I spend during work and as such I'd be willing to fund some development time through my company. @elbenfreund is that something that could help you to dedicate more time to this project? Honestly I never looked into your rewrite but what is lacking most for me is some more flexible reporting tools and I really want to keep the neat shell integration.

@GeraldJansen
Copy link
Contributor

Perhaps you "reluctant maintainers" (@matthijskooijman, @mwilck, @benjaoming, @DirkHoffmann) could contact @elbenfreund personally and ask him to add a new willing maintainer. Some attention to pull requests is sorely needed.

@ederag
Copy link
Collaborator

ederag commented Mar 13, 2021

In the hope this could be useful to other communities,
and triggered by recent events,
here is an answer to part of #574 (comment):

It is pretty upsetting, a project which seemed like an active project few months ago (all thanks to @ederag and @GeraldJansen), is now dead again (besides few issues, comments and PRs, but who are we kidding?)

Thanks to "a heap of gratitude", the person who was generously maintaining this project, feels this project is no longer worth their time. I am not sure if they'd still be willing to contribute.

The new team managed to disgust me from maintenance (reasons given in my first post),
but I did try to contribute advises,
and quickly fixed the very few bugs related to our work that surfaced in more than one year (#576, #590 and #671).

Only the latter is related to the infrastructure (main v3 changes), and has been fixed on the spot two days ago.
The interface would have been of the same quality (and on par with v1) by now,
and #493 would have been solved...

A huge change (lot of work) was stalled for wrong reasons (#573 probably will be closed at some point), their call.
#597 has been stalled for almost a year and is unmerged, for other wrong reasons,
and they were not smart enough to do what should be done to show me respect.
So now they are on their own.

From what I have seen this year, they are quite different (available time, quality, vision, ...).
To say the least, any criticism against the previous teams work, no matter how well worded it sounds,
should be taken with skepticism.
(unconvinced ? See this. Still not convinced ? Never mind).

Conclusion of this sad story: feedback is precious,
but if anyone is trying to steer the wheel
against a maintainer will, caution.
Chances are, the maintainer is leagues higher,
when it comes to the project (I wouldn't dare express anything in general).

There's more to say, but let us stay at that.
They'll try to conceal the truth behind noise again,
but thorough people (the only ones who matter to me) have enough to get through.

Please be nice to the new maintainers, don't do to them what they did to us,
as I'm not coming back (a "heap of gratitude" for the free time 🙂)
Best wishes. Bumpy road ahead 🙂.

They started this one year ago, so all issues and struggle are theirs.


Edit on 2023-05-21:
Screenshot_20230521_082949
3 years since last release. No comment.

@GeraldJansen
Copy link
Contributor

Perhaps this is a good time to unpin and close this issue. It has had a full year of visibility and that should suffice. It's time to move on.

@matthijskooijman
Copy link
Member

Agreed.

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

No branches or pull requests