PSA: make it easier to help you

I’m sorry you had that experience, thanks for speaking up and sharing it.

5 Likes

The problem with jargon in any field is that it’s opaque to non-experts. The benefit is that it allows experts to talk precisely and efficiently about complex things. But this post is aimed mainly at newcomers!

3 Likes

Also, not everybody here is a native English speaker. For one, the first time I saw a “PSA” thread here I had to google it to know what the abbreviation stands for.

3 Likes

Thanks for sharing! Julia is my first language, and learning as I go, so I know how it feels!
Good on you to dive into signals processing and coding as part of your music studies, enjoy the interdisciplinary relationships and insights. The ancients knew this approach well and made great advances in knowledge and application as such. The Pythagorean Musica Universalis (Harmony of the Spheres) may still today be understood by only a few. Or think of DaVinci’s anatomy studies done in the middle of night on cadavers for the purpose of knowing every muscle and tendon and their interaction such that he could better portray movement in his art (and then the study of nerves and where they originate in the brain such that he could understand the source of the emotions he wished to capture and portray?! Only this century with FMRI have some of his findings been verified!) BTW, if you’re still at UCSD, perhaps reach out to @PetrKryslUCSD who is also there? He’s a very helpful member of the community here, and who knows, maybe you’ll connect he and Miller Puckette on the Julia topic…

To the experts and seasoned members, I’d first say thanks. Next, would suggest to step back and reflect for just a moment as to how much you know and understand, the deep context you had when “learning” Julia, from a programming and mathematical basis. Many of you know several languages well enough to understand the nuance and merits of each for numerous situations/applications.
Imagine a pro photographer, years of experience, film to digital, small format to large, etc. Hand her a camera of different brand or style and say ‘go shoot this’ and no problem, just a bit of fiddling with the controls (menus now) to understand where all the “standard/known” functions are (f-stop, shutter speed, bracketing functions, focus mechanisms etc.). Sure if only a DSLR user and handed a Rangefinder it’s a bit of adjustment (not to mention understanding nuance of parallax and when it matters) but still no problem. A newb is lucky to get a proper exposure in their first ‘roll’ the first time they say goodbye to auto-mode and go full-manual, let alone worrying about composition and using bokeh or shadow to advantage!

So too it is here, members from all walks and stages. It’s tough sometimes having one big classroom from K through Post-doc, but it works surprisingly well. There isn’t an ‘advanced’ users section on the board - no, that’s standard fare - rather there’s the “First Steps”. I like it that way, even if it’s damn tough and a total slog still.

Well, given the clear desire for ‘concise’ as a general sentiment, I’ve clearly stepped well over the line, but hopefully the perspective helps someone in some small way.

I have linked to this post a few times, and each time I found it by searching for “PSA”. So I would say it’s actually a relevant post also for experienced user, who want to link to it.

1 Like

Me too, except I’ve Googled it multiple times, not just the first, because I keep forgetting it. I actually don’t care what it stands for, it’s just a useful tag make it stand out and make it easier to find.

I would guess even most native speakers need to Google it at first.

1 Like

Indeed. @Nakul_Tiruviluamala and anyone else from my corner of the woods: send me a word, and let’s get together. I love shooting the breeze about Julia and programming in general…

1 Like

This post was flagged by the community and is temporarily hidden.

4 Likes

This is definitely useful context, and an unfortunate outcome. If you can recall, do you think the feeling of scolding came from posts like this, or from the people referring you to posts like this in your own thread (or both)? I’m wondering if @Tamas_Papp’s desire for keeping posts like this terse and packed with info can be accommodated if we’re sure to be friendly when referring people to it. I suspect the number of people stumbling on it on their own is close to zero, and the first impression (from the referral) is likely to leave a stronger impression.

That said, I agree with the folks interested in adding just a few words of encouragement to the top. That won’t make up for people being rude in referral posts, but it might potentially blunt people’s perceptions of scolding if a referral is a bit scoldy, and it will reinforce friendliness if the referral is friendly - win / win!

I am not sure this is common. I think that rudeness on this forum (which, again, I find very rare here) should be handled with the procedures that are in place when someone feels that community guidelines were violated.

@Nakul_Tiruviluamala: out of curiosity, I reviewed the topics you opened a year ago and I just saw a lot of dedicated effort to help from various people. I am under the impression that 80%+ of your questions were solved within a few hours or at most a day (not all of them are marked with a solution checkbox), and the people helping you appear to have devoted significant time to it. I am sorry to hear that you felt unwelcome despite this.

2 Likes

You’re right. I think I meant “perceived as rude.” There’s a lot of behavior that, to a neutral 3rd party observer would not be considered rude, and certainly don’t violate community standards, but that from the perspective of someone new to this forum, new to coding, and or new to julia, might nevertheless come across as unwelcoming. Eg:

Questioner: Please help, my code has an error (screenshot of REPL)

Response: Please look at this PSA, and copy/paste your code rather than using a screenshot.

Questioner: (paste of unformatted code)

Response: Please format your code (link to PSA)

Questioner: (failed attempt to format code), please can anyone explain this?

Response: Again, please format your code. It’s a MethodError, (link to julia docs on Methods)

None of this is rude per say - it’s all totally in bounds. And it’s also understandable that people don’t want to spend a ton of time explaining this sort of thing over and over. But we should recognize that, from the perspective of someone trying to get help, links to large pages of text that may contain somewhere in them the answer that they’re seeking (but require slogging through irrelevant information, or information whose relevance may not be apparent), can be off-putting.

Asking questions well is a skill, and it takes practice. It’s totally appropriate that we ask people to learn this skill, but I think the community as a whole is better when we all make an extra effort to be kind to people that are struggling.

To be clear - I think this forum is already a role-model for being kind to newcomers, and I think that most of us, most of the time do put in that effort). But the fact that folks like @Nakul_Tiruviluamala have had the experience of feeling scolded (and if there’s one person willing to say that, there are probably many others that felt this way and as a result aren’t around anymore), should be evidence that we can still improve.

11 Likes

This (besides people being always friendly, of course) would be the optimal scenario but since that would be a much more challenging change, at least putting it in the thread would be the next best thing IMO.

I’m certain you had good intentions doing this but please be aware that this can put another barrier on people speaking out about issues like this (in addition to the high barrier that’s there just by nature). I wouldn’t feel good with people going through my history to look at situations I explicitly said I felt uncomfortable in. For people it can be hard in such a moment not to judge (“hm, that didn’t seem too bad”) and even harder not to feel judged (≈ “your feelings are wrong”) which can be off-putting, to say the least.

Few (if any?) have claimed that the Discourse isn’t helpful or isn’t good at finding solutions, and I didn’t get the impression @Nakul_Tiruviluamala was talking about not getting problems solved.
To exaggerate: People can be both friendly and unhelpful (“hey there, I had the same problem too, that’s really unlucky. I googled something and somewhere there I found the answer, hope that helps!”) as well as helpful and unfriendly (“just do …, next time RTFM”).

I wholeheartedly agree, and this is a really important thing to look out for, IMO.

I’m not sure I also agree with

though. Again, I don’t question helpfulness: I think ~90-95% of posts fall in the neutral-helpful category, but that doesn’t make them “a role-model for being kind to newcomers”, IMO. Maybe we read messages differently, and I’d be interested if you have specific situations in mind or if this is more of a general feeling.
Either way, I’d be happy if everybody felt encouraged to write posts that fit that ideal. :slightly_smiling_face:

6 Likes

I think “role model” relative to many programming communities. I’ve said elsewhere that “not as toxic as other programming communities” is not a high enough bar, we can and should do better. But I also think it’s worth comparing like against like.

I think that, given this is a forum populated almost entirely by incredibly busy people offering help and feedback for free, neutral-helpful is pretty great. I think being helpful is kind. Giving people links and advice on how to find solutions on their own is also kind. There’s the adage, “Give a person a fish and you feed them for a day. Teach a person to fish and you feed them for life.”

Given a bunch of recent posts are (rightly I think) offering critiques, it’s worth highlighting that a lot of people here are really kind in trying to teach folks to fish. But I’m also trying to say is that we need to remember that if a person is starving, it would be much better to give them some fish, preferably pre-cooked, before handing them a pole and trying to show them how to bait a hook.

3 Likes

This is a colorful metaphor, but I don’t understand how it applies here. A starving person is in danger of dying, while someone asking for help here and getting some pointers instead of a polished solution is in danger of… doing a bit of reading and thinking, I guess? I don’t consider either of those activities harmful.

In any case, my interest is mostly in helping people who wish to invest in learning Julia. What you describe is essentially free consulting, which I am not motivated to do. If you are, that’s great! I just sincerely hope that it never turns into an implicit or explicit expectation on this forum, because I suspect it would just make a lot of people quietly limit their involvement here (and I would be one of them).

I think that we have each clarified our positions, and this discussion is going in circles now. Note that this page is a wiki now, so anyone can edit it (I think). Feel free to add to it and make it more friendly; I would just appreciate if it was kept concise overall.

11 Likes

This place is the most helpfull and people here in general are the friendliest I ever experienced on any discussion board I have been in decades.

There are a very small number of some minor rudeness and not so friendly answers here to find, still those answers are targeted to help the questioner.

An even smaller number of participants seem to be offended (slightly or more or less) by some wordings which could be considered as rude or sloppy. Sure I do suppose these numbers are small, but at the end, this is all about technical questions and solutions, and not about psychological or mental issues.

It is possible to try harder and harder to even make the most sensitive people feel comfortable here, but at the end, there will be less people who will go through this effort and try to help the original technical question.

Nothing against more friendliness but it is more important to have fast and competent solutions. For this we need the technicians and nerds out there, who, in some cases :wink: , are missing some love and empathy for the one who asked the technical question but now got the technical solution.

9 Likes

OK, think instead that a new coworker says “I didn’t have lunch, I’m starving! What should I do for dinner?” If you send that person a link to LMGTFY “places to eat nearby” or hand him a fishing rod and a recipe book for cooking fish, that’s not a great response. There’s certainly a spectrum - you could say “this burger joint around the corner” or “come over to my house and I’ll cook for you.” To be clear, I think the vast majority of people on this forum (you included!) do these later things. I think you might say (yes, I realize this metaphor is getting super tortured), “Come over to my house - I’ve got all of the ingredients for a great meal, I’ll show you how to cook it,” which to be clear is super kind and above and beyond - you’re interested in people learning to cook for themselves, and that’s admirable (and again so I’m clear, from my perspective, your contributions here are constantly among the most useful on the forum). But for someone that was looking for options for fast food near work, this might seem a little aggressive.

Probably true. I’ve just made a couple of small edits to this end - take a look and let me know. I think it’s still quite concise, but adds just a little bit more social padding :slight_smile:.

Edit: should probably mention that I adapted @ElOceanografo’s text from here for the beginning.

2 Likes

It would be great if you did not try to base this discussion on stories and metaphors like this, because they are not very pertinent and just muddle the whole issue.

Eg a coworker is someone I have an ongoing cooperative relationship with in the workplace, enforced by social standards and the business culture of our common employer, which does not apply to most people on this forum. If you relate to total strangers you just met online and your coworkers the same way, that’s fine, I don’t.

Again, I am not sure I am decoding the metaphor correctly, but I don’t think that participating in a technical discussion in a civil manner, consistent with the community guidelines, can be construed as aggressive. We may just have to agree to disagree about this.

That said, I don’t think it is helpful to label behavior “rude” and “aggressive” (you have used both labels in this discussion) just because you would do it differently. The implication is that people who give help here, but do not go out of their way to be extra friendly by your standards, are rude and aggressive.

8 Likes

For example, when i see the first post of someone, i always start welcoming to this Discourse, and then i switch to response mode. If i have time, i try to untangle what the asker wants, if its possible and it’s in my attention budget, while also asking for more information and better formatting (in a lot of cases, the next comment is someone posting this thread). if there is enough information provided, then a preliminary response is made. iterate until solution is found.

Sometimes, even if no response can be given, and specially if its the asker’s first question, a post from someone in the community can make a difference, as essentially we are just people behind a keyboard (or smartphone).

2 Likes

I’ve shared an adaption of the post on the Go Forum. Thank you for the inspiration.

9 Likes

Cool! Nice to see this message spreading. Some formatting suggestions for the first point:

  1. If you put four spaces before paragraphs after the line break, including the code block, they will look like they’re of the same element of the ordered list.

    Like this.

    Or this
    
  2. For showing quoted code, wrap your example in 4 backticks, so that your triple backticks show up, like this:

    ````
    ```
    func add(x, y int) int {
        return x + y
    }
    ```
    ````
    

    Tamas put a link in the original post of this thread to a different post about formatting discourse posts that’s super.

2 Likes