My first android phone was "Samsung Galaxy 3 gt-i5801" and I was really amazed with android OS. I was initially using android 2.1 eclair, then I upgraded to "2.2 Froyo". Obviously it had many more features than Eclair. But later Google released "2.3 Gingerbread" but unfortunately it was not available on my device . So while searching on the web I came across "XDA Developer's Forum" for my device. There were instruction to port "Cyanogenmod 7" (2.3 gingerbread) on my device . Unknowing about the flaws of that firmware I ported it to my phone. Actually in those days I didn't knew about rooting android. What I experienced after using cyanogenmod 7 was that it was faster than stock 2.2 OS and the visuals were better. But the downside was that the phone's bluetooth, wifi, accelerometer, sound and even calling did not work. However I told everything to my Dad and he was able to downgrade to the original version.
But then I came across the benefits of rooting android. And I was unable to stop myself from again rooting my phone. And with this articles I am showing you my experience using rooted android device.

What is rooting?

In simple words rooting allow you to make changes in the system files of android. Rooting android is similar to jailbreak in iOS.

What benefits of rooting?

#1 Full control Over android

Having root access allows to change, change or remove any system files, like themes,  boot images, delete stock apps. I used to drop all the annoying stock apps and thus used to save space on my phone because my phone's internal memory was very low.

#2 Install custom firmware (ROMs) and android updates

The best think about rooting is to install custom firmware. I had installed cyanogen-mod on my phone which was faster than stock OS. Lastly I updated my mobile to cyanogen-mod 10 (android 4.1) that preformed pretty decent on my device but had bugs since it was not properly developed. Even if you have an old device like I had you can port latest version of android and custom firmware.

#3 Run special applications

If you rooted your device then you can run special applications that need root access. These root apps give more features than regular apps because these special apps can directly deal with the android system files. For example, backing up your android device is much easy with 'Titanium Backup ★ root" ,deleting multiply apps at once with 'eUninstall' and the best of all overclocking your device (performance tweaks) with 'SetCPU for Root Users'

What are down sides to rooting?

#1 Void warranty

Rooting your Device will void it's warranty. So better root an old Device .

#2 If not used properly, then it can cause damage to your device.

So should you root your device?

If you ask me I would suggest to never root a new device. I know it brings lots of power and fun but voiding warranty can be risky. But.....but if your device is already of no use to you then rooting for fun will be okay.