Set up a steamer to steam the cauliflower, or you can boil it.
I use a steam backet in a large saucepan with the cover on top. Just fill the saucepan with water below the steamer level and set to a low to medium heat. You can also use a rice steamer, bamboo steamer, or other steaming setup you may have. The only requirement is that the water should not touch the food.
Steam the cauliflower for about 15 minutes or until tender. I fork inserted into it should go in easily.
Cool the cauliflower for a bit and then place it in a food processor or blender with butter (or oil). I sometimes add a few tablespoons of water (or you can add your favorite milk) to make it easier to blend).
Pulse until it is the consistency you prefer. Use a slow speed for lumpy mashed, and a high speed for creamy mashed. Add salt and pepper to taste.
Serve warm. Store leftovers in the refrigerator for a few days.