spout

May 24, 2003 spout

My First Meeting with a Senior VP

On the anniversary of my first month at MS, I took my first meeting with a Sr. Vice President. I’m told that’s a big deal. One colleague who’d been at MS for a few years said, Wow. You must be important. I expect that the first time I’ll be in a meeting with a Sr. VP will be at my firing.” In my case, it’s not that I’m important (I’m not) that got me involved with such a meeting; it’s that I have recently been asked to participate in a project that needed to meet with the VP to clarify some review feedback . Or, in other words, it was a pretty pedestrian here’s what we’ve come up with since the last time we met” kind of meeting. What made it interesting was that it was with a Eric.

Imagine a company run as a strict meritocracy that’s one of the most important and profitable in it’s industry. Now imagine that this company has been around for a while and has acquired tens of thousands of employees in a multi-layered hierarchy, with only the best and the brightest surviving and the best of the best rising to the top. That’s MS. Billg is layer 1. Eric is at layer 4 w/ a small number of peers. I’m at layer 9 or, as I like to call it, “the bottom.” By all rights, that means that Eric should be 5″ smarter than me, and I can see him fitting comfortably into that category.

Had Eric wanted to shred us, I’m sure he could have. Luckily, it was a nice, calm, productive meeting w/ him cutting quickly to the main points (in spite of the fact that he was reading and making notes on our handouts while still listening to our presentation). He also make some pretty interesting comments, especially considering how little time I’m guessing he’s had to think about the problem space. At least one comment put me on a path that I like much better than the one I was on (although we’ll see how he feels about it at the next review). The comment that startled me most, however, was when he said that he read my site. If this is my last post from inside the big house, you’ll know how much he liked it. : )

May 21, 2003 spout

My First Month @ MS

Wed, May 21, 2003

Today marks the 1-month anniversary of my assimilation. For those expecting references to my scars,” you can be as surprised as I am that there aren’t any. In fact, my coming to MS has not really been a big deal. Oh, folks were nice and I got emails from all manner of internal and external folks with nothing but good wishes, but, somehow, I expected something different. Frankly, given the world’s impression of MS, I think I expected hazing. In fact, I woke up this morning with memories of dreams involving all kinds of bizarre knowledge- and activity-based initiation rites lead by my grand-boss that reminded me of a cross between my college fraternity and Fear Factor (although maybe I was still reliving my MSDN morale event” experience : ).

Why did I expect all kinds of horrible things? Because MS is a very intimidating company; they play to win, seemingly at all costs. This A+ personality trait is certainly reflected inside the company, but there’s something else there, too. The part that surprised me was that job #1 seems to be exactly what I would pick: do the right thing” for the customer.

In fact, doing the right thing is so important that MS builds a customer advocate” position right into the heart of their culture; these people are called Program Managers” (PMs). PMs are not to be confused with Product Managers,” who are marketing folks. Of course, MS has all the standard positions, e.g. marketing, managers, developers, testers, documentation, etc, but they also have this PM position that, as far as I can see, forms the glue for the company and affects everything else. The PMs job is wake up in the morning and think to him/herself, What’s the right thing to do today?” The range of things that fall into this category is far too wide to even give you the bounds, but essentially it’s whatever someone else isn’t already doing (or isn’t doing to their satisfaction : ). Once they identify the right thing to do, they can attempt to take ownership” of making it happen (your boss gets a say in how you spend your time).

Once ownership is acquired, that’s when things get interesting. PMs have all kinds of responsibility, but no authority. While this kind of position is generally one to avoid in the world of corporate politics, the internal product cycle training video I watched a couple of weeks ago points out that responsibly without authority” is by design. Instead of ruling by fiat, PMs have to wander around the company finding folks that are involved with what they’re doing to get their buy in” and their help. The way to do that is through old-fashion politics, i.e. gathering consensus, persuasion, trading favors, brow-beating, table thumping, complaining up your own management chain, complaining up your opponent’s management chain, etc. It’s not just a popularity contest, although being liked certainly helps. It’s also about your reputation, as established by your technical chops and your ability to produce, among other things. Under-achievers need not apply.

In other cultures where the hierarchy is all, such meritocracy can’t really work (in spite of lip service to the contrary). There’s often too much of an attitude of “who the hell are you to tell me what to do?” to even be allowed to present your case. Luckily, since there’s a whole bunch of folks wandering the halls looking for favors, the MS culture makes it OK to work in this manner. That’s why the role of PM forms to key to the culture, imo. Oh sure, MS is a real company with a well-established hierarchical chain of command (there’re currently 7 people between me and Billg), but hierarchy is only one part of the organization, and arguably not the dominant one (although I’m still new : ).

In a way, the whole system is kind of like the legal system. In the court room, lawyers from each side argue before a jury, each using every trick in the book to push their agenda and the law is only part of the equation. The jury decides who’s right.

At MS, multiple PMs all wrangle with each other, each using every trick in the book to push their agenda and technology is only part of the equation. Sometimes, it’s the folks inside of MS that serve as the jury. Sometimes, it’s the market itself that serves as the jury. In the latter case, that’s why you sometimes see multiple products from MS that seemingly serve the same purpose, e.g. C++ vs. C#. Those are two groups that both think that they’ve got the best way to accomplish their goals and they’ve both made strong enough cases internally to be allowed to compete externally. Probably the reason that each product exists in the first place is because one day some PM probably woke up and said, MS really needs a C++ compiler” or .NET really needs a C-like language that’s not as hard to use as C++,” and look what they got themselves into. : )

Of course, it’s not just PMs that have the responsibility to constantly be on the lookout for the right thing. Everyone is supposed to get up every day with this attitude. It’s just that PMs only get to persuade; they don’t get to order things to be done (unless they get staff). Since MS is filled with folks all aiming to do the right thing, everyone is constantly committing to help with new ideas. That’s why you see MS folks at conferences always busy and always rushing back to their rooms to check their email; they’ve committed to do way more than a normal human can do because as the right things” come along, it’s darn hard to say no.” That’s why I started this spout entry on a Wednesday but I’m finishing it at 8am on a Saturday while the rest of my family sleeps. Even in the last month, I’ve accumulated a bunch of projects of varying sizes, all of them right” as far as I was concerned.

According to the training video, in spite of this overwork and the recent lack of any expectation of riches, folks that come to MS don’t seem to ever want to leave. It’s that darn culture of the PM again. I’ve worked at large companies that run by fiat and they suck. Hell, I’ve worked at small companies that work by fiat and they suck, too. Is it any wonder that, assuming you have merit, once you find a stable, interesting, friendly company judging you on your merit that you’re loathe to leave? I find myself cataloging the skills that I think I’ll need to be successful at MS and it seems like I’ve been preparing for this job since I was 12 years old. I’ve hopped from company to company looking for the perfect fit. DM provided that fit during the boom. Is MS going to provide it from now on?

May 16, 2003 spout

My First Talk As A Microsoft Employee

On Wednesday, I gave my first talk as a Microsoft employee. I was told that the talk was for a bunch of UK folks that needed to be put on the .NET path and could I do 90 minutes on intro to WinForms in a conference room on campus? I can do intro to WinForms material for hours without preparation, so I didn’t do any. Instead, I showed up with my laptop and plugged it into the overhead, where I then spent 10 minutes wrestling to get it out of suspend mode (the world needs faster hard drives!).

While my HD woke up (apparently jet-lagged from the trip between building 5 and building 43), I started warming up the crowd with questions How many of you are C++ programmers? How many VB programmers?” The room was split pretty evenly between C++ and VB, taking half of my jokes away (I’m happy to make fun of either C++ or VB programmers equally, but it’s less fun when only half the room laughs). Plus, these guys were *way* jet lagged, so getting them to even keep their eyes open in the afternoon after they’d arrived was a challenge, let alone getting them to laugh or even engage.

And then, because my HD was still shaking off the dust, I asked Did you hear anything good today?” Predictable, they said that they’d like the story of web services (Don had been there earlier in the morning) and that caused me to launch into my rendition of how WinForms + Web Services provided a wonderful way to keep all of the UI logic on a single machine, as opposed to web applications, where the UI is split between the client and the server. They weren’t biting.

Plus, after diving into some WinForms intro material and having it fall flat (anchoring and docking normally wows em), I did a bit of deeper digging into my audience. It turns out that most of them were old hands at WinForms, throwing my planned material right out the window. Luckily, I did find a topic that they’re weren’t familiar with: href-exes. So, I did my normal href-exe shtick for about 60 minutes, getting them to wake up, ask questions and even laugh a bit at my witty repartee.

Thinking I was in the clear, I opened the floor for questions. Of course, the first question they asked was the same question I’d have asked if I were in their shoes (as I so often was until about a month ago), What’s new in WinForms 2.0?” And that’s where things got shaky again. I had some ideas of where WinForms 2.0 was going in the next release of .NET, but nothing concrete (I’ve been buried in Longhorn and a whole new culture too deep to dig into WinForms futures yet). Plus, even the things that I did know, I had no idea what I could say. Where these guys under NDA? What could I say to them if they were? What can I say to them if they’re not? Even if I’m not supposed to say anything, I want them to like me (every speaker’s guiding principle) and I wanted to say something besides I know, but I’m not going to tell you. <bpffffft>!”

So, I stammered out what I knew to be some WinForms desires without making any promises on their behalf and hoping no one would ever know (except my closest friends reading this spout entry : ). It wasn’t a happy experience. I should have talked with the WinForms guys before my talk so I knew what I could say about the future. Rookie mistake #1.

Rookie mistake #2: In an effort to stay open to these guys, I wrote my alias on the flipchart and then, while I filled in the domain, kept answering questions. When I looked back at the flipchart, I discovered that I’d written csells@sellsbrothers.com”. Doh! Since it was a flipchart and not a whiteboard, I couldn’t even erase it. <sigh>

All in all, I think I got them jazzed about href-exes, but it was definitely not my finest talk. Luckily, it was internal and to a small group; I would have been mortified to have given that performance at a larger venue. Plus, making fun of VB programmers isn’t fun anymore. I mean, they’re customers, too. Looks like I’m going to need some new material…

April 25, 2003 spout

My First Week @ MS

Friday, April 25, 2003

After my first week at Microsoft *everyone* wanted to know how it went, both internally and externally. I learned some things:

  • I learned that folks at MS will call a meeting for lots and lots of reasons, including at the slightest sign of confrontation or hurt feelings. For a guy that hasn’t really attended a meeting in the last decade, this is quite a switch : )
  • I learned how to schedule a meeting w/ multiple people and a conference room (listed as conf room <bld>” in the address book), all with conflicting schedules and all remotely using Outlook Web Access and without a SmartCard (I was pretty proud of that one, actually : )
  • I learned that no one uses the phone for anything — instead, they schedule meetings
  • I learned that it’s the person that wants something that does the actually scheduling of the meeting
  • I learned that it’s OK to open your laptop in a meeting, otherwise when would you get any work done?
  • I learned that it causes quite a stir when you disagree with the technical lead of one of the major pieces of technology that you’re supposed to be taking to the world
  • I learned that it’s darn hard to find out who to talk to your first week, and that you should take your boss to most of your initial meetings so that s/he can make sure you’re getting what you need to get from them
  • I learned that you can mix Exchange and POP3/SMTP to keep your new and your old email addresses going, if you use Office 11 and if you are willing to give up calendar and follow up notifications on your POP3/SMTP account (have I missed something?). I also learned that internal MS support doesn’t help w/ such things.
  • I learned that internal MS support is the greatest support in the whole darn world. These people don’t let you off the phone til everything works. They’re amazing
  • I learned that you can volunteer for absolutely anything you think is cool or important so long as you get everything else done, too
  • I learned that it’s not good to ask for NDA access to super-secret bits for your friends the week before you start working there (OK, I’m pretty sure I knew that before, but I had to try… : )
  • I learned that the right folks hanging out at lunch can make all kinds of interesting things happen
  • I learned that MS and it’s employees is the most charitable company in the country (world?)
  • I learned that the internal resources for MS employees are unbelievable. I could work their my whole life and never take advantage of all of them
  • I learned that it’s important to sign up for your benefits immediately if you’re going to be remote w/o a SmartCard for a while, otherwise your son may wake you up in the middle of the night with a hard toothache and when you take him to the dentist the next day, the dentist won’t be able to confirm your dental insurance (as one example : )
  • I learned that most everyone at MS is very nice (even when they’re telling you to f-off)
  • I learned that everyone (and I’m no exception) has a hard time fitting in at first. One interviewer told me that his first 6 months at MS were the worst of his life. I pray that it doesn’t last that long for me
  • I learned that after the initial period that few that survive it would ever think of leaving. I absolutely see how that could be
April 21, 2003 spout

“Look with favor upon a bold beginning”

A couple of weeks ago, I was having lunch with my wife at a little Chinese restaurant. My fortune was the title of this spout piece. I immediately associated it with my recent job interview at Microsoft and it made me smile. I had already pretty much decided to take the job, but it was nice that the Universe agreed with me. : )

Right now I’m sitting in NEO (New Employee Orientation) for Microsoft employees. Not only is it a cool name, but the nice folks at Microsoft provide a wireless network for new folks that can’t spent hours w/o one (although I’m the only one that’s geeky enough to have his laptop out at the moment : ). I start today as a Content Strategist on the MSDN content team at Microsoft, Corp. I’ll be in charge of the Longhorn DevCenter. A DevCenter is a section of the MSDN web site that focuses on a specific technology area, like the XML/Web Services DevCenter.

Longhorn is Microsoft’s next major operation system (and different than Windows Server 2003, which is the OS that Microsoft is launching this month). I can’t (yet) say anything more about Longhorn except that it’s cool enough that I took a job at MS so that I could get my hands on it. If you are dying for more info on Longhorn, but aren’t quite ready to change your employment arrangements to get it, check out the PDC in October. And, if you stop by and say hi,” I’ll show you the implant scars… : )

April 17, 2003 spout

XML For Humans

When I sat down to write this piece, I didn’t get why the work that Don, Gudge, KeithBa, Yasser, Tim and ChrisAn is doing is so amazing. I mean, I know that they’re smart and I know that they’re building the hell out of their stuff, but why? It seems like everyone that gets into blogging starts by writing their own blogging engine. It’s like C programmers writing editors, C++ programmers writing string classes and XML programmers writing XSD<->Class codegen. Sure, it’s a useful learning tool, but earth-shattering? Worth that much energy from that many guys? When they’re done, what great problems will be solved?

Don’t get me wrong. I love the that the web makes it easy for anyone to not only publish but also get an audience. I also love that there’s a protocol (RSS) that lets me subscribe to my favorite freelance authors in any one of dozens of tools (I’m into SharpReader today). I even like the Dear Diary style of writing because it leads itself to thoughts, feelings and insights that give me greater understanding of not only the topic but the author. As an added bonus, blog entries have turned into everything that’s good about mailing lists w/o the endless angle brackets that remove the need to write in coherent sentences. Blogs feel like the kind of democracy we had that lead to the American Revolution when the world was re-shaped with big ideas, written by great authors.

But does the world need yet another blog engine? Personally, while it’s primitive, I find that FrontPage have served me well as a blogging tool. The mental overhead is small, the development is nil and I get red squiggles. It falls down sometimes, but I’ve spent far less time maintaining the infrastructure for my content than I would if I were to build my own blogging engine.

On the other hand, while I don’t feel the need for another blogging engine in the world, I definitely see value in what those guys are doing. Specifically, they’re building apps, which is not something that XML guys are traditionally into. In fact, I’m scratching my head trying to think of another kind of XML-based technology that isn’t infrastructure-based and I’m not coming up with one (even InfoPath is a dev-tool). Is RSS really the first mainstream use of XML that hasn’t nothing to do with technology for it’s own sake? Are blogs the killer app for XML? I know web services were supposed to fill that role, but while they do solve a real problem, they’re not for consumers. My aunt in FLA couldn’t make use of a web service. However, she could definitely subscribe to an RSS feed and read up on the local news, her job and her hobbies.

Of course, the beauty of having infrastructure guys building apps is that they get to put into practice what they preach. When stuff is a pain (like every single XML API ever invented and most XML vocabularies), they feel the pain. The difference between us and them is that instead of just wrapping a layer of abstraction around the ugly stuff like we have to, they can actually fix it. I started this piece wanting to shake those guys until they could tell me why they cared so much. How ironic that thinking through the issues in the very medium they’re digging into helped me figure out what they were up to. The blog engine work is but the vehicle. They’re riding the app train to enlightenment. They’re trying to understand how XML can be used to solve problems for real humans. How can I argue with that?

April 14, 2003 spout

Priceless

  • Running sellsbrothers.com for one month: $150
  • Round-trip ticket from OR to FL to give a 90-minute talk: $1200
  • My son picking me for his famous person” school report: priceless

I don’t know how my son picked up on the tiny bit of fame I’ve acquired amongst a small, strange (but loveable!) group of people, but he did and now he thinks I’m cool. I’m sure it won’t last, but I plan to enjoy it while it does. : )

April 4, 2003 spout

Oregon & Open Source

Friday, Apr 4, 2003

I had an interesting experience yesterday when I was asked by Mike Sax to come to the Oregon capitol building to testify against HB 2892, known as the Open Source Software for Oregon Act. In general, the bill talks about the benefits of open source, open standards and open data formats, most of which I didn’t have any issues with. However, I got up at 6a and drove an hour down to Salem because of the following clause:

“(2) For all new software acquisitions, the person or governing body charged with administering each administrative division of state government, including every department, division, agency, board or commission, without regard to the designation given the entity, shall:

(c) Provide justification whenever a proprietary software product is acquired rather than open source software;

By requiring state government employees to write a special justifications, this bill erects artificial barriers to adopting commercial software, above and beyond the fact that commercial software requires an initial payment (which should be more than enough of an edge for open source software).

If you’ve never been to a government bill committee hearing, I highly recommend the experience. I was in a little hearing room with a bunch of other folks, all interested in this particular bill. I signed my name on the list of folks against” the bill so that I would have a chance to testify. The chairman called first proponents of the bill and then opponents up to the microphone three at a time.

Some of the the proponents were teachers and school staff that had put Linux and other open source software to good use in combination with old computers used as thin clients against a back-end server (using X-Windows, I assume). They claimed that they solved themselves all kinds of trouble because open source software was “immune to viruses and security problems” (now *that’s* effective propaganda! : ). Some of the proponents were embittered IT staff and new college grads looking to bring some old-fashioned democracy back into a country that had been recently taken over by corporations. It was all I could do to avoid pointing out to them that that the country had been taken over by corporations shortly after Adam Smith wrote The Wealth of Nations” in 1776 and the budding US government adopted the ideas therein to fund their new country. The basic story of the proponents was that open source was good, so it should be mandated over closed source.

The opponents, on the other hand, were largely suit-wearing fellows from large groups of commercial software corporations (one of which didn’t hesitate to remind the esteemed committee that it’s member companies had paid $135M in Oregon state taxes last year). Their arguments were that undoubtedly open source software was clearly already being used by government bodies, that there was no rule against it and that their should likewise be no rules against proprietary software. Only Mike, owner of a small Oregon-based software company, and me, owner of nothing at all of interest, represented the little guy” on the opponent side (we stuck out because of the lack of either a neck tie or a suit coat).

19 copies of my written testimony were submitted without comment at the request of the chairman who assured the audience that all testimony would be read. My verbal testimony was limited to pointing out that shackling proprietary software was bad engineering” because it could easily cost the state of Oregon more money in the long run; maintaining source code is a lot more difficult than maintaining commercial software for normal humans. I also pointed out that being open source did not prohibit viruses or security problems; the first computer virus ever was written on a Unix, the predecessor to Linux and that they share an identical security model. To be fair, Unix wasn’t open source, but I stretched the truth less than the open source guys, so I didn’t feel too bad (Unix was source available” at the very least  : )  And finally, I let the committee know that open source didn’t mean open standards or open data formats and that, in fact, those were things that commercial software companies had done the most to bring into greater use over the years.

Having never done anything like that before, I wasn’t sure how well I’d done, but one of my fellow panelist (a procurement officer from another giant suit-wearing organization) wrote nice job” on his pad of paper while his colleague preached the wisdom of amending the language” of the bill to be more practical.”

At the end of the hearing, the chairman of the committee called out some names of the most credible, suit-wearing fellows from each side of the debate to form a working group to come up with a bill that the committee could actually consider submitting for a vote. The sub-text was that the bill as it currently stood was pretty silly; it didn’t allow any greater freedom to pick open source software but it did limit the ability to choose proprietary software, which wouldn’t make those Oregon software company tax payers happy. This seemed a most sensible conclusion to me and gave me confidence that our government isn’t so screwed up after all.

When the room was cleared, I was assaulted by one of the open source proponents, reminding me that Unix wasn’t open source and that Linux would never have any such problems (which makes the presence of virus protection software for Linux seem like a very poor business decision). I was also cross-examined by a tall, thin, balding, old-ish man with the longest grey beard I’ve ever seen in person. He seemed very knowledgeable and was very interested in the details of my opinions. He reminded me of nothing more than a fallen Richard Stallman in 30 years and added to the surreality of the morning.

On the way back to our cars, Mike thanked me for coming and asked if I was glad that I’d come. It surprised me to learn that I was. Not only did I feel that my “just a guy” presence helped the suits make their case, but I felt like I was doing my duty as a citizen. Who knows, this experience might bring out the politician in me. I’m sure I could do at least as well as Jessie Ventura. : )