views:

403

answers:

9

Granted knowledge is best retained when put into practice, but as programmers I'm sure there's just too much information. Besides annotating your books, what other methods do you use for your own personal knowledge-base so you can have an easily accessible reference?

Do you create your own wiki or use software like wikidpad, or save them as plain text, bookmarks, pdf, web pages etc..? Or do you just treat google/SO as your giant knowledge-base and search only when required?

You may find this similar http://stackoverflow.com/questions/10961/have-you-used-a-wiki-in-your-project-or-group, and of course this question can easily relate to non programmers as well.

+1  A: 

I've been storing my notes in Google Documents(google.com/docs). I've tried wikis but the cost of setup and maintenance hasn't been justified yet. I may need to look further into this option as my set of notes get larger.

Another thing to consider is ye olde programmer's physical notebook. Paper and pencil should never been underestimated in this digital age.

Antonio Haley
+1  A: 

Start a wiki. ScrewTurn is what I use.

Robert
A: 

I use codekeep to store my code snippets Occasionaly I store a few notes on google notes too

teebot.be
A: 

Mostly in a plain text on a flash drive, which is in the key ring along with keys from home. Plus eventually backups on the web site. This makes it available on any platform and in any place, wherever I go. There's still places without internet access you know.

akalenuk
+6  A: 

Blog about it. That way you'll always have it no matter where you are, and that information gets shared with others.

Dan Herbert
+1  A: 

As far as personal Wiki software goes, I've been a big fan of VoodooPad for OSX. It's a nice self contained Wiki applications. No need to maintain a web server or have your Wiki hosted anywhere but your computer. Plus you can export into a variety of formats. It's very inuitive to use and can store just about anything you want.

It should also preserve syntax coloring if you were to extract a code sample (I don't have it in front of me so I cannot confirm).

mwilliams
+1  A: 

I use Tiddlywiki to keep all of my development notes together, other than notes or handouts that I might get at a meeting that I want to keep. Those go into a folder for the particular project and I add a reference to them in my Tiddlywiki so that they don't get lost in the shuffle. I tag everything with a limited set of tags (rather than going overboard with the tagging, I have a set of 15 tags that cover the projects and categories I need) so I can get back to them quickly.

Works for me.

Otherwise, I blog about them as needed, use drive indexing for massive searching across lots of stuff, and keep a short daily summary of activities (1 or 2 lines) for better recall.

itsmatt
What are your tags?
Robert
Well they are mostly project-specific, but some generic ones include TESTING (for test-related info), OPEN (for open issues that were discussed in a note), DESIGN (for design decisions and discussions), and MEETING (for meeting minutes, etc.). For a project XYZ-specific, I'd make one named XYZ.
itsmatt
+1  A: 

There are several solutions that I have seen people use successfully:

  • blog about it (as others have noted here)
  • maintain a Wiki (local or hosted)
  • keep it in a plain text file
  • use Backpack
  • use a hosted office solution (Google docs, Zoho)
  • email it to yourself in Gmail (yes, really :) well, makes stuff easily search able)

I personally use a TiddlyWiki (easy to use; very good search) which I carry around in a USB pen drive and which is also checked in to my SVN repository; and a small "notebook" (created from here) which fits neatly in a wallet, to jot down things when I am not near a computer.

akmathur
+1  A: 

I like Treepad for organizing notes. It's based around a tree structure, and each node can contain a text document, and have child nodes.

It's not particular designed for programming, but it's very easy to use.

Silverfish