103

First off, this is intended to be an extension to the question "Is it ethical to read programming books on the clock?". I do realize the irony of asking this on Stack Exchange itself, but hey, I'm not on the clock right now.

I am a programmer who, like many of my colleages, oftentimes gets stuck on something and asks a question on Stack Overflow or Programmers Stack Exchange to get past the problem. I imagine that people of other disciplines may do this as well for other technical subjects, like Physics Stack Exchange. I have never met an employer who objects to this (so long as the code is general and limited enough), because it directly results in me solving the problem quickly and moving on to other things.

However, I recently came into a situation where I asked a tricky question on Stack Overflow, but I didn't get an answer to it. After a few days, I finally figured it out and wanted to write an answer to it. But in the back of my mind, I wondered if doing this on company time was all right. After all, I'd already found the solution to the problem within my company's code and writing an answer to benefit others outside of the company wasn't what I was being paid to do.

Seneca the Younger was famous for saying "docendo discimus" ("by teaching we are learning"), so one could argue that answering my own question, or other peoples' questions about something relevant to what I'm doing, could be a form of learning (for instance, solidifying in my mind the answer to the tricky question I figured out). However, I'm a bit unsure about this, because it is a less direct form of learning and could be considered as "work".

This seems to me like a similar dilema of "Is it ethical to read programming books on the clock?". The consensus for that seems to be that it's ethical to read programming books in order to learn, so long as it's relevant, not interfering with work, and not forbidden by your boss.

Would answering Stack Exchange questions while on the clock also be ethical?

5
  • 14
    This is a question you should be asking your employer, not people you don't work for. Since it's not our time you'll be wasting. Personally, I'd just wait til I get home, or atleast wait for a break. Commented Jan 21, 2014 at 5:55
  • While this topic makes for a great discussion, ironically, it's not a great question for Stack Exchange since it provokes discussion. Stack Exchange works best for questions that can be answered with facts, references, and specific expertise. Please see help center for more guidance on how to word questions to fit our format. Hope this helps.
    – jmort253
    Commented Jan 24, 2014 at 6:28
  • 5
    With community sites like Stack Overflow, you get back far more than you give, no matter how much you give. I find it peculiar that anyone at your company would balk at contributing to Stack Overflow "on the clock" when they would have no compunction about mining Stack Overflow "on the clock" for answers given freely by the community whenever they run into any kind of coding issues. What do you make of the fact that going on Stack Overflow saves your personnel a lot of time and the company a lot of money - Does it enter your calculations? Do we have a free rider problem? Commented Jul 8, 2014 at 13:07
  • @deletethisaccount - Answering questions of people is not exactly wasting time. Commented Jul 23, 2014 at 13:15
  • 2
    When I solve a technical problem for my company I usually document the solution in a more easily digested format so that the other members of the technical team have some idea of how to solve the problem if they run into it themselves. By writing an answer on SE for a problem you encountered in work, you are effectively documenting the solution for future reference. I would write an answer on SE, and the share the answer with the relevant team members "Hey guys, I solved that problem we had a couple of weeks ago. Attached is a link to the method I used to solve it".
    – Spencer
    Commented Apr 26, 2019 at 6:04

10 Answers 10

97

Conversely I would ask:

Is it ethical for a company that thrives on the 'work' or support of a community, not to give something back?

Can a company call on ethics to forbid you from participating in this case?

I think not.

They can forbid you from drawing on outside resources of course. Or shun everything community-backed altogether. But only picking out active contribution is, in my opinion, hypocritical at best, unethical in itself on closer examination.

In my opinion, so as long as your company gains something from drawing on stackexchange, in some form or another, it's your company's duty, ethically speaking, to allow, even encourage you to participate, too.

Disclaimer: because this keeps coming up

I do not suggest disobeying a company's rules and guidelines. I'm only voicing my opinion on them.

12
  • 11
    +1 good point. companies/management typically don't have a problem with getting an answer off SO/SE (getting a benefit); if they have a problem with "paying" for that benefit (by allowing employees to answer questions) that's a "culture smell" :)
    – David
    Commented Jan 21, 2014 at 13:12
  • 4
    I'm sorry, but I have to disagree with this answer. Its not your job to decide what your company should or should not be doing based on your own personal opinions and ethics. Its your job to do the job they hired you to do. If they would like you to stay off of "discussion forums" while on the clock, then that is what you should do.
    – Rachel
    Commented Jan 21, 2014 at 20:53
  • 5
    You're right, it's your company's right to decide, not yours. I'm just saying, from the ethical point of view, which was asked for in the question, your company can't decide to deny participation in forums and Q'n'A sites to help others while still drawing on that same help. Don't disobey your boss. That boss, however, is being unethical for ordering you to not participate, while maybe even encourging passive use of the resouces.
    – CMW
    Commented Jan 21, 2014 at 21:01
  • 3
    Are we just wage slaves or do we care about our profession?
    – maxy
    Commented Jan 22, 2014 at 17:52
  • 6
    Well, not all employers have guidelines for that. If you feel that you have to ask for permission for 30min of time for something that you think makes sense, then you are behaving more like a wage slave than like a professional. Of course, if there is a policy, you should respect it, question it or quit.
    – maxy
    Commented Jan 22, 2014 at 19:02
76

I know this angers some when I say this, but ethics are not the issue. The issue is what your management approves of and what they disapprove of.

Personally, I participate when I need a mental "break" and it is refreshing to see others' perspectives. I do feel I gain new perspectives and insights, and certainly I've asked my share of questions on Stack Overflow.

As a Director, I get to make that choice, and I support my reports' participating in similar forums. I have asked them to keep it under 1/2 hour per day, but I don't walk around with a stopwatch.

Short answer - talk to your manager / supervisor. Explain the benefit, and follow their direction.

With regards to Ethics: Ethics are used to make choices. If you have the choice, you should utilize ethics to make the correct choice. Ethics do not supersede policy.

Dramatically over-simplified and extremely metaphored example:

Your company has a policy that says to give a customer a balloon if they have a complaint. You have an "ethical" problem with balloons. Do you give the balloon to the complaining customer you are working with or not?

Answer: You give the balloon to the customer. The choice is not yours to make, it was made by the policy-makers of your organization. Your ethical problem with balloons should have been voiced when you were trained on the policy, not when the customer complained. If you cannot accept being required to give the customer a balloon, you should have resigned when you were trained on the policy. If you did not resign, you accepted the policy and your role in it at the time. THAT was your choice opportunity.

The choice about the company giving customers balloons is not yours to make. You are acting as an agent of the company, and therefore there are no ethical issues.

37
  • 10
    Ethics certainly are the issue. However, in general I think you are correct in the sense that if your management approves of how you use your time on the clock, then you are behaving ethically.
    – Nate C-K
    Commented Jan 21, 2014 at 8:26
  • 6
    @NateC-K - we hammered this out, already. I don't think many people understand what ethics are, any more. Ethics are guidelines where you have multiple choices and you take the one commonly defined as "better" from a moral or non-harm perspective. If you have a manager, then ethics are not your issue, compliance is. Ethics are concerns of senior management. Policy compliance is the concern of line-level employees. If you're making "ethical" choices as a line-level employee, supervisor, or manager, then you are overstepping your authority. Commented Jan 21, 2014 at 14:35
  • 10
    @WesleyLong: I see no reason to think that ethics are confined to our personal lives. Commented Jan 21, 2014 at 15:57
  • 8
    @WesleyLong: I don't know how you got "Each employee crafting their own rules" from what I said. Ethics apply to everyone, full stop. When I was in the military (a rather authoritarian environment), I was repeatedly told to follow the lawful orders of my superiors, never to blindly obey no matter what. Commented Jan 21, 2014 at 16:38
  • 8
    @MichaelShaw: I think what Wesley is trying to say is this: people ask these kinds of questions all the time about things they want to do that someone may disapprove of. They want proxy approval from some random person on the Internet, when what they really should be doing is asking their supervisor if it is OK. Commented Jan 21, 2014 at 16:43
38

I am of the opinion that teaching is a form of learning. By taking the time to write high-quality answers for SE questions that are related to your job, you are also learning and improving your communication ability and knowledge in your chosen career path.

That said, I think it should be treated the same way you would any other unauthorized learning activity related to your profession while on the clock.

  • It should not interfere with your work
  • It should not be be forbidden by your boss
  • It should be done in moderation

If you are unsure about it, ask your boss.

An employer hires you to do something. If they want you to stay off "discussion forums" and focus on your work, then that is what you should do.

Something to be careful of with SE though, is it can be addicting! You must have the self-discipline to ignore the shiny red box indicating you have new messages when you don't have time for them, bypass the low quality posts you see and may want to flag/improve, and can't obsessively check your reputation gains throughout the day. Providing you can do that, I'd say you're fine. :)

4
  • 8
    "Something to be careful of with SE though, is it can be addicting!" is a gem! Commented Jan 21, 2014 at 8:36
  • Providing you can do that... A big ask! ;) Commented Jan 21, 2014 at 8:57
  • 5
    +1 I want to close with unclear what you are asking 80 % of the questions I am asked by email. I wish some of my coworker would come to SE and and learn how to ask something. Commented Jan 21, 2014 at 15:23
  • new Tangent(); // @Simon - make a constant reference to this: codinghorror.com/blog/2012/03/rubber-duck-problem-solving.html - Send it out to a few people as a, "Hey, this is neat." email, then about a week later, put a rubber duck on your monitor or shelf. It takes a while, but it works. Of course, that assumes the offenders are in your office. Commented Jan 21, 2014 at 15:38
25

I'm the CEO at my corp and I spend a good amount of time answering questions on the SE network. Sometimes over an hour. I answer questions that invoke me to learn more about something relevant in the scope of my own sys-admin. And in taking the time to create an answer, I often have learned more about my duties.

I will say +1 to clearing it with your supervisor but also definitely point out the answering you spend time on at work is associated with your duties and helps you stay sharp.

If you're getting your job done, I'd be disappointed if this wasn't approved of. I am all about my employees bettering themselves and also helping them to have positive attitudes about working for/with me. So no, it wouldn't be unethical to give back if it helps make you deliver better value at your job.

1
  • Appreciate the perspective Commented Jan 21, 2014 at 20:15
10

Rather than focussing on the specific act, responding to a question on Stack Overflow, it is appropriate to consider the activity, participating on Stack Overflow, as a whole. This is because for Stack Overflow to function it needs you to answer questions as well as ask them. Answering questions indirectly encourages other people to answer your questions.

If the benefits to your employer, solved coding and software problems, outweighs the negatives, time spent participating on Stack Overflow, then I believe it is ethical. It is therefore advantageous to your employer to allow it.

2
  • I like this perspective. It implies that the questioning and answering are intricately linked - which they are. Either do both or neither. I don't know if you are right but I would like to think you are. Commented Jan 21, 2014 at 8:59
  • 4
    Thats not how SE works. People ask questions, people answer those questions not the questions they want them to ask. If you want to answer a different question I suggest you ask that question. Commented Jan 21, 2014 at 16:12
8

My personal opinion would be yes it is ethical. There are a few parts to consider for what skills may be refined in posting answers to questions:

  1. Communication skills - How well can one articulate the answer so others get it and feel it is worth something? How well can one hint at answers at times since some Stack Exchange sites may have answers that are intended to guide the original poster to a solution.

  2. Reputation - Some people may take one's reputation into account in looking at answers. By giving answers that have been up voted and/or accepted there can be the sign that someone takes a serious role in passing along knowledge which may be reflected upon the company.

  3. Snags in the answer - While you may have found an answer, in posting it there could be some bugs or other issues that people may spot with the solution that could be quite useful in the end.

  4. Moderation - If you are a moderator of a Stack Exchange, it may be that part of your day is answering questions and keeping an eye on the site that is something to work out with your employer as to how much could be done on the clock.

I tend to prefer answering questions than asking them so most of my reputation comes from answering questions, explaining tags and those kinds of things rather than asking questions.

3

I think we are generally agreed that seeking an answer to a job-related problem from a web forum on company time is perfectly good and acceptable, right? I can't see any logical reason why someone would say no, though I suppose there are probably managers out there who have a problem with it for reasons that would make no sense to me.

But given that assumption, I think it follows that if we want that resource to be available, we have to support it. Therefore, my philosophy is, whenever I get on a forum to get an answer to a problem, I first try to answer at least one question posted by someone else. If I answer one for every one I ask, then I am doing my fair share.

Beyond that, I often find that when I am stuck on a problem, it can help to clear my mind to read someone else's problem. I don't know that I've ever been so fortunate that I just stumbled across an answer to my immediate problem that way. But I've had plenty of times that I've learned something that came in useful down the road. So when I'm in a brain freeze, I often take off 15 minutes or so to look at a forum and maybe answer a question or two.

I've never had a boss object to this practice, but then, I've never discussed this in detail with a boss either.

On the broader subject, whether it is ethical to read job-related books on company time or to browse job-related web sites ... When I am busy and have looming deadlines, of course not. When things are slow and there is no assigned work to do at the moment, I think yes. What's the alternative? If I don't have any assigned work, I could spend the time sitting back and eating a donut or chatting with co-workers, but that's clearly less productive than reading job-related things. Some times I have little personal projects that I pursue, like I'm a software developer, so I may work on a program to help automate some task I must do frequently or that sort of thing.

3

My background is more as a contractor, where we bill the customer by the hour and are expected to differentiate between professional development, billable contract work, and administrative duties. We were given a minimum target for the contract work a week and were able to flex the others as needed.

Asking a question on Stack Exchange on the clock is entirely ethical, if you get an answer faster you will use less time then some other forms of research.

As for answering a question, work out with your manager time set aside for professional development, which would not be directly billed to a customer. If your employer knows and is willing to support your development, and the cost is not being directly added to an unwilling entity's cost, it is ethical.

2
  • Comment to improve?
    – kleineg
    Commented Feb 4, 2014 at 12:54
  • Edited to remove comments which may seem like opinion. Still makes point about difference between company and client time.
    – kleineg
    Commented Apr 1, 2014 at 17:32
-1

When it comes to it, only your manager can approve it. Therefore, the only answer is to talk to your manager.

But I see one good benefit : your solution to your problem may not be the best, and when you write it, someone will read it and write you comments (code or idea review).

Of course, I assume you are not over doing it. SE shouldn't interfere with your every day duties and your work.

-1

Stack Overflow helped me on a lot of occassions already. And with this it did not only save myself time, but it also prevented me now and then from doing stupid stuff in my code that could have cost me even more time to solve later.

But this system only works, because people participate and share their knowledge. So ethically I consider it OK to help out others, too, as long as I do it in a give and receive system and not to to improve my rating/badges/reputation. If I can't write it up in less than three minutes, I'll use my spare time or breaks to reply or prepare code examples.

All in all, I consider it "ethically fine" as long as I save more time using Stack Overflow than I spend on it.

Not the answer you're looking for? Browse other questions tagged .