1. In a large saucepan, bring 4 - 6 cups of water to a boil. Cook pasta according to package.
2. In a large skillet, melt butter and olive oil over medium-low heat.
3. Toss in shallots, season with salt and pepper to taste. Cook for about 5 minutes or until tender.
4. Mix in spinach and stir until evenly coated and wilted. Add garlic and cook for 30 seconds.
5. Throw in artichokes and cook for 5 minutes until warm, stirring occasionally. Add lemon juice and stir.
6. Add ricotta, mascarpone and Parmesan cheese to skillet. Stir thoroughly.
7. Drain pasta.
8. Pour pasta into the skillet and toss until evenly coated in sauce.
9. Remove from heat and serve immediately.