Buffing friends for a greater benefit is a very nice feature, makes the game more social. However, I'd prefer if I could just buff my friends buildings whenever and still get something out of it myself. The current buff bug then gave me an idea; what if:
All buffs come with 2 charges: one for using it on friend, one for using it on self. If you use it on a friend, BOTH charges get +50% duration. If you're anti-social and just use it on self, then it's spent with regular duration. You can buff same friend only once per hour.Implications: People would buff friends with everything. No need to wait for them to be online. No need to actually try to trade buffs with strangers. And it would remove the need to even fix the exploitable buff bug: everyone would get the benefits of that exploit (+50% more) automatically. You'd also want to get more friends (if you need to use 50 baskets, you'd need to visit 50 of them due to 1 per friend limit) and be friendly to them, so they'd pick you as the guy they'd visit to do their buffs (thus getting you 1 totally free buff per such visit).