Friday, December 22, 2006

Time Travel Around the Windstorm

Hi. How is it going for you? I'm off way away from Redmond, surrounded by wonderful people who think "Mini-Microsoft" is a derogatory term for an aggressive technology start-up and nothing more. It's wonderful.

This is a post I originally started writing on 10 December, and puttered with, deleted a discussion about that NYTimes Gambit article, and then as I was feeling good about wrapping it up Whoosh! our Dark December Windstorm whupped-up on the area and then power (forget indulgence in insufferable blogging) became our one and only priority. I hope that if you're in the Seattle area that all ended well for you and that you're warm and have power.

So, let's see, where was I... imagine the screen getting all wavy as we travel back in time a little bit...


Holy Shamoley, MSFT closed above $30.00 today. Cha-ching and Happy Holidays!

Clouds parting... heavenly voices singing... sun breaking through... criticism... waning, replaced with... deep desire to do... The Mexican Hat Dance! Olé! Hey Mary Jo - la da da - maybe you're - la da da - right (when we hit $40, you'll certainly be right).

But seriously, the last six months look pretty way better than anything else in the past five years. Positive stock price ascent! Well, of course, there was that whole plunge thing that gave us a nice hole to dig ourselves out of, so no joyous back slapping in the executive room, please.

Just a few random other things going on during this quiet time of year:

Town Hall meeting: last Friday's Town Hall meeting on campus was fine and dandy and enjoyable, for me. Maybe I wasn't paying attention, but nothing new stuck in my craw. It sounds like all senior VPs need to go on the college circuit so that they can get a dose of what hard questions are like. Too bad that seems to be the only source they can find such. I really value these meetings and the information they provide.

Udell, my Belle: +1 to Microsoft and Jeff Sandquist for hiring Jon Udell. In the self-Q&A in A conversation with Jon Udell about his new job with Microsoft regarding why he would join Microsoft at this point in Microsoft's history, Mr. Udell calls out specifically the personalities at Microsoft and the technology that they are working on: Ray Ozzie, Kim Cameron, Jean Paoli, Jim Hugunin, J.J. Allaire and then in a later blog post Tim Fahlberg, Dan Thomas, and Mike Frost.

That collection of technical leaders reflects the continuing change Microsoft is going through as new leadership steps up. Will Udell be the Scoble replacement? Well, no, not quite, in my opinion. Scoble is a prolific super-connector but he is in no way a geek's geek. I've often lamented our loss - well, total lack, actually - of mindshare in the Alpha-Geek demographic. I'm willing to go in the wrong direction with respect to employee growth if someone like Mr. Udell can come on-board and champion going after the Alpha-Geek and ensuring our ecosystem is the best, most delightful place to be to develop software and services that matter.

If anything, now is certainly the best time for Mr. Udell to be joining, if only to end up retelling of a time that Microsoft was in the middle of a great transformation.

(Okay, time-wavyness returns us to the present)

Patent Dis! Oh, the echo-chamber is not happy about United States Patent Application 0060288329, which would seem to patent the RSS platform incorporated into the IE7 technology. Mr. Dave Winer (aka, Mr. RSS [a designation that's always a good way to start a divisive conversation with the blogerati]) no-likey: "This should be denounced by everyone who has contributed anything to the success of RSS."

Clarity. That's what I like in a writer.

Personally, I've never liked software patents in a completely naive old-school sort-of-way. The granting of software patents was one of those moments where software development lost its innocence. So it's here. And as long as it is here, I recognize that it is a necessary evil to pursue every patent you possible can. I don't like it. But if you don't, someone is going to. And as long as you have your massive patent stockpile deterrent, you can avoid the business-world equivalent of nuclear warfare with other BigCos. "Hey, don't sue me, because I'll sue you for your infringements and then we'll all be clustered f'd up. How about we," (lean in seductively and refill their wine-glass) "cross-license?"

So that's why you see a patent like this. Do I think it has much intellectual merit to it? Nope. Do I see a strategic business need for it? Yup. It's going to lead to yet another set of junk patent cubes. I hate those patent cubes. But I hate being sued for bogus patents granted to someone else and technologically bent over even more.

Mr. Winer can at least take comfort that Microsoft can be shamed into doing whatever right thing he thinks is appropriate (e.g., freely licensing the technology or such). As long as software designs can be patented and until the Open Source world becomes as enthusiastic about getting patents, things aren't going to change.

InsideMS: you folks who are passionate about following comments here have my respect. Man, I don't even try on the internal InsideMS blog. It's overwhelming. You'd think that everyone got their frustrations out once-and-for-all right here until you read through the quantity - and quality - of the comments within the InsideMS blog. What's LisaB going to do with all of this? There's still praise for her smattered amongst the comments, sure, but people are angry over just about everything you see right here... and then some. The cork is out of the pig, so to say, and the unhappiness is not just on some snarky external anonymous blog with dubious participants.

One non-linear suggestion I'd like to give after reading the latest "Pay" thread: bring back the full mid-year review. We go through just as much work as we ever did with the mid-year review except for the numbers. At least give people a rating and the potential for a bonus. Now that the major review has become an all-or-nothing gambit, we owe it to the employees to own up and say, "Bad idea not giving you a rating check-point." We already go through a stack rank. Let's just communicate to people where they currently are and divert some of that Partner compensation back into the workforce to reward people doing a great job.

Ups and Downs: this comment, which just came in as I finish this post up, has an interesting proposal about promotions and demotions:

What happens to the bottom 10%? They automatically get demoted to the next lower level (this insure no resters&vesters get a rest), but then they automatically get ranked at their new lower group (as management is essentially saying “you executed at the lower level”)

I'd be very happy for Microsoft to embrace the concept of demotion... or... re-leveling or right-leveling or whatever you might want to call it.


Wednesday, December 20, 2006

AxCreateNewProject tool Version 1.2

I made some additions and modifications to the AxCreateNewProject tool.
The link to the orignal post about the tool:
AxCreateNewProject Version 1.1.

Modifications are descriped on the homepage:
AxCreateNewProject HomePage

Thursday, December 7, 2006

A little modification / add-on to Sidax:

I use one of the features of Sidax most of all - it's the recent projects tab. (we have a lot of projects and I have to work with a lot of them at the same time). So performance of this tab is most critical to me.

And what was wrong is that from time to time I would stumble onto project names that didn't exist anymore, but still were up high in the list of recent projects.
So what this modification does is just verify that the project exists before showing it in the list of recent projects.
(this verification is performed only when the recent projects tab is opened, so it won't cause any performance issues)

To add this modification into your sidax installation, you have to do the following:
1. Add a method to Forms\Sidax:
void updateMruProjects()
int i;
TreeNode privateProjectTreeNode;
TreeNode sharedProjectTreeNode;
TreeNodeName projectName;

boolean existsProject(TreeNodeName _projectName)
TreeNode project;
project = privateProjectTreeNode.AOTfindChild(_projectName);
if (project)
return true;
project = sharedProjectTreeNode.AOTfindChild(_projectName);
if (project)
return true;
return false;
privateProjectTreeNode = SysTreeNode::getPrivateProject();
sharedProjectTreeNode = SysTreeNode::getSharedProject();

for(i = 1; i <= conLen(MruProjects); i++)
projectName = conPeek(mruProjects, i);
if (!existsProject(projectName))
if (element.openedProjects().exists(projectName))
MRUProjects = conDel(MRUProjects, conFind(MRUProjects, projectName), 1);

2. Modify an existing method Forms\Sidax\toglleBut, adding 2 lines at the end:
    if ( == && !collapsed)

That's it. Now the next time you open the recent projects tab, the unexistent project won't be shown. Enjoy!

Tuesday, December 5, 2006

Adding Menu References

Many developers often find it very confusing when trying to add a menu reference into an existing menu.
The reference just doesn't want to be added. :)
And what confuses even more is that some of the menus are added normally, while others are not!

Let's look at an example:
"After creating of a new menu - menu1, I want to add 2 existing menus into it as references: Cust and Vend.
I right-click the menu1 node and select add->menu reference. Drag over the Cust menu (and everything goes fine), and then I try to drag over the Vend menu - and it DOESN'T work! I am lost. what can be the reason for this?"

The explanation is simple:
The menus that were expanded since the time you launched the client, can't be added as references.
You can experiment with this: Try opening the AX client and dragging over a menu as a menu reference. You can see that it works. Now, expand the menu in the AOT and try adding it as a menu reference again. You can see that it is impossible to add it any more. So, to avoid having problems when adding a menu as a reference, you should re-enter the Axapta client and, before expanding the menu, add the needed menu as a reference.

Original article:

Sunday, November 26, 2006

Limited Round-Up, New Souls, and Old Problems

It's a holiday season copy-and-paste special!

Going back to the issues over Limited Scenario II, a couple of folks wrote in describing why it is the way it is and that it's a good thing. First: my main issue is with calling a good, solid person on your team "limited." L-i-m-i-t-e-d. I do hope you got that. Slapping a "II" on it doesn't make it better. And if you're okay with that designation, do you go and give them a head-nooggie right after reviewing their numbers? E.g., does repeating this - perhaps in an increasingly louder voice - make things better:

Limited II: "Consistent performer who has met expectations".


Seriously, though: I'd like to see what you think the text of such a message is like, as if you were delivering it to someone you was important to the team, solid, but not expected to advance to the next level and therefore Limited II. How do you deliver such a firm message that doesn't grind their motivation and morale under your heel?

The ever reliable Alyosha` has an interesting insight:

[...] But this sort of nonsense wouldn't happen were it not for Microsoft's corporate philosophy of differentiated rewards.

Differentiation creates winners and losers. And because it's nigh impossible to distinguish performance from potential, capability from visibility, and perceived performance from real performance -- some of those "losers" ought to have been winners, and some of the "winners" ought to have been losers.

You insist on differentiation, you get exactly this sort of crap.

You get rid of differentiation, you get a totally different set of crap. Some people start coasting, other people get offended because they consider themselves a unique special snowflake that deserves much more compensation than their base pay.

But you know what? Most people just take their COLA and keep chugging on. In the end, I'd be willing to bet that non-differentiation is the lesser of the two evils.

Alyosha`'s comment does make me wonder: what if we had unbalanced differentiated rewards: keep the high-end and drop the low-end? Continue to reward the super-contributors and people who obviously committed a lot of time and effort to get excellent results far beyond their peers. But drop the hunt for finding the Kims of the workforce. More time goes into protecting people who are solid contributors but at risk of getting zero or mediocre rewards. Why? Because we have a statistical need, it seems, to ensure somebody gets zilch. Because surely there are a batch of people in your team deserving of zilch. Don't make us statistically decide that people deserve the zilch. But reward groups who move on the obvious zilchie deadwood, Microsoft-mismatches, and low-contributors through-out the year. Otherwise, we'll continue keeping them around to ensure the bottom is properly zilch-padded.

Regarding Limited II, one commenter wonders if it's basically process-based age-discrimination :

Not only is it bad management, it's also ILLEGAL! It's a violation of both state and federal law to have management policies that favor younger workers over older ones. This is age discrimination, plain and simple. The higher level you are at, the more difficult it is to earn a level increase.

Notes From the Field has a great comment that starts off as follows (I urge you to read the whole comment - it's great and gives insight into what customers are responding to):

No, *I* am Kim.

Several people I've worked with for a number of years are Kim too. If I were to start my own business tomorrow, these are the people I would want to take with me to Kims Inc. These are the people that close deals and make customers and partners happy. These are the people that have instant credibility and know how to take control of a situation. These are the people that know their stuff, but don't need extra wide doors for their egos. Sure I would want some of the rising stars, but the majority of my company would be the strong performers with business maturity - the Kims.

If your in a dark mood reflecting over being a corporate cog, this is the comment for you. The teaser:

I'm probably missing a few other important notes here, but having said that, here's some guaranteed ways for you to get ahead at MSFT, if you have the balls to swing it [...]

In the midst of all of this, the Intel Perspective anonymous blog has a couple of posts up regarding their Intel Focal review process:

One thing that's interesting: Intel employees get what seems like a 360 review by recommending peers and stakeholders to their manager to get feedback on the employee's performance. An even worse political drama than what we have? Maybe. But I think team work might have to be elevated to some degree in order to get positive feedback (even if you both wash each others' hands, there might be some good for the company and customer as a side-product). I would at least like a system for year-around non-anonymous feedback open to anyone.

And, as always, I have to highlight any comment that is summed up as: let your resume set you free:

It should be obvious to anyone reading the internal blog and observing the changes over the last year that there is unfairness in our compensation system but nobody is going to do anything about it - if only because there is no fair system to correct the status quo.

If you have issues, don't whine, go jobhunting and post your success stories instead.

Elsewhere in the land of the letter J...

Jay and J: Jay Greene at Business Week has an edgy thinker J Allard focused cover story piece: The Soul Of A New Microsoft (strangely iTunes obsessed sound-cast also). This came out around the same time as:

Anyway. Props to J for the refreshing dose of determined culture and actually endeavoring to make a new image for Microsoft and probably cause Sony to shoot all of its toes off with platinum bullets. But how does the bottom line and results come up for J and Microsoft? So far, our new soul seems obsessed with blowing all of our money. Dividends? Buy-backs? Hell no. Let them play Xbox!

Nero's got a new fiddle.

More interesting to me in the article are the changes being called out at Microsoft. Snippet:

Lately, some outsiders who work with Microsoft detect signs that the culture is slowly shifting as well. "They're definitely in the middle of a strategy re-look," says Hewlett-Packard Co. chief strategy and technical officer Shane V. Robison, who chats with Microsoft brass. "It will be a fairly orderly evolution, but there's a lot of new discussion that I'm seeing."

Joel and the menu of doom: Joel Spolsky grumbles about the revised Vista shutdown options. Moishe Lettvin follows up with the more interesting post-MSFT inside perspective of what it was like to try and design some menu options: moblog The Windows Shutdown crapfest which is a more interesting read given that it discusses the meeting-cluster-flub Microsoft seems to be obsessed with. Or perhaps that was old bad bureaucratically obsessed Microsoft. Joel followed up on that. Even post-MSFT-Scoble followed-up with a big thumbs down / hard-to-dance-to all the Microsoft committees.

How to avoid that cluster-flubbing in the future? You've got to trust your individual contributor feature owners and let them revel in having the courage to make decisions on their own. And compensate them well for their successes. Plus, wipe out all those meeting obsessed management layers. This was a small dose of Philip Su all over again.

The small bit of Microsoft culture you have to figure out what to do with: our obsession with consensus. Maybe you've had success at avoiding it (like a new webcast a few of us watched recently by Microsoftie Josh Ledgard). How do you get it done right, Microsoft-style?

Friday, November 24, 2006

Description of ClassBuild class:

Today I want to write about using the class ClassBuild.
A collegue of mine recently used this class for extending Axapta's IDE, so I decided you all should know about this class too.

OK, let's start with the declaration of the class:
It's simple, the class isn't extending any other class, a variable of type class ClassNode is declared together with a macro #aot - it contains pathes to all the objects in the AOT
public class ClassBuild
ClassNode classNode;

The class contains the following methods:
  • void new(str _name, boolean _allowExisting = true) - this is the constructor of the class

  • void addMemberVariable(str _variableType, str _variableName) - this method is used to create a variable declaration in a class

  • TreeNode addMethod(str _name, str _source) - this method is used to create new methods and set their source code

  • void addSourceToMethod(str _memberFunction, str _addSource) - using this method we can set the source code of an existing method

  • ClassNode classNode() - this method returns a ClassNode object pointing to the created class

  • public MemberFunction getMethodImplementation(str _methodName, boolean _includeParents) - the method return a MemberFunction object, which has methods to edit or view the source code of the specified method of the class

  • public str name() - the method returns the name of the created class

  • TreeNode overrideMethod(str _name, str _newSource = '') - this method is used to override the method of the parent class in case one exists

  • I will explain how the class should be used on a specific example: (click the image to enlarge)

    In line 6 we create a new Object of class ClassBuild. Into the constructor we pass the name of the class we want to create and an optional paramter, which controls the execution of code in case the class already exists in the AOT.
    After the execution of this line the class already exists.
    After that we add a method test() to our class and set the source code for this method.
    Then we add a member variable of our class, and will try using this variable in a second method we create - test2(). You can see that here I did this in 2 steps on purpose - to show the way you can use the method addSourceToMethod().
    OK, now all the methods are created and we have to compile our class. For this we can use the method AotCompile() of class TreeNode, which we access through the method classNode of the created class.
    Now, to see how 2 other methods work, we show a message dialog with the name of the class being created and the source code of one of the methods.

    Then, just to show you the class works and is ready to be used, we can call one of its methods for execution.
    For this, we use the class DictClass and its methods, but I will not discuss it in this post.

    That's it. Try running the attached job and see how it works!
    Attachment: Job17.xpo

    There is also another way of creating the same class - by using the UtilElements table: (code provided by AndyD from AxForum)

    UtilIdElements utilIdElements;
    TreeNode tn;
    utilIdElements.Name = "newClass";
    utilIdElements.recordType = UtilElementType::Class;
    tn = xUtilIdElements::getNode(utilIdElements);

    See also: Classes\FormBuild, Classes\DictClass
    Adding an AND condition in a queryRange

    Wamr from AxForum found an interesing feature of fieldId2Ext global method:

        Query       q = new Query();
    QueryBuildDataSource qbds;

    qbds = q.addDataSource(tableNum(InventTable));

    qbds.addRange(fieldNum(InventTable, ItemId)).value("8");
    qbds.addRange(fieldid2ext(fieldNum(InventTable, ItemId),1)).value("2");

    But you have to use it with caution, because you won't be able to find this range afterwards. 
    so, searching for
    qbr = qbds.findRange(fieldId2Ext((fieldNum(InventTable, ItemId), 1));
    won't return you the range with the value "2", but the one with the value "8"
    You can find the range, specifying the exact occurrence of it in the query:
    qbr = qbds.findRange(fieldNum(InventTable, ItemId), 2);

    Monday, November 20, 2006


    AxCreateNewProject is a nice tool to help you get started on a project - it will create a shared or a private project with specified project nodes for you and open it in a new window, so that you can start edding objects right away.

    Also included in the zip file: a bmp image to add this tool as a plugin for Tabax

    And after you press OK a project will be created: (see an example below)

    Sunday, November 19, 2006

    A Peanut Butter Manifesto for Microsoft to Chew On

    The big news of this weekend in the blog echo-chamber is about thinly spread peanut-butter: Techmeme The 'Peanut Butter Manifesto' (Wall Street Journal). In case you don't know, it's an internal Yahoo! memo (the kind you hope gets leaked to build external support - and perhaps your own career) from Brad Garlinghouse, a senior VP at Yahoo!, that calls for radical cuts and restructuring within Yahoo!. As I read the memo, I switched the context a bit, imagining that this was written by the kind of butt-kicking maverick I don't think Microsoft has ever seen regarding Microsoft and what we need to do to fix it up. Have a read yourself.

    What do you think?

    It's interesting to read this in light of a couple of articles in today's Seattle Times about Microsoft and Vista:

    First, I think of this time for Yahoo! versus how it was looking for Microsoft over a year ago: both responding to negative wake-up calls in the press - Business Week and Forbes articles for Microsoft in particular. In my opinion, Microsoft tried to Jedi Mind Trick its way out of the situation and eventually backed into a few mea-culpas and passively moved-on some people who may or may not have been part of the problem. Garlinghouse is take a far more brutal, open, honest assessment of the way things are. Snippet:

    I believe we must embrace our problems and challenges and that we must take decisive action. We have the opportunity - in fact the invitation - to send a strong, clear and powerful message to our shareholders and Wall Street, to our advertisers and our partners, to our employees (both current and future), and to our users. They are all begging for a signal that we recognize and understand our problems, and that we are charting a course for fundamental change, Our current course and speed simply will not get us there. Short-term band-aids will not get us there.

    Our response under similar challenges? The Pipeline of Plenty Dog and Pony Show with lots and lots of sunshine and smoke.

    Garlinghouse puts special focus on bureaucracy:

    We now operate in an organizational structure -- admittedly created with the best of intentions -- that has become overly bureaucratic. For far too many employees, there is another person with dramatically similar and overlapping responsibilities. This slows us down and burdens the company with unnecessary costs.

    I never heard us admit we had bureaucracy problems. Sinofsky a while back put up a blog post about bureaucracy (wave of the hand, "This is not the problem you're looking for."). But now as parts of Microsoft reorganize, layers of management are going away to remove problem-making decision makers that paralyzed us more than enabled fast, decisive progress. So, now that something has been fixed, at least maybe we can admit we had a problem? The most we get is from the above Seattle Times article:

    [Kevin Johnson] said Sinofsky and other new Windows leaders are changing the structure of the group to eliminate layers of management.

    "Every time you have a layer of management, there's another opportunity for someone to layer in their strategy, or set their direction," Johnson said.

    Which - I guess we're left to deduce on our own - is bad when you have awful leadership at those layers and their strategy and direction is myopic, restrictive, and destructive to the product. What happened to them? Where did they go?

    Back to the Yahoo! memo. As for employees and passion and deadwood:

    We have lost our passion to win. Far too many employees are "phoning" it in, lacking the passion and commitment to be a part of the solution. We sit idly by while -- at all levels -- employees are enabled to "hang around". Where is the accountability? Moreover, our compensation systems don't align to our overall success. Weak performers that have been around for years are rewarded. And many of our top performers aren't adequately recognized for their efforts.

    While we might poke our low-performers with low compensation and mediocre reviews, we're just not fired up about getting them back on track or out of the company. As for accountability:

    a) Existing business owners must be held accountable for where we find ourselves today -- heads must roll,

    Rolling heads! Yes! The only rolling our problem makers ever had to deal with is rolling around in their wads of stock awards and SPSA payouts. Eventually, some of them managed to be rolled out the door. Quietly. But no one ever has been held directly accountable within the company. Perhaps Yahoo! can show us how this is done.

    As for Yahoo!'s performance review system (which I know nothing about), it sounds like they want to move towards something more like Microsoft, where we endeavor for differentiated awards so that our top contributors get maximum rewards. I remember reading rumors that Yahoo! was moving to a stack-ranked based system. Let us know how that turns out for you.

    And the big bit of news that resonates the most with me:

    c) We must reduce our headcount by 15-20%.

    Simplify. Refocus. Restructure. De-redundantification. Empower and reward passionate employees. Fire redundant non-performing deadwood and leaders to this current malaise. Sounds like a good recipe to me.

    Administrivia: I'm giving a hard look at switching this blog over to the new Blogger infrastructure soon. Think good thoughts.

    Updated: added a call-out to a context switch. Again: fixed strange word order that shot out of my finger tips.

    Monday, November 13, 2006

    Not-so-limited Kim

    Should Kim just quit?

    A bit ago, post review season, the following comment came in about how a mandate came from HR to slap "limited" on anyone who had been in their level too long:

    Apparently some groups either didn't get the message or chose to ignore it. I have an email from HR indicating that EVERYONE with more than 30 months at level (regardless of level) MUST get a Limited eval. This is why they added "limited scenario 1" and "limited scenario 2".

    Your group may have chosen to ignore the memo, but I know that many divisions didn't.

    And I know that many senior 64s who got 0 stock award are sitting looking at Google and Amazon's help wanted ads.

    Most folks called FUD on this. And without a smoking gun email from HR, there it died. Recently, I sat in a meeting with managers across the company and they were complaining fiercely about Scenario II for limited. Who-da-whatsa, Scenario II was for real? Okay, time to get off my lazy butt and actually revisit the contribution ranking review pages. Hmm. Sure enough. Outstanding / Strong / Limited was updated in the middle of the review season so that the original Limited, which seemed to match the word pretty well, had an additional branch added for people who had plateaued in their career at their current job salary level and were doing a fine job but were not expected to be promoted any further.

    You're doing well. But you're limited. A... special kind of limited.

    Whose bright idea was this? Isn't this a trended 3.0 all over again?

    My question is: is this just a passive aggressive way to move on people from Microsoft with a vague hope that people in lower levels will fill their spot and perhaps achieve more?

    Imagine you're a manager and one of your reports is Kim. Kim is a solid report, doing exactly what you need, very professional, integrated well into Microsoft. Someone you can depend on and an integral part of the infrastructure to your team. Maybe Kim is reached Level 63, 64. You realize that you could probably push to get Kim promoted to the next level, but most likely Kim would get murdered come the next review time. So Kim is going to stay in their current level, probably for the remainder of their long career.

    Microsoft has invested a lot in building Kim up to this solid contributor point.

    Thing is, come review time, once Kim has been at their level for a while, you're going to have to slap a "limited" on Kim. Does Kim see this coming? Does Kim buy into this "limited" designation with little awarded stock (as in zero)? I can tell you, if I was a 62 or 63 and a solid contributor to the team like Kim and I was slapped with a "limited" I would be heading for the door, patting my right buttock along the way as a firm kissing spot for my boss. If Kim stays with the team, most likely they are not going to be putting in the big effort for the team (why should they - they've been put in a box: unpromotable). Maybe you think this "Limited Scenario II" slap would fire Kim up and get them to prove that they can earn and perform at the next level. I doubt it. I don't see too many people on the internal HR blog happily fired-up about their limited appraisal.

    I think it's fine to ensure someone realizes they have, in your leadership's opinion, topped out. But are they limited? Because I can tell you, once you tell them they are, they no doubt will perform like it. Or leave. And I wouldn't want my solid Kim to go in either direction. Shouldn't there be an expectation that if you reach a nice level like 63 and keep performing at that level that you should get reasonable compensation and rewards? Maybe we just need a new designation below Strong: Solid. Or a scale, given that many of these designations are already broken into sub-levels anyway. What do you think?

    Another thing about this whole Scenario II thing: my (obviously enlightened) group didn't buy into it. If they did, there would have been a lot more limiteds being handed out. Which brings up another issue with our new review system: now that the training wheels are off, groups roll-up some wildly different ways of spreading out the reviews. Some do in fact bring back their own curve with respect to commitment ratings. Others vigorously pursue Scenario II. I'm pretty sure the goal was to be honest about how a person is doing against their CSP and their commitments, but this is being dampened in some teams.

    Other going ons:

    • Microsoft Shareholders Meeting 2006: did you go or listen to the webcast? What did you think?
    • What exactly is MSFT's dividend strategy? from MSFTExtremeMakeover. Again, Microsoft gets advice over and over again that to invigorate the stock for consistent growth, Microsoft needs to increase the dividend to a respectable level.
    • Delegated to the Dustbin of History by Collision Domain talks about management at Microsoft, especially focusing on micromanagement vs. delegation.
    • Generally positive reactions came in around the Microsoft Academy post. What I found interesting are the stories people shared of other companies who did something similar to ensure they had a high quality workforce.
    • With so many releases I keep on thinking of that Thanksgiving cornucopia decoration, with Vista and Office boxes and Zunes and 360 games spilling out, along with a lot bags of cash with "To Novel, love Microsoft" written on them. Looks like in return Watson should be reporting lots of interesting data to the Zune team. Maybe we'll figure out a way, as a company, to dogfood major strategic devices - and their support software - one day.

    Administrivia: boy, things (and by "things" I mean "servers") are up and down in Google's Blogger land. I assume this is because the underpinning BlogSpot infrastructure is getting replaced. The good news is that there should be a comment feed for posts one day. The bad news is that there are probably many 500 errors between now and then.

    Update: corrected title, almost a year after posting and see it was "No-so-limited Kim" vs my intended title of "Not-so-limited Kim" - oy!

    Sidax - a sidebar tool for DAX 3.0

    Max Belugin (AxCoder) has made some upgrades to his tool - sidebar for Axapta - Sidax.
    Current version is 0.3.7 beta14
    The link to download this great tool is:


    Wednesday, November 8, 2006

    Party 'Til the Cows Come Home!

    Congratulations to Office 2007 and Windows Vista for reaching Release To Manufacturing - all within a week!

    No commentary. Well, other than acknowledging that we've finally made it through the denouement of triage and can close the book of these two (hot-fixes and service-packs aside). And in the midst of these two cash cows ascending to RTM, there are so many other bits of news and releases gushing out that proverbial Microsoft pipeline that I'm losing count.

    The stock might actually close above $29 Real Soon Now.

    And I anticipate going forward, things are going to be really different. The more I travel around campus and chat to various folks and their plans, the more I remark "That's exactly what we should be doing."

    Of course, the proof is in the pudding. Or at least the golden bits.

    (postscript: no comments on this one. I'll put a new post up next week. Now's a good time to take a short break.)

    Hello, everyone.
    This blog will mostly be about Dynamics AX (formerly Axapta).
    (This is what I do for living and what I am interested in)
    Also, here is a link to another resource of mine, where I am planning to store different projects and thoughts I consider interesting:

    I want to start off with a small post about Axapta Label System.

    I am translating a book on Axapta (MorphX IT, Steen Andreasen) into Russian language. I will tell about it in more detail in a little while, when the traslation is finished and proof-read.
    So, while doing the translation of an Appendix chapter, I stumbled on something I have never read about in the past.

    It's about searching labels in Axapta:
    "When searching for a label using <> will narrow your search. If you want to look up the label 'Customer', it will perform faster by keying in <Customer> as only labels with the exact text 'Customer' will be found. To find all labels starting with 'Customer', you simply enter <Customer."

    Also, as Max Belugin pointed out to me, regular expressions are used in the search.
    You can read about different Regular expressions by opening the AOT node:
    \System Documentation\Functions\match

    Wednesday, November 1, 2006

    Microsoft Academy

    (A different sort of post. Around hiring people [Goodness!]. Enjoy the dissonance.)

    Microsoft Academy. What's that? A new movie franchise? Real Genius + Revenge of the Nerds + Police Academy? No, though Val Kilmer and Steve Guttenberg are of course welcome on campus anytime (sorry Curtis Armstrong, no welcome for you... more for screwing up Moonlighting, though, than the whole Booger thing).

    No, it's more a small thought I had walking back to the house with the paper one morning.

    Like many of you, I fill my spare work hours doing interview loops, technical screens, and informationals. As much as I bitch and moan about rampant hiring, I do my duty tracking down high-quality "A" hires for Microsoft. It's never been easy. And it's never been more difficult than now. There are many reasons: we're in higher competition for talent than ever before, H1B visas are not being handed out like candy anymore, and enrollment in computer engineering / computer science and relevant fields is on the decline.

    Plus, my personal dev-focused bugbear: more and more candidates who can lay down the smack with Java and script can't manipulate memory and discuss deep operating system constructs just-in-time at all. I need you to be able to write a GC, not be in an unhealthy co-dependent relationship with one.

    So, there I was with another interview candidate, getting ready to review their work on the whiteboard. Smart. Self motivated. Passionate. Great potential. Resume? Accomplished. I studied their whiteboard results and their thinking around a simple coding problem. Sigh. No hire. It's not always that easy, though, as you try to reconcile the whiteboard results with a smart accomplished person. Once again, ABBA echoed in the back of my mind singing "Take a Chance on Me" (hopefully I didn't hum that while busying myself as the candidate reviewed their later work). Nope. Yet another candidate who, metaphorically speaking, knows how to drive a car but doesn't know how the engine and transmission works.

    And the future looks bleak. I know we're trying to instill a grass-roots education initiative to increase enrollment and interests in the science and technical fields. But even then, is it enough? Are the increasingly smaller set of seemingly qualified Microsoft candidates on the path to be aligned with the needs that the company will have in the years and the decades ahead?

    Do we need to change our strategy? Rather than hiring people who can hit the ground running and slowly assimilate knowledge, do we instead need to look for potential to deeply learn the hard skills we need and then put them through an educational hands-on gauntlet to prove they have the stuff to be hired full-time? Something like a Microsoft Academy.

    I'm thinking that it's intense training a potential hire would go through before joining any team. There would be tracks for all the major disciplines in the company, whether development, program management, testing, consulting, user content, HR, etc. etc. Deep instruction on topics relevant to all aspects of the discipline at Microsoft along with practical lab and perhaps even field work. Along with some cross-discipline training. I appreciate that the NEO has increased in scope but it's more about navigating the culture of Microsoft (thumbs up for that Stack Ranking exercise - whoever got that through deserves a big bonus).

    I'd like to see at least three-months investment in the new hires in deeply learning what we're using now across the company. For developers, it would be stuff like C/C++, Win32, COM, ATL, XML, DHTML, AJAX, .NET, debugging, performance, Watson analysis, design patterns, security, using our best internal tools and resources and so on. Working against real code for Microsoft products. Testers would get a dose of various automation technologies around the company, along with debugging and Watson analysis, too, so that they could dig deep. PMs would focus on design concepts and real-world user management and relationship building. And everyone should take some of the key professional courses on cross-group communications and effective individual leadership.

    And just like academies in other real-world professions, some folks would wash-out. Fine. Better upfront than to be a deadwood burden later.

    Come graduation, Microsoft would have a deeper perspective into the new hire and vice versa. With their fellow academy attendees, they would have a built-in cross-group network from day-one of their new position. And people out of the academy could be situated in the team that best suits them, perhaps even spending the last few weeks focusing on content directly relevant to their new team (e.g., focusing on fine art of backwards compatibility for the shell).

    And current Microsoft employees could lobby to qualify for the academy. Maybe you're looking to switch disciplines, like from test to dev. Go through the dev-academy first to sharpen your saw and prove your ability. Excel while in the academy? Okay, let's find a spot for you. It would be a source for renewal for our current Microsofties to find new positions and opportunities in the company, versus letting them become more and more marginalized over time and eventually more of a liability than an asset.

    The Microsoft Academy should be hard. Intense. Push-you-to-the-edge-perhaps-this-was-a-bad-idea-crazy-hard. But once you've accomplished all the class, lab, and practical training, you are aligned and ready to contribute with the skills that Microsoft needs today, not bits and pieces you pick up over your first year or so. Or never, if you don't have the refined abilities to start from day one.

    I'm just trying to think of how people out there who have the raw abilities to be great Microsofties but do not possess refined talent could reach the point that I'd be proud to have them on my team - perhaps even work for them one day. Although we continue to gobble up more bodies, I do not feel we're in a talent glut. I see a talent crisis. How do you think it will be solved for Microsoft?

    Wednesday, October 25, 2006

    Microsoft FY07Q1 Results

    FY07Q1 Pre-results: Quarterly results time! Stories leading into the quarterly financial results:

    What are you interested in hearing more about or having the analysts ask Microsoft to get more direct answers? My shortlist:

    • Dates + Enthusiasm: Vista. Office. Dates. Please Lord Almighty finally tell the world when the software will hit the street.
    • Partners?: McAfee and Symantec are shaking the EC tree. Other partners might wonder when we fix our gaze on their market. Justification on our part is totally detached from the halls of justice. Where are the risks? A few bits from Mr. Ballmer here: 10-25-2006 Microsoft's top exec talks about Vista.
    • Live: how the heck is this coming together? Is it an emerging success or still a swirling particle cloud? How is it adding to the bottom line?
    • Xbox: what are the projected shipments? SeekingAlpha reports that Microsoft To Miss XBox 360 Production Targets By As Much As 25%. I imagine we should hear dates and projected shipments on the HD-DVD unit, too.
    • Zune: how are the projections here? What's the future Zune feature-set and ecosystem looking like?
    • Billions and Billions of Dollars: what's the plan for the warchest? More buy backs?

    Post-results: nice?

    Coverage at this point:

    • MSFTextrememakeover Q1 Earnings - "Phew! No huge surprises. The stronger EPS result mentioned above, seems to have been due to shifting some planned marketing expenses to Q2 and beyond."
    • Microsoft Monitor Microsoft Fiscal 2007, Q1 Results - always a great summary from Mr. Wilcox. On MBD: "My expectation is that most businesses planning to get Office 2007 made that decision when renewing licensing contracts earlier this year. I'm quite bearish on deployments of the new productivity suite."
    • Microsoft profit rises, online group posts loss from Mr. Todd Bishop. Ooo, that ends with a 10-Q quote that's a red flag being waved in-front of my lean-and-mean-bull-ringed nose: "OSB operating income decreased for the three months ended September 30, 2006 [...] Headcount-related costs increased 43%, reflecting both an increase in salaries and benefits for existing headcount and a 40% increase in headcount." Yes, please, throwing more bodies and more money at the catch-up effort is suuuure to succeed.
    • Xbox helps Microsoft profits surge The Daily Telegraph - wha? Xbox might help revenue to surge, but it certainly isn't helping our profits to surge, unless we're rolling into that some heavy profits from periphery attachment. On that note:
    • Gamerscore Blog Quarterly Financial Report - John Porcaro goes into greater financial depth around the Xbox 360.
    • Microsoft Earnings Rise, Beating Views Financial News - Yahoo! Finance - has probably the most representative quote of the Q1 review: '"It's not a bad quarter, not a bad outlook,"' by Alan Davis with D.A. Davidson.

    Not bad. Well, some of it is super-fantastic again thanks to SQL Server, Windows Server, and VS (good job on all that SP1 work, too!). Nothing really stuck in my mind from the conference call. Good numbers, a little lumpy, sounds like we're being pretty conservative regarding if things are going to go well or not for the 360, Vista, and Office. And of course, no firm dates for Vista or Office but at least we affirmed corporate availability for November and consumer availability come January. 2007.

    Sorry Building 9 countdown clock! You've got to reach zero and then we'll let 'er rip.

    Updated: added post results material.

    Friday, October 20, 2006


    Soon: Thursday October the 26th we announce our quarterly financials.

    • Apple: ba-da-bing!
    • Google: ba-da-boom!
    • Microsoft? ba... da... ????.

    I can only hope that both Windows Vista and Office 2007 are in such an obvious state of RTM doneness come Thursday that we officially announce the release dates as part of showing some level of confidence, versus letting the releases slip out the door once we've convinced ourselves that no further fixes should be made (it's okay... fiddle-dee-dee, I'll think about that issue come another service-pack).

    Now: I dropped by a colleague's office while he was reading through the new internal InsideMS blog put up by our HR-leadership. Off-hand comments I remember us making:

    • Whoa, this looks like a readers-digest version of Mini-Microsoft.
    • It's amazingly surprising how many people are posting anonymously.
    • That's a lot of comments for the first couple of days, even excluding the duplicate comments.
    • What? Who thinks stack ranking is gone? Eeeenk!
    • Looks like a hit.

    And rather sheepishly at the end, looking at the clock on the screen:

    • Uh, how much time did we just waste reading all of these comments?

    Mr. Barr over at Proudly Serving provides his point of view of this blog and its conversation vs. the internal blog and the conversation that will happen there. A recent comment on the InsideMS internal blog:

    Only one topic post up there, but a huge amount of comments. And I am STUNNED at the candor in the comments. Nobody is pulling any punches. I don't see double posts from here, but I do see similar themes. It's sort of like Mini is shaking a champagne bottle and aiming at the internal blog before popping the cork. Funny stuff.

    Re-org Me: a recent comment regarding what's going on in SteveSi's and JonDe's org:

    You get what you wished for. A flat and leaner organization in many places. GMs, PUMs and [Directors] all got reassigned (read "demoted") to take on "real world" roles. They were kicked but not fired. Most of the managers stepped down to be a lead or IC. Dev leads turn into tech leads or ICs. [...] You never expect that St***Si will be so determined and insensitive, right?

    (Leaving out the bit about me.) Go Steven! You folks in those orgs are undergoing a good bit of change all at once. And dealing with the rumor of a grand RIF coming post Vista (I don't believe it). You know, most PUMs found a position aligned with an appropriate triad. I believe it will all be worked out and everyone will find that they have greater responsibility and impact than before. And a chance to shine. Or not. And I've determined that my favorite phrase-nugget for the month of October is: "get the executives out of the engine room." Yes.

    And, to follow-up on Mary Jo Foley's observation: heck, no, I don't want a hierarchy free Microsoft. That would be chaos, followed by Lord of the Flies-esque passive-aggressive tribal warfare. But I and others do want an efficient structure that prevents fiefdoms and allows aligned autonomy with obvious accountability.

    And as for Googley envy: I don't think hi-tech toilets will be on myMicrosoft's radar anytime soon. Just look how long it's taking to get friggin' coffee makers put in.

    Anonymity: other anonymous goings on:

    • MSFTExtremeMakeover ponders news leading up to the Microsoft quarterly financial report.
    • Collision Domain provides some post-Company Meeting thoughts.
    • Apple gets their own Masked Blogger and the world takes quick notice. Well, the blogitty-blog-blog echo-chamber world takes quick notice. Everyone has their own agenda for blogging, doubly so for anonymous bloggers. Unlike some bloggers out there, I think there's value in anonymity because the message becomes what's important, not the messenger. It's an equalizer. My only advice is to do your damndest to keep the messenger out of the picture, because things here stumble the most when it's about me as Mini vs. the conversation.
    • Both the Unofficial Intel Blog and Intel Perspective blog clarify their position on comments.
    • Doh Symantec has a few posts up looking into Symantec, including the latest on performance reviews. Hmm, Symantec managers, in order to qualify for a great review, need to take a certain amount of training every year. Hmm.

    Oh, and mentioning Symantec above makes me think of McAfee and this whole public tantrum breakdown over Vista.

    McAfee: listen, you're turning into that wonderfully cool person I dated that went all creepy on me after I got my act together. It's like you liked me more when I had issues and you defined yourself by supporting me when I was troubled and untrustworthy. Now you're all clingy and suffocating me and spreading nasty things around about me. I've reformed myself and moved on. You need to, too.

    Or I'm getting a restraining order. As defined by an ever narrowing-API documentation pipe. And that's going to be lose-lose for everyone. Adapt and evolve.

    Man, next thing I know you'll probably be loading worms on iPods or something just to get back at me...

    Monday, October 9, 2006

    Random October Bits

    I think things are going to enter a quiet period here for the rest of the year and into next year. For now, here's a random October collection of interesting comments and newsbits that clears a whole bunch of blog-this flags in my Outlook.

    Re-Titled: it was amusing to me that the Wired "Rebuilding Microsoft" article got re-titled to "Ozzie to Face New Challenges at Microsoft" when it showed up in this past Wednesday's daily news summary. Well, I'd rather have the link vs. having it denied because of the article title.

    Limited: As we all try to figure out what our reviews mean and how to manage the reviews and compensation, one commenter brought up a rule in their group that anyone over 30 months at level were slapped with Limited on their review:

    I'm the "limited fiasco" AC.

    Apparently some groups either didn't get the message or chose to ignore it. I have an email from HR indicating that EVERYONE with more than 30 months at level (regardless of level) MUST get a Limited eval. This is why they added "limited scenario 1" and "limited scenario 2".

    Your group may have chosen to ignore the memo, but I know that many divisions didn't.

    And I know that many senior 64s who got 0 stock award are sitting looking at Google and Amazon's help wanted ads.

    Most folks didn't experience this and slapped FUD on that. If a group did decide to do this, I suggest forwarding that HR email to LisaB and tell her this is wrong and some heads need to be knocked around for creating a passive-aggressive punishment system. If you want people gone, RIF them already. I've always told people that Microsoft is pretty happy with you if you reach L63. If you look at the CSPs as well, they give you an idea about what kind of promotion velocity you should be pushing for and it pretty much goes away as you hit the mid-60-levels. The bad thing about this months-at-level idea, hopefully a FUD-dy-duddy idea, is that if people realize they are going to get punished for not getting promoted they are going to do what it takes to get promoted vs. what's the right thing to do for their business.

    More Than Human: Brier Dudley has an interesting HR-infused blog post that covers both Google and Microsoft: Human Resources Issues at Microsoft, Google. It points to the double LisaB article in Monday's Seattle Times by Benjamin Romano:

    And while nothing but praises should be shouted out for getting rid of the performance curve and the trended review scores, we still have a dysfunctional stack-rank review system that competes employees against their peers. Small steps.

    http://minimsft/: on the upcoming internal employee discussion blog: I want Microsofties to participate on it and not crosspost from the internal blog onto here. When I recognize that happening, or when people see one that got through and point it out, I just will drop the comment into the bit-bucket. On the other hand, you're welcome to crosspost from here and onto the internal blog to continue a discussion on a topic that you know will only include internal Microsofties.

    Basic content rule: what starts internal must stay internal. If you have a comment about the discussion area from a non-content point of view then yes, please, write about it.

    As for concerns about an HR sponsored discussion area being completely career-safe to engage in: well, you remember that blue Corporate Confidential book, right? HR does not exist to make your life easier. And if that Orange Scarfed Dementor Brigade starts jumping on people, especially anonymous contributors, then we'll all know it's time to throw in the company-provided towell.

    Transfers: The new internal transfer program... well, the first response to the internal transfer post was "Hey, what new internal transfer program?" given that it was given a pretty soft-announcement by showing up in Micronews. In general, commenters believe it's a step in the right direction, but it would be much better to just interview for the position and not ever get your manager in involved. While many left stories of revenge when they did look to interview, one story of success came in:

    I asked, more appropriately informed, my manager that I am planning to interview and both the times I got promotion. I am now a level above than my peers. I got promotion in two consecutive years whereas normally I would have got one in two years.

    I strongly believe that's normally the case. Because that's the only way to keep your super-stars within the group. But minimsft is not a forum for such people. It is forum for people who felt unjustice.

    (Oooch.) A deft hand at handling your career with your current boss is always a good idea. I like BizDog's summary of the change best:

    In my opinion this is goodness all around and here's why. Obvious is the benefit to people (ICs and managers alike) who want to change roles - now they can do an informational and have a shot at actually getting to move roles in a reasonable timeframe so they can continue to advance their career while doing great things for the company. Net is lower recruiting costs and higher employee retention - these are good things. But this is also good for managers. It allows you to actually hire strategically for your team AND for people's career advancement which let's face it was difficult to impossible to do before. This also allows a manager to build a truly great team when combined with the new review model. But best of all - ta-dah, yes it shines a glaring spotlight on really bad managers. Why? because they can't hide turnover any more - yep no boat anchoring people until the manager moves on so no one sees what a nightmare they were to work for. Beautiful and bravo. It ups the game on manager accountability and that is something we very much need.

    I think we have the potential before us for some really great managers - and leaders - to start thriving and growing within Microsoft.

    It's the stock price, dummy: MSFTextrememakeover discusses Microsoft's stock recovery.

    Turf-06: As for local blog drama, the spirit of some of the commenters has a new twisty-mix post Company Meeting. I don't mind someone coming along with an opposing or dissenting view. Not at all. That's dialogue. What's bad is that the New Dissention seems focused on boxing previous commenters into a "loser!" box vs. respecting what they've said. I'd like to hear what you have to say without you whipping out the straw man argument or engaging in the tyranny of the "or."

    On the change in the mix, Anon Partner adds:

    You have to wonder why after 1-1.5 years of MiniMSFT, why there is public chastisizing of Mini going on (incl at the eco meeting by LisaB very dramatically).

    The turning point came when people started venting/sharing their review f/b, numbers in relation to partner compensation. That hit low and I think there is a sense of embarrassment in the upper ranks about this. It highlighted the culture at MS in a way that they didn't expect or want. This is why there is a renewed focus on flushing out the readers/posters etc.

    This is communism at its worst.

    I understand LisaB wants to rebuild the trust between leadership and the rank-and-file. I think an upfront discussion of the SPSA program and rank-and-file compensation, if brought up by Microsofties, should be on the top of the list. Chastise me, please, should I stumble into falsehoods. But not for shinning a light and remarking, "whoa, that stinks!"

    On Photosynth:

    The Photosynth tech demo you saw: WAS created by a small team, TOOK less than 4 months. IS going to be shipping in less than a month. HAS something we lack in a lot of other products: COOLNESS and WE have a lot of other cool stuff brewing...

    Wake up mini-blah the mini microsoft that you talk about is growing from within the company.

    and YES I do work for the team that is doing Photosynth.

    The Photosynth demo rocked my world. I wish you guys all the success in the world because if you rock everyone's world you can be instrumental in showing how to get it done and shipped.

    Jürgen Gallmann: this Microsoft resignation has been pretty quiet - what does it mean? Microsoft's top German Juergen Gallmann resigns.

    The Field, revisited: a comment on MCS:

    Having lived in the field for 6 years (first MCS, now sales), I can say that, from my experience, the more negative comments on this thread are the more accurate.

    MCS is the biggest travesty. The comment above from the person who said that "MCS is about selling software and not generating revenue" is just completely out of touch with MCS management. Eespecially the new regime. MCS has strict marching orders under the current regime to be profitable, focus on growing the business (again - UGH!), and stick to big ($500k+) deals. They've gone so far that <2 week deals now require high level sign-off.

    I feel like there's a whole lot more there to discuss, but I'm not sure how best to go forward.

    You Are the Universe: and to close, always this gentle reminder for those of you not super happy with how Microsoft is going for you and able to consider other employers:

    Leaving MS was a difficult decision and if you are risk averse, you will not leave. But if your résumé looks good and you are a solid performer, you should have no problem finding a job, so the risk is really not all that high. Of course, if you have an MS-sponsored work visa, then you don't have much flexibility. For those that do have flexibility, give it a shot: send out your résumé. See what offers you get. Nothing interesting? Stay where you are. But at least know what you're options are. What have you got to lose?

    Indeed! At a lull in your current cycle? Freshen up that resume and shop it around. And if you don't leave, maybe you'll at least find yourself refreshed and recommitted to Microsoft and your career.

    Sunday, October 1, 2006

    Microsoft Internal Transfers Just Got a Whole Lot Easier

    This past week, Microsoft leadership acknowledged a persistent request from its employees: please - please! - make internal transfers easier. Microsoft acted, and now moving around inside of Microsoft is a bit looser and more in favor of the employee. The new policy, to me, comes with a series of curious contingencies, but on the whole, it's a great move and a great acknowledgement to every Microsoftie who has honestly and directly communicated with leadership that our ability to manage our career by efficiently moving within the company had become exceptionally encumbered. It also addresses concerns people have noted here about getting permission to interview and suffering demoralizing lock-in when their manager deigns them too essential to leave (at least the VP now has to step up and go on record for the lock-in - may they feel the cool breeze of future accountability on the back of their neck with every consideration).

    When this was announced, I was at first surprised at how close to the 2006 Company Meeting this change was. Why didn't the HR leadership announce it then? It was on my wish-list. Well, in retrospect, I guess it might have been uncomfortable to hear cheering from the audience regarding the change to easily leave the current group you're sitting with ("Yah! I can get out of my stinkin' group! Oops, I mean, didn't they just mention our team name? Yah, team-name!").

    I think for both Microsoft and you to succeed, strategic movement through-out the company, according to your passions and interest, is the best career-management strategy. The longer you continue doing the same-damn-thing the more likely it is you're going to peak and max-out in your career and start going through career atrophy. Want to have full-spectrum experiences? Move from successful cycle to successful cycle from group to group.

    The first step in all of this is a successful informational. What does that consist of? A few ideas from me:

    • A super career-site posting that easily resonates with the best-fit candidates, or an efficient campus job peer network to find them.
    • A well prepared potential internal-hire that requests an informational and comes ready to sell themselves and learn more about the position and the team.
    • A well prepared hiring manager who can deftly identify candidates who most likely will succeed in the group.

    A lot of people probably go first to the internal career site or subscribe to the internal job aliases. That's alright, but how do you ensure that you find the best fitting job? Sometimes it really relies on how well the job description is written. A much better long-term strategy is to never eat alone at work and to establish strong Microsoft connections now so that you can create your dream job position in the future.

    I know we have an internal resume service but I've never used it. Does it work well? It seems at this point it would be ideal to have internal recruiters who see internally the bastion of employees interested in broadening their career by working in a new team and letting those internal recruiters aggressively go to it. In fact, I'd say that the reward for an internal hire should be twice that of an external hire. In this case, there's a lot less overhead for the hiring and it represents efficient rebalancing within the company. I know, I know, you start having people game the system and jumping from group to group. I guess the gaggle of contingencies in the new policy I was griping about above address that so that we don't end up with Enron career games.

    As for the informational, both sides have to be prepared. When I was looking for a new position, I had great informationals that ended up taking up an entire afternoon and I had at least one exceptionally poor informational. I put the blame of the poor informational squarely at my own feet because I was unprepared and only mildly interested and knowledgeable about the group. I sucked. And I would have only had myself to blame if that had been my dream job or super career opportunity.

    As part of getting ready to do requests for informationals, do you prepare a resume? It can't hurt and it does serve as an introduction and a way for the hiring manager to ask more directed questions. You should update your resume once a year anyway, especially after your review or after shipping. That way, your resume is always fresh and ready to shop around should you want to test the vibrant external Microsoft waters. In Redmond there are some exceptionally knowledgeable ex-Microsofties over at JobSyntax to help you spruce your resume up or even prep.

    Then you start asking yourself questions like: in thirty minutes or so, how do I sell myself and learn if this the position and group I might be interested in? How do I close the loop on the informational so that there's a clear direction going forward at the end?

    Do your homework. Know the group. If it's a product group, for instance, use their product and describe your take on it and a vision you see for it going forward. What's your passion? How does it align with this group? Show that you're looking forward and engaged and not just desperately looking to abandon a burning, sinking ship and/or a cycle of bad reviews. Talk up the positive aspects of your current group given that it shows the wisdom and IQ you'd be bringing with you. Talk about your long-term plans: do you want to be a Development Manager or such? A Distinguished Engineer? Sorry, but you've got to sell yourself and your future. And maybe somehow figure out how the group's poll numbers are and what recent attrition has been like so that you can have some assurance that it's a healthy group.

    At the end of the informational, if you're interested, get a commitment regarding the next steps and show that you're open for a one-off interview (especially if you're crossing disciplines) to ensure an interview loop would be an effective next step.

    If you're a hiring manager... well... sorry, I got mentally distracted thinking about the whole Mini-Microsoft thing and wanting to scale-down through cuts and attrition and how hiring just seems to exceptionally wrong at this point. Anyway, I guess it's better to hire from within and rebalance vs. bringing more new people in. Okay, so if you're a hiring manager, your work is cut out for you. Now's the best time, though, to look for internal candidates: the reviews are over and major product groups and getting ready to ship. Everything is in flux and now we have this sweet new internal transfer policy.

    You've got to pound the streets. Or at least the websites and conference rooms. How does a job get filled if no-one knows it exists, let alone if the ideal candidate doesn't know it exists? Are you just relying on the internal career website? That seems pretty limiting. Again, you've got to create opportunity to hire people by engaging in presence and connections within Microsoft.

    So: transferring within Microsoft. What strategies work well for people out there?


    Thursday, September 28, 2006

    Rebuilding Microsoft in Wired Magazine

    Over nine years ago, Wired magazine ran a front-page cover article about Apple. Specifically, how Apple was on the verge of collapse, needed some hard praying, and perhaps needed to take a dose of the 101 ways to save Apple. It's quite the nostalgic read.

    And the cover was precious:

    Okay, I know it's asking too much for folks to get down and pray for Microsoft's resurgence, though I'm sure there are more than a few shareholders putting in a load of prayers for the stock price.

    The most recent Wired, 14.10, has the article Rebuilding Microsoft by Fred Vogelstein. It's like the winds of change blowing over a turning tide. Mr. Vogelstein's article is looking past the reports of employee moral and issues with bureaucracy and review model curves and focuses on what path Microsoft is on to get out of the innovator's rut and back into the competitive game. And Live services and Mr. Ozzie are front-line-and-center.

    Mr. Barr has a take on Ray Ozzie's Company Meeting talk, the future of Windows Live, and this Wired article, too (yeah, there are a couple of boo-boos in the article).

    What's interesting to me about this article in Wired - which I put down as a tech-community influencer magazine - is that it's a public acknowledgement that Microsoft is perhaps turning it around (I can hear the bubbling sounds from Slashdotters frothing mouths about now). Now, we'll probably not admit we had a problem to be turned-around until we're smack-dab in the middle of the solution, but I find a take like this encouraging. I still believe there's a lot of work, and if Mr. Ozzie ends up equipping us with a 21st century super-duper sports-engine, I think it's still important to ensure our Microsoft Coupe doesn't have four-flat tires to go with it.

    For instance: with all the organizational flattening going on, I'd like to see a return to the celebration of the individual contributor. You shouldn't have to decide you're going to leave a path of blood to reach Partner-level in order to be a success at Microsoft. Let's get back to empowering the front-line folks with decision making and when they make fantastic decisions shower them with rewards and kudos. I'd like to hear less about the no-doubt Partner-level employees joining Microsoft as strategic acquisitions and how Microsoft internally is aggressively developing talented, entrepreneurially groups and people. Super stars should come from within and be celebrated by the internal and external community. And that's a hot recruitment story.

    The fact that is not happening is a flat, blown-out tire.

    Sunday, September 24, 2006

    Beyond Redmond Product Groups

    Time for a copy-and-paste job looking at one theme of comments: work life at Microsoft beyond the Redmond Product Groups. I'm interested in learning more about parts of Microsoft that I don't have much interaction with and what challenges exist in those parts. Maybe you are, too.

    It's no surprise to folks out there: I don't work in the field. I was supe- er - especially excited when MSFT in the Field blog popped up because I was looking forward to learning about the trials and tribulations folks in the field have to go through, mainly because I wanted to know, as someone not in the field, what I can do to help them win. Because when they win, we win.

    There's a disconnect, at least in my world, between the groups creating the software and the folks taking on Microsoft's competition (or working within the wonderful world of coopetition) one-on-one. If a deal falls through, why? How does the feedback get to me? The only time I see such feedback is usually a high-exclam email explaining how an entire deal is at risk unless some unimplemented feature can easily be worked around. Usually the response is, "Sorry, you're screwed."

    Additionally, if certain shipping features are knock-outs and helping to blow away the competition, please let me know, because I might unknowingly deprecate them in the next version to do something else.

    A request in a comment looking for more discussion of Microsoft beyond the Product Group:

    Mini - how about spending a post or two getting feedback and exploring other problem areas of Microsoft outside of HQ?

    I'm thinking specifically of MCS (Consulting Services) - over 1,200 U.S. and 2,000+ worldwide. I left the group because of extremely dysfunctional management, bullying, sleazy engagement managers, arrogant architects, brutal travel, and a law-firm mentality of billable utilization to the point of fraud.

    To prevent a mass exodus former peers say there's an unwritten policy where there's a 3-6 month period when a consultant CAN'T leave for another internal position, effectively locking them into the MCS org.

    I was lucky getting out but suffered an ass-whupping of a review. I'd never go back, and the only reason I stayed was the pride associated with working for Microsoft.

    Goodness. A follow-up comment from a now Ex-Microsoftie:

    I've been in services since my entry into MS, and I more or less agree with this comment, but not all of it. In my former org. at least, EM's are doing basically their jobs, which is selling services. They have quotas to fulfill, and they do what they need to get this done. I must say that my former position was NOT an EM, but you can’t blame salespeople for behaving like salespeople and trying to make their numbers.

    I totally agree with sleazy management. In my case, they managed to grow the org by more that 100% in three years. What’s interesting about this is that we went from being around 50 consultants (the ones that actually bill stuff) and 10 managers/pseudo sales guys/admin staff, to being around 60 consultants and a whooping 45-50 non-consulting staff and 2 additional managerial levels. Not to mention filling most of these managerial boxes mostly with cronies from outside who didn’t know their arse from a consulting engagement, not to mention real consulting work. That and turning the workplace from a great place to work and a great team where could discuss any problem openly and respectfully, into a political arena where CYA and sucking up to the higher ups and HHRR is the norm.

    After all that, I still think that MS is a great company (otherwise I wouldn’t be reading this blog right?), but I have to put my family and career first. That’s why I took a job elsewhere, and you know what? It wasn’t really hard to find something I liked (MS like company without the bullsh...)

    Another proclaimed ex-Microsoftie:

    4 years in services, 1 year in sales, now left the company. Services went from dynamic, innovation and customer focused to bureaucratic, utilization driven and internally focused after Mike Sinneck took over and remained so after he left. Thanks Mike for creating a little mini-IBM GS and populating it with your former colleagues.

    The hallmarks of my MSO experience were weak management, self promoting behaviour and back-stabbing by "peers." It's such a great feeling to trust someone on your team only to find they have pre-empted all of your work and already claimed credit for it...before you even finished...and management had already rewarded them for it.

    I also saw a lot of victories claimed when nothing of value had actually been delivered, pronouncements which were picked up by the sales/marketing management and praised, on at least one occasion, as "role model behaviour."

    I'm in a smaller, more dynamic company now, making more money for far less stress.

    Another broad follow-up comment from the field that is great to end with because it has some positive thumbs-up for soon-to-be-released (when?) products:

    Notes from the field ...


    General feedback I'm getting on reviews is not bad to good. I'm hearing way fewer "I got screwed" than I did under the old system.

    Vista RC1 looks good, but I agree with one of the previous posters that called it a misnamed beta. The Sept EDW should release this week - I don't remember the exact numbers, but the fixed bug count is HUGE, with tons more planned for RTM. This isn't your daddy's RC ...

    More less than positive news on the Vista front - the number of machines some of our customers have that can't run Vista is much higher than some people estimated. I'm not sure Vista is compelling enough to drive large upgrades on desktops. I can't imagine a public company not requiring Vista + bitlocker on laptops, particularly given the inability of high-paid consultants to order coffee and not lose their laptops ...

    Kudos to the Office 2007 team. Not quite there yet, but Office has some killer new features. The new version of SharePoint and the addition of Excel Services and Forms Services rock the server side too! The new interface has a learning curve, but once you get used to it, it's hard to go back. Nicely done!

    Exchange 12 or MSIT's implementation thereof has a ways to go. I'm one of the lucky ones that gets to dogfood E12 - I truly understand the meaning of dogfooding now. Just doing my part for the greater good.

    Stock is moving up ... babies need a college education. Steve - if you're reading, please don't say anything to the street. Take a page from Bill's book and pay someone smarter than you to do it. It's not one of your core competencies.

    SQL Server rocks! Lots of wins against Orifice. 64 bit, dual-core servers with loads of memory allow SQL Server to do some *amazing* things. With AMD's quad-core just around the corner and ram prices continuing to fall, it only gets better.

    .NET 3.0 (aka WinFX, Indigo, Avalon, et al) is generating a lot of buzz. Windows Workflow is getting a lot of attention and I've seen some incredible WPF prototypes. Does anybody get Cardspace (or whatever we're calling it today)? Ruby on Rails is cool and can do some things really well, but it's not even in the same league as .NET 3.0, particularly from a versatility standpoint.

    Q1 is almost over - if we meet or exceed our sales target, and Vista and Office don't slip again, we could see $30 for Christmas ... I guarantee morale will increase as the stock crosses $30.

    Getting bonus and stock vesting in a two week period didn't suck. With 4 grants maturing next year, it becomes a non-trivial event. In general, morale in the field seems up. Either that or the happy pills really do work ...

    Congrats to the Fun in the Sun winners. I hear Hawaii was excellent. Now get back to work and close some Q1 business!

    re: some of the MCS comments. It seems that things are better in general, but there are still some practices (or subsets) that suck. MCS lost a *lot* of talent over the last 5 years. Some internal, but a lot left the company. Services is a big business - it's real money now - amatuer hour is over. The days of being a boutique consultancy are gone. Someone needs to step up and drive the business. Sadly, we probably need to go to IBM, EDS, or one of the Big 4 to find that person (that worked so well last time ... NOT).

    As for the hiring binge, there aren't many open field positions outside of services and we're stretched really thin. Maybe we could get some of that headcount reallocated?

    Mini - thanks for inspiring people to be positive. As bad as Microsoft can be at times, it sucks *WAY* less than most of the rest of the world (that's no reason not to continue to push for improvements, just a dose of reality for the grass is greener crowd).

    Just a peek. Are there serious problems out there and are they being addressed? I'd love to know more. For my day job, I'd especially like advice on figuring out how to be in the loop with the field directly and hear from them how things are going and how we could do a better job based on competitive reality vs. our current persona-puppet theater.