This book bridges the gap from kindergarten mathematics to Rudin exceedingly well. It is written in a very conversational style- something that many books at this level lack. The author actually wants you to learn, as opposed to Rudin who just throws theorems at you. The exercises are at the right level; hints are provided for the more difficult problems. Master this text and then follow up with Rudin.