Preheat the oven to 350 degrees. Place 1 tablespoon of the olive oil in a 2-quart casserole, preferably earthenware or in a 9-inch cast iron skillet, and brush the bottom and sides of the dish with the oil.
2. Bring a large pot of water to a boil and salt generously. Add the cauliflower and boil gently until very tender, about 15 minutes. If you prefer, you can cut up the cauliflower and steam it for 15 minutes. Using slotted spoons or tongs remove the cauliflower from the water (or from the steamer), transfer to a bowl of cold water and drain. Cut the florets from the stem and mash into little pieces with a fork. You should have about 3 cups.
3. Heat 1 tablespoon of the oil over medium heat in a large, heavy skillet and add the onion. Cook, stirring, until the onion softens, about 5 minutes. Stir in the garlic, stir together for about 30 seconds and remove from the heat.
4. Whisk the eggs in a large bowl. Season with salt and freshly ground pepper to taste. Stir in the cauliflower, onion and garlic, parsley, ground caraway and Parmesan. Make sure the harissa is dissolved in the water if using, and stir in; otherwise stir in the cayenne. Scrape into the casserole dish.
5. Place in the oven and bake 40 minutes, or until set. Allow to cool for at least 10 minutes before serving. In Tunisia these frittatas are served at room temperature, but you can also serve it hot.