I have only compiled my own kernel one time, and the reason was for space alone. Often the default kernel has tons of drivers and other software patches that bloat it, as well as slowing of loading time. If you do not plan on changing your hardware configuration for some time to come, and you have a pretty stable software set to boot, compiling your own kernel can allow you to save spave, increase loading time, as well as optimize settings so that it runs faster in general. If you are really wanting to look under the hood, then I would suggest going even further and building your own linux kernel from the ground up, using linux from scratch or similar process. Not only will you learn alot, but you will discover that there were often things that you did not even know you disliked in the default kernels or distros offered and this will allow you to tweak to your hearts content. While it might seem like one of the geekiest things a person can do, almost anyone that can follow instructions to a tee will be able to accomplish this is you take the time to read up on it an follow the instructions step by step.