Yeah - that's right - I'm being hard on Microsoft, and some people think I'm doing it for attention, but... holy crapsticks... I've been easing back into geek stuff this past month, and I'm aghast - aghast, I say - at the lameness of what's happened in my absence.
There are a few of you out there who like to go around saying that I don't know a demmed thing about coding, but there are many more who remember the good old days when it was my life.
That's probably why I still regularly get emails about coding. I was turning people away for a few months, but I'm happy to help again. I've been emailed about every last bloody coding topic in the universe. I can't answer everything, but I like to help where I can. I took my public speaking job because I'd been that person emailing the questions so often, and, so often, the answers I got back were either crap or written in a dialect of English that only geeks speak and that's meant to obfuscate information to make the presenter of that information feel powerful. It's the insecurity of needing to appear intelligent. Drove me insane.
So, here I am, wanting to help. I used to focus on Windows Mobile development. I still love Windows Mobile. As you may have picked up, I've moved to the Apple camp, but I haven't moved away from WM. I still have half a dozen WM devices. The iPhone might be sexier, but WM is an amazing platform - especially if you're a dev.
In the old days, I helped people by being familiar enough with the .Net Compact Framework that I could answer questions far more quickly and in much less space than the docs could. Still, the docs were there, and they were great.
Were.
I had forgotten how much I hate the "new" MSDN. For years, I lived with MSDN in my browser. It was there all day - every single last effing bloody day. There were naysayers back then, and I couldn't understand. Compared to the docs for the other dev platforms from other non-MS groups and companies, MSDN was the absolute best reference tool I had the pleasure of using.
What happened?
A question came in about Windows Mobile last night. Sitting in a cafe right now, thinking it was going to be a simple five-minute job to get him the info he needed (he knows what he's doing, but, and probably because the docs are crap, there's a whole API he doesn't seem to know about that would solve all his problems).
Back with the real MSDN library reference, it was several clicks from the landing page to the hierarchical .Net Compact Framework API docs that made working with the platform the simplest thing. The answer to any question I had was, literally, seconds away.
I know the answer to this guy's question. It's been almost two years since I did any real WM .Net CF development, but I knew my stuff. The solution to his problem is in the .Net CF managed state API. The API is a little wonky, and there's a lot of info it can provide about the odds-and-ends of what's doing inside your WM device. Using the stuff is easy - the only real challenge is locating the members related to the state info you need.
But there's no easy way to find the docs. I took a look around, tried to drill down through the library the way I used to, but didn't find anything. My favorite part is that, at the end of the line where I thought I'd finally find the reference, there was nothing but a page with a link that takes you right back to the topmost layer of the hierarchy you've just navigated. Maddening.
I began looking for a general .Net CF reference. It was funny. The first result for a search for ".net compact framework reference" is titled, "Sorry". I love it. The next takes you to a page that links to the full .Net API reference. Thanks, guys - that's useful. What I want when looking for info is to trudge through the entire god damned API just to find something that might not even be there.
The third result for that search links to a book you can buy. There's nothing cooler than a giant expensive dead-tree version of what I used to be able to get for free.
Kept going, getting more and more specific with my googling.
Now... this is great. Seriously - I'm not sure anything more amusing could have happened here.
When I finally googled for "windows mobile managed state api" I got the bestest thing. I got the bestest reference out there.
I got me.
The search led to a screencast I did for Channel 9 back in June of 2006. And, holy shit, I just looked at the view count, and it's been watched 165,793 times. I'm famous. Woo-hoo!
That's interesting, though - if the docs were easy to find (provided they exist in the first place), do you think my screencast would have gotten so many views? That right there - the fact that I'm the first result for the information I was searching for myself - is a sign that something's seriously messed up out in MSDN Land.
Thank god for me. I'm going to go watch my own screencast so I can get this guy his answer.
The MSDN team ought to team up with the Windows Live Installer team to create a product so godawful that, to spare you from the pain, your head explodes in self-defense.
Taste the suck.
[Gratuitous Links to my Homies - Not Part of the Post Above] [Learn More]
- Robert Scoble - Robert and I made up recently. There were some things about an exchange we had last year that needed to be addressed. The reasons for my post (most of you probably have no idea what I'm talking about) were genuine, but the way I dealt with it was way out of line. Robert was on the receiving end of an especially bad week during my long rehab from the dr0ogs. Regardless of how disrespectful I thought his post was, he didn't deserve the treatment I gave him.
- Mini-Microsoft - Anybody who links to me demonstrates extremely good taste, and I like to promote that because I think it'll make the world a better place. Agreeing with me only makes you that much better than everybody else.
- Simon Murphy - You began with some commentary and a link to my post about the Windows Live installation experience, and the discussion in your comments section skipped right over it and went straight to an argument about how to pluralize "Lego" (Legos, of course). My kind of people. Solidarity, my brothas.