Preheat the oven broiler with the rack about 6 inches from the heat source.
Dice your onion.
Cut the tips from the asparagus and set them aside. (about 12 spears)
Cut the remaining part of the spear into 2-inch chunks and set aside.
Mix the eggs, milk and parsley together in a bowl.
Heat the olive oil and butter in a large saute pan over medium heat.
When the butter has melted and looks foamy, add the onion and asparagus spears and cook for about 2 minutes or until softened.
Add the asparagus tips and cook for another minute or until the vegetables are crisp-tender.
Scatter the cheeses over the vegetables.
Pour in the egg mixture and turn the heat to low.
Stir once or twice, then cook undisturbed for about 8 minutes or until the bottom has set.
Place the pan under the broiler for up to a minute or until the frittata is puffed and golden.
Season to taste with freshly ground black pepper.