Boost Asset Stewardship Review from Ruben
DISCLAIMER: I'm a C++ Alliance employee Hi all, I'm the author and current maintainer of Boost.MySQL. I'd first like to thank both the Boost Foundation and the C++ Alliance for their contributions and efforts, especially when done in their free time. On the technical side, I particularly appreciate the infrastructure contributions the C++ Alliance has made. The Drone CI has been really important for me even when I was a volunteer, as it's fast and supports Windows Docker images. I also appreciate their efforts regarding documentation, as I share the need to update Boost in this aspect. Of course, their recent sponsorship regarding Boost.MySQL has allowed me to develop the library much further than my otherwise scarce free time would have allowed me. I think the C++Al proposal is good, as it will allow other authors like me to also benefit from infrastructure improvements like the ones I mentioned. C++Al people are pretty technically enthusiastic, which I also like. The concern of letting too much of Boost's decision power in a single organization's hands seems legit. However, the proposal seems to take this into account, proposing several measures to mitigate the risk, with a Steering Committee composed of respected Boost developers. I also support adding Peter and Glen to the committee. I also appreciate the contributions that the Boost Foundation members have made to Boost, and would like to thank them for that. I'd like to echo a point made by others in the mailing list throughout this discussion and also somewhat reflected in The Boost Foundation's proposal, about mailing list friendliness to newcomers. When I first reached out to evaluate the potential usefulness of what would become Boost.MySQL (https://lists.boost.org/Archives/boost//2020/03/248301.php) I received a couple of really discouraging comments, which almost made me abandon the idea. These comments were based on the (somehow understandable) misconception that my library was a wrapper around the official C API. Thanks to other people's support (Richard, Chris, Vinnie and some others, IIRC) I managed to move forward. But it could have not been the case. As a community, we could try to improve instances of this to make things better for newcomers. That said, I think the C++ Alliance proposal moves in the right direction, so I vote to ACCEPT it. Thanks, Ruben.
Ruben Perez wrote:
I'd like to echo a point made by others in the mailing list throughout this discussion and also somewhat reflected in The Boost Foundation's proposal, about mailing list friendliness to newcomers. When I first reached out to evaluate the potential usefulness of what would become Boost.MySQL (https://lists.boost.org/Archives/boost//2020/03/248301.php) I received a couple of really discouraging comments, which almost made me abandon the idea. These comments were based on the (somehow understandable) misconception that my library was a wrapper around the official C API. Thanks to other people's support (Richard, Chris, Vinnie and some others, IIRC) I managed to move forward. But it could have not been the case. As a community, we could try to improve instances of this to make things better for newcomers.
I clicked on Ruben's link above, mainly to check if it was a comment from me that he was complaining about. It wasn't. But I encourage others to look at that email thread. Was it reasonable for Ruben to "almost abandon the idea" based on the replies he received? Could the Boost review process work effectively if messages such as those in that thread were not allowed? Regards, Phil.
On 13/09/2024 17:39, Phil Endecott via Boost wrote:
Ruben Perez wrote:
I'd like to echo a point made by others in the mailing list throughout this discussion and also somewhat reflected in The Boost Foundation's proposal, about mailing list friendliness to newcomers. When I first reached out to evaluate the potential usefulness of what would become Boost.MySQL (https://lists.boost.org/Archives/boost//2020/03/248301.php) I received a couple of really discouraging comments, which almost made me abandon the idea. These comments were based on the (somehow understandable) misconception that my library was a wrapper around the official C API. Thanks to other people's support (Richard, Chris, Vinnie and some others, IIRC) I managed to move forward. But it could have not been the case. As a community, we could try to improve instances of this to make things better for newcomers.
I clicked on Ruben's link above, mainly to check if it was a comment from me that he was complaining about. It wasn't. But I encourage others to look at that email thread. Was it reasonable for Ruben to "almost abandon the idea" based on the replies he received? Could the Boost review process work effectively if messages such as those in that thread were not allowed?
I admit I didn't re-read the whole thread (though quite a bit), but I think Rubin fell foul of two things here: firstly a few folks who didn't actually check what the library was about before posting: that was quickly corrected. And then having the audacity to suggest something that absolutely everyone had an opinion about ;) The latter is generally more of an issue around here: because it can be simply impossible to please everybody. It helps in that case to have a clear single-minded vision of what you're trying to achieve, AND to be able to articulate that: that can be hard for newcomers, and harder still for non-native English speakers I'm sure. From what I saw, Rubin actually did a good job there. I'm not sure how heavier moderation here would have helped - though as a (mostly absentee recently) moderator to this list I'm certainly open to suggestions on how we can make these conversations go more smoothly. Perhaps, thinking out loud here, some gentle moderator interjections to help tease out from the author what they are trying to achieve, combined with a reminder when needed, that folks should actually take a look at what it is they're commenting on? What I'm not seeing though, is anything that should be flat out banned, or should lead to a return to the sin bin and posts being moderated before posting. Best, John.
On Fri, Sep 13, 2024 at 11:59 AM John Maddock via Boost
...
These are some ideas for improving things: 1. The page which lets you subscribe to the mailing list is revised to include some basic rules and also some guidance with expectations 2. When an author submits a library for review, then just before the review starts they are given a link to a page which explains what they should expect. And in particular they should be prepared for what might sound like very harsh criticism but is really not. "It might seem like some of the people reviewing your library haven't actually looked at it..." Thanks
On Fri, Sep 13, 2024 at 1:58 PM John Maddock via Boost
On 13/09/2024 17:39, Phil Endecott via Boost wrote:
Ruben Perez wrote:
I'd like to echo a point made by others in the mailing list throughout this discussion and also somewhat reflected in The Boost Foundation's proposal, about mailing list friendliness to newcomers. When I first reached out to evaluate the potential usefulness of what would become Boost.MySQL (https://lists.boost.org/Archives/boost//2020/03/248301.php) I received a couple of really discouraging comments, which almost made me abandon the idea. These comments were based on the (somehow understandable) misconception that my library was a wrapper around the official C API. Thanks to other people's support (Richard, Chris, Vinnie and some others, IIRC) I managed to move forward. But it could have not been the case. As a community, we could try to improve instances of this to make things better for newcomers.
I clicked on Ruben's link above, mainly to check if it was a comment from me that he was complaining about. It wasn't. But I encourage others to look at that email thread. Was it reasonable for Ruben to "almost abandon the idea" based on the replies he received? Could the Boost review process work effectively if messages such as those in that thread were not allowed?
I admit I didn't re-read the whole thread (though quite a bit), but I think Rubin fell foul of two things here: firstly a few folks who didn't actually check what the library was about before posting: that was quickly corrected. And then having the audacity to suggest something that absolutely everyone had an opinion about ;)
The latter is generally more of an issue around here: because it can be simply impossible to please everybody. It helps in that case to have a clear single-minded vision of what you're trying to achieve, AND to be able to articulate that: that can be hard for newcomers, and harder still for non-native English speakers I'm sure. From what I saw, Rubin actually did a good job there.
I'm not sure how heavier moderation here would have helped - though as a (mostly absentee recently) moderator to this list I'm certainly open to suggestions on how we can make these conversations go more smoothly. Perhaps, thinking out loud here, some gentle moderator interjections to help tease out from the author what they are trying to achieve, combined with a reminder when needed, that folks should actually take a look at what it is they're commenting on?
What I'm not seeing though, is anything that should be flat out banned, or should lead to a return to the sin bin and posts being moderated before posting.
Agreed. To me, it's more a question of how we go about things. I try to add things like "this is not a criticism per se," or "I don't get it yet," etc., to overcome the lack of body language and tone of voice that we all rely on in non-textual communications. I know others do as well. I think being short and to-the-point has its place, but dealing with newcomers is usually not that place. If we each try to improve this a bit at a time, it just becomes part of the culture, and not something we need to concentrate on much. Zach
On Fri, 13 Sept 2024 at 19:17, Phil Endecott via Boost
Ruben Perez wrote:
I'd like to echo a point made by others in the mailing list throughout this discussion and also somewhat reflected in The Boost Foundation's proposal, about mailing list friendliness to newcomers. When I first reached out to evaluate the potential usefulness of what would become Boost.MySQL (https://lists.boost.org/Archives/boost//2020/03/248301.php) I received a couple of really discouraging comments, which almost made me abandon the idea. These comments were based on the (somehow understandable) misconception that my library was a wrapper around the official C API. Thanks to other people's support (Richard, Chris, Vinnie and some others, IIRC) I managed to move forward. But it could have not been the case. As a community, we could try to improve instances of this to make things better for newcomers.
I clicked on Ruben's link above, mainly to check if it was a comment from me that he was complaining about. It wasn't. But I encourage others to look at that email thread. Was it reasonable for Ruben to "almost abandon the idea" based on the replies he received? Could the Boost review process work effectively if messages such as those in that thread were not allowed?
Regards, Phil.
I've re-read the conversation, and the message I actually remembered was this one from Andrey: https://lists.boost.org/Archives/boost//2020/03/248305.php To be fair, Andrey's confusion was pretty understandable. I explained myself in a latter message and things went smoother after that: https://lists.boost.org/Archives/boost//2020/03/248313.php The point here was that this was my first-ever interaction with the Boost community (other than just reading the ML). The first interaction tends to have a bigger impact than successive ones. I did receive some harsh critics during the review, too, but that's different - if you've made it to the review, you're prepared to receive all kinds of feedback. If you've scheduled a review, you're no longer someone who just arrived to the community (I think there was a time lapse of 2 years between these two events). To be clear, I'm not trying to make Andrey or anyone else feel guilty for this. I'm not suggesting any action to be taken against anyone. I thought that sharing this experience could help us improve as a community. Thanks, Ruben.
On 9/13/24 14:41, Ruben Perez via Boost wrote:
I'd like to echo a point made by others in the mailing list throughout this discussion and also somewhat reflected in The Boost Foundation's proposal, about mailing list friendliness to newcomers. When I first reached out to evaluate the potential usefulness of what would become Boost.MySQL (https://lists.boost.org/Archives/boost//2020/03/248301.php) I received a couple of really discouraging comments, which almost made me abandon the idea. These comments were based on the (somehow understandable) misconception that my library was a wrapper around the official C API. Thanks to other people's support (Richard, Chris, Vinnie and some others, IIRC) I managed to move forward. But it could have not been the case. As a community, we could try to improve instances of this to make things better for newcomers.
My comments in that discussion were not particularly positive, so I'm guessing you're referring to me. If so, I'm truly sorry that my comments made that effect on you and almost costed us a great new library. Perhaps, I should have chosen a different tone of my messages. However, I think it is fair to ask a new author to explain why the proposed library is useful, and it is the author's task to correct possible misconceptions that may become apparent among the community during the discussion. I think, the community members should be able to express their thoughts on the library, even if those thoughts are not positive. Yes, unfortunately, this may put extra pressure on the author of the proposal, but I think even the negative feedback is much more useful than no feedback at all. Because you can take negative feedback and convert it to improvements to your library, but you can't do that with silence. Going back to that particular discussion, I still remain of the same opinion that I expressed then. Specifically, that I see little value in simple C++ wrapper libraries on top of a C library. There may be exceptions, mostly when the C++ wrapper offers substantially more than a simple translation of the underlying C interface, but my general view remains what I said. Of course, when I wrote my comments in that discussion I was incorrectly assuming that the proposed Boost.MySQL was such a wrapper library. I probably should have investigated deeper before commenting.
On Fri, Sep 13, 2024 at 1:25 PM Andrey Semashev via Boost < boost@lists.boost.org> wrote:
However, I think it is fair to ask a new author to explain why the proposed library is useful, and it is the author's task to correct possible misconceptions that may become apparent among the community during the discussion. I think, the community members should be able to express their thoughts on the library, even if those thoughts are not positive.
It's unreasonable to act like the author is supposed to spoon-feed you information about the library you're remarking on if you insist on being willfully ignorant. There's a difference between asking about whether or not a library has justifiable utility and making criticisms based on ignorance. Some unsolicited advice would be, consider where this attitude is coming from that you feel the need to approach everything with "I deserve to be mean". - Christian
On 9/13/24 23:33, Christian Mazakas via Boost wrote:
On Fri, Sep 13, 2024 at 1:25 PM Andrey Semashev via Boost < boost@lists.boost.org> wrote:
However, I think it is fair to ask a new author to explain why the proposed library is useful, and it is the author's task to correct possible misconceptions that may become apparent among the community during the discussion. I think, the community members should be able to express their thoughts on the library, even if those thoughts are not positive.
It's unreasonable to act like the author is supposed to spoon-feed you information about the library you're remarking on if you insist on being willfully ignorant.
There's a difference between asking about whether or not a library has justifiable utility and making criticisms based on ignorance.
We all come ignorant to a new proposed library. That is unless you have become familiar with it before the proposal. It is not unusual that viewers make assumptions based on the brief information posted in the announcement or comments by other reviewers without digging deeper. It doesn't mean those people are willing to remain ignorant, they might do those kinds of shortcuts for various understandable reasons - lack of time, for one. Assuming ill intent in this case is rather presumptuous on your part. In any case, as I said, it is unfortunately possible that misunderstandings appear during the discussion, and the author should be prepared to clear them.
Some unsolicited advice would be, consider where this attitude is coming from that you feel the need to approach everything with "I deserve to be mean".
I don't see my comments in that discussion as mean. Ill-informed is more likely. I was just expressing my (ill-informed) opinion, and I didn't insult anyone, as far as I can see. And as I said earlier, the fact that I was ill-informed was on me, and I should probably have put more effort in looking into the library.
On Fri, 13 Sept 2024 at 22:25, Andrey Semashev via Boost
On 9/13/24 14:41, Ruben Perez via Boost wrote:
I'd like to echo a point made by others in the mailing list throughout this discussion and also somewhat reflected in The Boost Foundation's proposal, about mailing list friendliness to newcomers. When I first reached out to evaluate the potential usefulness of what would become Boost.MySQL (https://lists.boost.org/Archives/boost//2020/03/248301.php) I received a couple of really discouraging comments, which almost made me abandon the idea. These comments were based on the (somehow understandable) misconception that my library was a wrapper around the official C API. Thanks to other people's support (Richard, Chris, Vinnie and some others, IIRC) I managed to move forward. But it could have not been the case. As a community, we could try to improve instances of this to make things better for newcomers.
My comments in that discussion were not particularly positive, so I'm guessing you're referring to me. If so, I'm truly sorry that my comments made that effect on you and almost costed us a great new library. Perhaps, I should have chosen a different tone of my messages.
Yes, as I said in my previous ML post, I was referring to them.
However, I think it is fair to ask a new author to explain why the proposed library is useful, and it is the author's task to correct possible misconceptions that may become apparent among the community during the discussion. I think, the community members should be able to express their thoughts on the library, even if those thoughts are not positive. Yes, unfortunately, this may put extra pressure on the author of the proposal, but I think even the negative feedback is much more useful than no feedback at all. Because you can take negative feedback and convert it to improvements to your library, but you can't do that with silence.
I'm completely with you, feedback is necessary. I'm thankful to everyone who has provided me with negative feedback, as (to the extent I've known) I've converted it into improvements to my code. We should definitely keep providing feedback to library authors as much as we can. I think a slightly more positive tone (as you suggest), with the exact same information, would have helped me back then. We can't change the past, but we may try our best with whoever comes next. We all love C++ and Boost and get passionate about it (this all applies to me, too). I'm happy that we had this discussion within the community in such a positive way. Let's keep the good feedback going. Thanks, Ruben.
participants (8)
-
Andrey Semashev
-
Christian Mazakas
-
Glen Fernandes
-
John Maddock
-
Phil Endecott
-
Ruben Perez
-
Vinnie Falco
-
Zach Laine