I'll be getting my first smart phone at the beginning of April. I've never really had any experience with them, personally, but I'm curious about something I often see people posting about on phone forums -- rooting, and "kernels", etc. What, exactly, are these things? What do they do? The way people write about them, I get the impression there are a lot of benefits to doing it. What are the downsides (if any)? Can doing it damage your phone, or cause problems with your provider? Is it an easy process to do (is it "idiot proof"?)?