guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Simplify contribution by using user-friendly bug tracker and git int


From: Jan Wielkiewicz
Subject: Re: Simplify contribution by using user-friendly bug tracker and git interface
Date: Sat, 31 Aug 2024 14:05:56 +0200

Hello again,

On Sat, 31 Aug 2024 01:45:04 +0200
Ekaitz Zarraga <ekaitz@elenq.tech> wrote:

> Hi Jan,
> 
> 
> First, there are tags in the issue system:
> 
> https://issues.guix.gnu.org/search?query=tag%3Aeasy
> 

Missed this completely. Where is this documented?

> 
> The issue of friendliness has been brought up in the past, I suggest
> you to search in the mailing list for previous interactions in the
> topic.
> 
> In fact, I took part on a discussion about more general topics and I 
> mentioned we should be more empathetic with other people's needs:
> https://lists.gnu.org/archive/html/guix-devel/2023-09/msg00488.html
> 

Okay, will read this later.

> 
> Tedious and counterintuitive are very loaded words, and not very 
> objective either. The intuitiveness of things is based on the
> previous context people has. This is a GNU project, and the context
> for many GNU developers is autotools, mail based workflow and so on:
> maybe for GNU developers that's the most intuitive thing. Who should
> we please?
> 

I used these words because they convey my feelings related to the
current process. The discoverability of the system is low - every time
I send patches I need to reread documentation to then finding out my
email provider does not cooperate (failing SMTP, having to re-enable
email client support to proceed). So I probably need to change my email
provider in order to contribute to Guix smoothly.
I'm aware this is a GNU project, I'm a free software enthusiast and
GNU/Linux user myself, but I'm not an epic GNU hacker and you can't
expect all contributors (who simply want to update a package they use)
to be epic GNU hackers.

> In my case, I find the Github-like PR based approach quite 
> counterintuitive, but I got used to it before collaborating in Guix
> and now I don't dislike it. Starting using PRs for everything made me
> a little bit reluctant to try the email based approach. Surprisingly,
> it happens to be way easier than it looks, and it's actually quite
> cool.
> 

Wasn't easy to learn it at first, but running "git push origin" to
update a remote branch linked to a PR is pretty straight-forward.

> You should give it a go: https://git-send-email.io/
> (If you don't like or you can't use that, you can paste the patches
> in an email, or send them as attachments, which is as difficult as
> taking part in this mailing list.)

I have this installed and use it, can't send patches to Guix
otherwise...

> Once you use it for as long as you used other options, I'd love to
> have this conversation with you again (I'm not saying you'd change
> your mind, but the conversation would be fairer).
> 
> I will share some thought here that I know many people in the
> community doesn't agree with (and I'm kind of a 50-50 on it) but I
> think it's worth sharing:
> 
> 
> So, it is true that making the access to things harder than the
> possible minimum is simply stupid. There's no discussion there.
> That being said, it would be very sad if a seasoned software
> developer, who proved to be able to write code for a complex project
> like Guix, is not able, is discouraged to, or is afraid of sending
> the patches via email (but is ok opening an account, making a fork,
> making a pr and so on).

I'm apparently smart enough to install Guix as my daily driver distro,
learn Emacs with Paredit and hack together packages, and then an
email-based system filters me out...

> Putting it in a different way: not every contribution is worth 
> attention. If people who want to contribute are not able to send an 
> email, I don't think their potential contributions would be that 
> interesting or worthy. The skills needed to be able to participate in 
> Guix are quite advanced, I don't think the email is a burden for
> people that have them.
> So let's say, yes: we do migrate to codeberg.org. And now what? Do
> you think the amount of contributions will skyrocket? Do you think
> the amount of meaningful contributions will be higher?

Guix is not one thing - updating packages is not the same kind of task
as for example hacking on low-level system or package manager
functionality. I believe simplifying or making contributions more
similar to what other projects have would indeed help. One example
would be a free software game project I take part in. The original
founder of the game did not know git and maintained the game using
GitHub's online editor. Then when he stepped down, we moved the project
to Codeberg. In the very same project we also taught a literal Windows
user how to use git and command line which then enabled him to make
cool and meaningful contributions. And then I myself did several
contributions to Guix while barely knowing what I'm doing. So I'd be
careful with underestimating the power of inexperienced users.

> I know what I say here might smell like some intellectual classism or 
> something, but if we slow down a little bit: implying that there's a
> lot of people wanting to contribute to Guix and they cannot overcome
> the burden of the tooling we use is a little bit condescending to
> them.

I'm doing my best to overcome the burden of tooling, but in the very
same time I could just make my own channel with software I want updated
on Codeberg, instead of contributing them to upstream Guix.

> 
> *People are smart*. They'll figure out. Our process could be better, 
> specially the documentation for newcomers (which btw improved a lot 
> recently, and mumi is great), for sure, but, in summary:

Yeah, the current format of the document makes it easy to overlook
important things, for example there's no header called "Canceling Your
Issue", "Updating Your Patch Series", etc. Codeberg's user interface
makes these things discoverable under nice green/red buttons.

> 
> - I don't dislike the PR style
> - I doubt if using a PR based approach would result in more and
> better contributions
> - Just because something is more popular that the other thing it
> doesn't mean the latter is less intuitive
> - Our process is not more complex, but it might be *new* for people
> - If we provide GOOD documentation, people will understand it
> - We have communication channels (that work) for the cases when
> people gets stuck
> 
> 
> Those are my thoughts.

In the end you could argue that it's my own fault for using a
broken/incompetent email provider, but then it's the contribution
system of Guix that exposed this issue as opposed to alternative
systems like web GUIs that usually just work. Perhaps adding "your
email provider may be broken, try using a different one" and "make sure
to enable support for a standalone email clients in your email
settings" to the documentation would help? I spent more time than
needed in my life looking for solutions to fix email sending.


So yeah, that's pretty much it

--

Have a nice day
Jan Wielkiewicz




reply via email to

[Prev in Thread] Current Thread [Next in Thread]