On Dec. 2nd, I passed my second Microsoft exam, 70-536 – Application Development Foundation. The test was honestly more difficult than I expected it to be. When I started studying for it I thought, “Foundation… well, I’ve been programming in .NET for about 2-3 years, so I figure I’m probably good on the ‘foundation.'” Well, it turns out, “foundation” didn’t really mean what I thought. Based on the subject matters covered on the exam, I have deduced that foundation in this case means “APIs that you’ve never used before professionally and may never have occasion to, but ones that we feel are important enough for you to know down to parameter order.” A large part of the exam covered Code Access Security, which honestly still confuses me, and for which I continue to try to find a reasonable use case. I’m sure one is out there, and it may have greater usefulness in the desktop realm, but for me right now in ASP.NET land, it seemed like an odd choice of emphasis.
I didn’t do nearly as well on the test as I would have liked, but, hey, a pass is a pass, right? I think my initial thoughts about how difficult the test would be caused me to study a bit less than I should have.
But I did pass, and so afterward, I got myself a new toy. That’s right folks, I am the proud owner of a new iPhone 3G (16Gb). I’ve been wanting a smartphone for a while, and my account was finally eligible for a phone upgrade. My old phone, a Motorola L6… well, let’s just say if the iPhone is “smart”, the L6 would be on the mobile phone short-bus.
Having never owned a smartphone before, I didn’t come into things with the expectations or priorities of a veteran WinMo user, and I have to say, I’m quite satisfied. The three things I wanted out of my new phone were: 1. mobile access to email, 2. mobile web browsing, and 3. ability to hold all my music and podcasts so I can eliminate a separate device from my life. The iPhone does all three of those things to my complete satisfaction. Everything else is just a bonus, really. One of the things I was pleasantly surprised about is how well I’m now able to keep up with my RSS feed reading. I don’t have to actually be sitting down at a PC to keep that “Unread” total to a manageable number.
The one thing that I had reservations about was the ability to program the device. Since I’m a developer, I’m used to being able to write small tools for myself if I can’t find something out there that fits my needs, but it’s not quite as easy to do this for the iPhone as it would be if I had gotten a Windows Mobile device. The only Mac I have is currently hooked up to my TV as a media server, and programming over VNC is not really the best experience. Plus, I’d have to learn Objective C and the Cocoa Touch library, and that’s just one more thing that I probably don’t have time for. I’m excited to see what Miguel de Icaza and the Mono team are doing to get .NET code running on the iPhone, and I’m looking forward to being able to write in a language that’s familiar to me at some point. They’re doing it in a legit way, don’t worry. They get around the “no JITed code” device restriction by using a static linker (I believe that’s the correct term), so that the code that’s executed is 100% native instructions.
Once I’ve had the device a bit longer, I may have some more comments, and be able to list of my favorite apps. Right now, though, I have to get my two newest WoW characters to level 60 before the account link runs out!