Heat a large skillet over medium-low heat and add olive oil and butter. Add in shallots, salt and pepper and cook for about 5 minutes, just until soft. Add in spinach and toss well to coat, stirring until completely wilted, then add in garlic and cook for 30 seconds. Add in artichokes and stir, cooking for another 5 minutes so everything is warm. Stir in ricotta, mascarpone and parmesan, mixing until combined.