How to stay DRY? Do Not Repeat Yourself!

Viewed 1130

I find that one of the most frustrating aspects to software development is finding a solution to a problem, forgetting it, then being faced with the same issue in the future only to forgot how you previously solved it. Or to write a useful bit of code, then on a later project not be able to find this code.

My general question is this: How do you keep track of all the new things you learn each day while programming? Does anyone have a systematic way to capture knowledge and easily and efficiently apply it in the future?

UPDATE: Thanks the for the responses, here's what you came up with:

Social

  • Stackoverflow
  • Tumblr
  • Twitter
  • Evernote
  • Blogs/Wikis

Code Repositories

  • Github
  • Unfuddle
  • LaunchPad
  • Google Code

Desktop

  • Dropbox
  • Yojimbo (mac)
  • VoodooPad (mac)
  • Wikidpad (win)
  • Surfulater
13 Answers

I use google reader to store all the interesting blogs and I add notes on the issues it was about.For codes strangely I always forget after having solved the issue but now I either post on asp.net forum and stackoverflow. But only strange thing happened to me couple of years ago, I had an issue and I managed to research to solve it but when I reviewed some codes I had written 3 years before I saw that I had used the same function and identical code for a similar issue. I think even if I didn't remember the code, it must have been hidden somewhere in my mind :)

Related