I still think that Federer can do it. Though his chances are getting smaller every year, i can still see him achieve a grand slam. I think his competition (except for Nadal) will somehow lose consistency in later months or years eventhough his competition is greatly improving. Nadal is the only person, other than Federer, who i think can consistently play his best game in the tournaments, especially in grand slams. Another thing is that Federer tends to do better in grand slams than in other events. His 18 semifinals in a row shows that. A slip up from other major contenders will most probably help him achieve a calendar slam. Best example may be Nadal losing before in french maybe because of an unfortunate injury.
The other person who i think can achieve a grand slam is Nadal. I predicted in wimbledon 2006, even before he reached the 2006 finals, that Nadal would be able to win wimbledon before Federer could win French. So far, im half right. Still waiting for Federer to win the french. What gave me this prediction is Nadal's very rapid improvement. He is still improving. I could totally visualize Nadal winning a grand slam. But im a bit worried for Nadal because eventhough he enhanced his game to something more beneficial for his health, his schedule may be the cause of his downfall. I would rather see Nadal drop to no.2 because he's playing less tournaments rather than see Nadal as no.1 and wins pretty much most of his tournaments but has to retire at an early age... That would be such a loss.