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

Stepping down from developer #1093

Closed
Feder1co5oave opened this issue Feb 27, 2018 · 19 comments
Closed

Stepping down from developer #1093

Feder1co5oave opened this issue Feb 27, 2018 · 19 comments

Comments

@Feder1co5oave
Copy link
Contributor

Seeing that my input is not regarded as valuable I'm stepping down from active developer of marked as of today. Good luck to you all!

@Feder1co5oave Feder1co5oave added the good first issue Something easy to get started with label Feb 27, 2018
@UziTech
Copy link
Member

UziTech commented Feb 27, 2018

What?! Why do you believe your input is not valuable?

@joshbruce
Copy link
Member

joshbruce commented Feb 27, 2018

@Feder1co5oave: Dude!? Do what you believe is right and best for you.

But seriously, your contributions have been invaluable. You're good with explaining things to contributors (I know you and I might be having issues right now and maybe we should talk outside of here to clear that up??)...but seriously, if anything I've done is making you feel you need to walk away, let me know what I did, how it made you feel, and what we can do to better communicate with each other. (I've honestly questioned me being here as well lately. And that my contributions aren't welcome as well.)

Text-based communication sucks! when it comes to communicating tone, inflection, intent, and so on. Not to mention the potential time delays...some of our contributors have waited years to hear from us.

My promise should you decide to stick to stepping down:

  1. If you ask to no longer be a committer, will do what needs doing there.
  2. As long as I am a publisher on the project, you will remain in the contributor list unless you ask to be removed.

@Feder1co5oave
Copy link
Contributor Author

Feder1co5oave commented Feb 27, 2018

I do not want to seek conflict so I'll be as clear as I can be, and I think not explaining what went wrong would be a disservice to you and the project.

I don't feel we were working as a team anymore. I enjoy discussing and even arguing about stuff even when the final decision goes against my opinion, because I try not to impose my view of things. As long as the decision is taken together as a team.

@joshbruce I'm gonna address you directly from now on, as it is clear that we had some disagreement on things lately. I really thought we were going somewhere with #1077. I admittedly pushed a bit my opinion in there, but also brought some good arguments in doing so. Until you decided on your own what was to be done, and put everything in place without waiting for further comment.
(please also consider that we live in different timezones and we cannot be present at all times, so things can get pretty slow if we want to hear from everybody)

You started working on documentation and Github templates. Good things, just not a priority right now (we had security concerns to fix and release, first). Let me do a recap of the mass of issues that were opened since #1058 (the vulnerability report):

The ones not listed here, I have no problem with. My point is: learn to propose changes, wait for comments, merge when consensus is reached, and prioritize tasks. You monopolized the issues section, without personally contributing a single line of code to the project. I previously had the suspicion that working with a team leader that has no understanding of the code base could be a problem, but everything ran smoothly because PRs were reviewed by other coders before getting merged (most of the time). This changed in recent times.

@UziTech
Copy link
Member

UziTech commented Feb 27, 2018

I second most of these concerns. Lately I have been focusing on cleaning up a few other projects I had and trying to follow everything that has come and go has been difficult. @joshbruce I am glad that you decided to step up and take this project on when everyone else seemed to be willing to let it fester and rot, but lately I feel things have been moving too fast and in too many directions. There were a few issues and PRs that I didn't get a chance to look at until they were already closed/merged. I was actually working on #1085 when you merged it without waiting for feedback. I had to start over in order to to fix it in #1087 .

@UziTech
Copy link
Member

UziTech commented Feb 27, 2018

A couple things to keep in mind:

  1. None of us are working on this full time, and living in different time zones, so it can take a while for us to even see the notifications.
  2. marked has had a lot of dependents for a long time, so:
    a. If we move too fast we are likely to break things (which means more time fixing things we broke instead of moving the project forward), and
    b. The current implementation is working for them

Unless it is a security issue,I see no reason to merge things until everyone has had some say in it, even if it is just a LGTM.

@joshbruce
Copy link
Member

joshbruce commented Feb 27, 2018

First, let me say thank you to everyone, especially to @Feder1co5oave and @UziTech, without the two of you, none of us would be here doing this great work that is being recognized by the outside world - literally. For reasons that have been made public and some that maybe haven't, you two have really been pushing this forward.

I do not want to seek conflict so I'll be as clear as I can be, and I think not explaining what went wrong would be a disservice to you and the project.

I agree. Think we would all prefer no (or at least constructive) conflict. Thank you for your candor and clarity.

The following is not to defend anything that happened over the last few days, but to explain intent - and not even really to explain what happened that led us there.

My intent with opening PRs in the mainline is a way to communicate to the rest of the community, "Hey, I have this one. You don't need to take that one on." (Think I've closed half a dozen PRs that updated the copyright date in the README...from different people...in different years.) I think, when it comes to this project and its history, we have all become so accustomed to unresponsiveness that most of us just fork, work in isolation, and only push when complete (if at all). I don't think I've seen a project with this many forks and stars with so few contributors back to the mainline. (And even more people are starring it every day based on the work we're doing.)

This working in forks can cause, and maybe has caused, a lack of knowing what someone is working on within the fledgling core team (@UziTech even asked if someone was handling the failing test). As I said over in #1083, I'm a pretty transparent human being. I'm also an Agile Coach accustomed to having daily standup with teams and constant communication and insight into what's going on across the team without having to "be that guy" constantly nagging people to check status.

As a publisher of the library, I'm kind of like a product owner in Scrum...at least that's my interpretation as of today. So, my intent every day when doing something for marked is to do what I think is best for all involved. Be they users, contributors, the committers, all the way to @chjj himself (this is always going to be his legacy).

Sometimes it may not feel that way but I hope you trust the intent is there.

My intent and reasoning behind becoming a bit more focused on the operational documentation (how we operate as a team of committers and community in general) was because, from what I could see, I wasn't seeing what we, as a team, were doing to help marked and our users, I was seeing only one person (@Feder1co5oave) really flying through trying to do all the things to help without a lot of visible backup support (maybe I just wasn't seeing it)...labeling stuff, talking to contributors, pushing PRs, and so on...and I honestly think that's part of how we got to the point of me being asked to take this project on. Which brings us to...

My intent when I went through and read all the issues and PRs that I closed, merged, or consolidated was to get a feel for the history of the project from a technical and community perspective. I noticed what I think was a recurring theme regarding the community part of this whole thing (given that there were really only two or maybe three eras of this project, if we want to call them that); one or two people trying to manage support for a package with 1M downloads a month - specifically without the ability to publish any of their hard work to NPM (that will not happen as long as I am a publisher on this project).

So, I figured starting to put the community and contributor stuff in place was a worthwhile thing and a high priority alongside the improvements to the code itself...and, frankly, what I can really bring to the rest of the team at this point...I was afraid we would end up in the same place again...one person getting burnt out trying to support the entire project (this was even something @chjj mentioned in emails discussing making me an owner on NPM and how he had tried to do it multiple times but people lost interest in doing it). I will do my best to make sure that doesn't happen again.

Again, going back to Tuckman, establishing norms and expectations and whatnot begins becoming more important when contributors simply don't know how to contribute and don't understand what the expectations (what they're doing "wrong") are. Some of the confusion felt by @davisjam seemed to revolve around the lack of documentation to help him understand how contributions work, for example (up to him asking who to tag for what - overcoming that contributor problem was the intent behind putting what we're all kinda good at in the AUTHORS page).

My intent when I asked for at least 24 hours and to cool down on #1083 was to account for the timezones problem as stated in the comment. Having said that, we don't have anything about what to expect for our contributors (yet, and I stress, yet). When a contributor submits an issue or PR how long before they get a response? How do we make sure that's happening without it being one person all the time (trying to keep up)? Right now we're in a weird, and convenient place, most of the contributors have given up on us...but most of our users haven't...so, how do we handle scaling contributors when/if they start coming back? I'm just one guy making a bunch of newbie mistakes (260 PRs, Issues, and whatnot over the course of a few days out of excitement), what do we do when/if there's dozens of contributors submitting things almost daily? (The USWDS project is actually why I set up my emails rules the way I did. If I'm not mentioned, it goes into a bucket I go to at my leisure. Most people just unsubscribe from notifications and never come back.)

I believe I have stated how some of our interactions have made me feel over the last few days elsewhere and don't want to muddy this with anything other than intent. Again, would not be here without @UziTech, @Feder1co5oave, and a few others who really didn't want to see marked die. Initially, in all honesty, I thought I was showing up to euthanize a project based on the feelings of the community when I showed...I had no idea I'd be trying to help reinvigorate it.

@joshbruce
Copy link
Member

And, what do we do now that we have a publisher who's actively engaged in the future of marked again?

@UziTech
Copy link
Member

UziTech commented Feb 27, 2018

We continue with the plan of keeping marked in a stable state and moving forward (but slowly). I respect you wanting to get things moving but, like I said above, marked is fairly stable (stable enough to have over 3000 dependents) and doesn't have any due dates.

I'll be honest, getting marked secure and off of my snyk report was my only motivation for pushing @chjj to hand over control. Since it is secure ATM it's priority has dropped on my todo list. I am willing to help out when I have time or if I am needed, but I am ok with it taking a year to get to 0.4.0

@joshbruce
Copy link
Member

joshbruce commented Feb 28, 2018

Yeah. When I first decided to take it on that was my primary motivation as well...then that started to change because I honestly appreciate the project...and it became about making it sustainable for anyone coming in off the street (and to help learn more about what it's like in this type of environment to setup a project - have another team about to go through the same trials and tribulations).

Therefore, my intent became (not necessarily in this order):

  1. Remove the impediments for the team:
  • We have the org now.
  • We have the CI now.
  • We have a basic operational framework now.
  • We have someone willing and able to publish on demand now.
  1. Find a few people who wanted to be able to merge PRs and do reviews who were also kind to contributors.
  2. Find a couple of people, honestly passionate about the project, willing to become publishers as well.
  3. NOT become the one guy trying to keep marked alive a year from when I stepped up.
  4. Setup a basic operational and governance structure to let anyone easily contribute...even if they're not GitHub masters. (Bob Martin has opened a few talks regarding the software development industry with the observation that the number of developers doubles every five years. Therefore, half the developers walking around today have less than five years of experience.)

(Maybe that's too much change for roughly 90 days, I thought we did pretty well up until a few days ago - honestly impressed and definitely take responsibility for my part in that - you have no idea how long it takes to get that level of traction on the projects I normally work on...seriously, we're talking months if not years.)

I really am kinda with you on things being able to take forever-ish (my day job is nothing but that). Having said that, I really don't consider this project stable after combing through the issues, PRs, and working off @Feder1co5oave's analysis of the issues.

  1. Hundreds of issues when I showed up. Many of them honest defects or people not understanding how marked works or can work (and no documentation to help them understand), and no community supporting them.
  2. No real focus or product vision regarding what marked should and should not be (we have that now thanks to your recommendations of CommonMark and GFM being the focus - and so it is - in the README for the world to see).
  3. No robust contribution notes to help newbs get up and running quickly (or really understand how marked works) - still a little light on the advanced stuff.

Not having a release every two weeks or years doesn't mean the product is stable for me when there is the amount of emotion behind the concerns of the previous contributors about wanting to fix the aforementioned and get those fixes out to the users - granted, they seem to have given up on the project as well - they're all still committers.

Of course, no one else stepped up either - anybody could have done what I did, why didn't they?

It does have me reflecting though.

Maybe it's not @Feder1co5oave who should step away. Maybe my work here is done, to be honest (and this has no melodramatic underpinnings whatsoever, seriously). Still not sure the contributors side of the house is where it could or should be, but maybe I'm wrong. Also reminds of Lyssa Adkins's book Coaching Agile Teams where she quotes Mary Poppins, "When they need me, they don't want me, when they want me, they don't need me."

@joshbruce
Copy link
Member

Oh! And @Feder1co5oave, if you honestly appreciated Tuckman, you might find Reinventing Organizations interesting as well...specifically the green (consensus) vs. teal (individual decision making, after seeking counsel) organizations. Going back to Tuckman and "the way each member of the team operates" - I tend toward teal, which can be very problematic when operating with those "at green".

@Feder1co5oave
Copy link
Contributor Author

I still have to read everything but I want to make clear right away that I never even suggested that you Josh should step away from marked. The project would probably die

@joshbruce
Copy link
Member

Thanks @Feder1co5oave, I appreciate that.

I'm afraid if passionate folks like yourself step away it would still die.

Given that you:

  1. Know the code, seemingly by memory;
  2. seem really passionate and concerned about its current and future states; and
  3. tend to be really good with and responsive to the contributors

...I was actually thinking it might be good for you to step up. There are a couple of concerns I have there, which we can discuss here or in DM somewhere else (@AMidKnight on Twitter, for example)...but, seriously, you have worked so hard over the last 90 days with nothing motivating you other than your drive to solve problems and make marked a better product. Truly impressed.

Honestly, just think we stepped on each other a bit back there (storming, yo, it's a thing). 😉

You're really focused on perfecting the output of marked, which is awesome!

Part of the reason that's awesome is because I'm really focused on the aforementioned community and governance aspects (sustainability of the project from a people perspective). Having someone jumping to fix the actual code problems means I don't have to spend a lot of time learning it myself (I suck at regex right now, but I'm willing to learn - and this JS seems so awkward right now it'd take a while for me to figure out what's going on).

Without you, or someone like you fixing the functional problems with marked, I'd have to turn my attention back to getting up to snuff on the code...because priorities.

@joshbruce
Copy link
Member

joshbruce commented Feb 28, 2018

ps:

this JS seems so awkward right now it'd take a while for me to figure out what's going on

This was actually a concern @chjj had as well when it came to maintainability. Believe the comment he made at the time said something about doing a bunch of performance tricks that most developers wouldn't recognize. Believe the topic of the issue was something like, "Why don't you let it go, man?" He doesn't want it to die any more than I do but he can't contribute like he used to...it happens.

@intcreator
Copy link

intcreator commented Feb 28, 2018

Found this while looking for a good first issue...not sure I can do anything about it though 😂

@joshbruce
Copy link
Member

joshbruce commented Feb 28, 2018

pps:

@Feder1co5oave: Just to be clear and explicit. This:

I'm afraid if passionate folks like yourself step away it would still die.

Was not meant as a plea to get you to stay. I don't do coercion. None of us are obligated to be here. And we all need to do what's best for ourselves long term.

I've really been hoping to find some more help from contributors willing and able to help solve the functional problems [alongside] you. Was really glad @davisjam stepped up to help out. Also glad to have seen @intcreator ask to help out as well (check that issue again, if you haven't already - you definitely might be able to help there 😊 ).

@1beb:

Agreed. I'm having a real difficult time with this text-based communication thing. Of course, the four of us are all in different timezones (I think - not really sure, to be honest) and have lives beyond marked; so, not sure we're there yet or if we will ever need to be.

@intcreator and @1beb:

Since you both showed up, thanks for that! Check out #1051 - maybe we should mark that as a good first issue as well. 😆

The short version is, after marked went stale for about 4 years (about 600 unanswered Issues and about 200 PRs, if memory serves, and a security vulnerability in pear tree), we decided to come try to help it out. That was only 90 days ago. So, we're actually doing pretty okay all things considered.

@joshbruce
Copy link
Member

joshbruce commented Feb 28, 2018

Oh! (Wish I could do something like @channel, but this ain't Slack). Might also be worth checking out a book called The Phoenix Project.

There's a guy named Brent in there. Marked is losing its Brents before capturing what's in their heads; so, that could be a problem. In other disciplines you might hear this referred to as institutional knowledge.

@styfle
Copy link
Member

styfle commented Feb 28, 2018

You can mention the team @markedjs/marked

@intcreator
Copy link

If you want a faster, more general team communication platform, you can start a Discord server. If you're not familiar with Discord, it's kind of like Slack except there are unlimited text messages for free (instead of 10k) and unlimited team voice calls.

@styfle styfle removed the good first issue Something easy to get started with label Feb 28, 2018
@joshbruce
Copy link
Member

Closing. It appears @Feder1co5oave has officially stepped down. 😞

Thank you so much @Feder1co5oave for everything you've done! Hope you'll maybe check back on occasion. Maybe we can even get to a point where you decide to come back...you will always be welcome and appreciated.

I will update the authors page at a later date.

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

No branches or pull requests

5 participants