Hacker News new | past | comments | ask | show | jobs | submit login
Don't ask to ask, just ask (dontasktoask.com)
187 points by chynkm 4 months ago | hide | past | favorite | 101 comments

I wrote a similar guide (less concise/maybe more detailed) a few years back: https://josh.works/better-questions

In another post, I make a case for never, ever asking "are you there?" in Slack[0]. It's been popular for my friends who work on remote teams inside of larger non-remote companies.

Both are relevant, both try to encourage us to be respectful of the time and effort others might give us.


I once checked my Slack to find that, an hour previously, a coworker had sent me a message: "Hello jbay808". So I wrote back: "Hello coworker."

An hour after that, I got a reply from him: "lol. Anyway I just wanted to let you know that there's a bug in SW version 0.3..."

And I was wondering, why not open with "Hello jbay808, I just wanted to let you know..."? It was a perfectly good asynchronous discussion after that.

Yep. A 1:1 transfer from "normal conversation" to "slack conversation" can be really annoying.

If I barged into your office for help and before you'd even made eye contacted started with "hey jbay808 I'm trying to run this database migration but keep getting validation errors..."

and that was the first thing I'd said to you in three days? no good.

Doing this in slack? :chef-kiss:

A previous HR executive used to open every slack conversation with "yt?" Which stood for "You There?". I never understood why you would say that and nothing else, and if the answer was "no", why you wouldn't just say what you were going to say so the person would read it when they WERE there.

hahaha. yep.

A senior executive at my company would sometimes ping me with "got a minute?"

And whenever I saw it, I'd always think

> I'm about to get a raise or i'm about to get fired

When it's HR, or someone where the person sending the message is significantly more powerful than the person receiving it should consider that their "ping" might be interpreted as negatively as possible, unless they specifically indicate that everything is fine.

(Turns out the VP was reaching out with some question about how we logged data to a 3rd party tool, not to fire me. :phew:)

This was particularly challenging when a meeting would be scheduled.

> VP: Hey wonder_er, I just put a meeting on your calendar to chat tomorrow

spends 24 hours wondering if I'm going to be fired

turns out the call was to say "good work, here's your annual performance bonus".

Yes. This HR exec was always guilty of putting unmarked calendar invites on people's calendars because she didn't understand/know how to do private/restricted invites. So you'd show up to work and find a 2pm "HR Sync" on your calendar with no description. Really great times.

My team lead pings me with "got a minute?" and I reply with "I'm fired? Sweet Freedom!"

We have fun.

> A senior executive at my company would sometimes ping me with "got a minute?"

OK, this must be it.


Ah, you just wanted to ask a question? Oops.

Yup. Lay out the whole problem so that it can be addressed in the next message and the whole thing can be done. I try to approach slack as less instant messaging, more email writing with better history.

Maybe share https://www.nohello.com/ with them?

I've been on two teams in a row at my current company where the culture is to just say hello and nothing more in beginning a conversation in Jabber. Drives me nuts. I always go with hello, do you know XXX? when interacting, but I've not succeeded in spreading the practice yet.

Several influential members of our team have nohello.com as their status message in Teams that prints as soon as you start typing a message to them.

> It was a perfectly good asynchronous discussion after that.

Yes but if someone asks you if you are there, they most likely want an actual conversation. It's the closest you can get to ringing your phone or droping by your office to see if you are available.

If it made sense to have an asynchronous discussion, most people would probably just send you an email.

> In another post, I make a case for never, ever asking "are you there?" in Slack[0]. It's been popular for my friends who work on remote teams inside of larger non-remote companies.

Working in management, I hated this strategy so much.

1. if i reply and the other person then writes their question right away, a reply from me is expected immediately, as we already in a "conversation" (but I might have other things to do)

2. if i somehow don't see it or see it much later, some potentially important information or question did not get conveyed - and it could take equally long for the person to see my reply and finally write out what they want

At some point I had to turn off slack notifications completely as I couldn't get anything done without getting super distracted by them (to the point that I was feeling phantom vibrations from my phone) and anyone who asked if i was there would hit case 2. I did try to explain to people that this kind of question didn't really make sense but I guess many see slack is a social chat tool like any other where such practices are common - and not a tool to distribute information in a company to the relevant recipients in an informal and instant yet often asynchronous way.

Every excellent suggestion there seems to make Slack more like good, old-fashioned email. That would have been difficult to market, so one can see why Slack themselves haven't made these suggestions.

Exactly. People are rediscovering that async conversation is more efficient and respectful of time than synchronous chat. There are very few work circumstances where chat is more efficient (e.g. incident response).

We avoid slack at the place I work for this reason - email, public boards and other async methods work fine for managers and makers.

We have people in my company that do that in slack. They usually do it because they are canvassing for someone to respond (they ping different people and wait a few minutes between each - under some pecking order).

If the first person responds the real question is typed out to get the help they need.

If it's someone less useful in the domain the next question is usually - hey do you know anything about the email system. Instead of the real question.

I think it's just a conversation style that translates from real-life problem solving.

I've certainly done something similar, but with some very minor tweaks, this can be done in a respectful way.

I'll usually write up my question and post it in a public channel. Then, depending on the situation, I might `@` one (or more) of the people who's insight I'm primarily seeking, but because it's public, others can take a look.

If my primary person doesn't reach out, I'll copy the URL of the message as a DM to the next best person, and ask if they've got advice/thoughts.

Either I or the person who looked into it will add a comment to the thread like "resolved" or "ok, {so-and-so} helped me figure out the problem, which was..."

Another reason, incidentally, is that there are many people who may be qualified to answer your Java question who may be too humble to step up as a "Java expert".

your blog post assumes that the participants all engage in the communication with collegiality and those questions are just an unfortunate misunderstanding.

guess what - if somebody asks "are you there?" it's often deliberate power play with the intention to get from you a verbal commitment to be fully available as soon as you answer affirmative.

I ask "are you there" all the time, but it's usually after I sent a question via e-mail and am not sure if the person I'm talking to is on vacation or sick or whatever.

I humbly propose that you append something like

  {quick reason}, {urgency_level}
If I received a message like this, even if I were on vacation, I would spend brain cycles determining if I should reply.

Trusted coworker who's had some challenging interactions with a manager? I'll interrupt my vacation/being sick to hear/help.

PM wondering why I've not responded to a jira comment from yesterday? I'll just keep on keepin' on with my vacation.

This is a lesson I learned while writing call-to-action emails.

I'd start with a draft that was like,

"Due to xxx situation, we have political momentum this week and want to take advantage of it by canvassing even harder than usual. Can I ask you to take another shift this week?"

That became,

"Will you take a second canvassing shift this week? Due to xxx situation, we have political momentum this week and want to capitalize on it by doubling our canvassing shifts. Will you commit?"

The second gets better results and is way less irritating to read as a recipient, even though it feels aggressive to write it.

That's surprising to me. I would have expected the latter to lead to a subconcious "no" upon reading the first sentence, and then you're arguing uphill against that position.

I suppose the former is more likely to be mentally filtered out as spam or marketing before the end of the first sentence (no aspersions upon you or your communication! It's valuable. But it also looks similar to the format of spam or marketing, through no fault of your own)

I've found this change can be beneficial even in non-email formats like chat. I have a few theories as to why:

1. When you front-load the explanation before the thing you're explaining (the request), the reader doesn't make the mental connection, so the explanation doesn't do its job well. It functions similar to a thesis statement in writing.

2. People want you to get to the point. The essential part of the message is that you want them to do something. Burying it under a long preface comes across as wasting their time and lessens their confidence that the request will be a good use of their time.

3. People have short attention spans, and if they don't find something actionable in a message quickly, they'll just say, "This seems like a Big Thing — I'll come back to this later."

In this case, the difference is that I already have buy-in for the people receiving these emails (volunteers who have worked for me before). If it was a cold email, it would be a softer lead for sure.

Thanks for the example, but I'm not so convinced that's the reason. The second example shows you respect people's time by starting with a minimal abstract that gets the point across, then explaining the details, followed by a conclusion.

The first example sounds manipulative and disrespectful.

Also possible, good point.

I agree with this and also nohello.com (as linked in the article).

I want to add a third one: ask your question in a channel if possible, not as a direct message to someone. DM'ing someone directly puts a lot of unfair pressure on that person, and also denies other people from both helping and learning. I think some people are embarrassed to ask for help in channels, and that's an embarrassment well worth getting over.

I love asking for help in channels because I feel like it socializes the answer and process for finding it much better than a DM does. It also helps build trust within the team because someone can see a “stupid” question get asked and then answered and then also feel comfortable asking questions like that.

That being said, I have worked for some shitty bosses who have told me not to post questions and information in channels directly because they want them “vetted” first. I’ll never work for someone like that ever again.

At my office everyone does the hello ritual. It's so ingrained if there's more than about 10 mins between responses, people will start the hello ritual again. I once asked someone I thought was becoming a friend if we could skip the hello ritual since we're good friends. They were extremely offended. I gave up and just perform the ritual.

I agree it's better to just ask, but whenever I catch myself asking to ask, it's not due to laziness but rather to (perhaps misguided) politeness. Sometimes it feels a little abrupt to dm someone or bust into a team channel and just start asking questions (though perhaps that's irrational since it never bothers me when the roles are reversed). I think the site would be a little better if it addressed this motivation too.

It's all about how you ask. Simply saying:

"Good morning everyone, would anybody be available to answer a question? I am running into [describe your problem]. Thank you.".

Easy, polite and to the point.

Ah thanks for the suggestion. Yep that is a pretty nice solution. Grouping the ask to ask ("would anybody be available to answer a question") with the question avoids the tedium of prefacing your question with standalone messages, and still reads as fairly polite.

That looks nice, but often the [describe your problem] part is three paragraphs and a few code snippets.

You can interrupt my channels with a three paragraph problem description any time. I'll gladly take that over "the thing doesn't work."

At my current employer, the common pattern is a TLDR of the problem as the initiator, then thread your more elaborate description.

Though we also usually have private team channels and separate support channels for a team in our Slack. I.e. the SRE team might have their own sre-priv channel for team chatter, and an sre-support channel for external support requests, so perhaps that is a function of this format.

You'll often see a new msg in the support chan with something like the following:

> Hey #TEAM, we're seeing an issue with the spline reticulator not reticulating splines. Started last night. Details in :thread:. Thanks!

followed by notes/logs/stack traces as needed. Works quite well, and doesn't choke the channel with endless walls of text.

Put "Good morning everyone, would anybody be available to answer a question?" in the channel, then reply to it in a thread with the details.

Wouldn't this approach exactly have the issues the article recommends against?

Type out the question in full in a text editor, then paste it after the greeting if you're worried about delay. Although if you're posting in a channel, I don't even think it's an issue; people will see that you are typing and follow up when you have provided more info.

It is better to be efficient than polite. Better to be predictable than "nice".

> It is better to be efficient than polite. Better to be predictable than "nice".

I probably agree on the second, but I think the first is subject to what the definition of 'better' is. If someone has to give me, say, a bad evaluation of my performance, then the most efficient way for them to do it is to walk up, say "terrible performance" (and possibly list reasons), and leave—but I certainly don't feel, as the recipient of the news, that that is the best way for it to be delivered.

Sure it is, after being given a comprehensive explanation about your terrible performance, you will have no doubts about what needs to be fixed.

A comprehensive explanation is less efficient than a cursory explanation.

Efficient doesn't mean "fast". It means that it minimizes the ratio "energy_spent / goal".

So if we're going to talk about communication efficiency, we need to define what's the goal being optimized here.

If a manager wants to minimize the time spent dealing with one of the engineers and wants to see this engineer quit, then the "cursory explanation" can be considered "efficient".

If this same manager, instead, wants to maximizes the odds the engineer stays and improves her/his weak points, then the "comprehensive" explanation might be a lot more efficient, despite requiring the manager to spend more time at it.

> It is better to be efficient than polite. Better to be predictable than "nice".

At work, efficiency is polite and predictability is nice.

Watercooler talk excepted, of course, and my company has a couple "watercooler" Slack channels.

Communication inefficiency wastes your interlocutor's time. Depending on the context, it might be considered rude.

I hate hate hate this advice.

I am a complete idiot at coding. And one of the biggest barriers to getting good at it is I don't even know how to ask good questions.

Online communities are already toxic places for newcomers. Ask a dumb question on StackOverflow and you get downvoted and griped at. I know I am an idiot! I know I don't understand what I am asking for! This is a cry for help!

>..which is just lazy. If you're not willing to do the work to solve your problem, why should we?

When I ask a vague, dumb plea, I am intentionally trying to weed out the pedantic people who would rather write a blog post about how dumb I am than stop to help me. If they have the time to follow up, they will have the patience to help me. Everyone else should move along.

If everyone has to stop and think of a logical and formalized way to ask a question, no one will bother asking for help. Think of every time you have reached outside of your domain - you would be so much worse off if you spent the entire time researching the right way to ask something than just asking for help.

In fact, I will turn it around. If you are not actually stopping to thoughtfully answer dumb questions, you are not actually teaching anyone anything.

I disagree with the topic you think the piece is even about. The piece isn't about having a well thought out question at all. It's about not asking for permission to ask the question. People don't want to say "sure, I'm around" and then 5-10 minutes later say "sorry, I don't have experience with that". They want people to ask a question to the best of their ability and if they think they can help they will.

The domain I'm thinking about in my example is tournament organizing. So many questions start off with.

> Can someone help me?


> I have a question.

And want nothing else than a 'sure' or 'yes?' before asking their questions. But why not just ask the question / state the issue that is almost always already thought out as:

> I'm having an issue with registering my team.


> Am I eligible to participate if X?

There was no long and thought out process of "logical and formalized" question forming here. It was just avoiding the waste of time between the asker having a question and getting an answer.

> People don't want to say "sure, I'm around" and then 5-10 minutes later say "sorry, I don't have experience with that".

Yes, if only humans could outsource such desiderata to some kind of specialized "engine" that could produce human language sentence given a set of explicit data and instructions.

Would this be the right forum to ask about how to design such an engine? Seriously asking because it doesn't look like anyone here has experience with solving such a novel problem.

What you wrote comes across to me as a false dichotomy. There’s not just _perfectly crafted_ and _zero-effort,_ there are infinitely many nuances between those extremes. No one expects perfection, or formally rigorous problem descriptions. People do expect a _reasonable_ amount of effort, no less but also not much more.

Reducing effort to near zero out of spite (or whatever your motivation is) doesn’t feel constructive. Why not make an honest, good-faith attempt insteas to help others help you?

Something like:

“I’m trying to do X. Here’s my attempt but it doesn’t work. I’d expect my code to run successfully but it prints ERROR instead. What does the message mean and how do I fix it?”

goes a long way already.

Bonus points if you minimize your example and make it self-contained. (Note that I didn’t say “spend an afternoon polishing your example.” Just spend a couple of minutes deleting lines of code until you feel it’s small enough to be useful.)

I don't get this argument at all.

Here's an example hierarchy of shitty to good questions to drop in IRC:

> I have a question

> I have a programming question

> I have a Go question

> I have a question about interfaces in Go

> How do you implement an interface of a 3rd party package in Go?

Or perhaps if you don't know what you're asking for, maybe something like:

> I'm not quite sure how to ask this, but how can I make my code work with library code? I think I heard something about interfaces?

That's all the article is arguing: get to the point and try to be as specific as possible.

As a beginner you're doing a disservice to yourself by throwing your hands up and declaring you have no idea what's wrong. It may well be the case that you have no clue what's going on, but it's such an important skill as a programmer to learn how to approach the unknown. Collect what information you can, try to build a mental model, and only then try asking a question.

I am not an IRC user, so I don't really have a comparison.

But I don't live in a world where people drop in and ask me enough questions that I feel the need to criticize the quality of question.

The advice is not about not asking dumb questions.

> When I ask a vague, dumb plea, I am intentionally trying to weed out the pedantic people who would rather write a blog post about how dumb I am than stop to help me.

What you're really doing is whittling down your audience to only those who have a lot of time on their hands. (There's a lot of overlap between that group and the one you're trying to avoid.)

Your attitude comes off as selfish and entitled.

You're the one lacking knowledge, the one needing help, the one who can't figure it out themselves.

The experts don't need to be teaching anyone anything. No one owes you anything. And if you demonstrate unwillingness or inability to formulate a proper question then they have every right to ignore you.

"hey, can you do me a favor?"

"Hey, are you free on Saturday?"

These kinds of questions are what TFA is getting at. These questions are socially awkward and unaware.

> I am a complete idiot at coding. And one of the biggest barriers to getting good at it is I don't even know how to ask good questions.

This is a skill that can be learned. Admittedly it's harder to ask good questions when you're very new to something (there's a higher ratio of unknown unknowns to known unknowns), but the point still stands.

As a programmer, you have the good fortune of belonging to a very helpful community. Programmers, some of them highly paid, help each other out online, for free, all the time. If you're going to ask someone with highly valued skills to help you out free of charge, you have a duty to make an effort with the question you ask.

Equally, if you fail to express your question well, you're not likely to get a good answer. Someone answering questions for free, in their own time, gets to pick which questions to answer, and your poorly-expressed question isn't going to make the cut.

> Ask a dumb question on StackOverflow and you get downvoted and griped at.

You're expected to follow the rules and make an effort. Lazy, vague questions, or questions that break the rules, or 'questions' that aren't questions at all, are meant to get downvoted. That's what the downvote feature is for. This shouldn't be a surprise, StackOverflow has rules and guidelines.

That's not to say StackOverflow is perfect. There's some amount of silly pedantry and hostility.

> I know I am an idiot!

Probably not, and anyone saying you are should end up getting downvoted for flagged for being abusive.

> I know I don't understand what I am asking for! This is a cry for help!

But that's not the same thing as asking good questions. There are good and bad ways to ask basic programming questions, just as there are good and bad ways to ask advanced programming questions.

> When I ask a vague, dumb plea, I am intentionally trying to weed out the pedantic people who would rather write a blog post about how dumb I am than stop to help me.

This is counterproductive and, frankly, comes across as rather entitled. You aren't hiring a salaried employee, you're asking strangers to help you out free of charge. You're in no position to 'weed out' anybody. You'll get more and better answers if you ask your question well.

> If everyone has to stop and think of a logical and formalized way to ask a question, no one will bother asking for help.

This is absolutely the wrong mindset for StackOverflow. People submitting StackOverflow questions are expected to make an effort, just like the people who submit answers. The StackOverflow format isn't intended to be conversational and fast-paced. Care and consideration should go into both questions and answers.

Asking questions skillfully works out better for the questioner, who is more likely to get a high quality answer. It's better for the answerers, who can see at a glance if your question is something they can help you with. Lastly, it benefits future users of StackOverflow who are searching for answers to similar problems.

With sloppy questions, you won't get good answers, and you won't help build the site as a searchable repository of knowledge.

> Think of every time you have reached outside of your domain - you would be so much worse off if you spent the entire time researching the right way to ask something than just asking for help.

Outside StackOverflow, sometimes that may be true, such as if you're starting out at a new job and are assigned to another employee to teach you the ropes. On StackOverflow though, it isn't the right mindset at all. On a site like StackOverflow, it's vital to have high quality questions. You aren't having a conversation, you're contributing to a question-and-answer site, so do your part and put the effort in. Answerers enjoy answering good technical questions, but they don't enjoy the process of improving an unclear question.

> In fact, I will turn it around. If you are not actually stopping to thoughtfully answer dumb questions, you are not actually teaching anyone anything.

This confuses questions about basic programming, and poorly expressed questions that frustrate potential answerers. They aren't the same thing at all.

With all that said, good news: asking good questions is a skill, so you just have to learn how, and then make the effort when asking questions. (People who say Just ask good questions! are doing a disservice, there's more to it than just telling people to ask good questions.) There are various articles on asking good questions, the best I know of is the classic by Eric S. Raymond, How To Ask Questions The Smart Way. I'm not the first in this thread to mention it. http://www.catb.org/~esr/faqs/smart-questions.html

Stack Overflow is a Q&A repository.

We want you to be careful and think when you ask.

We want you to distill the problem you have down to a minimal, reproducible example, so we can easily plug your code into an interpreter or compiler, make it work, and then answer your question.

We also want you to demonstrate that you've made an effort yourself, not by saying "I've really tried," but by demonstrating your efforts with your post.

We're still not guaranteed to recognize your efforts and good faith, but that's because we have the freedom to up- and down-vote posts for just about any reason whatsoever (excluding the posters themselves).

What you seem to want is to do minimal work, and maximize the work required of the person you're seeking help from. If you want to ask for a customized lesson and tutorial, you can ask for that on Reddit, Quora, Yahoo Answers, or many other Q&A sites - but not on Stack Overflow.

I wrote something similar in my wiki too:


Boiling it down to a series of broad steps:

1. Do your own research first.

2. Include things you have tried and thought of before asking the question.

3. Be explicit about what you want to achieve in the end and provide as much information as possible to help.

4. Respect other people's time.

Learned it the hard way.

The problem I have is I tend to go to the opposite extreme. In anticipation of any question that someone may raise about the issue I'm asking about, I tend to give a lot of background (most of it probably irrelevant) and other details. No one wants to have to read through my whole life story, just to get to the meat of my query an answer it.

There's a middle ground where you describe what steps you've already taken, or things you've tried, after you've described the problem at hand (with examples or links if possible).

At least then you're already providing enough info about what you've done so far that you can get a better quality response, or even a response advising to do something totally different.

Most of my posts are a little long-winded as a result, but I'm laying down the breadcrumb trail for someone who might be able to help but see things differently.

Just put the meat of your query at the top and the potentially unnecessary background information below it. Then whoever answers you can skip the background if it's really unnecessary.

This isn't "the opposite extreme", this is a helpful process by which you can share context with the person you're asking help from.

We usually work on challenging problems. It's unreasonable to expect to easily share relevant context when getting help from someone.

I send _extremely_ detailed notes to coworkers all the time. I usually _take_ detailed notes as I work, so it's fairly easy to "package" the note for someone else's consumption.

For a recursive example, this: https://josh.works/better-questions#examples

I've documented how I ask questions and how I ask for help, so I can share it with others... who ask questions... and ask for help. >_<

> We usually work on challenging problems

At least for me (as someone who's more often answering the questions at my company), this varies quite a bit. Certainly sometimes there's a deep technical problem or an issue requiring genuinely tricky troubleshooting, but often it's a new hire who is still getting up to speed and didn't realize that there's some command that they need to run that will solve all of their problems. In a case like that, I worry about an environment where they feel afraid to ask a question unless they've already fought with the problem for a long time, and where they feel obligated to post an extensive write-up of the steps they've already tried. I would call that an "opposite extreme" since they're significantly less productive than they would be if they had been more willing to reach out for help early on. That's my main concern with the article: it has a tone of scolding people for the way that they ask questions, and I worry that it would cause people to be afraid to ask questions even when it would be best for them to do so.

I think the ideal approach is a balance: some initial detail on the problem, but with an understanding that deeper details can come in the follow-up (which might be over chat or over a call or some other medium).

Bottom line first. Just say what you are trying to solve/struggling with in one or two lines.

Give more background in the next lines

I think the background can be helpful though. I will often gather it into a gist or something like that and link to it. Then people who are pitching in can realize they need that detail and head to it without having to make an additional exchange with you, or ignore it if it proves superfluous.

I, too, share this struggle.

This reminds me of all the cases of "This notice is to inform you that " notices posted around public and in my apartment complex.

When COVID hit, the grocery store posted a nice multi-paragraph letter on the window to the effect of "This notice is to inform you that due to an executive order signed by Gov. ... wearing a mask while in this store is now required." Took several months, but finally it's replaced by a much better, "No mask, no service" sign using an image of a mask and massive font.

One from my apartment building was an entire letter essentially telling people "security cameras in use".

Get to the point. Use few words and large fonts. Use images. Don't make people think.

Wouldn't the typical sign (yellow triangle with camera icon, and text "CCTV in operation") do the work? Nobody will read a letter on a door, but a shiny yellow poster A4/Letter would definitely attract the eyeballs.

Or is it a regulatory thingie, that you "must" have the letter? (genuinely asking - are you in the US)?

Somewhat related idea: https://www.nohello.com/

that is linked at the bottom of the page

I'm bemused by the concept of this "single page with dedicated domain name explaining a concept in three short paragraphs".

Especially because this one claims at the bottom that it was mostly taken from here: http://sol.gfxile.net/dontask.html

So... why not just link to that page? Why register a domain and pretty much copy-paste that content?

I'm not trying to be inflammatory, just trying to understand this concept. Do people share these links with others or is it just for Hacker News credo?

Much like "nohello.com", I assume that it exists to be easily memorable and recognizable in a profile.

Easier to remember/link. Domains are cheap ($10 a year or something). Signalling that yes, this is an important enough issue to dedicate a whole site to. SEO (more people stumbling on it by mistake, or a nice cash out later, your choice). You own it (if it already exists, that page might die one day).

I see it as a sort of staking mechanism. Someone is pre-committed to and zealous enough about this thing that they're paying $X/yr to leave up their memo on a dedicated domain.

So you can link it to someone to give them a clue.

A variant on this problem was proposed to me years ago and I still try to follow the advice.

When you haven't talked to a person in a while (or ever), especially someone who is used to being asked for favors, they may become guarded and reticent if you open with small talk out of nowhere. They will sense the other shoe and be preoccupied with predicting when it will drop.

It's better, I'm told, to rip off the bandaid. To say something like, "Hey can I borrow your <tool I don't own>? It would really help me. How are the kids? Did you ever finish that shed you were working on?"

It's much less manipulative and open about what exactly is happening. And it's open-ended. You don't end up sabotaging yourself by interrupting halfway through their story about emergency visits to the orthodontist to ask about that tool, because you only allocated three minutes to pretending to be interested.

This happens all the time when planning social events, e.g. "Are you busy tomorrow?" instead of "Do you want to go watch a movie tomorrow?"

That one is bad because "are you busy tomorrow" has equal chance of you asking me to do something distasteful, so I'm usually going to opt for a "no" because I have no desire to move that couch for you, but I may be open to seeing a movie together.

I will just say "why" or "that depends, I'm busy but maybe I can make room".

There seems to be an attitude that we shouldn't be rude to people, but to be honest, I learned such things at a young age from blunt responses like this. Along with the old response "Can I ask you a question" "You just asked me one". They forced introspection.

Just to clarify: the problem is not asking to ask (or saying "hello", as in nohello.com) - the problem is waiting for a response to the message before saying what you were going to say to begin with.

Nothing wrong with "Any Java experts around? I haven't updated my Java knowledge since version 5, and am looking for resources to lean from", for example.

Similarly, "Hey John, would you have 15 minutes? I have a question about such-and-such API that you have worked with" is non-problematic, whereas "Hey John, would you have 15 minutes?" by itself is.

If the next thing you say does not depend on the response, say it right way.

In short: when you have something to say, say it.

Best resource I've found on asking technical questions (also linked at the bottom of the post):

"How to Ask Questions The Smart Way"


'Smart Questions' should be required reading when onboarding college hires to technical jobs. I still think about it when writing emails, and it helped me greatly when I was a tester to write better bugs.

It's also worth pointing out the inherent utility of forcing yourself to write out a well-thought-out question. The number of times I've made it 3/4 of the way through a stackoverflow question before finding out what the problem was for myself is silly.

I've started doing it intentionally. If I'm stuck on something, I'll start a slack message with no real intention of sending it. Works wonders.

Agreed, the world would be a simpler place if we all followed the same play book...for online communication and everything else.

But we don't, and we probably can't. Cultural, language, religious, gender, and educational differences mean that part of any non-trivial discussion is going to involve some sort of "handshake" where you establish the rules of the discussion. And it is going to be a slightly set of rules for any discussion. I've seen sites (and before the web, messages) like this for years. You paste the link and are on your way. Or, more commonly, you paste the link and then proceed to provide the information someone is looking for. This is a variation of the "use the search, this has been covered" fight that every forum has.

Why go through that? If you want to engage with somebody, do it. If not, don't.

This is a safe one, actually, because if you ask this way you won't get answers, so it's really your own problem.

These negative feedback loops are great!

Positive feedback loops are ones like "Java sucks. You can't even do $THING_THAT_YOU_KNOW_IT_CAN_DO_BUT_DO_NOT_KNOW_HOW" which need websites.

We call this "Actionable IM" where I work.

Anyone who doesn't use it doesn't get a response.

That sounds harsh.

I agree with the the article - mention directly the problem (context & your own problem) in as few words as possible to allow people to understand if they can help or not.

Same thing about "Do you have a minute?" (most of the time in the company's internal chat, but sometimes as well on the phone) => I'm really working most of the time on stuff that might range from bureaucratic things to confcalls in major incidents => mentioning the context&problem would allow me to take an informed decision.

Having said this, I do fall into this trap from time to time :)

I hate this so much, if you are posting a question in a q&a forum like stackoverflow, this rule makes perfect sense. But in a conversation it is perfectly normal to gauge interest or ask if is ok to ask a question hoping you will be directed to a better place. Why is online conversation so special? We are not writing a letter with a pen,it's instant just like having a normal talking conversation. Sure,the actual question should be conscise but the norms and etiquettes of conversation pre-exist for a reason.

> Why is online conversation so special?

Because it has the potential to be asynchronous.

If I glance through a channel and see a bunch of questions then I can answer them in just the time it takes for me to write an answer. Whereas if I see "Hey can anyone help me?" then I need to ask "Possibly. What's the issue?" and wait for the asker to return, see my message, then formulate their question.

Note that this is assuming a programming chat room. "Asking to ask" makes slightly more sense in a 1-1 DM with someone.

> the norms and etiquettes of conversation pre-exist for a reason

Mostly for face-to-face conversations.

Here's a fun game: create an HN client that recreates the same UX problems that these anti-social "netiquette" guides attempted to address.

In other words-- in what specific way can you fuck up the UI of HN to cause users to become so timid and confused that they create posts asking if it's ok to post here.

Another fun one would be to screw up the UX for replying such that an average of 2% of each thread is filled with veterans telling neophytes not to create top posts but to instead reply underneath the comment they're responding to.

Don't worry, Gmail made top-posting cool.

I don't know.

The reason I tend to do this is because sometimes I have problems with figuring out what my issue actually is, and that I might be running into an XY problem. For these reasons I prefer to engage in a synchronous form of communication.

That doesn't mean that I expect someone to commit or that I won't respect the person's boundaries when they refuse to help for whatever reason.

If you bother at all, the response is simple: "Yes. Why do you ask?"

It works both ways. Bad questions too often get answers, but often bad answers. That is, questions often should be met with more questions. But they're not. Many people are wired to want to help - which is great - but too few are wired for critical thinking and analysis.

Related from a couple days ago: https://news.ycombinator.com/item?id=24239880

I have a comment on this topic, is it okay if I share?

Corollary: Rebuke people in your company/community who respond to beginner questions with "RTFM"-like anger.

Nice follow-up to No Hello from a few days ago. This is good but I don't think it goes far enough. Ask? That's weak shit. Demand. Maybe start with "One of you worthless motherfuckers".

Edit: Maybe also threaten violence if your question isn't answered.

We have someone on our team that speaks like this. They caused someone to quit last week. I know your comment is a joke, but there are actually different backgrounds in play where this stuff doesn't fly. (Not everyone is jokey you)

How has that person not been fired or at very least been disciplined? I know people on here like to think they're doing important work but we're mostly just making dumb websites and it's not that hard to find someone who can do that and isn't a dickhead.

A website just for that. Just to get a point across.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact