Most android users will never learn to compile a Rom in fact the overwhelming majority of Android users will never even flash a custom Rom, but there are those with curiosity. Maybe they just love to learn. Maybe they want to become a Rom developer superstar! There are plenty of guides available for compiling a Rom on a Windows machine or mainly guides focus on using a Linux machine which of course leaves those of us who own a Mac behind. If you are interested in learning how to develop a Rom or maybe you just want to learn what all goes in to the development process this is a good read for sure. This particular guide is for building CM9 on the GSM Galaxy Nexus, but could also be used for building CM9 on other devices with help from other guides available.
Rom development isn't for everyone, certainly not for me, but if you have the time, patience, and aren't easily frustrated you may want to give this a go!