You spend your day installing the very last version of Arch Linux (or your favourite distro) on your awesome computer. But, when you think everything is done, something doesn’t work.
You find the problem.
You try to fix it with everything you know. You apply all your knowledge, with whom you solved hundreds of problems before this one. But this is the problem. You lack the knowledge to solve it.
So, you duck the issue, and try to find a solution. Of course, you don’t find it that easily. But you start building a path to the actual fix, you refine your search, you discard causes. You are learning new things, in order to find out the solution. And finally, after hours of research, you find it.
A beautiful single line of elegant code into your terminal, and the problem is gone. You smile and enjoy your new installation, proud of yourself. You used your knowledge, and a little more. You learnt something. You are proud of yourself, and you should be. You deserve it.
Months later, you get a new SSD disk. Your computer is even more awesome, but you need to reinstall the system. It’s fine, you know how to do it. And everything goes well, until…
You find the problem. Again.
And what is worse, you remember it. You remember you found the very same problem the last time. You remember about your research, about the fix, about the solution… But you don’t remember it. You realize it’s lost. You need to start over, because you lost a piece of extremely valuable knowledge.
Never lose your knowledge
This have happened to me several times. Something with the Catalyst drivers, something with Pulseaudio, something with whatever. I have lost tons of useful knowledge. From time to time, I find myself in the need of some snippet of code I used weeks, months ago, and I cannot remember. The last time was a few days ago. And then, I decided it: not anymore.
From now on, every helpful snippet of code I use, every useful command order I enter, every programming language trick I read, will be stored on my knowledge base.
If I need something I remember I discovered once, I just go to my knowledge base and ag related words in the descriptions, or I look for it inside the relevant category. And it will be there.
Create a new tiddlywiki, a static blog, other kind of static blog, a simple HTML page, a plain text file with tags. Whatever you like. And it doesn’t need to be just about computer stuff. Store your knowledge about cooking, knitting, playing chess. It doesn’t matter.
Just don’t forget it. Don’t lose your knowledge. You don’t know when you’re going to need it.
It’s great to have a personal wiki with all your knowledge. But, think about it: a website with several fixes, tricks and snippets useful to you could be also very interesting to someone else. So, why not share it?
Make your wiki/blog/page/whatever publicly available, using your website, GitHub Pages, anything. You, like everybody, have learnt a lot while surfing The Internet. It would be nice to contribute back in some way, wouldn’t it?
If you are doing it, do it well. You can track your changes, have a log, and never lose a thing if you control your knowledge with Git. Actually, if you are not already, you should be using Git for everything.