Monday, December 29, 2008

No Layoffs at Microsoft, and a Round-up of other Recent Comments

NO LAYOFFS: first, I think it's fair to give some time to comments in the last post that wanted to absolutely dismiss any sort of Microsoft layoff rumor, starting off from one from 12/28/2008 (various comments edited to be condensed a bit):

NO LAYOFFS @microsoft

Yes, Executives are looking for measures to cut cost. And that can be done without any layoffs. Current hiring rate is slow at MS and considering the natural attrition, we will have lesser workforce at the end of FY09.

We are not immune to recession and our bottom line will see a hit for few quarters. We expect a full recovery by FY10 Q3. We are very optimistic that this recession is an opportunity for us and we will play our cards well. Urge all Microsoft employees to stay focus and keep doing the great work. You will hear more from SteveB soon on his plans. Thank you !!

and another from 12/27/2008:

For the last time folks -- THERE ARE NO LAYOFFS HAPPENINGS IN JANUARY..[...] beyond Jan...well we dont have a crystal ball -- but if the economy doesnt improve and the company misses targets -- it would get uglier for everyone -- from no raises/no bonuses to {maybe}cutbacks/layoffs... but then, those are the rules of the game in corporate America..

so for now -- enjoy your holidays, have a new year blast and then get back and work your ass off in the coming months --- for the overwhleming majority of you there -- things would be just fine!!!! PLEASE DONT PANIC!

From 12/23/2008, a more likely scenario that feels like a layoff but gives corporate cover:

MS will not do straight layoff. It will re-org, and cut groups/projects. Say 2000 FTE are given 4 weeks to land a new job within MS, I bet 1500 will find nothing and will be forced to leave. So no layoff, let's call it "reorg-off" and MS can even save layoff package.

In-line with that, from 12/21/2008, bringing up an interesting point about H1Bs:

[T]his company simply could not go through a round of layoff (mind you I did not say a RIF, as we've all seen those) but the H1-B rules would force all of the cheap labor to be shown the door first, regardless of ranking. And Microsoft lives for ranking. Microsoft wakes up in the morning and get an enormous boner over rankings. So don't suggest for a second that there is some dismal, far reaching lay off coming down the river. Microsoft would never give up the chance to use selecting RIF'ing to demote the lowly ranked. If anything there will be selective investments, as has been stated time and time again. But no, Microsoft will not be showing the H1-B employees the door. Never going to happen, in my opinion.

When is a layoff not a layoff: which teams are at risk to re-orgs / cut-backs / RIF'ing? This comment from 12/29/2008 talks about Entertainment and Devices:

We (E&D management) had a meeting with Ballmer around eight-weeks ago. Ballmer discussed the GE approach to laying off the bottom 10% every year. When asked how Wall Street would respond to our layoffs, he said they would be happy.

We will be handing out a list of names to teams within E&D. This list will contain the 20% / Exceeded from the last review period. Teams will cherry pick who they want.

The original plan was to announce the layoff prior to Christmas. When we notified the [governor], we were asked to hold off until after the holidays.

Other things going on (from 12/27/2008):

  1. Several big customers have not renewed SAs. This isn't just Vista, but also Exchange and other major revenue-generating products. Several contracts are going from being in the top-5 to zero. 2009 Q1 and Q2 are going to be horrific.
  2. The whole worldwide economy is in a major slump. Toyota is losing money, for crying out loud. Microsoft leadership is working very hard to avoid mass layoffs -- unlike many other software companies that are cutting even if they don't have to. There's lots of creative thinking going into finding ways to cut costs without harming employees.
  3. One of the more likely solutions to be employed is no bonuses in 2009 reviews. What are you going to do, quit?
  4. Hiring is way, way down. Except for a scattered few positions here and there (SQL Server, Live Services, Search, etc.), Microsoft has almost no openings for external hires.

From 12/24/2008:

One of the "rumors" I've heard around the watercooler is that we are looking at a 10% layoff, and part of those heads will come from the open headcount that is out there.

I'm on one of the teams that are still caught in the middle of a re-org that keeps getting postponed and our Director has told his direct reports to start looking for other positions. Outside of that, nothing has funneled down to the individual teams.

Contractors are being dropped (from 12/22/2008):

I have been asked to let go of two of my contractors end of the month even though they have a month remaining in their contracts. Funny because on Dec 1 we were talking of renewing their contracts. Something big seems to have happened in the past couple of weeks, I suppose. However I still see our Director of Development hanging on in the team despite having no work. He was removed from the team about 6 weeks back and has no one reporting to him or no say in the product.

Regarding what's going on the the Field (12/22/2008):

Thanks to the wonderful mergers in the financial world…Technical Account Managers at Merrill Lynch, Wachovia, and Morgan Stanley were kicked out of those accounts. In central region the automakers basically kicked every Microsoft rep/engineer/consulting out till Mid 2009.

And let’s talk about the rest of the field…ya know the people who support our customers and our products….people in Premier/Consulting/DPE. As our customers are cutting back our PFEs and consulting FTE’s have been forced to fight with each other on getting meager engagements with customers. Services management was talking as recently as August about hiring upwards of 2000 in FY08.

Now with so many people sitting on the bench and not engaged at customers…is it the fault of the services employees or Corp’s fault for over hiring? There have been several internal calls within the last week where RIF planning was discussed.

Comment from 12/22/2008 regarding Microsoft Advertising:

Rumor confirmed from Microsoft Advertising. There are several areas within the organization that I can confirm an upcoming "reorg." Leaders of undisclosed groups have been asked to represent materials around their groups' long term plans and feasibility. I think this one is going to be big, hopefully they just cut the fat. There is plenty of it from my experience.

On cost-cutting:

Groups everywhere are being forced to cut costs - but good thing the Zune guys had a nice holiday party. At least they're profitable so they can cover the costs... oh wait. Probably cost as much as the annual salary of a couple L60-61s

And to the commenter about Robbie's group being on a hiring freeze for awhile - true, but the only reason they got there is because of "crazy hiring"... 800+ people in Zune alone?

Teams not at risk? Office seems to be at the top of that pile. OfficeGuy writes on 12/29/2008:

Layoffs: Office and Windows are unlikely to reorg/lay people off in the near future and are [relatively] safe - we need to ship a high quality product soon (and we will this time, no doubt), so losing even the bottom 10% or whatever could have a negative effect on these two cash cows (and it is too late to replace the fat with new blood this late in the cycle). Having spent a few years in Office I can say that this org is huge but I haven't seen real slackers or dumb useless people (maybe I'm just lucky). By looking at my team that has a lot of junior developers/college hires, I'd hate to lose even the bottom 10% - all these folks do try hard and the team is really respectable in Office.

Office again (from 12/22/2008):

College recruiting (at least in Office) is still firing on all cylinders - managers are being told that there will be a seat ready for every great college candidate we want to hire. The pool of highly qualified grads desperate for a job is as deep as it's ever been in recent years.

So if that is true, I'm skeptical that MSFT will announce anything that even remotely sounds like layoffs. Can you imagine the lawsuits if people are ushered out one door with a pink slip while fresh college grads walk in the other door?

Instead we'll see tightening of performance standards and aggressive managing-out of the low performers. The last thing anyone is going to call it is "layoffs"...

One commenter from 12/22/2008 warns:

Don't assume that firing 10%'ers == 10% cost cutting - it doesn't. To reduce salary costs approx 10% requires cuts into the bottom of the 70% bucket too.

January 15th: so do I think anything is going to happen January 15th? Well, it is after CES (we certainly don't want any bad news before that - though look carefully at the groups there and not there) and before quarterly results (no bad surprises delivered with results - check). But after the rather alarming attention the previous rumor-driven post got, even if something was going to happen January 15th I'd completely expect that's off the table now. Sorry, Oppenheimer & Co.

Gossip Grrrls: did I hear any solid facts during all the snow parties I slushed around at during the Christmas holidays? Nope. Just still a bunch of second hand rumors, probably filtered through people's own agendas and likes and dislikes. Stuff like:

  • Pffft, layoffs, come on! That jerk-ass blogger. Don't-worry-about-it, it's just the loss of open headcount and no backfill for attrition.
  • It's not just the bottom 10% being moved on but also folks in the lower Achieved/70% range (like people who worked themselves up from 10% or are on the way down to 10%). A commenter above had the same observation.
  • Some products and some teams are just gone.
  • Note that we've read a lot of comments about Entertainment and Devices and Server and Tools. All the gossip I hear swirls around them.
  • Prototype, redundant, and pie-in-the-sky teams are going to be re-org'd into everyday meat-and-potato teams. We're going to have a bunch of spare code names soon.
  • It's a layoff masked as rhythm-of-business reorganization plus performance management plus Not To Exceed staffing budgets being strictly enforced.

That last point is interesting around labor laws that I don't begin to know anything about, laws like when a layoff comes that the H1B hires are supposed to be the first to be let go and the Working Adjustment and Retraining Act one commenter brought up. If this is a stealth layoff due to a lot of RIF'ing and those people leave because there are no matching open positions, does Microsoft have legal cover against this being an honest to goodness "layoff?"

I think a requirement like having to shed all the H1B hires absolutely nullifies Microsoft doing a classic layoff. We just wouldn't let go of those people.

Oh, and in closing, the following question came in with a comment from 12/27/2008:

Mini - the entire premise of your blog is that MSFT needs to reduce in size, be more efficient, be more cost-effective. While the reason is not the ideal one (forced upon MSFT by outside economy, rather than developed as part of smart strategy), the end result will be the same. If MSFT is a capable company at its core at all, it will survive, evolve and thrive.

If there truly is a round of layoffs, and MSFT ends up becoming the leaner, meaner, smarter, more innovative company you wanted... shouldn't you be ecstatic?

It's a pretty tempered ecstasy. Yes, I want a smaller Microsoft because I believe that Microsoft has exploded in size for no good reason. Going back to 2004. Even with the continued hiring binge since I started this blog, I had a small glimmer of hope that reason would be seen and discipline enacted to hire a limited set of high caliber contributors - and flush out the employees who are better suited working elsewhere. That never happened. And now we're in a, "golly-gee-wilikers the cash ain't coming in like it was and we've done gone and hired all these people! Yeep! How'd that happen?!?" mode.

In a year, when this all passes, we'll be back to hiring like crazy, learning nothing. Unless the leaders at Microsoft that run tight, well managed organizations can step up during this time and flush out the binge-hirers. There's my little glimmer.

(Edit: put in links to the appropriate sources for the comments I quoted above.)


Sunday, December 21, 2008

Rumors of Upcoming Microsoft Cut-Backs

Rumors. Microsoft layoff and cut-backs and Reduction In Force rumors. That's all I have for you. Rumors and second-hand speculation and the comments left by the fine, good-looking folks who participate in the conversation here. So pour yourself some holiday cheer and dive in.

What have those fine folks been sharing over the past couple of posts here? Bad news on the rise and with perhaps January 15th 2009 as an interesting day for Microsoft news. Bad news. 15 Jan is a week before FY09Q2 quarterly results and it's better to share as much news, good and bad, before the results are released vs. surprising Wall Street (something I think we've learned).

It all starts with...

Just heard on the finance grapevine. MSFT layoffs are coming on January 15th.

They are substantial.

And then some curious meetings:

they lost 12 people in STB [...] looks like "feedback" reviews are underway to get the a-10's out of the picture as well.

What kind of meeting? Perhaps like:

I got invited into one of those special "manager" meetings on thursday which resolved to absolutely zero activity other than asking opaque questions for which the answer was already known.

"fact" finding in order to dismiss an argument OR dismiss me :)

shall find out 1/15

In Live Meeting:

Live Meeting is one of the worst places to be right now - and it has gotten downright hostile and strange in recent times. People are pulled into meetings with management where they get interrogated about what they are working on ("We want to hear what you think you know about XYZ, this is not a knowledge-sharing session..."), people are given impossible tasks like coding things not yet designed, automating things not get coded, documenting unfinished ideas (all subject to being cut next week too). On top of that they must account for their time by the hour. Live Meeting is in its death throes.

Breaking-up when you have no budget is another tactic (in STB):

Our 120+ person org has just been broken up due to lack of budget. About 1/2 the team is staying, the other half is going to a number of different teams within the larger org. So far, we all appear to have jobs, but man, what a shocker, I thought ours was one of the more stable teams.

Not sure what happens to our Director, he seemed a bit shocked himself when he delivered the news today. I also don't know if this is the first step towards a lay-off, but for now, it seems we'll have jobs for a few more months.

Ugh, not good, not good at all.

STB again:

I got pulled into a lunch 2:1 today and got given good news on "you have 4 weeks left"

STB - > Server

Rumors! Like the following that I've heard wandering around chatting with folks before the holidays:

I've been hearing some stealth layoffs around the SQL and BOSG groups, around 70+ people were given 6(?) weeks to find another position within the company, otherwise they are laid off.

Anyone know others?

Is the following a list of head-count cuts or expected percent cuts?

  • 3 in omps
  • 9 in stb
  • 12 in msd
  • 7 in devdiv
  • 18 in UA
  • 5 in MSX

Beyond product groups:

Finance is cutting 10% of work force.

I will agree that we'll be casting a hard eye at consistent 10%-ers during MYCD:

If you have to 10% an employee who was in this bucket last review you may well find yourself showing them the door. This means that we can meet VP goals of no lay-offs (we are pruning poor performers) yet be seen to be reducing OE

But who is taking the cut?

The news is in. All the money making groups cut 10% of the work force. The money losing groups hires.

Vendors get it, too:

Vendors are also having it bad. The funding for our project stopped and our vendor team of 28 people have been asked to leave immediately. All of us have been asked to move to India by our parent company. [...]

Who should be taking a cut? One commenter points to GFS:

Do you know who was killing Microsoft economically from past several years- think think think? Being one of the 65 level in this organization and spending most of my career here - I can tell you that this group was living lavish life from past many years (thank god – we have some economic crisis now and people are asking some tough questions from the managers here). I know many of you have already guessed and you are right - this group is called "GFS - Global Foundation Service" and DebraC is leading this group. (Did I use the word leading?) If you want to know how capable she is to lead this group, I encourage you to watch her latest all hands streaming that you can find on MSW. [...] There are billions of dollars hardware purchased every year across this group without any planning and I can assure you that 50% of them are not even used or required at first place. Most of the hiring in this group is not for getting things done or being innovative in datacenter world but each manager here trying to build their own empire by just hiring whether they really need it or not.

Local impact? One commenter muses:

As someone whose product was recently whacked, I sure hope there are some RIFs before there are out-and-out layouts (at least in my area!) Scary... 'cause in this climate, it's going to be darn tough on the economy to dump a bunch of talented folks to the curb and have them competing for slim pickings out in the rest of the world. The ripple effect on the Puget Sound economy alone (assuming the layoffs are substantially here) would be staggering. :-(

Okay. So first I'd love to hear what you have heard or know as well, though I realize some of you might want to stir the pot with made-up fluff sprinkled with schaedenfruede - please don't.

Second: you have to realize that the upcoming 2009 Mid Year Career Discussion review process is one of the most important career inflection-points for you that we've had in a long, long time. Already my team is being asked to review people on the HR Watch List deeply and especially look at any two-time-plus 10%'s, no matter whether they are Situation I (eh, should be fired) or Situation II (effective but have reached their career maximum - again, a horrible, horrible concept). The upcoming Stack Rank for Mid-Year is going to be super-important for determining who has to go first if your team is given an n-percent budget to cut-back on. And yes, if we fire the current 10%'ers we drop down the lower 70%'ers into the 10% bucket. So just because you don't end up in the 10% bucket don't get all happy about yourself unless you're well into a high Achieved / high 70% bucket.

My suggestion to you: know when your team's Stack Rank (aka Calibration) meeting is and be very aggressive about enumerating your accomplishments this past year with your manager and asking your boss where they believe you rank within the team. Hey, I hate this system too, folks, and by me giving you advice I'm trying to prescribe some preventative medicine, not endorse the lifeboat drill that is Stack Ranking. And if you have Skip Level meetings with your upper management, you'd better figure a way that you walk out of that room with them loving you.

And if you get your six weeks, you're going to have to depend on your existing Microsoft networks. Folks I know with open positions have really ratcheted up their choosiness about who they want to bring into their group and are exceptionally uninterested in unknown RIF'ed people wanting informationals, assuming that they are 10%-ers.

Third: let's say we are having intensive cutbacks and/or RIFs and layoffs. It is absolutely essential that Microsoft steps back and asks, "Whoa, how did we get here and who was leading us?" How did we go on a drunken hiring binge and continue it even though a year ago most of us realized we were dropping into a recession? It's irresponsible leadership. It's especially irresponsible to the people we've hired and to the people incoming with recent offers. If you don't think too deeply, it's easy to be sipping on your Starbucks in Crossroads Mall typing away at how Microsoft needs to mass fire people so that it can refocus on essential business. But when you do it at a time when the economy is in the crapper and job openings at Microsoft is near nil is unforgivable.

An important consequence is to ensure we never do this again. The first step is to cut out the people who got us here, especially by making weak hires. Everytime someone who you said "Hire" to on an interview loop gets a 10% review your ranking on hiring goes down. If they become good attrition you get dropped from interviewing. You obviously aren't a very good judge when it comes to hiring for Microsoft. Likewise, if you said "No" to someone with a bad review or "Yes" to a star performer, your ranking goes up. And all of this is made very clear to you, versus you wondering one day, "Hey, how come I haven't been on an interview loop in a while?"

Next, if you've been in the way of quickly load balancing within your division according to needs vs. empire building: *poof* you're either gone or demoted.

Come 22 Jan 2009 Microsoft will be asked by the analysts what it is doing to contain costs. And I believe Microsoft will have an answer. I think this is one solution that you don't want to be a part of. I'm all for cutting back, but it should have been done long ago, responsibly, vs. forced upon us. Because I believe when things turn around, groups will be lighting the sparklers and cracking open the Kristal and hiring madly again.

(Edit #2: added links to all the comments I quoted so that readers - especially first time visitors - understand the source material. Edit #1: fixed a double paste.)


Tuesday, December 16, 2008

Supply Chain Management in Dynamics AX - a new Microsoft blog

For quite some time now, the MDCC (Microsoft Development Center Copenhagen) team has been nurturing the idea of launching our own blog about the Supply Chain Management area in Microsoft Dynamics AX.

And yesterday, it finally happened!
We posted the first article about Quality Management upgrade process for TQM solution (by Fullscope) users.

http://blogs.msdn.com/DynamicsAxSCM
http://blogs.msdn.com/DynamicsAxSCM

I recommend all of you to add this link to your favorites, as we plan to post on a regular basis, and about things important to all of you. That said, I would like to invite all of you to post article ideas or questions related to Microsoft Dynamics AX SCM modules as comments to this message or directly on the SCM blog. We, in turn, will try to cover those in our blog posts.

Thursday, December 11, 2008

Tool for protecting your Dynamics AX source code

"Is there a way to protect/hide my X++ code?"
People asked me this question a million times by now.

To most of them, I described 2 possible ways to go, that I know of:
- Do not share the source code, but instead provide the customers with an AOD file.
- Use a tool that would produce obfuscated code out of your modifications.

Both ways are not perfect, of course. If you provide the code as an AOD file, you need to be sure that the customer does not have X++ license. If you provide obfuscated code, the customer developers (if they are present) will have a hard time interacting with your code. And, eventually, both ways leave the customer at a disadvantage. As soon as the vendor is not there to support (provide fixes in terms of an updated AOD file or XPO with obfuscated code) them for whatever reason, the customer has no way of supporting the add-on solution on their own.

But this post is not about the cons of trying to protect your code.
It's about the possibilities. Today, finally, I can support my previous suggestion #2 with an actual link to such a tool: Next Innovation Code Scrambler Homepage

Here is a screenshot of how the code looks after Code Scrambler is finished with it:


Note, that the tool is not free, and I have not actually tried it out.
But there is a sample project showing the resulting scrambled code. You can download it for a first impression, and contact the company if you are interested in the tool.

Another note - this is not an advertisement, I am not in any way related to Next Innovation Company.

Thursday, November 20, 2008

Personal Experiences with Live Mesh

This post is not going to be about Dynamics AX. It will be about a software product I was thrilled by so much I would like to share it with all of you.

I won't post a detailed description of the product here. You can read that yourself at www.mesh.com. But here is a brief introduction, just to give you a basic idea of what the software can bring into your life.

WHAT IS LIVE MESH?

With Live Mesh, you can synchronize files with all of your PCs (and soon your WM6 phone and Mac as well), so you always have the latest versions handy. Access your files from any device or from the web, easily share them with others, and get notified whenever someone changes a file. Working on one computer, but need a program from another? No problem. Use Live Mesh to connect to your other computer and access its desktop as if you were sitting right in front of it.

Here is a screenshot of the web interface for managing your devices in the mesh:


What I would like to share with you is the personal experiences I had using this software for a month now. In 1 word - fantastic. Live Mesh is still in Beta, but already I can tell you - simplicity is the word. You set it up (takes 5 minutes and is very simple, all you need is a LiveID, which I hope all of you already have). And that's it, you are done. And from then on - it just works. Great!

And here are 2 screenshots of how I use Live Mesh in my everyday life.
Obviously, I have all of my computers meshed, available to me when I need them (they need to be turned on, and have access to internet, of course).



And so far I have 4 folders in the mesh, and I would like to discuss each of them separately:


Personal - I store a backup of my personal data in this folder, which is synced across all my PCs, so that I have it at hand in case I need it. Plus, I have my Personal OneNote workbook in there, with all info I need.
Favorites - Favorites are not synced accross all my PCs, providing the same list on all of them in IE. This is great. This was a feature most of the browsers tried to implement throughout multiple releases. And here it is, as easy as it gets. Any time I bookmark a page, all my other browsers get this page bookmarked as well.
Incoming - this is the folder for file transfer between PCs. Now I don't have to send it to my e-mail every time I need a document scan or something. And, I invite other people as members of this folder, sharing pictures and other documents with them. That easy. And, they get updates every time I add a file, without me having to notify them.
Work - This is my work folder, which I don't sync to my home PC (you can see it is a ghost folder on the screenshot). Any file I work on is automatically synced between my work PCs, so I have an up to date file any time I access it. Extremely efficient.

Well, that's about it. Now, all you have to do is go and try it out yourself.
Have fun!

Saturday, November 15, 2008

Achieving Senior Level 63 at Microsoft

I want to share some of my thoughts about succeeding at Microsoft and reaching Level 63, the Senior contributor level at Microsoft. Given that quite a few Microsofties are going to find themselves locked into their current group for a while, the ability to succeed by swinging on the vines to a new group is going to be rare. Within the comments, I hope to elicit advice that follows up on what I start here, and maybe even contradicts it. I'm interested in hearing your stories of success, mentorship, and turning a career that was off-path back on-track. For the folks on the path to L63, I want you to first understand your boss's opinion of you, your opinion of yourself, what it takes to succeed in your team, and then ways you can step up and be on the right path.

Let's Hear it for the Boy! Let's Hear it for the Girl! If you reach L63 during your time at Microsoft, especially if you started at L60 or below, you should celebrate. Here's to you! What an achievement! You have the right stuff to succeed and Microsoft is very happy with you.

L63 is very much an important milestone, and in tough-hiring times like these the following question has never been more important: "Will <<fill in the blank>> reach Level 63 during their career?"

If you're not there yet and your boss was asked that question by your skip-level-boss, what is your boss's answer?

Unless you know for sure that your boss's answer is an immediate "Absolutely!" you need to hit the pause button for one big time-out regarding where you are, where you're going, and what needs to change. And I'm going to tell you right now, I'm 99.9% sure what needs to change is you. Because, except on the rare occasion, Microsoft and your team isn't going to change.

Up until L63, you can pretty continue to be promoted based on raw talent to get things done smartly and efficiently. Things get thrown your way and you knock each and everyone of the challenges out of the park. Then perhaps you're stuck at L62. What got you here ain't gonna get you there. What now?

Think Locally: remember three years back when we talked about the book Corporate Confidential? It's a good time to flip back through that. One of the key lessons is to know who is the gate keeper for your career. Pop quiz: who is it? Think about it. Ready? Let's compare answers... answer is: your boss. Your lead. The person who puts you up for promotion and has promotion conversations with your skip level. It's a question your boss gets asked so it's not a surprise to them. Your boss should already have about a year-long plan about who on the team is getting promoted when - it's essential for team promotion budget planning. And when the time comes, putting you up for a promotion to L63 is the first time your boss will be challenged by your skip-level and by your Aunt and Uncles (your boss's peers) about one of your promotions. It's hard for L63. Harder for L64. And a knife-fight for L65 (some other day). They will have thought this out.

If you're saying "Ah, dude, my boss is in the way of my promotion" then all I have to say is "Duuuude, your boss is the way to your promotion." Perhaps someone can explain to me how you get successfully promoted without your boss's support.

So honestly, what is your boss's answer about if you'll reach L63? If it is "Absolutely!" then the follow-up is: after what accomplishments and around when?

Your Recently Promoted L63 Peers: let's say you have at least one peer that in the past year or so has been promoted to L63. Why? Do you know why? Specifically, what did they accomplish, and what contributions do you see them doing to justify their promotion? Write it down in a team-culture career section you keep in OneNote (start that section now if you don't have it).

Now read over your answer. If you're going into that comfort zone of complaining about politics and butt-kissing and favorites, do me this favor: hold your right palm up, nice and flat like you're about to be sworn in to testify in a trial, and now extend your right arm out nice and wide, and then quickly swing your right arm around the front of you in a nice arc that ends with the flat of your right hand quickly connecting to the left side of your face for a hard, resounding slap. Repeat. Alternate to your left hand appropriately when tired. Continue to do so until you've slapped yourself silly to the point that you're not complaining about how other folks must just be connected or political or adept at the finer art of buttock tongue massage. Excuses and griping and bemoaning aren't the stuff that L63 contributors are made of. So either keep slapping yourself or choose to wake up. Until you can be honest with yourself (and it's not fun, trust me) you will be stuck doing what you're doing and your complaining will be the glue keeping you there.

Turn (it) Around, Bright Eyes: every now and then I get a little bit thrilled when someone joins the team straight out of school (or with a little industry experience) and after a few months it's obvious that Microsoft is the best company for them. They just plain resonate. They are 100% star material. Will they reach L63? Absolutely. And on one total-eclipse-rare occasion, I've been able to be answer the follow-up question: will they reach L65 and say with confidence: Absolutely. Well, what about everyone else? Sometimes the answer is, "well, we'll see..." and other times the answer is, "if they'd only stop doing X and start doing Y on a sustained basis, I could see it..."

If you're not an Absolutely! then do you know what more you need to do? And in your answer, there's a kicker follow-up: not only what you need to do to justify being promoted to L63, but to succeed in comparison to your L63 + L64 peers. For some teams - especially those like Office with few departures release-to-release resulting in level compression - that's a rough bunch.

I have seen people turn it around. If you're off-path, you can turn it around. You first have to be truthful with what direction you're going in and where you actually are trying to head. Get yourself a formal or informal mentor who is already doing what you want to be doing. Successful people looooove to expound upon the secret to their success. Some can even challenge you and give you the tough love and direction you need. Buy a Principal a coffee. There is no better investment at Microsoft for tuning your career. When someone gives you the hard advice to succeed, it's quite the gift. Don't waste it. It's a lot better than folks being ambivalent about your success or failure, right?

Your Team: you have to be able to understand why the L63s and L64s are where they are. You might have the Microsoft Senior Career Stage Profile in front of you all marked up and broken into more sections in OneNote, but which ones matter most to your team? And to your boss. And to your skip level. If your boss is saying "Yes, ready for promo now" and your skip is saying "No, not now" well, why?

Aspects of an L63 Contributor: some random aspects that come to my mind beyond our CSPs:

  • They can own a room: they aren't warming a seat but rather can take charge of a conversation and represent such a deep level of knowledge that they gain respect for what they say and earn a good reputation. Their focus stays on accountable results and this person can bring resolution and closure together.
  • Expert: They are sought after to be in meetings, for instance, so that good decisions can be made.
  • Results-focused: they are focused on getting great results and don't entwine their ego to particular solutions. They don't get defensive if their ideas are revealed to have flaws but rather delight in being able to move to a better solution.
  • Leadership: pro-active leadership that convinces team members of the future direction and even helps to implement it. This is a big difference between those who can complain about the way things should be and those you can actually bring it about.
  • Solutions, not problems: following up on the above, they aren't complaining about problems on the team but rather implementing and driving solutions.
  • Makes other great: the team benefits and grows from the person's contributions. Answers questions from the team, from support, from customers. Knows what the team delivers backwards and forwards. They are a good mentor.
  • Influence when they can, scare when they must: they have fundamental skills in influencing people, but if they need to flip into junk-yard dog mode, they can. They don't give up and walk away but rather fight when they need to fight, escalating only when needed and with lots of justification.
  • Makes the boss great: if the team and your boss are succeeding because of you, of course you'll be succeeding too.
  • Not doing it for the promotion: if you're out for a promotion, don't do work specifically chose to get the promotion. This is like meeting the Buddha on the road. If you come up with a pretty plan to justify your promotion, you've already lost it. Such plotting is obvious and actually detrimental to your career. If, however, you've determined what it takes to have a successful career in your group at Microsoft and have started what you need to start and stopped what you need to stop, then you're on the right path.

When I write all of this, I think back to an older piece by Joel Spolsky talking about Rosh Gadol contributors. Be the Rosh Gadol Microsoftie.

Also, go mine some of Dr. Brechner's Hard Code columns.

No, never: now, going back to that <<fill in the blank>> question above: if your boss is answering "No, never" then this is a red-alert moment for you. Flip on the klaxons! Why? Because when it comes time to roll people out of the team (as teams do from time to time) this "No, never" a marker that is used to help figure out who - at I and II CSP levels - is either on-track or out. If the answer for you is "No" and you don't like that, well, what are you going to do? I suggest understanding why it is "No" first, truthfully accepting the point-of-view as pissed off as it may make you, and then having a self-directed action-plan to get on track.

Discussion: First off, I'm going to be hard-core about comments here. I want them productive and about career success at Microsoft, especially your thoughts about achieving L63. What advice do you have to pass on? What advice do you need? What worked well and what really horked things up for you? If you're a manager, what's your L63 promotion philosophy? I'm not looking for any off-topic comments let alone woe-be-me comments - remember that slap thing?

If you have an itching to talk about something else, please go here: But Mini, I Want To Talk About...


But Mini, I Want To Talk About...

Don't want to talk about reaching L63 at Microsoft and bummed that I've locked down the comment stream on that post to be my way or the cutting-room-floor?

Tell you what I'll do: I'll put this post up to have a post to riff within, but still stay within my commenting guidelines.

What's on your mind?

  • Who's still hiring at Microsoft? How teams are locking down and freaked out about the risk of losing positions if people try to leave? Ideas to move groups?
  • Wondering if the mobile team can be possibly slapped enough to compete against the iPhone and Android momentum?
  • What's up with Arik Hesseldahl calling Microsoft big and bloated? Is that passé now?
  • I still love my Media Center PC, even though lately it's started hating all of us... is this how SkyNet starts?
  • Azure. (shakes head) It makes me want to sing to the Talking Heads about how this is not my beautiful house. It's a solution. It will solve problems. Are they really the right problems, and therefore, is it really the right solution?
  • Kudos for a great PDC / Win7 debut. I'm drawing hearts around my sketch of SteveSi... and littles x's and o's... ahem.
  • On that theme: since the Company Meeting 2008, I've felt that we've turned a corner. A good corner. Do you agree, and if not, what do you believe has to happen for Microsoft to have turned the corner onto the freeway of success?
  • What topics would you like to see discussed in future posts? Ooo, I knows! Something about the new Microsoft Store on the internets!

Wednesday, October 22, 2008

Microsoft FY09Q1 Results

FY09Q1: wow, I wonder what's going to be on everyone's mind during this quarter's webcast with the analysts?

  • "How has the global economic crisis affected Microsoft?"
  • "What product groups are the most affected? The least?"
  • "How has your forward looking assessment changed for FY09?"
  • "What kind of efficiency measures are you putting into place?"
  • "According to reliable sources (ahem) the Microsoft hiring freeze through major parts of the corporation is real. How does this hamper Microsoft's ability to hire the best talent and to retain the best talent?"
  • "Are you going to buy Yahoo! since it's so much cheaper?" (Please keep Mr. Ballmer away from any recording device during this question.)

etc. etc. Any big questions you're looking to be answered?

Pre-announcement portion: my suggested post-analysis sites for quarterly results:


Interesting angle Microsoft has come with during the global economic crisis: when money is tight, drop those custom solutions and go with Microsoft to save money and be more cost effective. Nice. Post-analysis postings of note (to me):

Mr. Joe Wilcox:

Mr. Todd Bishop:

Mr. Joe Tartakoff:

Mr. Brier Dudley:

It will be interesting to see the $500,000,000USD savings in action. There was some probing by the analysts on that but just a broad answer in response.


Sunday, October 19, 2008

Is Microsoft Recession Proof?

Is Microsoft recession proof? No, of course not. While it can be buffeted back in forth in a mild recession and get through without group parties here and there, it's pretty unclear what kind of Microsoft will emerge at the other end of a deep global recession. Just a quick post about the immediate staffing impact as we head towards quarterly results.

First: thank whatever deity you hold dear that we didn't go forward with that Yahoo! acquisition. How crazy would that look now?

At this point, organizations are being told to eliminate inefficiencies. For different organizations this means some pretty radically different action items. For some parts of Microsoft, this means hiring freezes. While hiring freezes aren't any fun (more below) you probably prefer them to full-blown Reduction in workForce (RIFs... though I guess that would be called RIWs or RIWFs).

What we need, though, is one big RIF.

There is an unfortunate consequence to hiring freezes for Microsofties: those ready to move on to a new position are stuck because there is no where to go and, even worse, those who have already gone through an interview loop are having their offers frozen out. Also, any attrition is not going to be backfilled and the org loses that headcount. Let's talk about this.

Now first of all, I'm all for reducing Microsoft's headcount. I was for that, what, 40,000 hires ago? Microsoft's key asset and key overhead are the Microsoft employees. You reduce that right, you save a bunch of money. And it is not just a one time saving.

I'm all for good and bad attrition. But I'm concerned about implementing unhealthy policies vs. just a one big 10% or 20% reduction all-around (we've identified 10%-ers already right - at least 10% Situation I-ers). If you do this big and once and you can still backfill future attrition and let people move around the company into new positions.

It's unhealthy for Microsoft to lock people into their jobs, which might be the reality for the next half-year to a year. I want the most talented Microsofties to - as their current commitments come to a close - look around the company and find new challenges to move to. It makes for stronger careers building our future leaders and creates stronger results. It also makes bad teams fail sooner by loosing key contributors. What's even worse, perhaps for planning, is that people will be locked and not moving on during a natural product cycle rhythm coming up (major product groups, for instance, going into stability), and these same people, once headcount reopens in the future, will be abandoning their commitments mid-way. Uncool. Unsurprising.

As for being told "Hey, we're not going to let you fill your attrition." Well, what group, let alone empire builders, is going to move on bad contributors now? Better to limp along than have reduced capacity. Not even that alluring, "Wouldn't you want to move-on that plateau'd L61 person with a hot college new-hire?" works now.

Some comments on this. First a common hit on most teams:

time to talk about layoffs. Hiring is frozen and teams are being told to reduce head-count through attrition. Sounds like layoffs to me.

What happens when you want to move internally and have already interviewed (oy!):

Any updates on the hiring freeze anyone? I desperately want to get out of my current team but teams I have interviewed with are withholding offers because of this damn freeze...

An excellent manifesto on hiring freeze for talented contributors:

What the Hiring Freeze Means to Me - An Open Letter to HR

I am high performer, a gold star winner, have a relatively high level and I have a problem.

In an all too common scenario, my group was re-orged and I was given a new manager. As is many times the case, this manager is well regarded for his technical skills but is absolutely an abysmal manager. He has little aptitude or interest in actually managing his people and still operates like he's an IC.

Multiple members on the team have gone to the new manager, as well as the skip level manager to discuss the situation.

The skip level manager now has a dilemma - does he support the manager, and help him grow into the role?

If he does, it will clearly take 6+ months, and this is on top of the 3 months it took the team to muster the courage to escalate to the skip level manager to begin with. If the manager stays and doesn't improve, myself and the people on his team will surely take a hit at review time at the end of the year.

In our case, the manager doesn't know what to do. He's thinking about it, and in fairness we recognize he's in a tough spot.

All the while, though, the clock is ticking, and the high performers on the team are looking for the exits. We're demotivated, demoralized, and are placed in a position where we cant realize our potential.

Most people reading this are likely nodding their heads. This happens here. Alot.

Typically when this happens, employees see this as an opportunity to explore another part of the company, and round out our experience.

But not today. There's a hiring freeze, no internal transfers are allowed, and we're stuck.

We've done the appropriate thing, we've talked with our manager and our skip level manager. We're now in a weird limbo.

Of course this comes at a time when we're in a down economy, and in many respects lucky to have our jobs. We're sure as heck not going to rock the boat any more than we already have.

This seems to leave to options. The first is to suffer in silence, the second is to leave the company.

Neither of these options are good for us or for Microsoft.

Our group is not alone.

I'd ask you to consider four things:

(1) New rule - anyone new to people management is on a trial basis for the first year, to be reviewed and renewed quarterly.

(2) New rule - anyone new to people management shouldn't be given a team of more than two people. If they do a good job with two, go to five, and so on.

(3) Make managers of managers responsible for their appointments.

If you put a bad manager in place, and you don't resolve the issue after 1-2 quarters, you take a percentage hit on bonus and stock.

This will result in people spending more time in the decision making process for this.

(4) Allow for internal transfers, atleast for higher level positions. When you take high leveled, high performers and you put them in a position where they can't be high performers due to poor management, they either leave or grow demoralized and become less productive to accomodate a bad manager.

Eventually, this second group also leaves, with the ones that don't downgrading to average performers.

A snippet to re-enforce that:

Internal is frozen, too, for the most part. I see Live and MSN technical openings, and various business-oriented ones. I had just seen a couple positions for which I wanted to do informationals. Before the hiring managers and I met, they both called me and said that they had just been told that couldn't hire anyone for the time being.

It's really my time to leave my team, because the three year timer is ticking and I'm topped out in my org given the kind of work management wants it to do. I'm capable of more, but the level of work isn't there. When I've tried to just go get it, I've caught flack from management - because I was taking on actual business risk that scared them, instead of the safe work our team usually does. I don't like the online services biz, so I hope the powers that be finish evaluating the business climate and open up a few more product heads in profitable divisions sometime soon. My preference is PM or dev in Exchange, as I'd like to contribute to that. But at this point, any core product would be interesting.

I think that this is an opportunity for major change vs. aloof delegated inefficiency hunting, but major change has to come from SteveB. If need be, the global climate gives Microsoft cover to make big revamps. E.g., "...the economy made us do these big cut-backs vs. us doing what we should have been doing all-along." It is too soon to expect this during this week's quarterly results, but within the next quarter, as the impact to reduced global PC sales becomes apparent, we should be ready to announce some major overhead reduction (e.g., not towels but rather less butts for said towels to dry - win-win). And remember: you cut once and you cut deep. Incremental pain is unhealthy and all that you're doing is poisoning your teams and setting up a huge round of bad attrition once things turn around.

I imagine each one of you wants to make your team better and more productive and streamlined, and have ideas for your team and beyond. This is an excellent time for our HR leadership to re-engage Microsofties plus finally join the 21st century and implement team-focused awards. Yes, we would still offer differentiated awards, but team achievements must be recognized with the same level of attention that our super-star hero culture is given. Who doesn't want an excellent team to be rewarded, let alone dysfunctional underperforming teams torn apart?

So, if your team had to get by with 10% less budget, how do you think it would be best addressed?


Friday, October 17, 2008

TableBrowser.NET (a small .NET BC tutorial)

Here is a Visual Studio solution, demonstrating how the Dynamics AX database can be queried through the .NET Business Connector, and how the results of this can be presented to the user in a user-friendly manner.

Here is a screenshot of how it looks:


You can download the solution on axaptapedia.com.

The class to investigate in the solution is the DynamicsAX class. It provides a pretty good interface for reading data out of Dynamics AX.

After opening the solution, make sure to replace the BusinessConnectorNet.dll, pointing it to your AX installation path (if it is not in GAC)

Tuesday, October 7, 2008

The future of programming languages or Anders Hejlsberg/Steve Ballmer Tech-Pep-Talk

Sunday, September 28, more than 350 IT-professionals from the entire country (Denmark) came to MDCC (Microsoft Development Center Copenhagen) to get a 90-minute TechTalk from Anders Hejlsberg and a 15-minute PepTalk from Steve Ballmer.

Click here to see the video.

Thursday, September 25, 2008

Compensatory Arrangements of Certain (Microsoft) Officers

I saw today that Microsoft filed a Form 8-K. The initial financial news blurb really didn't get my attention and it put in my mental queue to read later.

Then Brier Dudley went and read it and blogged this post: Brier Dudley's blog Microsoft's new bonus plan for Steve Ballmer, et al Up to $20 mil apiece. Snippet: Instead of the current mix of cash bonuses and stock awards, executive bonuses will come from a pool - for fiscal 2009, that pool is the equivalent to 0.35 percent of the company's annual operating income during the year. [...] Payouts are capped at $20 million per individual. Oh well, I guess everyone's got to face the new economic reality.

Suddenly I was very motivated to read the 8-K, in a pissed-off sort of way.

From the filing:

Item 5.02 Compensatory Arrangements of Certain Officers

The Compensation Committee of the Microsoft Corporation (“Company”) Board of Directors has approved a new executive officer incentive plan (“Plan”) for the Company’s executive officers. The Plan replaces the existing annual cash bonus and equity award programs for the Company’s executive officers beginning with fiscal year 2009.

The Plan allows the Compensation Committee to establish award programs for specified performance periods (e.g., one or more fiscal years). The maximum amount payable to a participating executive officer is a percentage of an incentive pool for a performance period. For fiscal year 2009, awards will be granted from an incentive pool with maximum funding of 0.35% of Microsoft’s fiscal year 2009 corporate operating income. The awards granted to each participating executive officer will be limited to a fixed share of the incentive pool, and these awards may be further reduced or eliminated in the discretion of the Compensation Committee (or in the discretion of the Board of directors, for awards to the Company’s chief executive officer, Steven A. Ballmer). The Plan specifies a maximum amount of $20,000,000 that may be paid under the Plan to a participating executive officer for one or more performance periods that end during a fiscal year. Award amounts under the Plan may be made in either or both stock awards issued under the Microsoft Corporation 2001 Stock Plan and cash. Vesting of stock awards will be determined by the Compensation Committee. The 2001 Stock Plan generally requires that stock awards vest over at least a three-year period.

If I could shove my pockets full of cash would I flip off shareholders and employees worried about the stock price, too? No, not even I could do that, for (like this) all the money on the world. I guess the insider-trading gravy train must have started running out of steam and goodness knows we don't want our executive leadership looking for employment elsewhere, so what else could we do to retain them?

Given the feckless vote of confidence that a bunch of screw-ups like Yahoo! got at their recent shareholder's meeting, I don't have much confidence in our shareholders challenging our leadership. Stock price? Don't care, got mine. What kind of performance targets must the company reach to achieve the rewards? Not gonna tell you.

First SPSA. Now this. Microsoft is dying from the inside, and the folks sucking it dry have zero motivation to change things. It's working out pretty damn well for them.

And Microsoft shareholders say?

<<Crickets chirping>>


Wednesday, September 24, 2008

Microsoft Dynamics AX 4.0 data model overview

I have great news for you, readers :)
Recently, on an internal Microsoft discussion group, I received a nice document with an overview of the data model for Dynamics AX 4.0.
After permission was received to publish this document to an external audience, I uploaded it to my personal web-site, so that all of you can download it at a convenient time.

The link is below. Enjoy!

Download AX40datamodel.doc (4.41 Mb)

UPD: A newer version of this document does not exist, so I won't be able to post it here

Monday, September 22, 2008

SysMultiTableLoookup - dynamic lookups based on multiple tables

Wow! MSDN for Microsoft Dynamics AX is getting better every day. This is terrific news!! I still remember the days, when all the information was extremely hard to find. It had its own charm though :)
Anyway, this topic is really not about MSDN. It is about lookup forms.

First of all, for the record: I (and the Best Practices document as well) recommend creating custom lookup forms in AOT instead of dynamically coding them in the overridden lookup methods on controls/datasource fields.
But, in reality, this is true only for lookup forms with very large complexity. I won't go into a discussion of why that is the way it is here. :)

Now, back to what I was planning to write about:
In order to build a lookup form from code, developers use the SysTableLookup class.
You can go to MSDN (mentioned above) to read a How-to article on creating a run-time lookup form, as well as take a quick look at the SysTableLookup method descriptions.

SysTableLookup class has evolved over the multiple releases, providing more and more flexibility and control to the application developers.
I would like to publish another extension to this class, SysMultiTableLookup, which I hope will prove useful to members of the AX community.

Short list of features:
- Backward compatible, should cover everything that is present in AX 2009 version of SysTableLookup class
- Allows including multiple tables into lookups with different join types
- Completely based on the Query that you build, no extra parameters (except for the control) are needed to initialize the class
- Allows adding aggregated fields to the lookup
- Displays fields based on Boolean Enum as check boxes
- Allows to specify alternative labels when adding fields to the lookup

You can download the project from axaptapedia.com.
It has (to some extent) been tested on Axapta 3.0 SP3, AX 4.0 and AX 2009.

Also included in the project is a tutorial form, showing 4 examples of dynamic lookups using the new class. After importing the project, make sure to try out the form, and use it for future reference for code examples and other inspiration.

Wednesday, September 17, 2008

Microsoft Company Meeting 2008

Alright, here we go! Company Meeting 2008! A chance to forget everything that went wrong last year?

Speaking of yesteryear, I've touched on The Company Meeting in 2004, 2005, 2006, and 2007. 2004 was fairly light because that was the special limited seating event that let everyone forget that it was actually the Company Meeting day and go-about their day as usual. 2005 was fun. 2006 was weird with the coordinated post-commenting frenzy here. And 2007 started with great potential and melted down with each mind-numbing demo.

Plus the burping game.

My main wish this year is that Ballmer's speech meets last year's quality, that he shows last year scorecard and where we are now, and that more than 1,000 people are around to hear the speech when it actually happens. Let's hear more about the idea of Many Microsofts. Or... was last year all throw away?

Okay, I'm off to pack some warm clothes and a few extra cups for all of the Microsoft Kool-aid I intend to guzzle. Sorry, all you folks who think it's a waste of money and effort. This is my opportunity to re-energize myself and see my peers and team re-energized. Oh, and do me a favor on Thursday: join me in letting out a joyful "Boo!" for any hiring statistics that show us throwing on more and more bodies we don't need in the ranks.


Post Company Meeting - some thoughts.

Well, it's days later but I still have that tangy fresh taste of Microsoft Kool-aid running around my mouth. I felt that the Company Meeting was really enjoyable. I appreciate it took a tremendous amount of effort into coordinating it and making amends for last year. Rainn Wilson I thought was a great host and, c'mon, who couldn't have loved his big finale before SteveB's entrance?!? A band, shooting flames, fireworks, exploding streamers, break dancers, and beach balls tumbling down on the crowd! Whoo! Why did it have to end?

And kudos to the planners for an innovative solution to the constant paper airplane harassment of year's past. I don't know if we broke a world record or not. Hopefully not. Hopefully every year we just miss it by that much and we try again the next year.

And the crowd held together. I always look around and see how people are doing and keep an ear out for distracted chatter. The crowd pretty much was engaged most of the time, except for Craig Mundie. It was a big crowd and everyone stayed put until the end, vs. the large-scale abandonment we had last year up to and through Mr. Ballmer's presentation.

Random notes from me:

It was nice that it started off with a big-reveal. Will Halo-fanboys be upset to know that Master Chief's face was revealed only to Microsofties? Keep the secret.

Our mission statement: "Create experiences that combine the magic of software with the power of Internet services across a world of devices." Ba-roo? Everytime I think of it, all I see is a grinning Doug Henning tossing a handful of confetti sparkles into the air, gasping, "...the magic of software!" and conjuring up a glittering world full of devices. Mr. Adam Barr works over the mission statement and comes up with something far more direct.

Demos: better than last year, if that's saying anything. There was a lot of stable-candy that could have been shown but that wasn't. I'm glad they went through Office 14 and Windows 7 scenarios, along with some of our other apps out there. The geek in me was indeed wow'd by the Excel demo and I felt proud that we had implemented something as geekily-groovy as that. I want to meet the people who did this and listen to their story of how it actually all works. I think I would learn something great. I can't say that the customer reaction will be as enthusiastic.

I'm disappointed that the teams that could have shown something really rah-rah cool didn't. I'm looking at you, Xbox. Oh, wait, there was the whole bust-a-move part...

You: over and over again it was pointed out that Microsoft employees are its biggest assets. And? I guess admission is the first step. I'm not looking for bread and circuses perks like dry cleaning and grocery drop-off but rather deep meaningful career development and a meritocracy in our compensation for people and teams. And, you know, having less assets around.

Speakers: better than last year, and no random Slick Willies from the country club. Yeah! Elop is a really good presenter. Ray was okay, as was most everyone. Sinofsky was a bit bumpy in getting the words out (he makes up for it in typing, trust me). Craig Mundie was a wall: a cold-stop wall that everyone used as a mental- and bio-break. Most folks in my section were asking, "Hey, who is this guy?"

And then there was Steve.

Last year's SteveB speech was much better and deeper and challenging. This year: not bad and not challenging at all. Yes, we had the five points to go over so I guess that replaces the scorecard from last year (too bad... what's the worth of having a scorecard if you're not keeping score?). No mention of the becoming many Microsofts. But, we have a discussion of The Stock.

Microsoft Stock: (SteveB slowly waves his a hand infront of the audience) These are not the droids you're looking for. You don't care about the Microsoft stock price. Move along. Move along. I'd like to say "Nice try." But it wasn't even that. Does anyone remember that brief moment of Microsoft stock flirting around $37? I don't know about you, but I started to see a new old-energy kick on around my team and the teams I worked with. Last year, Mr. Ballmer asked what had happened to our boldness. I know where it is, and it starts at around $37. You want to see super-boldness? That starts at $45.

Oh, and it also starts in NOT doing dumb knee-capping moves like the muddled acquisition attempt of Yahoo! The responsibility for causing that stock plunge and its aftermath was not even mentioned. Un-bold. Yahoo! was totally that terribly embarrassing family event - like a wedding that melted down at the altar - that no one brought up.

A lot of us have been at this company - and participating in the stock compensation program - already for the long-term. And have stock bupkis, along with our shareholders. So it was bold to bring up the stock issue, but the discussion was unsatisfying and lacked any sort of boldness explaining mistakes that have got us here (Yahoo!, surprising Wall Street with multi-billion dollar investments, etc).

At least we know a bargain when we see it: Microsoft Announces Share Repurchase Program and Increases Quarterly Dividend $40 billion authorized for share repurchase; Dividend increased 18 percent. That's good, and lord help us all if that doesn't put the final nail into the Yahoo! acquisition coffin. A curious development as part of this:

Microsoft also announced that its board of directors has authorized debt financings from time to time of up to $6 billion. Pursuant to the authorization, the company has established a $2 billion commercial paper program. Microsoft intends to use the net proceeds from any debt financings for general corporate purposes, which may include funding for working capital and repurchases of stock.

Curious to me given that Microsoft and Debt have never been two words I've put together in my mind.


Your Say: after the meeting, what are your impressions? You know, safe to share impressions.


Tuesday, September 16, 2008

SysInfoAction class description - Improve your Infolog

In the last couple of weeks I have been asked about this a number of times, so I decided it would be a good idea to describe what the class can do for you.

In just a few words, this class helps you interact with your users better, helping them perform some desired action (predefined) on request. This will save some time for the user, providng for a better user

There is a number of classes already present in the system.
Just to name a few used the most:

JournalInfoAction - allows navigating to the specified journal line. This is used, for example, when checking the journal lines before posting.
SysInfoAction_Editor - opens the editor in the specified method on the specified line/column. Primarily used for development purposes.
SysInfoAction_FormRun - opens a specified form, setting focus to a specific control, if required. There are many extensions of this class, allowing for more control over what is to happen.
SysInfoAction_MenuFunction - same as the one above, but the input is a menu item that is to be launched on user action.
SysInfoAction_newWindow,SysInfoAction_AOTproperties - both are used to ease up the dev's life a bit. The first one opens the specified AOT object in a new window, the latter one - the properties for the object.

And so on...

I had to create one extension of this class yesterday as well, while doing a small tool we use inside our team. The requirements were to launch a specific external application, specifying a number of files as command-line arguments. WinAPI ShellExecute can do exactly that. So I create a simple wrapper around the WinApi::ShellExecute method that is accessible as an infolog action.

Here is an example of how this class can be used:



You can download the class from axaptapedia.

The output of the infolog, in this case, would look similar to this:

Infolog output


One other thing worth mentioning about these classes is the method infolog.infoActionObject(). This is not used as often, but provides a greater control over the infolog action by allowing interaction with an open object, like a form.
This is used in AX journals (Inventory Transfer journal, for a specific example, if you wish). Whenever you check the lines of the journal (before posting), you get an infolog in case of errors, which allows to navigate to the specific line with the error. The navigation occurs in the journal lines form currently open, which is much better than opening a new form for each line.
In order to use this, simply specify the object that needs to be available when executing the infolog action, using the method mentioned above, like the following:

infolog.infoActionObject(this); //if called from the method on a class/form, for example

For more information, check out the article on Axaptapedia (I hope it will get expanded over time :))

Wednesday, September 3, 2008

(tap tap tap) Is This Thing On?

(tap tap tap... is this thing on?)

Review Season: well, just about everyone should have their reviews and numbers by now or very very soon - at least by the time you get your next automatic deposit! Given that address book updates went out the beginning of this week (for titles that are no longer opaque thanks to the CSPs) I've barged into more than one conversation of "Can you believe that <fill in the blank> was promoted to- oh! Hi."

Personally, while I still deeply appreciate not having to fork over sacrificial 3.0 reviews, I am still seeing, for all of my organization, okay compensation numbers for great work. And freaking-fantastic numbers for super-star work (salary schmalary for those people). That is how our system is set up and for those individual super-stars, it works out very very well. But by necessity, it requires great workers to get okay compensation in order to put the super in super-rewards.

And if it makes you angry, put that energy into networking around Microsoft for a new position or spiffing up that resume and seeing what other opportunities there are.

Company Meeting ahoy: not too long until the 2008 Microsoft Company Meeting. For any new readers: I absolutely love the Company Meeting, though last year's Company Meeting certainly tried my patience... like that Sweetheart that starts being a a real dick to make you break up with them. Things on my wish list for this year's Meeting, kind of echoing that old post:

  • Very few demos: at least, any demos there are should be short, fast, new vs. repackaged, and presented as if you were doing a power demo to the smartest people in the world. Cos you sorta are. And goodness, no calls for helps if your demo goes belly up.
  • Ballmer early: Ballmer gave a fantastic and interesting speech last year. Which most people didn't hear because their endurance gave out long before. I'd still expect him to be the end-of-day blood-rushing presenter. But I hope he can show up early to either kick things off or serve as a punch to keep things going.
  • Shaking Money Makers: time to show off Win7 and Office 14. Well, if you're like me you get to see them a lot everyday, but there needs to be a highly condensed so fast you miss half of what you see demo spurt of Win7 and O14, along with teasers of other emerging properties. They are our financial foundation and while most of the development work is done for them and we have at least a year before they surf through DCRs and stabilization, the employees deserve a peep show here.
  • New Blood: thanks to our great Town Halls, I kinda don't need to hear from our executive leadership team. I'd like to see some new, up-and-coming blood on stage vs. the same-old-same-old. And please, we're geeks, so make sure the new blood is geek-o-riffic like the rest of us vs. those country club shiny people that popped up so much last year. <<Shudder>> How about some Microspotting interludes?
  • Surprises: we come to this to be surprised and see things before (most) anyone else. Get CliffyB on stage to demo Gears of Wars 2 or something. Show us the new Halo stuff. The new 120GB Zune and interesting new Zune software features. Something. I won't blog about it. Cross my heart. Just please don't make the Xbox or Zune seem as lame and empty as they did last year. Here's Apple popping out another special event soon. Pop 'em back.
  • The Great Seinfield Reconciliation Paradox: or, time to show us the new ad campaign and how we have a coherent brand strategy that makes sense. There are a lot of fronts of our business with aggressive competitors that we're slipping in (mobile, gaming, television, OS, browsing, consumer). Time to see that not only do we realize this, we have a plan to meet and exceed. And goodness help you if your advertising solution to this involves some guy stuck in a big vat of orange goo in a barren landscape bragging how he can still check his Outlook email on his Windows Mobile Device. What?
  • Logistics: man, be on the first bus out of Redmond if you want to enjoy the Company Meeting. I usually leave as soon as I can but I'm still there after things have started. And I feel bad being into the third or fourth presentation and seeing a line of charter buses still making their way to Safeco Field. I do hope our buses figure different routes to get to the same point. And non-Microsofties: stay the heck away from Safeco field on 9/18/08.
  • No Paper: how about you sit down on the floor / first level and get pelted with poorly made paper airplanes for the whole meeting? That should be your penalty if you are involved in the least in distributing any paper to the Microsofties as they come in to Safeco.

Am I right in that they've dropped the whole best manager competition? Hmm. Guess after that one winner we exhausted all the candidates. What do you want to see at the Company Meeting or have the leadership talk about?

Old Business: it has been a while. The next thing I planned to write about was the Word from Wall Street with Charles Di Bona and Dylan Yolles from back near the end of July. Colleen, you crack me up, asking if Mr. DiBona was Mini-Microsoft. I wish! And Charlie, you could never disappoint me. Dividends. Buy back. Whatever.

Anyway, one interesting impression I got out of the vibe from the analysts: Microsoft leadership, time is up. Time is up to have us trust that you have a super secret plan that will really, truly work any year now. You went and convinced us that you have a huge vulnerability with respect to the online world by that totally confused and befuddled attempt to acquire Yahoo! and now you give us no specifics about what you're doing. Other than spending a whole hell of a lot of money (nice: You're telling us that there's a pot of gold at the end of the rainbow. Only, that rainbow is going to cost a lot of money to build to get us to that pot). Time's up.

I disagree with Mr. Yolles about the consumer market.vs. the enterprise market. If anything, we've suffered in doing so much for the enterprise market that most of the features are either user hostile (look, I can shut you out of using a USB drive) or just non-interesting. I think you can have both. There's a bunch of money walking around in the pockets of everyday people.

As for our huge cash reserve: now that we're not buying Yahoo! (right, right?) what to do? Not a dividend! But a big buyback of our stock. There was a rumor a couple of weeks ago that a buyback was under consideration, but nothing's come of it since.

An interesting observation was made that Google's Android has been created with 30 people at Google. That makes analysts look at how many people are responsible for Windows Mobile and ask, "Why? Why so many people? Why so much overhead? How do the results match up?" This feeds a desire now for some picking around in our overhead of our groups. Not a place our leadership wants to be, but a hard question that goes unanswered: what the hell do you need all these people for, anyway? Can you get by with less?

Yes. Of course we can. If you had to lose 10% of your group, not only would you get by, you'd receive a new sort of clarity about what was truly important vs. distracting. Our over abundance of people allows us to overwhelm our work with marginal, half-thought-out features to keep the mediocre C contributors busy and lets us go into the weeds pursuing edge cases. Ah, well, tired of listening to this same broken record?

Final take-away: Microsoft has to demonstrate that it is efficient and effective. What does that look like?


Administrivia: apologies for being away for an extended duration. It was a necessary departure and absence to be elsewhere with a situation that required my full attention. Best wishes to you to avoid such experiences for a long, long time. I'm about to go through... fifty pending comments. Whew. Where's that wine bottle?


Tuesday, August 12, 2008

Another useful Editor Script for developers

In AX the principle of upcasting is used quite a lot. Some examples coule be the RunBase hierarchy or the InventMovement class hierarchy. Basically, the base (or super) classes contain the main part of the hierarchy logic, while subclasses only override a couple of methods performing actions specific to this class.

When browsing the AOT, trying to find a specific line of code (debugging without the debugger, basically), you often find yourself in a situation when you lookup a definition of a method from a derived class, and end up in this method of the base class instead (because upcasting was used in the code in question). And every time you need to see the same implementation in the child class, you need to go back to the AOT and open it from there manually.

Well, not any more.
Here is a small editor script, that you can use to navigate to an overridden method of a derived class.

I created 2 versions of the same script, one using xReferences, the second using Dictionary class. The xRef one, generally, works faster once the xRefs for the class hierarchy is updated (happens the first time you use the script). So I am not posting the second script version. If anyone is interested in that version specifically, let me know and I will send you the code.

I made a couple of small changes to the script since my previous post (which I deleted), making it possible to import the script without compilation errors into AX prior to verion 2009. Sorry for that :)

You can copy-paste the code for the script from axaptapedia.com (There is a problem with copying over the code from blogger site directly)

You can read more about Editor Scripts and how to use them here

Enjoy, and get back to me with any comments or suggestions, posting them as comments or e-mailing me directly

Wednesday, July 23, 2008

Exit One Kevin Johnson

So this email comes in from Ballmer this afternoon and, after appreciating Mr. Ballmer's picture thanks to ShowSenderPhoto, I'm scanning through it, "Yep, yep, sounds like a bunch of the stuff covered this morning at the Town H-what-the-hell-Kevin Johnson is leaving?"

That was a surprise.

A... pleasant surprise.

I'm really surprised. There was Mr. Johnson up on stage this morning during the Town Hall causing me to roll my eyes with his fake enthusiasm and now he's leaving Dodge. On the horse he rode in on 16 years back. I know he did a lot to pick up the pieces after the Vista-debacle and is probably due a good amount of praise for letting Win7 align itself to be on the winning trajectory, but I just never bonded with Mr. Johnson's leadership. And some of the projects he's interested in and driving just leave me cold (e.g., the upcoming MSN UI revamp. It puts the F in WTF).

Is he taking the opportunity to be CEO of Juniper? Is he the fall guy for Yahoo! being such a bumbling mess? Is his departure meant to make way for a big acquisition / merger?

As we consider the long race to succeed Ballmer, I was certainly worried that Mr. Johnson was at the top of the stack rank. No reason to worry anymore! And three of my favorite technical leaders, Mr. Sinofsky, Mr. DeVaan, and Mr. Veghte, all move up a notch. Hey, one less layer in the company. Throw all three of them in the running, eh?

If this had only happened before Ms. Foley's chat in Redmond about Microsoft's future: Audio Mary Jo Foley on 'Microsoft 2.0'.

Anyway, it's one hell of a way to kick off our Financial Analysts Meeting (psst, here's a hint: surprises? Analysts no like). Any interesting takes on the departure, and the future hire that's TBD? First comment I've seen:

Wow, I just heard that Kevin Johnson resigned. So much for trying to rid the product group of the cancer left by Allchin! This is not a good day for future quarterly results....


(Updated: fixed rather embarrassingly wrong honorific - sorry!)