Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Often, my colleagues and I run into specific problems, for example what's the best way to deploy this, or would this or that technique be a good one to use, or just "hey, have you seen that new thing".

However at the moment this communication goes via mail, or skype, or twitter, and a lot of information becomes hard to find very quickly. Is there a service or methodology to keep this kind of information ordered and traceable?

share|improve this question

closed as not constructive by Walter, gnat, Jim G., ChrisF Oct 6 '12 at 21:51

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

up vote 2 down vote accepted

I've had success in running internal blogs/wiki's that store any documentation/how-to's that need to be shared. Generally if I've solved a problem that I initially struggled with I'll put up a post - mainly to make sure it stays in my head!

From a technical point of view any software that lets you search titles and post body will suffice - I always used Wordpress as it was quick and easy.

share|improve this answer
+1 for suggesting a wiki. It is probably the best solution for keeping long-term information available ans searchable. However, convincing your programmers to use and read the wiki is a totally different beast. – Patkos Csaba Oct 2 '12 at 8:44
I've just created a Tumblr blog, thanks for the suggestion! – Jasper Kennis Oct 2 '12 at 9:19
Also, private "stackoverflow" is a big help! – Sulthan Oct 2 '12 at 10:03
Even though this question has been closed (I don't really agree but okay, I can see why they did so too), I wanted to add that since we're running a blog we've been able to much improve our efficiency in sharing info. – Jasper Kennis Oct 16 '12 at 11:48

First, don't do it person to person. Unless the discussion has serious reasons to be kept private (for example you're discussing a security flaw in the product you are working on), make it public.

  • If you have a technical question, ask it on Stack Overflow or other Stack Exchange site, and answer it yourself.

  • If you have just an interesting discussion, do it in a forum (and nothing forbids you to create your own).

  • If you have an opinion you want to expand, write a blog post.

  • If you have regular discussions live with your colleagues, why not creating a podcast?

Going public allows you to:

  • Quickly find something. It's much easier to do a quick search inside your questions on Stack Overflow than to remember that the last year, you asked something by e-mail to Steven, and that he couldn't answer it, so he asked Alice for help, and she answered through Skype chat.

  • Help other people. If you have a technical question, there are chances that other people have the same one. If you want to chat on a subject, chances are that it would be interesting to other people as well. If you have an opinion, other people may be interested in hearing it.

  • Help yourself. You may ask a question to your colleague, and receive an answer. You may ask the same question on Stack Exchange, and receive dozens of valuable answers. When I asked my last question on Programmers.SE, I already had my own strong opinion, but I would never find myself those many valuable and interesting arguments other people gave.

  • Don't repeat yourself. If Steven asks you a question and you answers it privately, when Alice answers the same question six months later, you must search for the previous answer, and copy-paste it. If you've answered publicly, either Alice would be able to find the answer herself, or you could help her by giving the URI of your previous answer.

Second, use the same indexing techniques which are used for any other data.

  • Google is an excellent tool for finding information: if you have a public blog, chances are that you will find a piece of information much faster with Google than manually, trying to recall when you posted something.

  • Tagging helps a lot too. If you discuss cable management in your data center, you should be able to find this discussion later through cable management tag.

  • Making notes may be needed in some cases. For example, a podcast is a good thing, but without notes, it wouldn't be very searchable. How, for example, I would be able to know without notes that Jeff Atwood and Joel Spolsky discussed ASP.NET session state in a context of multiple servers in podcast 66?

  • Other tools used to help organizing and searching for data help too.

share|improve this answer
Creating a podcast is an interesting idea! – Simon Whitehead Oct 2 '12 at 8:49

Not the answer you're looking for? Browse other questions tagged or ask your own question.