Microsoft’s PowerBI Knowledge Base offers lorem ipsum (and little more)

From a co-worker:

This is a screenshot of Microsoft’s new PowerBI dashboard platform. I needed to talk to their tech support so I clicked the “contact support” link and got this screen. Again, this is not a preview, or a beta, but rather their live support request form for a production product.

Look closely, and those informative knowledge base articles have topics like “Article 1” and “Long test article”, not to mention the ubiquitous, “Lorem ipsum dolor sit amet…” I wonder if they used the Lorem Ipsum generator for the text?

Microsoft PowerBI Knowledge Base fail

An exercise in frustration: Getting product keys and support using the Microsoft Dynamics CustomerSource web site

“Microsoft Dynamics CustomerSource is an information-packed, password-protected site for customers who use Microsoft Dynamics products.” (Microsoft’s words, not mine.) I decided to use this information-packed, password-protected site to get my recently purchased product keys for Dynamics CRM 2011.

Below is a summary of my experience.

First, I go to the Product & Service summary page on the My Account page.

Then, I click on Registration Keys.

Then, I choose the appropriate version (2011) and upgrade option (No) and get the following message: “The keys you are trying are of Volume license, hence they will not be shown from MBS.” (I have no idea what MBS is.)

Frustrated, I try getting support by clicking the support link on the “Contact Dynamics Operations” page.

Which yields a very unhelpful support page that tells me, “Our apologies…An unexpected error occurred.” At least they are apologetic.

Despairingly, I click the ROC Contact Information at the bottom of the page (I have no idea what “ROC” is) and get a different apologetic error.

Pretty unimpressive, even for Microsoft.

Forcing users to choose a browser other than Internet Explorer doesn’t help them

In the news this morning, I stumbled across an article, EU: 100 million Microsoft users to choose browser. Reading this, there were a few instances of questionable logic.

The first instance (emphasis added):

Microsoft is starting this month to send updates to Windows computers in Europe so that when computer users log on, they will see a pop-up screen asking them to pick one or more of 12 free Web browsers to download and install, including Microsoft.

Microsoft is allowing users to choose one of more than 12 free web browsers, because the EU didn’t like Microsoft bundling its own free web browser into Windows. Call me strange, but punishing a company to give something away for free because it blocks out other companies from giving their own products away for free strikes me as odd.

The second instance (emphasis added):

The EU’s executive commission said giving consumers the chance to try an alternative to Microsoft’s Internet Explorer browser that comes with the widely used Windows operating system would “bring more competition and innovation in this important area.”

Wait, didn’t we just read that there are “more than 12 free web browsers”? That doesn’t sound like lack of competition and innovation to me at all. How many industries offer a choice of over a dozen free items? None that I can think of.

web-browser-market-shareI am aware of Microsoft’s predatory practices in the web browser arena, particularly related to the browser wars between them and Netscape. Microsoft muscled out Netscape by giving away its browser for free, something Netscape didn’t do until early 1998. Isn’t that a good thing for consumers? Further, client software (such as Navigator) was a small portion of Netscape’s revenues, and at the time, “Netscape has successfully shifted its business over the past year toward enterprise software sales and to revenues from its Web site business, and away from standalone client revenues” (source: Mitchell’s Blog). If Netscape was successful in transitioning away from a client product, but ultimately failed in the enterprise marketplace, why is Microsoft being punished?

In the end, Microsoft was penalized for providing a product for free – and forcing the market leader to ultimately transform their business (“successfully”) and offer their own (similar) product for free. The fact is, Microsoft’s efforts were largely responsible for the explosion of free web browser alternatives – yet the EU still feels a need to punish them because there is “[not enough] competition and innovation in this area,” as they say.

Final point: let’s not mention the pain and suffering that novice users will have after installing other browsers, wondering where their bookmarks went, and wondering why they are being prompted to (re-)install Adobe Flash so they can play YouTube videos.

Some things are better left alone. This is one of them.

Live search’s extra spaces (only for Firefox, of course)

Go to and do a search to see a nifty AJAXy popup search results box, powered by Live Search and including some advertising (which I deliberately grayed out below). Look closely, and you’ll see the URLs in the search results (circled in red) have spaces where spaces just shouldn’t be. No surprise, this happens Firefox but not in Internet Explorer.

About the only thing missing is a "Best viewed with Internet Explorer" logo, circa 1998. This really inspires me to click the "Get my own Search Box!" for my site — I’d just love this bug to be reflected in my own work, too.


Stupid things to say: “Point your favorite browser to…”

I received an email today from Microsoft, “Introducing MSDN Online Subscriptions!” Very exciting for sure; I had no idea this is something new, as I’ve been downloading things from my MSDN subscription for years. But I digress. The “stupid thing to say” in this email is:

Point your favorite browser to

Do you expect people to choose their least favorite browser? Or any browser other than their favorite? Or, does it even matter? Why even bother adding those words — why not just say, “Go to“. This is an MSDN subscription e-mail; the users are likely to know what you mean.

To digress again… my subscription expired months ago. Why are they telling me to update my subscription to online only — shouldn’t they be trying to get me to create a new subscription? Oddly, the email includes my old (expired) MSDN subscriber number, which is meaningless as I can’t use it or renew it.

Installing Systems Center Essentials fails: “The specified domain does not exist or cannot be contacted.”

I’m trying to evaluate Microsoft’s Systems Center Essentials 2007. I say “trying” because every time I install it, I get an error in the setup log file.

The specified domain does not exist or cannot be contacted.

This makes no sense, because I’m logged in with a domain administrator account and the setup program is validating the domain-level service account. What gives? After two failed tries, I searched Microsoft’s web site, and I found this:

(KB 937831) The installation of System Center Essentials 2007 fails during the Reporting part of Setup and the following information is logged: “The specified domain does not exist or cannot be contacted”
– Fixes a problem that occurs if the computer’s NetBIOS domain name does not match the domain or if the computer’s domain suffix does not match the domain.

There’s a hotfix for the setup program (go figure) that fixes the problem. Unfortunately, the symptom (NetBIOS name discrepancies) is not the case in my situation, but the error message is the same. I tried applying the hotfix, and — guess what — SCE installed successfully.

Here’s the oddest part of it all. Why doesn’t Microsoft pre-apply the hotfix to the evaluation installer that they make available on their web site?

Excel crashes, and flooding Microsoft with error reports

Excel 2007 crashed on me while I was scrolling vertically using the mouse wheel. Impressively, Excel was able to recover, apparently right back where I left off scrolling.excel_error_reporting

I continued trying to scroll (again with the mouse wheel), and once again, after about 100 or so rows scroll by, Excel crashes again. This time, I choose to send the error report.

Recovery again works like a charm (at least one thing is working right). I try scrolling with the scroll bar; no crash. I try page-down and arrow keys; no crash. I go to a different part of the document and scroll with the mouse wheel; crash after about 100 rows pass by.

“Send error report” clicked again.

This is getting fun, so I’m going to do it about 20 more times.

CodePlex: Did they forget to back up a server?

CSSFriendly, the ASP.Net CSS Friendly Control Adapters, is an open source project I contribute to. Source code, issue tracking, and other services are provided using CodePlex, Microsoft’s alternative to SourceForge. Since last week, our source control server (Team Foundation Server, or TFS) has been down.

The reason for the downtime, as reported by someone on the CodePlex team:

At 3pm PDT on April 11th an operator error occurred that caused source control and issue tracker data on one of the Microsoft CodePlex servers to be accidentally overwritten. During the standard data recovery effort, a recovery backup configuration oversight was discovered in the routine backup process for this CodePlex server which is currently impacting immediate restoration of the data.

Fortunately, thanks to my years of experience in medium and large organizations, I can translate this into layman terms:

At 3pm PDT on April 11th someone screwed up and accidentally blew out one of the CodePlex servers. When we looked for the backup tapes, we realized that this server was never being backed up, forcing us to use expensive and time-consuming data recovery services to get the data back without too much egg on our faces.

Granted, this is speculation, but it’s the only plausible reason why you can’t get a server back online in four days. Fortunately our project has only been going for a few weeks, and we don’t have a significant history of source code changes or work items. Still, this does not give me any confidence in using CodePlex for any other projects, especially considering my excellent experience with and the availability of Google Code and SourceForge.

Microsoft OKs community development of CSS Friendly Control Adapters

Back in late 2006, I modified Microsoft’s CSS Friendly ASP.Net 2.0 Control Adapters to be distributable as a single DLL. Since that time, the code I wrote was downloaded from this web site, and everything seemed good, at least until the server crashed. After being prodded by a few people in the ASP.Net community, I moved this little project over to CodePlex. Before doing so, I checked to make sure this was OK with Scott Guthrie, the grand poohbah of ASP.Net at Microsoft. (You’ve got to cover your basis!)

Anyway, today I read a post on the ASP.Net forums stating that Microsoft OKs community development of the CSS Friendly Control Adapters. In short, this is a good thing for the users of this product, for reasons that are explained in that thread, and it looks like I’ll be more involved with the ongoing development of these adapters in the future. It’s also nice to see your efforts noticed by the largest software development company in the world. 😉

I will keep the pages on this site that mentioned these adapters, but I highly suggest everyone who used them to bookmark the CodePlex project “CSSFriendly” and use that as their source of code and information going forward.

KISM: Keep it simple, Microsoft

Microsoft, the company who provided the products and tools for millions of people to build careers off (myself included), has often forgotten that the simple solutions are often the best. In a recent blog post, hammett wrote about Microsoft’s missteps in this area and their focus on YAGNI (You Ain’t Gonna Need It) — at least, where “You” refers to most people.

[Digression: Someone at some point commented on Microsoft Word that “90% of the features are used by 10% of the people”. If I was designing a product and 10% of my features were used by 90% of the people, and the other 90% of the features were used by 10%, I’d either write two products, or I’d write one product that was incredibly extensible using a plug-in architecture.]

This feature-bloat approach to technology reminds me of Microsoft’s Enterprise Library and the Data Access Application Block (DAAB). In the first release of the DAAB, you can call a parameterized stored procedure and get a DataReader back using one line of code, as illustrated below.

IDataReader reader = SqlHelper.ExecuteReader(
    connectionString, CommandType.StoredProcedure, storedProc, 
    new SqlParameter("@ID", 1));

In the latest DAAB (part of Enterprise Library 2.0), this becomes:

Database db = DatabaseFactory.CreateDatabase();
DbCommand cmd = db.GetStoredProcCommand(storedProc);
db.AddInParameter(cmd, "ID", DbType.Int32, 1);
IDataReader reader = db.ExecuteReader(cmd);

I also should mention I also should mention that the latter example also requires a special configuration section added to your application config file, whereas the former just requires a connection string (which likely you already include somewhere in your application configuration).

The first example hides the complexity that you may not need in most circumstances. Granted, you can still use (or write your own) SqlHelper, but why break away from this entirely?

Simplicity is a wonderful thing. Let’s hope Microsoft finds it again. Give power to those who need it, and simple elegance to those who don’t. It’s not hard to do both, if you accept the fact that one size does not fit all.