Exchange and the Customer Experience Improvement Program

One of the things I like most about Microsoft’s approach to software engineering is their focus on making data-driven decisions. For example, if you remember the advent of Windows 2003, you may remember that MS spent a ton of time analyzing crash causes for Windows 2000. They found that a large percentage (I want to say ~ 60%, but I might be making that up) were caused by faulty drivers– so they introduced the concept of signed drivers, and the ability for admins to disallow unsigned drivers.

For a more recent example, take a look at the Office 2007 ribbon. Love it or hate it, the ribbon came about because we told MS that’s what we wanted, through the Customer Experience Improvement Program (CEIP). CEIP allows you to choose to send usage data to Microsoft so they can get anonymized data about how their programs are being used.

The Exchange component teams want to start making more use of CEIP data opportunity to improve customer experience and drive E15 planning by gathering data in several high impact areas. Microsoft’s David Espinoza listed some of the data items CEIP could potentially gather:

  • How many users have turned on SMS notification?
  • How many NDRs are generated, for what reason?
  • How much latency exists between the time a user sends an SMS message and the time the phone picks it up from the Outbox?
  • What are the most frequently observed cmdlet errors?
  • What Exchange Server roles are the most often installed in virtualized (VMWare, Hyper-V) environments?

As you can see, none of these are particularly sensitive (or even that interesting) for a particular site. However, in the aggregate, data items like this give Microsoft a great deal of insight into what features customers are using, how well they’re working, and where they could be improved.

Microsoft is asking everyone running Exchange 2007 or Exchange 2010 to turn on CEIP, so I thought I’d help spread the word. The actual process is simple; you can enable CEIP on individual servers or for the entire organization with a simple Exchange Management Shell cmdlet. Give it a try!

1 Comment

Filed under UC&C

Thursday trivia #8

  • I’m delighted to see that Cub Scouts can earn a video game merit badge thingy. I know what Matthew and I will be doing this weekend!
  • Favorite license plate of the week: "MPG LOL" on a V-8 Mustang.
  • Not only do my blog comments not work very well, but all the commenting action is on Facebook anyway.
  • The Windows Phone 7 e-mail experience looks pretty darn hot, especially compared to what we have now on iPhone. The competition between these two will be fun to watch!
  • I can’t possibly explain how glad I am that I don’t live someplace where it is still snowing at this time of year (oh, hi, Julie; didn’t see you over there.)

Comments Off on Thursday trivia #8

Filed under Friends & Family, General Stuff

Exchange Connections Fall 2010 call for sessions

My co-chairs and I are working on assembling this year’s Exchange Connections content, which we’ll be presenting November 1-4 in Las Vegas at good ol’ Mandalay Bay. That’s why I’m posting this call for sessions!

Everything you should need to know is in this document.

The deadline for session proposals is May 6 – hurry, hurry, as usual! Although the deadline is May 6, the sooner you can send in session proposals, the better the odds are we’ll be able to choose your sessions. I’ll try and respond to your submissions on the same business day with any thoughts or requests or tweaks. The conference has a brochure to get out pretty much ASAP if we’re going to get people to show up, so time is – as always – of the essence.

Note that we’ll be co-located, as usual, with dedicated conferences for Visual Studio, ASP.NET, Windows, SharePoint, and goodness knows what else – so for these proposals, stick strictly with Exchange and OCS topics.

If you want to submit sessions, see the call for sessions. If you have questions, you can ask them here or via e-mail.

Comments Off on Exchange Connections Fall 2010 call for sessions

Filed under UC&C

Arizona immigration law: calm down already

I’m not seeing the nuances of the Arizona bill correctly reported very much, and I fear that this is distorting the debate.

The new state law (full text here) has two salient points. First, it criminalizes being in the state if you’re in violation of US immigration law. It’s a fair argument to say that if the federal government were enforcing our existing immigration laws that the situation in Arizona today would be very different, but that’s a topic for another post.

Second, the new law requires (sort of) that law enforcement officers who are already in “lawful contact” with someone to make a “reasonable attempt” to verify the person’s immigration status if there is “reasonable suspicion” that the person is in violation of state or federal immigration law. There are exemptions, of course, and word has already gone out that some law enforcement agencies won’t enforce the new law anyway. This is not, of course, the same thing as giving the polizei power to detain and interrogate every brown person in the state.

In fact, it seems remarkably similar to a number of other laws that we more or less accept as a matter of course. One example: various state bans on driving while using cell phones, while not wearing seat belts, etc. In many states, the police cannot stop you solely because you have a phone clamped to your ear or because your seat belt is off. However, if they have another legitimate cause to stop you, you can be cited for the “real” offense as well as for the secondary one. It seems as though the Arizona law is much closer to these laws than to an open invitation to scrutinize every non-Caucasian they see.

I don’t see the Arizona law as much different than the existing and well-understood case law that defines when the police may ask someone to present ID. Can a random cop ask you for ID when you’re just walking down the street, minding your own business? Generally not. Can they require you to present ID as part of other types of interaction? Sure.

Rather than label Arizonans as Nazis, or call for a worldwide boycott, or whatever, I’d really like to see the people who are complaining about the law propose some workable alternatives… other than "ignore the problem and hope it goes away."

2 Comments

Filed under Musings

More things Apple needs to fix for Exchange e-mail on the iPhone

Via Twitter, I found this post pointing out 3 things Apple needs to fix to make its Exchange e-mail client more useful, from the perspective of a BlackBerry user. Their selections:

  • flagging messages for follow-up. Yes!
  • Jump scrolling to the top or bottom of a message. Safari already implements this (see the second item here), and I was surprised to notice that Mail.app doesn’t.
  • Showing message priority/importance. I’m not convinced that this is critical, though it would be nice to have.

However, there are a lot of other things that Apple also needs to do. I’ve written about some of them before, but my list has changed a bit with the announcements of the iPhone 4.0 software release. Here are the things I would most like to see; these do not seem to be present in 4.0 yet:

  • Full support for offline mode. I never want to see a message telling me that the message couldn’t be moved to the trash, or that the server can’t be contacted. Give me a subtle icon to indicate when I’m disconnected, then just handle it.
  • Proper use of the Exchange ActiveSync smart reply and forward operations.
  • Mark reply and forward operations properly so that other clients (like Entourage and Outlook) show the message history properly. I think using the correct EAS smart verbs will fix this as well.
  • Show the Deleted Items and Sent Items folders exactly as they exist on the server. Every item I send or delete should show up in the correct location on all clients, no matter which client actually did the processing. (While you’re at it, do this for Mail.app on Mac OS X, too).
  • Allow us to change the sort order used to display messages.
  • Leave the existing 4.0 "all inboxes" and conversation views alone– they work great as they are currently implemented.

I’m in a good mood (it’s Taco Salad Tuesday!), so I’m not going to take the time to write a list of all the calendaring features I wish Apple would fix, as that would ruin my mood and give me strong urges to punch something. Another day.

1 Comment

Filed under General Tech Stuff, UC&C

Thursday trivia #7

Comments Off on Thursday trivia #7

Filed under Friends & Family

Don’t buy from Airsplat.com

Long story short: their customer support is poor, they don’t stand behind their products, and they aren’t honest about either.

I bought two electric Airsoft rifles for Dave and Tom for Christmas. Tom’s was fine; David’s was poorly designed and built. I got an RMA for it the day after Christmas, then had to fight with them for months before getting a partial refund. First they ignored me, then they claimed that the rifle had been damaged in return shipping (but couldn’t produce a UPS claim), then they claimed that it was damaged before shipping.

I eventually had to dispute the charge with my bank. The whole thing was a big hassle and not worth the few bucks that I might have saved by buying from them instead of a more reputable vendor.

Avoid them.

Comments Off on Don’t buy from Airsplat.com

Filed under California, FAIL, Smackdown!

An interesting debugging tale

I had quite the merry chase running down a problem at work this morning: a Windows 7 workstation on which VMware Server 2.0 could neither be removed nor installed. (Side note: yes, I know VMware Server 2 isn’t officially supported on Win7.)

The first clue was the Windows installer error message saying that the installer couldn’t read the "UNKNOWN\Components\{GUID}" registry key. UNKNOWN, huh? You’d think that the installer would know what keys it was trying to read.

I started by doing a little binging to find anything relevant. VMware KB article 1308 described the steps to take to manually remove a failed install so I followed its steps… twice, just to be on the safe side (well, and because I skipped a couple of steps the first time). No luck.

Next, I fired up one of my favorite-ever troubleshooting tools, Process Monitor. It told me that the failure was actually happening when the installer tried to get write access to a subkey of HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18. I’d never even heard of that particular key, so off to bing I went. It’s actually owned by the LocalSystem account, except that in this case it wasn’t– the permissions on the key that VMware wanted (and its subkeys) were all out of whack.Resetting the permissions manually didn’t work because the parent key was still (correctly) owned by LocalSystem. So, I fired up psexec to open an interactive session with regedit owned by LocalSystem, set the correct ownership on the key and its subkeys, and ran install again.

This time it got further before failing; there was another key under that subtree that also had wrong permissions. Fortunately I’d left regedit running, so a quick ownership change and another reinstall and boom! back in business.

How’d this happen in the first place? Well, as much as I like to bash VMware (and boy, do I ever), this wasn’t their fault. As near as I can tell, the problem arose because this machine was originally built with a 160GB SSD as the boot volume and a 1TB drive as the data volume. Our app performs better on an SSD, but it also has a lot of data, so the better configuration would have been to have the 1TB drive be the boot volume. Someone tried to reconfigure the machine by imaging the SSD, putting the image on the 1TB drive, and changing the boot configuration. However, when they did so, they neglected to notice that the LocalSystem token changed, so the permissions on some entries in the registry were wrong. I think they’re all fixed now.

Not a bad way to start a Monday morning– but only because I fixed the problem.

Comments Off on An interesting debugging tale

Filed under General Tech Stuff

Thursday trivia #6

 

  • So far, I’ve only gotten two questions using formspring.me. This is probably a good thing.
  • If I had put the iPhone 4.0 developer build on my iPhone, I might be torn between two emotions: pleasure at the improvements and abject horror at the abyssal drop in battery life.
  • I think I may tackle getting my Certified Ethical Hacker certification. It sounds like fun.
  • Today’s net weight: down 4 lbs, to 201.2. Yay me.
  • This morning on NPR I heard the tail end of this story. One lobbyist said “During the day, who watches TV? Well, now I do! Seriously, I’ve watched more Ellen DeGeneres in the last month on these devices.” So: good reason not to get one.
  • Our taxes are paid. I expect the sore feeling to go away in October or so. I support the idea of doing away with withholding so that the amount of taxes we actually pay becomes more visible. That would do more to change people’s opinion of what the US government should and shouldn’t do than practically anything else.

Comments Off on Thursday trivia #6

Filed under General Stuff

Exchange ActiveSync remote wipe and firing people

Darn it, Dr. J beat me to the punch:

Remote wipe in Exchange ActiveSync is only useful when a user loses his or her device, and even then, it is lacking since you cannot reach out to the device and wipe it. Remote wipe in Exchange ActiveSync is utterly useless when people are terminated from their employer.

In the case where you fire an employee and want to remove your organization’s confidential data from it, there’s a big ol’ hole that Jesper describes quite well. There are various mitigations that might seem to apply, but most of them revolve around preventing someone from connecting in the first place, or in blocking their ability to connect after you fire them or whatever. For example, you could use client certificates so that only devices with certificates could connect, but then only as long as the client cert remains valid. That doesn’t solve the wipe problem, though.

A related problem: the current device wipe implementation on most phones resets everything and completely erases the phone back to its factory state. Users lose all their apps, personal data, and so on: not a great experience for them (though one school of thought says that you just fired them, so who cares?)

It seems like it would be reasonable to do two things. First, allow sending the EAS wipe message to a device even if it fails to authenticate. If the device has an existing sync relationship, and it tries (but fails) to authenticate, just send the pending wipe message to it anyway. Second, give admins the choice of whether the wipe message requires a complete wipe or only deleting data that came from the organization originating the wipe message in the first place.

2 Comments

Filed under UC&C

Acuitus is hiring content authors

I’ve gotten a lot of questions about my job, so I thought it would be a good idea to explain more about what I do, mainly because we’re looking for more people who can do this kind of work.

My official title is "content author." That means that—you guessed it—I write content for our Digital Tutor. The tutor is a complex piece of software that provides students with the same experience as sitting side-by-side with an expert human tutor. We’ve proven in both lab tests and real-world use that we can take average students—not just superstars—and help them gain real expertise, not just paper-MCSE-style book learning. Our students gain expertise far out of proportion to students who study with normal methods, especially because we can do it faster than traditional solutions. (If you want to know more about how we do that, e-mail me; much of our methodology is secret sauce.)

There are two important parts to my job title. The content part means that the tutor uses several different kinds of material to help students learn. Some are the traditional items you think of when you think of computer-based tutoring: lectures, graphics, animations, and so on. Others are unique to our product. For example, we have guided activities (e.g. "First open a command prompt and type ‘telnet’. Then…") where, at each step, we can see what the student’s doing on a live Windows network and give them guidance where needed.

We also have free-form exercises, where we give the student a real-world exercise ("Your new boss is complaining that his computer is slow. Go fix it.") and offer help, but only when the student asks for it (and only as a Socratic dialog, never as prescriptive help.) These, in a word, are awesome. They’re fun to write, challenging for students, and a key part of what makes our solution so effective… but I digress.

The author part means that I create the content using our own language and toolset. However, I have engineers who work very closely with me to make sure that whatever features I need get implemented. It’s a great partnership because I’m free to focus on what I do best, not worry about how the system will figure out what a student is pointing at, or what they just changed in AD, or whatever. The engineers do that (and we need some of them as well, come to think of it!)

What makes a successful content author?

  • Deep knowledge of at least one significant aspect of IT: networking, Windows, Active Directory, etc. When I say "deep", I mean that you need to be able to talk about this stuff at any level from "ooh, shiny" down to 500-level details of internals.
  • Solid teaching experience, the more the better. Whether 1:1 or in groups, you have to be able to effectively impart what you know.
  • Excellent written communications skills. Many of our existing content folks are published, though that’s not a requirement.
  • A desire to work on something that can, quite literally, change the world.

Are you a good fit? If you’re interested, see our jobs page and fill out the online application. That will get you into our system, and we’ll take it from there. If you have questions, I’ve set up a formspring page so that you can anonymously ask ’em.

Comments Off on Acuitus is hiring content authors

Filed under General Tech Stuff

Thursday trivia #5

Not much trivia today; it’s been a busy time with a lot of things going on.

  • Are diplomats smarter than everyone else? You be the judge.
  • The 151 Best Movies You’ve Never Seen sounds like a pretty interesting book.
  • Chile or Costa Rica? Inquiring minds want to know.
  • I didn’t watch Tiger Woods at the Masters last year, so I have a ready-made reason not to watch him this year.
  • US Airways and United merging? Blecch. I’d almost rather fly Spirit. Well, not quite, but close.

Comments Off on Thursday trivia #5

Filed under General Stuff

Thursday trivia #4

  • I have never had a better cheesesteak than this. Highly recommended if you’re in Pensacola.
  • Harry Reid and I don’t see eye to eye on many things, I suspect. However, there is no excuse for the treatment he received from a congregation of his fellow Latter-day Saints.
  • Comments on my blog appear to be broken, as reported by several smart people. However, spammers are still able to leave me comments. Looks like I’ve got some fixin’ to do.
  • My plan was to write and release an iPhone app that would earn me enough money to buy an iPad. I guess that means I should start on the app at some point.
  • Did you know that April 1st is the birthday of the chief petty officer rank in the Navy? Sure enough. Happy birthday, Chiefs!
  • This brings back many happy memories of time spent swilling root beer and computing.
  • This is the first year in some time that I haven’t had a work-related April Fool’s joke ready to go. I’ll have to work harder on that for next year.
  • I’m looking forward to seeing the people who routinely condemn Bill O’Reilly react to this bit of news.

2 Comments

Filed under General Stuff, Musings

Thursday trivia #3

  • I’m glad to see that Microsoft is working on making Eclipse more usable and better-behaved under Windows 7.
  • My boy Pat Richard wrote a nice script for sending an automated "welcome" message to new Exchange users. Check it out.
  • There’s quite a concentration of Exchange and OCS talent in the Bay Area, but the only person I can think of that I’ve met is Ed Crowley. I’ve got some catching up to do.
  • "A DIY Guide to Going Nuclear."
  • It’s harder than you might think to teach a bunch of 13-16-year-old boys to safely change a tire, what with all the jokes about lug nuts and so forth.
  • Next week I’ll be in Pensacola. Waffle House, Chick-Fil-A, and Cracker Barrel, watch out! Better still, I get to drop by Alexandria and see Mom, Grandma, and the rest of the family first.
  • Health insurance reform: it’s not the work of the devil, it’s just a law. Laws can be changed. If you don’t like it, relax and remember that simple fact.

2 Comments

Filed under Friends & Family

“A mathematical career in the software industry” event

One of the unique things about working at Acuitus is the way we collaborate on writing instructional content. We essentially work on pairs, and my partner for the most recent set of work I’ve been assigned is… wait for it… a mathematician.
No, seriously.
Imagine all the people in the world with whom I could converse. Imagine me asking them a little about their prior careers or work experience. Now imagine me not understanding anything they said. That’s Geir, my partner.
Nonetheless, I give him mad props; he’s been great to work with, and he’s co-presenting a talk at Berkeley called “A mathematical career in the software industry” on April 8th. If you’re a math whiz in the Bay Area[1], please feel free to drop by and hear his talk– I think you’ll find it interesting.
[1] as if any math people would read this blog. [2]
[2] except for my cousin Jody, he of the math degrees

1 Comment

Filed under Friends & Family, General Tech Stuff