015. Every Group Is Screwed Up

Hardcore Software by Steven Sinofsky (Audio Edition) - En podcast af Steven Sinofsky

Kategorier:

Back to 014. Chapter III. Executing on the Expansive Vision of Bill GatesEven to this day I get queasy when I think about being late to this first meeting. If you know me it makes no sense at all. I often wonder if the world was telling me something back then!I was hyperventilating by the time I got to BillG’s office, having raced from building 17 to the double-X building 8 overlooking the fountain. Being late was out of character for me. I never missed anything. At the time, it was entirely typical for BillG to be late. Bill totally changed this later in life and became maniacal about being on time.Once I made it to BillG’s office on the second floor (there was an executive suite, but no special receiving area or security or anything), his executive assistant, Julie Girone (JulieG), gave me the look one would expect to receive for showing up late. Still, she pointed to the open glass door, where I got another look, this time from BillG, that basically said, “Nice of you to show up.”BillG’s desk was a giant pile of memos, papers, magazines, books, a lot of three-ring binders for BillG Reviews, and two old school leather travel suitcases were by the door (I would learn that Bill traveled with one suitcase of clothes and one used as an over-stuffed briefcase and laptop bag). The bookshelves were jammed with more books and older review binders. He had the same oak desk that we all had, but he had the deluxe version with a credenza and a long bookshelf on the wall above. On the few bare walls, there was a framed poster of the layout of an Intel microprocessor and another of a radio wave spectrum map, and on a narrow column was a photo of Henry Ford. Behind the spectrum map was a secret white board.We sat on the standard-issue Microsoft couch. I tried an icebreaker by mentioning that I had been difficult to get ahold of during college recruiting season three years earlier. BillG un-hunched himself and laughed a bit too loudly with a single “Ha!” and then said, “And you were late to this.”Okay, this was going well.What was left of our hour was a blitz of questions—deep technical ones about Windows, C++, and Excel. The former surprised me in a sense because even though he had pushed so hard on NeXTStep, he was not as deep into programming Windows as I might have expected. The latter was interesting since he knew I didn’t work on Excel. As we talked about Excel, the questions were much more about user interface and topics such as handling text in the product, connecting to databases, and new features (at the time) such as toolbars (the rows of icons representing commands, that previously were hidden in menus or complex keyboard sequences) and automatically generating better charts and graphs.At one point, he said, “You seem to know a lot about Excel.”This surprised me and I wasn’t sure what to make of it. How could I not know about Excel as it was a flagship app? I was surrounded by the Excel team from ADC (from DougK through that talk with JonDe) through AFX (Jeff and RickP!). And I used it every day for computing all the stats about MFC.When we discussed Windows, his concern was performance as well as the difficulty of writing software for the platform compared to NeXT. I was super prepared to talk about that. While I was talking Bill would engage in his characteristic rock—a little hunched over, elbows on knees, rocking back and forth in his chair, lifting his toes in an almost choreographed manner, pausing only occasionally to push his eyeglasses back into position.He talked about C++ at length, without asking any questions, about extending C++ in a proprietary way to make it easier to write Windows programs. While this could, in hindsight, sound nefarious, it was not. First, Borland had not only done this but was touting it in the press. NeXT had essentially taken over a programming language, Objective-C, which was much more appealing to BillG than using an industry language like C++. And second, Microsoft had a long history of essentially owning a language going back to BASIC. This was how the industry worked. IBM owned COBOL and Fortran. Sun and the Unix world owned C. PCs owned BASIC. It seemed like a natural evolution waiting to be exploited to improve the platform. Over the years, we ended up having many debates about when and where proprietary languages and APIs made sense.Obviously, with our meeting cut short, a second one was needed. For this one, at Jeff’s suggestion, I brought some of the patents I had applied for in developing MFC and we talked about those. BillG loved patents and was interested in what I had filed as a result of working on C++. Patents were new to the company and we had heard the first mention of them at a recent all-company meeting where BillG said we would file patents more often going forward, but they would only be used defensively. This was a big deal because the libertarian streak among programmers was quite real and patents were viewed as almost anti-software by many developers, including me. This was also a response to ongoing litigation with Apple and a lawsuit between Borland and Lotus over whether user interfaces were patentable or simply copyright protected.I got the job and accepted it. I never really thought about the decision, almost entirely because Jeff told me I needed to do the job for the good of Microsoft. So yeah, that worked.I was never really sure how much thought Bill put into the role. My sense then and now was he was very happy with the way Aaron had provided a sounding board but remained lukewarm on the role. He was still scaling (as we say now) with the company and was still reluctant to let go. Later, I learned that after bumping into BillG prior to my official start while at Jeff’s wedding, and having little to say to one another, BillG sent a note to NatalieY expressing concern that I might be too “shy” for the role. At least he didn’t say something about my tardiness.I started in the new year, after we completed VC++ (RTM!) and our old AFX team was integrated with the larger C++ team in Languages. Right before I left for the holidays, I moved into my new office—my fourth office in three years. Tucked in the back of the executive suite was a supply closet and a small (smaller than typical) window office overlooking the fountain (so that was nice). I had the same oak desk and bookshelf but no room for a guest chair. I shared a wall with BillG on one side and Greg Maffei (GregMa), Microsoft’s then treasurer, on the other. The walls were thin. Greg talked loudly on the phone a lot.Aaron was still cleaning out his office when I arrived. It was a huge job as there were papers, boxes, books, magazines, products, and piles of stuff. While Aaron was finishing up packing, I began contemplating a trip to Fred Meyer for 409 and Lysol. I was always a bit finnicky between office moves.The first and most well-formed thing Aaron said to me was, “Look, you have to understand that every group is totally screwed up.”Okay. Well, that was good to know.Coincidently, BillG said this same thing to the Wall Street Journal in May 1990 when asked about a late product that year. “I’d say there’s as much screwed up now [at Microsoft] as there always is.” This was in an article at the launch of Windows 3.0 that chronicled all of Microsoft recent failures including OS/2, LanMan, and even optical drives (CD-ROM). Aaron explained that a big challenge in the job, one I still did not yet understand, was that there seemed to be an endless series of meetings. In each, every group presented what was going wrong. Even if they didn’t offer what was going wrong, the meeting would turn into a forum to find out what was going wrong. This focus on what was not working was a hallmark of not just BillG meetings but email and other interactions. There was little time to waste on what was working.He offered a second piece of advice. “Bill knows everything about every group and never forgets what they told him at the last review meeting.”Aaron said, “I thought he knew what was going on because they told him the last meeting and he remembered it. Then after meeting with some groups for a second time I realized he remembered everything—things I didn’t remember and even things the team didn’t remember (or wanted to forget) going into the meeting.” Good to know. My notetaking skills would be put to good use.With little additional guidance, he summed it up by saying the job would be what I wanted to make of it and to be helpful to BillG. His parting words were, “Start looking for your next job now because it is going to take you forever to decide which screwed-up team to join.”In hindsight, all of Aaron’s advice, what little he offered, proved correct.On to 016. Filling the Void Left By IBM This is a public episode. If you would like to discuss this with other subscribers or get access to bonus episodes, visit hardcoresoftware.learningbyshipping.com

Visit the podcast's native language site