Philosophical about enablement, the impossible, and the infeasible

by Michael S. Kaplan, published on 2011/05/23 07:01 -04:00, original URI: http://blogs.msdn.com/b/michkap/archive/2011/05/23/10167319.aspx


Feeling kind of philosophical....

So the other day, I was authoring a keyboard.

Wait, that isn't quite what I was doing.

I was doing some keyboard authoring work, to enhance a keyboard someone else had authored.

Good, that's closer to what it was.

This was not random meandering around with vague, non-annunciated purpose, mind you.

There was some definite purpose to the enhancements.

Mostly along the lines of the fuzzy corners of the stuff you can't do in MSKLC.

Stuff related to features I covered in Chain Chain Chain, Chain of Dead Keys and working around interesting limitations not unlike the ones I mentioned in [Pretty much] All the things you can't do with SGCAPS, and why (more on this another day).

it is funny how all of this came about, actually.

i was essentially working on keyboards the same way Cathy did it like way over a decade ago -- editing text files by hand. Because the architecture supports some tings the tool does not.

I mean, there is a functionality, one that has been around for just shy of two decades. One whose support is summed up by 1.02 header files spread across the SDK and the WDK (mostly the WDK). 

And yes, I just calculated that 0.02 part.

It is functionality that nearly everything makes use of in their applications yet almost nothing ever tried to create with in any way other than what Microsoft provided (despite the admittedly understated presence of samples).

When no one (outside of a few people in Windows) uses a functionality to do such work in, the potential feature set outside of what is used becomes somewhat irrelevant.

Everything is "impossible" to do.

Then a tool (MSKLC) gets created that makes a specific subset of features available.

And it is only features the tool doesn't support that become "impossible".

Which is all a little silly (from my point of view, at least!) since the features in question weren't ever impossible. Perhaps in both cases they just weren't feasible for most people to do (mostly since we never told anyone how to do them!).

So I was sitting at a computer doing the impossible, by which I mean infeasible, defined by an arbitrary line I created myself by the nature of the things the tool doesn't do.

A line extended when a new release of the tool was made (ref: Not the coolest, but).

And a line fortified when ownership of the tool was transferred to a team that to date has never shipped a new release.

I was essentially asked the other day by someone about that fortified line:

I am not at all familiar with MSKLC, but seeing you talk about it so much, I am wondering if anybody ever considered making it open-source, like WiX, MfcMapi or similar projects? Wouldn’t that be the best outcome for everybody?

It probably would, if you asked me. Which I suppose he did, huh? :-)

But while CodePlex would be great solution for not only Microsoft Keyboard Layout Creator but its sister tool Microsoft Locale Builder, CodePlex requires a knowledgeable owner of a project to "sponsor" and "support" it. And there is apparently a dearth of such people able to get buy-in from their respective managements to do said sponsoring/supporting.

If they were there, I would want to be a contributor to both (probably MSKLC more than MSLB!), which I suppose some would consider to have a fairly defocusing kind of effect on my actual work. They might be correct about that, so I can't fault their logic.

It certainly wouldn't fit in any anyone's current mandates.

Except some actual customers, and standards bodies, and perhaps governments.

Thus my feeling all philosophical....


Mihai on 24 May 2011 1:18 AM:

And you might add MSLU to that list of open source projects :-)

Michael S. Kaplan on 24 May 2011 8:44 PM:

I wouldn't be against that, but I doubt they'd be in favor of it, at this point....


go to newer or older post, or back to index or month or day