Prediction markets are really fascinating. You should also touch on the idea of assassination markets, which I'd say are a subset of prediction markets where the contract price can influence the likelihood of the outcome.
I don't think pair programming is ever *strictly* better than solo programming, but I have found it to be a great way to help teach skills that are hard to describe algorithmically:
Some specific cases:
Debugging: when it comes to debugging, you can read books and watch youtube videos, but you get so much from sitting next to someone who has a good debugging loop.
Performance & Optimization: great to watch how other people do this.
Architecture: this is less about implementation and more thinking through medium-level architecture things. Specifically
Prediction markets are really fascinating. You should also touch on the idea of assassination markets, which I'd say are a subset of prediction markets where the contract price can influence the likelihood of the outcome.