Today I did my first cross country solo. It was to a class D airport that I've been to before with my instructor. Flight following handed me off to the tower a little later than I expected, but that was ok. I checked in with the controller and he asked my position (approaching from the north east). He told me to report right downwind for runway 35, which is roughly what I'd been expecting.
When I got to within a few miles I was a little concerned that I still hadn't spotted the airport. (mistake #1: it didn't occur to me to tell the controller that I didn't have the airport in sight yet). But the GPS assured me it was in front of me. Well, the graphics showed that I was pretty much on top of it, but the heading info suggested that I was still on track. I knew something was wrong and eventually spotted the airport over my left shoulder, a little behind me. I had passed it way off to the north. For a few seconds I thought about getting on the radio and telling the controller what happened, but then I thought, wait, it's a control tower - of course he knows where I am! (I know, I know...mistake #2).
So, being now on the wrong side of runway 35, I turned to the left and headed back towards the airport, trying to figure out what to do and/or say to get back on track. I heard him clear a plane for departure on 35 and I had them in sight. I was a little surprised that he hadn't said anything about my position at this point, so I decided to double check that right downwind was what I was told, and then cross the runway mid-field and join the right downwind. So I called the tower and asked to confirm right downwind for 35. His response (to my surprise) was to ask where I was. "You said you were approaching from north east, and I don't see you!". I didn't see any point in explaining what had happened at this stage, so I just told him where I was (and what I should have told him earlier: that I am a student pilot) and he cleared me to continue with a left downwind and land. When I cleared the runway he gave me a brief lecture about my bad behavior (but in very friendly terms, all things considered).
The good news is that this was the worst thing that happened and I got home safely. It was one of the bumpiest flights I've ever been on, both ways, so I didn't really enjoy it but it was a good learning experience all the same.
So what I learned from this is that most class D airports don't have radar and I really need to be a lot better about keeping them informed of my position. And, when you don't see the airport by the time you think you should, or you end up in a place you weren't expected to be, the controller wants to know that.