According to a TheRegister, the Iowa v. Microsoft anti-trust case has been settled and as a side effect, the Iowa side's website has become passowrd protected. So, stuff like the following is now harder to find:
1 FOR THE IOWA DISTRICT COURT FOR POLK COUNTY
3 JOE COMES, RILEY PAINT, INC., an )
Iowa corporation, SKEFFINGTON'S )
4 FORMAL WEAR OF IOWA, INC., and Iowa)
corporation, and PATRICIA ANNE )
5 LARSEN,, )
6 Plaintiffs, )
7 vs. ) No. CL82311
8 MICROSOFT CORPORATION, a )
Washington corporation,, )
15 DEPOSITION OF
16 ANDREW SCHULMAN
18 VOLUME 2; PAGES 247 - 351
19 TUESDAY, FEBRUARY 6, 2007
23 REPORTED BY: HOLLY THUMAN, CSR No. 6834, RMR, CRR
1 I N D E X
2 INDEX OF EXAMINATIONS
EXAMINATION BY: PAGE
MR. HOLLEY 250
6 EXHIBITS MARKED FOR IDENTIFICATION
7 NO. DESCRIPTION PAGE
8 15 Supplemental Expert Report of Andrew 250
16 Federal Register: November 28, 2001 274
10 (Volume 66, Number 229)
11 17 Response of the United States to Public 283
Comments on the Revised Proposed Final
13 18 February 2, 2007 Zelle, Hoffman letter 303
from James S. Reece to Jay Jurata, with
14 attached handwritten notes
2 Deposition of ANDREW SCHULMAN, taken by the
3 Defendant, at HELLER EHRMAN LLP, 333 Bush Street, San
4 Francisco, California 94111, commencing at 9:04 a.m., on
5 TUESDAY, FEBRUARY 6, 2007, before me, HOLLY THUMAN, CSR,
6 RMR, CRR.
9 FOR THE PLAINTIFFS:
10 ZELLE HOFMANN VOELBEL MASON & GETTE
550 South Hope Street, Suite 1600
11 Los Angeles, California 90071
By: STEVEN A. LAMB, Attorney at Law
13 FOR THE DEFENDANT:
14 SULLIVAN & CROMWELL LLP
125 Broad Street
15 New York, NY 10004-2498
By: STEVEN L. HOLLEY, Attorney at Law
17 HELLER EHRMAN LLP
275 Middlefield Road
18 Menlo Park, CA 94025
By: ROBERT HAWK, Attorney at Law
20 ALSO PRESENT: John K. Bennett, Ph.D.
1 SAN FRANCISCO, CALIFORNIA; TUESDAY, FEBRUARY 6, 2007
2 9:04 a.m.
4 ANDREW SCHULMAN,
6 called as a witness, who, having been first duly sworn,
7 was examined and testified as follows:
9 EXAMINATION BY MR. HOLLEY
10 MR. HOLLEY: Q. Can you please state your full
11 name for the record, sir?
12 A. Andrew Schulman, S-C-H-U-L-M-A-N.
13 Q. Okay. And have you submitted a supplemental
14 expert report in this case dated December 19, 2006?
15 A. I don't remember the date exactly, but yes,
16 I've submitted a supplemental report.
17 Q. Okay. I'd like to mark as Exhibit No. 15 a
18 document entitled supplemental expert report of Andrew
20 (Deposition Exhibit 15 was marked for
22 MR. HOLLEY: Q. Showing you what's been marked
23 now as Exhibit No. 15, is this a copy of your
24 Supplemental Expert Report with the Materials Considered
25 list next to it?
1 A. Yes, it is.
2 Q. And I notice that you have a document with you
3 here today. Is that an annotated version of what's now
4 been marked as Exhibit 15?
5 A. It is an annotated version of the -- what has
6 been marked as Exhibit 15, with -- without the Materials
8 Q. Just the report --
9 A. Correct.
10 Q. -- pages 1 through 16? Or maybe I've got the
11 number wrong.
12 A. 15.
13 Q. Okay. Right.
14 A. At least on mine.
15 Q. There's actually a signature page, which is 16.
16 But --
17 A. Oh, is that -- and I -- your title page has an
18 implied page 1 on it.
19 Q. Got you. Okay.
20 Can you tell me what you did to prepare for
21 your deposition today, Mr. Schulman?
22 A. Yes. I reread the supplemental report. I
23 looked at the Materials Considered. I had a discussion
24 yesterday with Mr. Lamb. I think that's it.
25 Q. Did you talk to Geoffrey Chappell about
1 preparing for your deposition?
2 A. Geoff Chappell, no. That's G-O-E-F-F.
3 Q. Did you talk to Mr. Chappell in connection with
4 the preparation of your Supplemental Expert Report?
5 A. No.
6 Q. When you say that you reviewed the Materials
7 Considered list, which is at the back of Exhibit 15, did
8 you just look at the list, or did you review particular
9 documents that are referred to in the list?
10 A. I did look at some of the documents that are in
11 the list, as well as paging through and --
12 Q. Are there particular documents that you recall
13 looking at in this list? It's obviously not a memory
14 quiz --
15 A. Right.
16 Q. -- but are there particular things that come to
17 mind that you did look at in preparation for your
19 A. Yes. I looked briefly at Dr. Emmerich's book
20 cited towards the middle of page 15.
21 Q. That's the book entitled Engineering
22 Distributed Objects?
23 A. Correct.
24 Q. I looked again at Dr. Bennett's article on
25 distributed smalltalk.
1 I looked at Butler Lampson's classic piece
2 on -- towards the top of page 16, and enjoyed rereading
3 again Thompson's "Reflections on Trusting Trust," which
4 everyone should read at least once a year.
5 Oh, and I looked at the next article as well,
6 "Interaction of Architecture and Operating System
8 On page 17, I reviewed Stahl's patent,
10 Towards the bottom of that page, I looked again
11 at the website of the Technical Committee, the portion
12 relating to the ISV settings manager.
13 I'm -- I hope this is going to be complete.
14 That would apply as well to a somewhat
15 duplicative reference on page 22 in the middle.
16 Q. To the Frequently Asked Questions section of
17 the TC's website? Is that what you're referring to?
18 A. No -- oh, yes. Yes, correct. Yes. It says
19 FAQ there.
20 Would you like me to keep going?
21 Q. Sure. I --
22 A. Yeah, we're almost there.
23 Oh, no wonder I can't see. I have my wrong
24 glasses. I've never mastered the art of bifocals. But
25 I wondered why I was having trouble. Much better.
1 I looked at one of the CNET news.com articles
2 on page 26, I think it was the "Gloves come off in
3 Symantec Microsoft dispute." Or, it was Symantec,
4 "Microsoft won't give us key Vista tech."
5 Q. Okay.
6 A. And I just looked at -- I couldn't remember
7 what that was about, and I just looked at it to jog my
8 memory that it had to do with the Defender API.
9 Almost there. I think that's it.
10 Q. Okay. Can you tell me why you had occasion to
11 consider in preparing your Supplemental Expert Report
12 various Wikipedia articles and websites relating to auto
14 A. Yes. Well, this -- first of all, this list is
15 not simply materials in connection with my supplemental
17 My understanding at the time that I put this
18 list together was that the defendants wanted everything
19 that has passed before one's eyes in possible connection
20 with this case. And so there are things in here which
21 really have nothing to do with my supplemental report;
22 and I would say that the materials on the auto industry
23 at the bottom of page 23, and somewhere else in here --
24 yeah, bottom of 28, would fall into that category.
25 Q. Can you tell me how the references to auto
1 parts in general bears on your testimony in this case?
2 A. The expert witnesses for Microsoft have at
3 several times over the years made analogies of various
4 sorts between the software industry; and in particular,
5 its evolution over time on the one hand, and the
6 evolution over time of the automobile.
7 And in particular, because I know nothing about
8 cars -- I am a native New Yorker who does not know how
9 to drive -- I thought it would be helpful if I would
10 educate myself a little bit about this analogy which has
11 been brought up several times over the years.
12 Q. What conclusions if any did you reach based on
13 your review of car parts articles from Wikipedia and
14 websites of various car parts suppliers?
15 A. That there appears to be an extensive industry
16 of suppliers of parts to the manufacturers of what one
17 might otherwise think of as tightly integrated consumer
18 products. The automobile that you actually buy from the
20 Q. In reaching that conclusion, did you consider
21 the relationship between the after-market for automobile
22 parts as spares relative to OEM purchases of parts from
24 A. Yes. That --
25 Q. Okay. And what conclusions, if any, did you
1 reach about the relative way in which those two segments
2 of the car parts business operate?
3 A. Simply that -- first of all, that there were
4 two sections, and that they seemed to be somewhat
5 distinct. But that parts would not only mean parts
6 available in the after-market, but would also mean parts
7 in what in the computer industry we call the OEM market.
8 I don't know that that term is used in the auto
10 Q. It actually is. But --
11 A. Okay.
12 Q. I have a history of car parts deals in my past.
13 But they weren't very interesting.
14 Can you tell me, turning to your report, what
15 DirectUI does?
16 A. DirectUI is a set of APIs having to do with the
17 user interface. That's what the UI stands for.
18 The Direct parts seem to have been -- that
19 nomenclature seems to relate in general to a series of
20 Microsoft technologies DirectX, where X would be
21 replaced by some other name. Video or something like
23 It is in particular for the -- in use when one
24 type of window manager is managing Windows from a
25 previous or an older windowing system or a set of
1 windowing APIs.
2 Q. Is it a subset of the functionality in
4 A. No.
5 Q. It is not?
6 A. It is not a subset of what's in user32.
7 Q. Can you use user32.dll to do the same things
8 that you can do with DirectUI?
9 A. Not exactly, no.
10 Q. Okay. Do you know which team within Microsoft
11 originally developed the DirectUI code?
12 A. Team. I know the name of the person. I'm not
13 recalling what team.
14 Q. Well, was it in the Windows team, the Office
15 team, some other part of the company? Do you know?
16 A. I am fairly sure that it was in the Windows
17 team, because some of the early work in DirectUI or
18 DUser was related to the log-on component of Windows.
19 Q. Do you know what functionality that Windows XP
20 gets from DUser and DirectUI?
21 A. I believe a good way to summarize it would be,
22 as I said before, the host -- well, I didn't use the
23 word hosting, but the hosting of one type of window
24 management scheme within a known.
25 Q. Are those types sometimes referred to as
2 A. Gadgets --
3 Q. Gadgets.
4 A. -- is the term I believe that's actually used
5 within DirectUI.
6 Q. Okay. Do you know anything that you can do
7 with DUser and DirectUI that you cannot do using other
8 facilities within Windows?
9 A. When you say cannot do, you mean at all?
10 Q. That was my question, yes.
11 A. Well, like -- I'm sorry, could you repeat the
13 Q. Sure. What if anything are you unable to do
14 with other facilities in Windows that you can do with
15 DUser and DirectUI?
16 A. Given that DUser itself is built using Windows
17 functionality, in that sense, there is -- in the
18 absolute sense that your question poses it, there is
19 nothing that one could not do with some amount of time,
20 effort, duplication, do with DirectUI that you could
21 not -- that could not be done with Windows without
23 Q. Okay. How many different implementations in --
24 within Microsoft's family of products are there of code
25 called DUser and DirectUI?
1 A. If by implementations you mean copies of the
2 code that have any distinction whatsoever, there is a
3 copy of it, of course, in DUser.dll, and presumably
4 different versions of DUser.dll. There is a copy of it
5 within MSO.dll, which is Microsoft Office.
6 I'm trying to remember. It might be in
7 GDIplus, but I may be mistaken about that. I may be
8 confusing it with something else.
9 Q. Is it your testimony that there is something
10 improper about Microsoft taking a technology like DUser
11 and DirectUI and having copies appear in multiple
12 products throughout the company?
13 A. I would not use the word "improper." Could you
14 rephrase the question or --
15 Q. I'm just trying to understand the sort of gist
16 of the opinion you're offering here.
17 Are you only observing the fact that there are
18 different implementations, or are you making some
19 normative judgment about the fact that code has been
20 copied from Windows and put in Office?
21 A. Again, it's not normative. It has -- maybe
22 another way to do this is that it has implications
23 beyond itself. Again, I wouldn't say "improper" or use
24 some normative judgment. But I'm not simply making some
25 idle, oh, this is interesting statement, either.
1 Q. Well, what implications do you --
2 A. Fine.
3 Q. -- see from the fact that there are these
4 copies of DUser on DirectUI in different Microsoft
6 A. One -- sorry, let me start that sentence again.
7 I think the main implication of the copying of
8 code from DUser.dll, or the presence of multiple copies
9 of the code, both in DUser.dll and in MSO.dll, and I
10 believe in other modules as well, is that when looking
11 for uses of APIs in Windows that have not been
12 documented, but which are used by other Microsoft
13 software that I at least would regard as separate from
14 Windows, that it is not enough simply to look for calls
15 from, say, for example, Microsoft Office to DUser.dll,
16 as I would have done, say, when I was writing my
17 "Undocumented" books.
18 And that instead, one also has to now look for
19 copies that have been made of software that resides in
20 Windows, or in components shipped with Windows, where
21 another implementation of that same code also resides in
22 the other product.
23 Q. But if Word, Microsoft Word, is calling
24 something which is implemented or statically linked into
25 MSO.dll, it's not calling with Windows. Right? It's
1 calling internal to office.
2 A. That is -- that is true. Nonetheless, this is
3 getting at what I'm saying, is that -- let's say that
4 Microsoft were to assert that Microsoft Office makes no
5 use of functionality in Windows that has not been made
6 available to independent software vendors. Let's just
7 say that the statement has been put in that form. And
8 let's say that as -- that what has happened is that
9 functionality that is in Windows is also in --
10 statically linked, as you say, into MSO.dll, and that
11 that then is viewed by Microsoft or by its experts as
12 consistent with the statement that, quote, "Microsoft
13 Office doesn't use anything in Windows that is not made
14 available to ISVs," I think -- it's a very literal
15 interpretation -- I'm sorry, this statement is -- this
16 sentence is incoherent.
17 Q. I was following you.
18 A. Right, right, right, I think it -- you can
19 follow what I'm saying; it just is probably going to
20 look like garbage in the transcript.
21 Q. Well, if you want to say it again, I'm happy.
22 I mean, I understand what you're saying.
23 A. Right. Fine, very good.
24 Q. Okay. To what extent do the implementations of
25 DUser and DirectUI in Office diverge from the ones in
1 Internet Explorer, MSN Messenger, Windows XP?
2 A. The -- I think I was asked this at my earlier
3 deposition. And it looks like a smaller -- it looks
4 like a subset of the code. In some cases, it's
5 absolutely identical.
6 I think it looks like -- this isn't exactly an
7 answer to your question -- it looks like that sort of
8 typical run of Microsoft Word, you create a document,
9 you type some text, you put in a table, do a little bit
10 of text tricks, like a text box.
11 It looks like about 30 different DUser APIs are
12 actually called in that scenario. And I think that that
13 largely encompasses the actual code that is in MSO.dll.
14 Q. Do you know the extent to which the Office team
15 has changed the code that they took several years ago
16 from the Windows team in order to better support their
17 uses of that code, even though they still have similar
19 A. Well, again, some of it is identical. And
20 then, yes, other parts of it are different. Whether
21 those differences are changes that were made by the
22 Office group, whether it simply reflects the time at
23 which the snapshot, quote unquote, was made, I don't --
24 I don't recall.
25 Q. Shifting gears to line services, MSLS, can you
1 tell me what that does?
2 A. That is a set of APIs for the manipulation of
3 lines of text.
4 Q. Is there anything that one can do with
5 MSLS31.dll that cannot be done using other facilities in
7 A. My answer to that would be the same as with
8 DUser. The way you have asked the question cannot be
9 done, no.
10 Q. Do you know who originally developed the line
11 services code base?
12 A. I know one of the names, simply because it's
13 someone I know and have worked with, is Murray Sargent.
14 I know he was one of the early people who worked on it.
15 I think he may have been working on RichEdit at
16 the time. What group he was in at the time, I don't
18 Q. Can you tell me any Microsoft applications that
19 directly call MSLS31.dll in the operating system, as
20 opposed to calling RichEdit, which then calls MSLS31?
21 A. The -- I believe that all the uses of MS -- of
22 MSLS APIs that I have referred to in both of my reports
23 are calls to the MSLS APIs, not via RichEdit. Whether
24 they are calls to MSLS31.dll or to copies of MSLS that
25 have been incorporated into the software is a different
1 issue. But I don't believe I've been concerned with
2 calls via RichEdit.
3 Q. Okay. So to the extent there are such calls,
4 that's not something you've concerned yourself with,
5 these indirect calls?
6 A. Right. Right. That's --
7 Q. I got it.
8 How many different versions of the Microsoft
9 line services functionality exist in Microsoft products?
10 A. Well, there's -- there was MSLS2, there was
11 MSLS31. There is a copy of it in MSO9.dll, MSO.dll.
12 Again I am thinking that it -- yes, it's in GDIplus.dll,
13 or at least one version thereof, and that same would
14 apply here.
15 That's all I remember now. And if I could just
16 correct, or addend one thing that I said about DUser,
17 because I see a note I made to myself, which is that in
18 IE7, there is DUser code in IEUI.dll.
19 Q. Okay.
20 A. So I apologize for not bringing that up sooner.
21 Q. I appreciate that. Do you know to what extent
22 the Microsoft line services code in Windows versions
23 is -- has diverged from the Microsoft line services code
24 which is in Office products?
25 A. Well, I think I addressed this, at least from a
1 source code perspective, in my supplemental report.
2 Again, there's very substantial identicality
3 for some of the code. It's not completely 100 percent
4 the same between the versions in Microsoft Office and in
5 MSLS31. Anyway, that's ...
6 Q. Okay. If you took all of the interfaces that
7 are described in your Supplemental Expert Report, what
8 fraction of 1 percent of total Windows interfaces would
9 we be talking about?
10 A. What fraction of 1 percent?
11 Q. Well, if it's higher than 1, tell me.
12 A. No, I just wanted to make sure I heard.
13 There's various ways to count this. I'm sure
14 by almost any unit of measurement, it was something less
15 than 1 percent. Whether you're counting different --
16 simply each interface as one, or if you're counting the
17 amount of code that's taken to implement the interface,
18 yeah, it's -- it's less than 1 percent.
19 Q. Well, isn't it dramatically less than 1
21 A. I don't know how much --
22 MR. LAMB: Objection. Vague and ambiguous as
23 to "dramatically."
24 THE WITNESS: I don't know how much drama there
25 is in this. I -- you know, if you can extract some
1 drama from this, this number, that's -- more power to
3 MR. HOLLEY: Q. Well --
4 A. It's substantially -- there are a -- less than
5 1 percent, I'm sure, is true, the number of undocumented
6 APIs used by Microsoft applications in Microsoft
7 middleware that is not documented compared with the
8 number of total documented interfaces that are part of
9 the Windows platform API.
10 Q. Well, what is the -- we're doing this relative
12 A. Yeah, yeah.
13 Q. Do you have a number in mind for the
14 denominator? I mean, how many total interfaces are
15 published for the Windows product?
16 A. Well, Microsoft has a -- well, for the Windows
17 product -- so in other words, these are not simply the
18 Win32 APIs that it you're asking about, but what
19 Microsoft calls Windows platform APIs.
20 Q. Yes.
21 A. Oh, there's -- probably about 10,000. Could be
22 more than that. The Win32 APIs, significantly smaller.
23 Q. How much smaller, if we're just limiting it to
25 A. Oh, I think there's about a thousand, 1500.
1 Microsoft has different lists which are not always
2 consistent with each other of what comprises which API.
3 And, you know, then of course, my number of the Windows
4 APIs based on my inspection of the binaries might be
5 significantly larger, in fact. You might like my
6 denominator more than Microsoft's. So ...
7 Q. Why is that?
8 A. Well, since I --
9 MR. LAMB: Objection to the extent it calls for
10 speculation as to what Mr. Holley would like.
11 MR. HOLLEY: Q. I don't -- I'm happy to
12 rephrase the question.
13 Why under your methodology might it be that the
14 number of APIs is substantially larger than what
15 Microsoft says it is?
16 A. Simply because if I were to look at every
17 export -- say named export from a module that ships with
18 Windows, and if I were to say, that's an API, and -- and
19 I don't think I would do that, because I would then also
20 look at how that interface is used by other components.
21 But I think I could come up with a much larger number.
22 Q. I'd like to look at a statement which appears
23 on page 5 of Exhibit 15, which is your supplemental
24 report. And it's the paragraph at the bottom, which
25 says, "As noted in paragraph 34e of my earlier report,
1 Geoff Chappell has researched" --
2 A. I'm sorry, I --
3 Q. I'm looking at --
4 A. Oh, okay. It's page --
5 Q. Sorry. I --
6 A. Let me -- no, no, it's not your problem at all.
7 Yes, okay, I got you.
8 Q. So let me start again. I want to direct your
9 attention to the statement at the bottom of this page --
10 A. Yes.
11 Q. -- which says that:
12 "As noted in paragraph 34e of my earlier
13 report, Geoff Chappell has researched APIs that
14 reside in Windows components such as shell32.dll
15 and shlwapi.dll, and that are used by IE
16 components such as shdocvw.dll and MSHTML.dll."
17 A. Uh-huh.
18 Q. I am trying to understand the distinction
19 that's being drawn in this sentence between Windows
20 components on the one hand and IE components on the
22 How do you make that distinction?
23 MR. LAMB: Mr. Holley, before you go on, if I
24 may, you are phonetically describing these. And if
25 you're intending to list a specific file, I just don't
1 think there's any way this court reporter can do that,
2 unless you spell it out by letter.
3 It's your depo; you can do what you want to.
4 But I'm just thinking about how the transcript might
5 look. So just consider that.
6 MR. HOLLEY: That's a fair --
7 MR. LAMB: And do what you need to do.
8 MR. HOLLEY: That's a fair criticism, Mr. Lamb.
9 MR. LAMB: Not a criticism.
10 MR. HOLLEY: At the first break, I'll explain
11 what those are.
12 MR. LAMB: Okay.
13 MR. HOLLEY: Q. So my question to you,
14 Mr. Schulman, is, how do you draw this distinction
15 that's referred to in the sentence that I read to you?
16 A. Well, in the case of IE -- IE components such
17 as shdocvw and MSHTML, quote unquote, that's prior to
18 IE7, Microsoft itself indicated that those were the two
19 major pieces of functionality to which it had attached
20 the name Internet Explorer.
21 And so therefore -- well, I don't believe
22 anyone has made the argument that shell32.dll, for
23 example, is part of internet Explorer, or that
24 shlwapi.dll is.
25 And there seems to be fairly universal
1 agreement that shdocvw and MSHTML were the core
2 functionality of Internet Explorer. So I think it was a
3 fairly ready distinction to make.
4 Q. Is wininet.dll part of what you call IE?
5 A. Wininet. I don't really remember much about
7 Q. How about urlmon.dll?
8 A. URL monicker. Again, I don't -- I don't
10 Q. Okay. What about the file called IExplorer --
11 A. Wait a minute. I just want to make a note to
12 myself, because those are interesting questions.
13 Okay, I'm sorry, I'm with you.
14 Q. One more file I'd like to ask you about. The
15 stub executable called IExplorer.exe, is that part of IE
16 or is that part of Windows, in your view?
17 A. That is part of Internet Explorer by its very
19 Q. Now, have you had occasion to review the final
20 judgment in United States against Microsoft to determine
21 how that document defines Internet Explorer?
22 A. I have reviewed that document. I'm not now
23 recalling a specific module-by-module definition of
24 internet Explorer in that document.
25 Q. Well, there is a definition of Microsoft
1 middleware product. Correct?
2 A. Yes. Yes, I'm quite familiar.
3 Q. And that definition includes, by its very
4 terms, the Internet Explorer. Correct?
5 A. Yes, it does.
6 Q. And it defines the Microsoft middleware product
7 not by what Microsoft has said in the past, but by what
8 code is redistributed by Microsoft as IE. Correct?
9 A. I think it's distributed separately from --
11 Q. Okay. So if shell32.dll and shlwapi.dll are
12 redistributed by Microsoft as part of Internet
13 Explorer 6 or Internet Explorer 7, they are part of IE
14 for purposes of the final judgment?
15 MR. LAMB: Objection to the extent it calls for
16 a legal conclusion.
17 THE WITNESS: That's an interesting statement.
18 I think if you were to conclude that there
19 would be -- well, I'm sorry, what was the question?
20 Q. Sure. If Section IIId of the consent decree
21 defines Microsoft middleware product as the code which
22 is separately distributed by Microsoft to upgrade
23 existing copies of Windows, that's assumption A; and
24 assumption B is --
25 A. Wait, wait, wait. Wait. Say it again? I'm
1 sorry. I'm sorry --
2 Q. I'm happy to start again.
3 If Section IIId of the consent decree defines
4 Microsoft middleware product as the code which is
5 separately distributed by Microsoft to update existing
6 copies of Windows --
7 A. Very good.
8 Q. -- and if in the redistributable for Internet
9 Explorer 6, shell32.dll and shlwapi.dll are included,
10 then they are internet Explorer for purposes of the
11 final judgment.
12 A. No.
13 MR. LAMB: Objection. Calls for --
14 THE WITNESS: Absolutely not.
15 MR. LAMB: Wait minute. Objection. Calls for
16 a legal conclusion, incomplete hypothetical.
17 You can answer now.
18 THE WITNESS: Okay. Well, I can see how, yes,
19 the way the question has been phrased, you are asking
20 for a legal conclusion. But I think I can still
21 approach it from a technical matter.
22 The first part of what you read me said,
23 something separately distributed to update the Windows
24 operating system, didn't have anything about, and, you
25 know, named by Microsoft as part of Internet Explorer in
1 there. It was just, distributed separately to update
2 Windows. Correct?
3 MR. HOLLEY: Q. Uh-huh.
4 A. Well, by that definition, every -- you know, if
5 Microsoft patches -- issues a patch that includes
6 User32.dll or GDI32.dll, then by the logic that I think
7 was behind your question, you would say, well, that's
8 internet Explorer.
9 Q. Well, let's mark --
10 A. That can't be. It's not a sensible definition.
11 And Microsoft itself is not operating under that
12 definition. If you look at the APIs that Microsoft
13 has -- says that it has documented as part of the
14 consent decree, it would have no reason to document
15 those APIs if your definition were correct.
16 Q. Well, have you read the Justice Department's
17 response to public comments on the definition of
18 Microsoft middleware product?
19 A. I don't recall that.
20 Q. Okay. Well, why don't we mark first as
21 Exhibit 16 an excerpt from the Federal Register dated
22 November 28, 2001, which is the Justice Department's
23 Proposed Final Judgment and Competitive Impact
25 MR. LAMB: Counsel, what does this have to do
1 with the supplemental report?
2 MR. HOLLEY: Because the supplemental expert
3 report claims that Microsoft is not in compliance with
4 the final judgment. And I want to test that
5 proposition, because I think it's based on a mistake.
6 (Deposition Exhibit 16 was marked for
8 MR. LAMB: Where does it say that, it's not in
9 compliance with the final judgment?
10 MR. HOLLEY: Q. Well, it says in paragraph j,
11 sub j in page 8:
12 "Based in part on the above facts, I conclude
13 that an effort to systematically locate APIs for
14 disclosure under the final judgment would have
15 uncovered the APIs described above, and more."
16 MR. LAMB: I think don't see how that applies
17 to whether or not you can ask questions about whether
18 there's compliance with the final judgment.
19 MR. HOLLEY: Well, I'm certainly entitled to
20 ask questions about this sentence, however, we --
21 MR. LAMB: Sure.
22 MR. HOLLEY: Q. -- characterize it. Okay.
23 Let's talk about the sentence.
24 MR. LAMB: Yeah, go ahead and do that. Maybe
25 I'm not tracking it. I apologize.
1 MR. HOLLEY: No, no.
2 MR. LAMB: It's been known to happen.
3 MR. HOLLEY: Q. So Mr. Schulman --
4 A. Yes.
5 Q. -- I'd like to direct your attention first to
6 page 8 of 62 at the top of this document. And to
7 paragraph D, which says, "Starting at the earlier of the
8 release of Service Pack 1" --
9 THE WITNESS: Sorry, my pages don't match.
10 MR. HOLLEY: Q. Oh, I'm sorry. It looks like
11 I have a different one --
12 A. Can you give the page number that starts with
13 59000? Do you have those?
14 MR. LAMB: You know what? He has a computer
15 printout version that's different from your exhibit.
16 That's the problem.
17 MR. HOLLEY: Oh. Oh. That's not good.
18 MR. LAMB: Do you have another one of these?
19 Can you maybe look at it in this?
20 MR. HOLLEY: I'll look at that one, yes.
21 Sorry, that's my mistake.
22 MR. LAMB: He's got a different version that he
23 used for his notes, so it's a little different. It will
24 take him a second, but I think he can find it.
25 MR. HOLLEY: Q. So with apologies,
1 Mr. Schulman, the one numbered 6 at the bottom. And
2 there's a paragraph D which says:
3 "Starting at the earlier of the release of
4 Service Pack I for Windows XP or 12 months after
5 the submission of this Final Judgment to the
6 Court, Microsoft shall disclose to ISVs, IHVs,
7 IAPs, ICPs and OEMs, for the sole purpose of
8 interoperating with a Windows operating system
9 product via the Microsoft Developer Network
10 (MSDN) or similar mechanisms, the APIs and
11 related documentation that are used by Microsoft
12 Middleware to interoperate with a Windows
13 operating system product."
14 And then it goes on to say:
15 "In the case of a new major version of
16 Microsoft Middleware, the disclosures required by
17 this Section III.IIId shall occur no later than
18 the last major beta test version of that
19 Microsoft Middleware. In the case of a new
20 version of a Windows operating system product,
21 the obligations imposed by this Section IIId
22 shall occur in a timely manner."
23 And is it your understanding that this is the
24 provision of the final judgment that requires Microsoft
25 to locate APIs for disclosure, as you refer to on page 8
1 of your supplemental report?
2 A. Well, I have not seen this document in this
3 form before, so what you have read to me and what I'm
4 looking at certainly seems pertinent.
5 This looks -- this certainly -- this does not
6 look like a complete statement of the obligation as I
7 understand it.
8 Q. Well, what's incomplete about it in your
10 MR. LAMB: Objection to the extent it calls for
11 a legal conclusion.
12 THE WITNESS: Well -- well, again, unless -- if
13 I -- I'm somehow not seeing it in these few lines, I
14 don't see anything about the distribution of the
15 middleware, which was -- which you had read me several
16 questions ago.
17 MR. HOLLEY: Q. That's a fair point. So maybe
18 what we should do is look on page 16 at the bottom to
19 the definition of Microsoft Middleware, which appears
20 under J.
21 A. Okay.
22 Q. And that says:
23 "Microsoft Middleware means with software
24 code that: 1, Microsoft distributes separately
25 from a Windows operating system product to update
1 that Windows operating system product; 2, is
2 trademarked; 3, provides the same or
3 substantially similar functionality as a
4 Microsoft Middleware product; and 4, includes at
5 least the software code that controls most or all
6 of the user interface elements of that Microsoft
7 Middleware. Software code described as part of
8 and distributed separately to update a Microsoft
9 Middleware product shall not be deemed Microsoft
10 Middleware unless identified as a new major
11 version of that Microsoft Middleware product. A
12 major version shall be identified by a whole
13 number or by a number with just a single digit to
14 the right of the decimal point."
15 A. Okay.
16 Q. Now, with this definition of the term
17 "Microsoft Middleware" which is used in paragraph IIId
18 that we read earlier, is it your understanding that this
19 is what requires Microsoft to identify APIs for
20 documentation under the final judgment?
21 A. I believe so. Again, it's -- I would want to
22 look at the whole thing in more leisure, but that sounds
24 Q. Okay. So let's go back to the question that I
25 was asking you earlier.
1 If Microsoft in releasing Internet Explorer 6,
2 which under the definition J is something distributed
3 separately from a Windows operating system to update
4 that Windows operating system; it's trade marked,
5 because Internet Explorer is a trademark; it provides
6 the same or substantially similar function amount as a
7 Microsoft middleware product, because after all, it's
8 one of the listed web browser in there --
9 A. Yes.
10 Q. -- and it includes at least the software code
11 that controls most or all of the user interface elements
12 of that Microsoft middleware. So IE6 meets this
13 definition of Microsoft middleware.
14 If IE6 includes shell32.dll and shlwapi.dll,
15 they are part of Microsoft middleware for purposes of
16 IIId. Right?
17 MR. LAMB: Objection. Calls for a legal
19 THE WITNESS: I really am not seeing how that
21 I think it would be helpful, in considering
22 this question, if you had a complete list of the modules
23 that are included in a given Internet Explorer update
24 that you would like us to discuss.
25 MR. HOLLEY: Q. Well, presumably, you looked
1 at that before you --
2 A. I have.
3 Q. -- reached the conclusion that you reach in
4 No. 5 on page 5 that even after the final judgment in
5 the United States v. Microsoft, a large number of APIs
6 used by Microsoft middleware remain undocumented.
7 I mean --
8 A. Yes.
9 Q. -- before you offered that opinion, I presume
10 you knew what was in the redistributable code of
11 Internet Explorer 6 and 7.
12 A. Yes.
13 Q. Okay.
14 A. But it would not have occurred to me that every
15 module that Microsoft chooses to put in a given
16 distribution, under the name Internet Explorer -- it
17 would not have occurred to me to say that therefore, by
18 definition, for purposes of assessing what the consent
19 decree means, that any such module that is shipped with
20 a given internet Explorer update is therefore not part
21 of Windows.
22 Q. Well, take a look at page 27 of Exhibit 16,
23 under the heading, 4 -- excuse me, explanation of the
24 proposed final judgment. And this is the Department of
25 Justice's competitive impact statement.
1 Have you ever read that before?
2 A. I have not.
3 Q. Okay. And under Section IV(A), it says:
4 "A number of the definitions contained in the
5 Proposed Final Judgment are essential to
6 understanding the proper construction of the
7 scope of the requirements and restrictions
8 contained in the Proposed Final Judgment."
9 And then feel free to read as much of the next
10 paragraph as you want about Microsoft middleware. But
11 my question to you is, doesn't it say that the
12 redistributable package of code, whatever is in there,
13 that constitutes Internet Explorer is the Microsoft
14 middleware for purposes of Section IIId?
15 A. Could you please point me to where in that long
16 paragraph it says whatever is in there?
17 Q. Sure.
18 MR. LAMB: Objection to the extent it calls for
19 a legal conclusion.
20 MR. HOLLEY: Q. It says, "Microsoft
21 Middleware, a defined term, is the concept that triggers
22 Microsoft's obligations."
23 And then it goes on to say, about midway down:
24 "Microsoft typically develops and distributes
25 a 'redistributable' associated with Microsoft
1 Middleware products. For instance, Microsoft
2 offers a redistributable of Internet Explorer 6,
3 which is a set of software code that is
4 distributed separately under the Internet
5 Explorer trademark and has the same functionality
6 as Internet Explorer in Windows XP. This block
7 of software code is the Microsoft Middleware."
8 A. Well, that is very interesting.
9 Well, I certainly want to read this whole
10 document at my leisure. But that is -- that is quite
11 interesting. And without drawing any legal conclusions,
12 if -- if the interpretation that you've putting on
13 this -- and which certainly -- from the face of it, from
14 this first reading, seems like a reasonable
15 interpretation of what these words say -- if that's
16 true, then the -- then I don't see why Microsoft has
17 disclosed nearly anything, supposedly under this
19 Why disclose interfaces that live in shlwapi,
20 for example, and that are called by shdocvw, if your
21 interpretation of this is correct? It doesn't --
22 Q. So maybe Microsoft has done more than it was
23 required to do under the consent decree?
24 A. Well, that's one -- that is -- yes, if the
25 consent decree requires, for purposes of interface
1 disclosure, so little, and gives Microsoft such
2 completely free rein to redefine at any given time what
3 constitutes middleware simply by adding another module
4 to an update package, then yeah. It's -- if those
5 things are true.
6 MR. HOLLEY: Okay. I'd like to mark as Exhibit
7 No. 17 the Response of the United States to Public
8 Comments on the Revised Proposed Final Judgment dated
9 February 7 -- excuse me, February 27, 2002.
10 (Deposition Exhibit 17 was marked for
12 MR. HOLLEY: Q. Have you ever seen this
13 document before, Mr. Schulman?
14 A. Certainly not in this form. And it does not --
15 just flipping quickly through the contents, it does not
16 look familiar.
17 Q. Okay. I'd like to direct your attention to the
18 page numbered 44 at the bottom. And it says in
19 paragraph 78:
20 "Some commentators argue that it is
21 inappropriate for Microsoft Middleware to depend
22 on separate distribution from a Windows Operating
23 System Product. They argue that there is no
24 logical reason for just a distinction and that
25 requiring separate distribution merely provides
1 another way for Microsoft to avoid its disclosure
3 Then did goes on to say:
4 "The definition requires separate
5 distribution for two reasons. First, there must
6 be a straightforward and enforceable way to
7 determine which software code is implemented.
8 Separate distribution provides a clear line
9 between two segments of code."
10 Now, had you before this morning considered
11 that issue which the Justice Department is describing,
12 which is that the -- drawing the line at the
13 redistributable package provides a bright line so that
14 Microsoft knows what it has to do?
15 A. I certainly had considered the issue that there
16 needs to be some ability to determine which modules are
17 on which side of a line for purposes of understanding
18 and complying with this.
19 Q. But before you got here this morning, did you
20 know that the Justice Department had publicly stated
21 that the reason why it agreed to the line it agreed to,
22 which is whatever is in the redistributable package --
23 A. Wait. That language, whatever's in the
24 redistributable package, I don't think that's -- that
25 language is in there.
1 Q. Well, but it does say in the Competitive Impact
2 Statement that the block of code --
3 A. Fine.
4 Q. -- redistributed --
5 A. Okay, fine. I just --
6 Q. All right. I'll stop using that formulation.
7 But that's what I meant when I negotiated it.
8 The -- had you considered before you got here
9 this morning that the government believed that the
10 redistributable line was important, because otherwise
11 you could never determine what was and was not part of
12 Microsoft Middleware?
13 A. I had an understanding that that would be a
14 factor. The phrase "bright line," for example, that you
15 used in your question -- I don't think I had thought of
16 it in terms of a bright line. In terms of being able to
17 determine what's on what side of the line, yes, I had
18 considered that.
19 Q. Now, did you -- before you came here today, did
20 you read Professor Bennett's expert report in which he
21 explains exactly what you and I have just been through
22 in the last 10 minutes which is how the consent decree's
23 definition of "Microsoft Middleware," read together with
24 Section IIId of the final judgment, define what has to
25 be disclosed?
1 A. I recall a discussion of that in Dr. Bennett's
2 expert report.
3 Q. But you didn't take any account of it?
4 A. Well, I certainly believe I did.
5 Q. Okay. Well, when you offered the opinion that
6 you've offered on page 5 of your supplemental report,
7 which comes from Opinion No. 34 in your original report,
8 you were not using the definition of "Microsoft
9 Middleware" that the final judgment uses and that
10 Professor Bennett explained. Right?
11 A. I don't think that's true. I don't recall from
12 Dr. Bennett's expert report that he called out, first of
13 all, this discussion on page 44 of Exhibit 17, nor --
14 and if he did, I apologize for not having read it
15 carefully. I thought I had read it carefully.
16 Nor do I recall reading before, in
17 Dr. Bennett's report, the phrase about the block of
18 code. I forget the exact phrase. In Exhibit 16.
19 So I -- I certainly recall that section of his
20 report. I remember a discussion about it at
21 Dr. Bennett's deposition.
22 Q. Well, now that you appreciate what the
23 Competitive Impact Statement says and what the
24 government of the United States told a federal judge
25 about the meaning of the final judgment, do you want to
1 withdraw the opinion that you've offered that even after
2 the final judgment in the United States v. Microsoft, a
3 large number of APIs used by Microsoft Middleware remain
5 A. No.
6 MR. LAMB: Objection to the extent that it
7 mischaracterizes the prior testimony and the exhibits.
8 THE WITNESS: No. Why would I -- I don't
9 understand how -- how what we've just discussed makes
10 that statement false.
11 Now, the linkage between the first and second
12 part of the statement on the comma, you may have some --
13 you may want to get into that. But no, this is a true
15 MR. HOLLEY: Q. Well, are you offering an
16 opinion that Microsoft is not in compliance with the API
17 disclosure requirements of the final judgment?
18 A. I have not offered such an opinion. I believe,
19 as is clear from our discussion here, that that involves
20 interpretation of legal documents, which is not now
21 within my field of expertise.
22 Q. But when you in this opinion, which is quoted
23 here --
24 A. Yes.
25 Q. -- say, "even after the final judgment in the
1 United States v. Microsoft, a large number of APIs used
2 by Microsoft Middleware remain undocumented," you are
3 not using, are you, the definition of "Microsoft
4 Middleware" that is contained in the final judgment?
5 A. Again, I want to consider at leisure what we've
6 been discussing. No, it still -- it still is accurate.
7 I mean, you may want to say that there's a
8 large number of APIs used by Microsoft Middleware that
9 also reside within Microsoft Middleware that are
10 undocumented, and Dr. Bennett might at that point want
11 to say, well, then they're not APIs if they're -- if
12 both the caller and the callee reside on the same side
13 of the line.
14 But no, I don't -- I don't see that this is
15 technically inaccurate.
16 Q. Well, let me --
17 A. There's a -- look. A large -- first of all,
18 even after the final judgment in US versus Microsoft,
19 that is -- I'm talking about the period after that.
20 Even after that. Okay?
21 And then there's a large number of APIs -- and
22 again, I understand that Dr. Bennett would take
23 exception to my use of the term API -- there's a large
24 number of APIs that are used by Microsoft Middleware --
25 okay, under this definition that we've been talking
1 about, everything that Microsoft chooses to put in a
2 given Internet Explorer update -- that remain
4 Q. Well, all --
5 A. What's not -- what would not be true about
7 Q. Well, why don't you take a look at --
8 A. And I'm sorry for asking you questions.
9 Q. No, no, it's perfectly --
10 A. I'm from New York, so I make statements in the
11 form of questions.
12 Q. I live in New York, so I'm used to it.
13 But if you look at the APIs that Geoff Chappell
14 identified that you discuss both in your main report and
15 in your expert report --
16 A. Sure.
17 Q. -- you have not, and I wouldn't expect you to
18 have, looked at how many of those undocumented APIs are
19 within the redistributable line defined by the final
20 judgment in the definition of "Microsoft Middleware,"
21 have you?
22 A. Well, I've certainly looked on both sides of
23 the line. As a technical expert examining the code, I
24 have looked at the code.
25 If you're now telling me, oh, the line's not
1 here, it's over here, well, fine. But I've certainly
2 looked -- I've looked at the caller and I've looked at
3 the callee.
4 Q. Right. And my question is, assume with me for
5 the moment that you -- your analysis was wrong, because
6 the line isn't where you thought it was --
7 A. Well, in other words, I'm sorry, the line is
8 now wherever Microsoft wants to put it in a given
9 distribution, yes, okay. I'll assume that.
10 Q. Okay. And if that's true, which I'm asking you
11 to assume for present purposes, you haven't done the
12 analysis necessary to determine whether there are
13 undocumented APIs between that definition of Microsoft
14 Middleware and the rest of the system.
15 MR. LAMB: Objection. Incomplete hypothetical.
16 THE WITNESS: I don't think that's -- I don't
17 think that's quite -- I have not completed that
19 I could go -- I could accept your definition, I
20 could go back to my notes, I could get out windbg, I
21 could get out logger, I could get out my disassemblies,
22 and then I could quickly answer that question.
23 MR. HOLLEY: Q. But my only question to you
24 today is, you haven't done that, right, with the
25 definition of "Microsoft Middleware" that you and I have
1 been talking about today?
2 MR. LAMB: Objection. Incomplete hypothetical.
3 THE WITNESS: If I am to assume the definition
4 that you've given me and that I -- I can see there's
5 some support for in these exhibits -- no, is that that
6 definition is -- is news to me. And I -- with whatever
7 fault or not there is, it's a remarkable definition that
8 I still say makes no sense.
9 MR. HOLLEY: Q. Now, you have written three
10 books about the documentation of APIs in Microsoft
11 operating system products. Correct?
12 A. I've coauthored two books, one of which went
13 into two editions on that subject.
14 Q. Okay. Well, maybe I'm wrong, but I have three
15 on my desk back in Des Moines.
16 One is called "Undocumented DOS."
17 A. Yes.
18 Q. One is called "Undocumented Windows" that you
19 wrote with two other gentlemen.
20 A. Yes.
21 Q. And then there's one called "Unauthorized
22 Windows 95."
23 A. Yes. But that third book is not so much on
24 documentation issues. It's certainly in there, but I
25 wouldn't say that that's a dominant theme of that book.
1 Q. When you wrote those books, you made every
2 effort you could to be accurate. Correct?
3 A. Yes.
4 Q. Okay. And you --
5 MR. LAMB: I'm going to object. What does this
6 have to do with the supplemental report? We're here
7 specifically because the Court ordered you to do the
8 supplemental report, nothing else.
9 MR. HOLLEY: Well, because this supplemental
10 report is all about the same subject as those books, at
11 least the first two. And it seems --
12 MR. LAMB: No. The supplemental report,
13 Counsel, is about his review of the code and his
14 response in relation to the code. And that was the
15 purpose for the supplemental report. Not so that you'd
16 have a number of bites at the apple to go back and ask
17 questions about the book.
18 If you have a question about the book in
19 relation to something he wrote in the supplemental
20 report, I would concede that that's appropriate. But I
21 don't think it's appropriate simply to go through a
22 series of questions about his books.
23 MR. HOLLEY: I'll move on.
24 Q. You have offered an opinion that Windows is
25 actually -- the operating system Windows is actually a
1 small subset of what Microsoft ships out as the package
2 called Windows XP, for example?
3 A. Yes.
4 Q. And is it your opinion, in this case, that the
5 shell of Windows, or the user interface or whatever you
6 want to call it, is outside the boundary of what is the
7 operating system proper?
8 MR. LAMB: Counsel, same objection. We're here
9 for the supplemental report. You did a motion in
10 limine -- excuse me, a motion to compel regarding the
11 supplemental report.
12 So if this pertains to the supplemental report,
13 it's appropriate. But to ask these questions in a
14 vacuum is not.
15 MR. HOLLEY: Well, I am actually, Mr. Lamb,
16 talking about Opinion No. 13.
17 MR. LAMB: Okay.
18 MR. HOLLEY: Which says that Windows is
19 componentizable and not monolithic. And maybe I should
20 have made that clear.
21 But I think I am within the scope of this
23 MR. HOLLEY: Q. I'm sorry for the
24 interruption. Do you remember the question?
25 A. I don't think you had --
1 Q. And maybe I didn't get it out.
2 A. -- completed it.
3 Q. Okay. Is one of the components of the package
4 shipped out as Windows XP that you think isn't really
5 properly part of the operating system the shell?
6 A. I think that there are certainly well-accepted
7 definitions of the term "operating system" which would
8 not include the shell.
9 Q. Okay. I'm --
10 A. The shell as currently shipped, as part of
11 Windows XP.
12 Q. Okay. And I'm just trying to understand --
13 A. I think there would have to be some shell, but
14 it certainly doesn't have to be that one.
15 Q. Okay. And I -- just for the court reporter,
16 you and I should both try not to talk on top of one
17 another, and I'll do better.
18 The -- but I just want to focus specifically on
19 the opinion that you're offering --
20 A. Yes.
21 Q. -- apart from what one might find in a
22 literature search.
23 Is it your opinion in this case that the shell
24 of Windows XP is not really part of the operating
1 A. Yeah.
2 Q. If that is so, then why does Microsoft have any
3 obligation whatsoever to disclose the APIs exposed by
4 the shell?
5 MR. LAMB: Object to the extent it calls for a
6 legal conclusion.
7 THE WITNESS: I don't know that it does.
8 If you are referring to dlls called shell32 and
9 shlwapi, for example, the fact that they have "shell" in
10 their name or "shell" as part of their abbreviated name,
11 those are support on which one can build shells.
12 MR. HOLLEY: Q. But isn't the very same code
13 that's used to display the Windows shell made callable
14 by third parties for their UIs?
15 A. Isn't -- I'm sorry, let me just think out that
16 question again.
17 MR. LAMB: Maybe you could just read it again.
18 (Record read as follows:
19 Question: But isn't the very same code
20 that's used to display the Windows shell made
21 callable by third parties for their UIs?)
22 THE WITNESS: Well, that's true. But I don't
23 think that's quite what you want to be betting at,
24 because that could apply to display -- it could be
25 applied to the user manager in User32 or to the
1 lower-level graphics primitives in GDI32. So I'm not --
2 I'll agree with you, I'm not -- I don't know that it has
3 the significance that you're attaching to it.
4 MR. HOLLEY: Q. Well, I'm trying to understand
5 what it is you say shouldn't be there.
6 A. Shouldn't be there?
7 Q. Well, you -- I thought you earlier opined that
8 the Windows shell in XP is not really part of the
9 operating system.
10 Did I misunderstand you on that one?
11 A. Well, that's -- yes -- no, you did not -- no,
12 you did not misunderstand. Yes, that is what I said.
13 Q. Okay.
14 A. How that relates to shouldn't be there, I'm not
15 following you on that.
16 Q. Well, if Windows didn't have -- let's say that
17 you could boot up Windows XP to some character mode
19 A. As of course you can.
20 Q. Of course you can.
21 Now, is it your position that the code which
22 implements the graphical interface of Windows should be
23 there for use by third parties, but not for the users of
24 the operating system?
25 A. No, that's not my opinion.
1 Q. Well, I just want to make sure I understand
2 what your opinion is.
3 When you say that the -- that the Windows shell
4 in Windows XP is not properly part of the operating
5 system, are you saying that the code which implements it
6 shouldn't be shipped with Windows?
7 A. No. No. This point is in response to
8 assertions that have been made by Microsoft and by its
9 experts over the years that, for example, the most
10 dramatic statement I recall is that Windows would not
11 boot without the Internet Explorer. I believe similar
12 assertions at one point were made in Europe regarding
13 the Windows Media Player.
14 I'm responding to assertions that Windows is
15 somehow dead in the water unless these things are
17 That's very different from the way you've been
18 characterizing my opinion, which is they shouldn't be
19 there, it's bad, it's evil, that -- you didn't use those
21 Q. No, I didn't use those words.
22 If Internet Explorer 4 contained comctl32 as
23 part of its redistributable package, and a federal judge
24 ordered Microsoft to give OEMs the right to remove
25 everything in the redistributable package, it would be
1 correct that seeking to start that system would result
2 in it blue screening?
3 MR. LAMB: Objection. Calls for an incomplete
4 hypothetical, calls for a legal conclusion.
5 THE WITNESS: Seeking to start that system
6 without designating one of the alternate shells, which
7 are readily available as part of that system, would
8 probably result in a blue screen.
9 A one-line change to the registry, based on
10 Microsoft's own documentation for how to set up
11 alternate shells, no, it wouldn't blue-screen.
12 MR. HOLLEY: Q. Okay. Well, when you say that
13 Microsoft said that Windows was monolithic and that you
14 couldn't pull anything out without causing the entire
15 system to crash, were there -- other than the two
16 instance you just mentioned, were there other statements
17 that Microsoft made that you had in mind, or Microsoft
18 allegedly made --
19 A. Okay. Yes, there are. I don't know that the
20 characterization of Windows as monolithic is quite fair.
21 The characterization that Microsoft and its experts have
22 characterized Windows as monolithic I don't think quite
23 gets to it.
24 In fact, in some ways, the assertion -- or one
25 assertion, for example, that seems almost the opposite
1 of that is, Dr. Madnick, I believe in the remedies
2 hearing, characterized Windows as -- and showed a
3 graphic almost depicting it as a, quote, house of cards,
4 which is sort of the opposite of monolithic in a sense,
5 but gets to the same point, that one can't remove
7 I believe Dr. Bennett has made assertions that
8 things that various components of Windows cannot be
9 removed from it without causing some sort of serious
10 damage to the overall functionality of the product,
11 beyond the -- whatever loss would come from removing the
12 component itself.
13 This is really getting back to my earlier
14 report, much more, I think. I think if you go back to
15 my original report, you'll see quotations. And then
16 certainly in the Martin report in Minnesota, there's
17 quite a catalogue of statements along these lines.
18 Q. Well, I just want to know if you can point me
19 to a single statement by Microsoft or its experts in any
20 case where the statement was made that Windows is not a
21 series of dynamically linked libraries.
22 A. Oh, I doubt anyone would say that.
23 Q. And so the idea that Microsoft ever said that
24 Windows is not componentizable is wrong, isn't it?
25 A. No. No, I don't think so, because Microsoft is
1 somehow able, out of one side of its mouth, as it were,
2 to, when talking to one audience, extol the
3 componentizable virtues of Windows, the ability to have
4 subsets of it, to reduce its footprint, et cetera,
5 et cetera.
6 And then out of the other side of its mouth,
7 particularly in a litigation context, to assert that,
8 you know, Windows won't boot if you pull something out,
9 or that it can't -- I don't remember the language from
10 Europe regarding Windows Media Player, but I know at the
11 beginning of that process, Microsoft was saying, in so
12 many words, we can't do it.
13 Q. Well, do you know how Windows Media Player was
14 defined in the European Commission case when Microsoft
15 was making the statements it was making about the
16 adverse consequences of pulling it out of the system?
17 A. Since I was involved as a consultant to Real
18 Networks at the time, I was at various points seeing
19 various lists of the modules. There was quite a bit of
20 dickering back and forth between whether this .ax file
21 or this ACM file was in or was out or whether this dll
22 was in or was out, so I was tracking that at the time.
23 Q. And Real Networks was very adamant that the
24 definition of Windows Media Player not include
25 DirectShow or other lower-level media playback
1 functionality in Windows that Real wanted and used.
3 A. That's not my recollection of it at all. If
4 they said that, that certainly wasn't coming from me.
5 Q. Okay.
6 A. I would assert that DShow and Windows Media
7 Player are quite distinct entities. And in fact, as I
8 recall it, it was Microsoft, certainly for the periods
9 that I recall, that was trying to assert some -- what's
10 the word -- synonymousness -- wrong word --
11 synonymity -- much better; much fancier sounding --
12 between DShow and Windows Media Player.
13 So I don't recall it the way you're --
14 Q. All right. Well, in the statement of
15 objections, No. 3, in Europe, the attack was on the
16 inclusion of Windows Media Player 6.4 in Windows 2000.
18 A. Okay.
19 Q. Okay. And if you look at the redistributable
20 package of code in Windows Media Player 6.4, all of the
21 DShow code is redisted. Isn't that right?
22 A. I don't -- I'm going to take your word for
23 that. You know, this is amazing, because we know that
24 Microsoft slipstreams security updates and various
25 things into trademarked product releases.
1 So you keep on coming back, Mr. Holley, to,
2 every file that is redistributed under a given name is
3 now part of the thing to which -- with which that name
4 is associated.
5 I mean, am I -- and again, I apologize for
6 asking questions, but that is the assumption that you're
7 working on here, that any file that is included with a
8 redistributable under a trademarked name is part of that
9 product, even if that same file has a long history
10 within Windows before that product was ever released.
11 Q. I'm --
12 A. It doesn't make any sense.
13 Q. Well, that's clearly your view. I was just
14 exploring your views on this point.
15 A. That's fine.
16 Q. And I now have them.
17 I would like to mark as Exhibit --
18 A. Could we take a brief break?
19 MR. HOLLEY: Sure, sure, sure. Sorry. I
20 should have done that a while ago.
21 (Recess from 10:34 a.m. to 10:47 a.m.)
22 MR. HOLLEY: Q. I'd like to mark as Exhibit 18
23 a letter from Mr. Reece of the Zelle firm to Mr. Jurata
24 of the Heller firm enclosing a series of notes from
25 Mr. Schulman.
1 (Deposition Exhibit 18 was marked for
3 MR. HOLLEY: Q. Now, Mr. Schulman, taking a
4 look at Exhibit 1, and ignoring the cover letter, which
5 you may or may not have ever seen, can you tell me
6 whether the attachment is in fact a series of notes that
7 you took in connection with the Comes case, this case
8 that we're talking about?
9 A. Yes, it is. And I've never heard it
10 pronounced -- is that how it's pronounced?
11 Q. That's the way they say it in Iowa. I don't
12 know. If wouldn't be my --
13 A. Because I was -- yes.
14 Q. Can you tell me what time period is represented
15 by these notes? Because some of them have dates and
16 some of them don't.
17 A. Right. I think the way it is here is not in
18 order. And I think if you were to go to the Bates stamp
19 0730 --
20 Q. I'm there.
21 A. Okay. I think that that is probably the
22 chronological beginning of these notes. And you'll see
23 it says, August 21.
24 And it is probably chronological from there
25 through 0767, simply because I was -- I had thought to
1 actually put numbers on the pages.
2 And then I couldn't tell you about the order of
3 anything else. But in any case, it begins August 21.
4 Q. I just notice on that page that you just
5 referred me to, 0730, under Box 1 accessed, it says,
6 Win98 Gold 6-28-06.
7 Is that a date, or is that a reference to --
8 A. 6-28, 2006?
9 Q. Yeah.
10 A. That was a date, on the label of the CD itself.
11 Q. Understood. Okay.
12 Can you tell me, turning back to the Bates
13 reference 0712 --
14 A. Yes.
15 Q. -- about two-thirds of the way down the page,
16 there's a reference to WINE code.
17 Can you tell me what that refers to, please? I
18 mean, I know what WINE is, but --
19 A. Sure. Probably it was a note to myself that I
20 would want to take a look at whether there was an
21 implementation of or documentation for one of these
22 functions or this function that is noted on this page in
23 the WINE code.
24 Q. And --
25 A. Or at the WINE website.
1 Q. Okay. To what extent did you do that, which is
2 look at -- to see whether there was an implementation of
3 the various functions referred to in your report in the
4 WINE code?
5 A. I don't think I did a complete survey of every
6 single function that I ever looked at in the Windows
7 code to see if it was in the WINE code. But certainly
8 the APIs that are mentioned in my report, I would have
9 looked through the WINE website for references to them.
10 Q. Okay. And can you tell me, sitting here today,
11 which of the APIs that are referenced in your report are
12 implemented in the WINE code?
13 A. I don't know that I could do that sitting here
15 Some of that -- if we proceed further through
16 these handwritten notes, some of that might come out.
17 No, I don't -- I don't recall.
18 Q. Okay. On the next page, which bears the Bates
19 number 0713, there is a note on the upper right-hand
20 side that says, "get sense of complexity from WINE
21 ordinal C."
22 And I'm just wondering what that refers to.
23 A. What's not to understand?
24 First of all, I think that it should be, get
25 sense of complexity from WINE, full stop. And then
1 there's ordinal C, because I don't think, if I'm
2 remembering the WINE source -- no, actually, ordinal C
3 does have implementations in it, now that I'm thinking.
4 So maybe that works as a full statement.
5 Q. Okay. And could you -- well, I don't want you
6 to --
7 A. What did I mean by it?
8 Q. Yeah. I don't want you to assume from my
9 question that that's the proper block of text.
10 A. Yeah, right.
11 Q. But I do want your testimony about what that
12 means to you.
13 A. I believe that as I was going through a list of
14 exports from shlwapi -- and I certainly have no plan to
15 go through every single one, but I was -- I want to come
16 up with some examples or find some things that were
17 interesting in some sense.
18 I did not want to spend a lot of time, say,
19 looking for code implemented in shlwapi and used, say,
20 by shdocvw where the code in shlwapi was some peripheral
21 one-line wrapper around an existing documented function
22 or maybe did nothing at all. Perhaps in the past it had
23 some great functionality, but it was no longer anything.
24 And I thought one thing that would be useful to
25 do would be to look and see what the WINE group had to
1 do in order to come up with some sort of implementation
2 of a given function, at least an implementation that was
3 in some sense adequate for running whatever software
4 they need to run on top of WINE.
5 Q. How far along is the WINE team at this point in
6 terms of running Microsoft Office on top of Linux, using
8 A. I believe I addressed that in my earlier
9 report, and I don't know that I have looked at that
10 since -- since the time of my report.
11 I know that at one point, they were lagging
12 behind a good version of Office in terms of
13 functionality that they said was -- well, they had -- I
14 think they had like a gold and a silver and bronze
15 rating, and I think that they were classifying the
16 latest version of Office at the time as bronze, and the
17 previous version as being silver or gold.
18 Q. Okay.
19 A. But this was a while ago that I looked.
20 Q. So you haven't updated your analysis of that
21 since your original report?
22 A. I don't think I've looked at that since then.
23 Q. Turn if you would, sir, to the page numbered 17
24 internally, but it has the Bates number 0746.
25 There's a reference there, it says -- this is a
1 list that says "To Do" at the top. And it says,
2 second-to-the-last, "If time, redo JB Win95 versus Win31
3 code comparison."
4 Does it say -- well, can you re --
5 A. Especially, or esp. -- especially why JB see so
6 much real-mode code.
7 Q. And can you tell me what this refers to?
8 A. JB is Dr. Bennett.
9 Q. Okay.
10 A. And Dr. Bennett in several of his expert
11 reports had a table comparing, on the one hand, Windows
12 31, and I think it was MS-DOS 6 code; and on the other
13 hand, the Windows 98 code or some real-mode portion
15 And I had felt, and this sentiment remarkably
16 ended up in the Martin Minnesota report, that the
17 numbers were implausible, because if one were to accept
18 the numbers that were in Dr. Bennett's table, the
19 portion of Windows 95 that constituted real-mode code
20 was enormous, at least based on a source code analysis,
21 and discounting or the fact that the real-mode code
22 would more likely have been an assembly language which
23 would be a bit bulkier than C or C++, the numbers made
24 no sense to me.
25 Now, I've also said that I didn't feel that it
1 was really -- that the test itself was really testing
2 any proposition that the plaintiffs in these various
3 cases have made, so I wasn't -- I wasn't all that
4 interested, I have to say -- I'm sorry for saying that
5 when Dr. Bennett's here -- because I felt it was a bit
6 of a straw man. That the plaintiffs, for example, in
7 Caldera had asserted that Windows 95 was a bundle of
8 something called MS-DOS 7 and Windows 4. And then it
9 looked to me like Dr. Bennett had gone to the source
10 code, which he had at the time, and which until recently
11 I did not have access to, and had said, well, look, it's
12 not a combination of Windows 3.1 and MS-DOS 6, and it
13 felt like a bit of a straw man.
14 But I didn't understand that -- in any case, I
15 didn't understand the numbers, because it seemed to be
16 indicating that Windows 95 was like one-third -- that
17 the source code of Windows 95 was like a third or a
18 quarter real-mode code, and that just can't be -- not
19 only can that not be, it's not actually a very good --
20 if it were true, it sort of would tend to undercut other
21 things that Microsoft has said about Windows 95.
22 But in any case, so once I had access to the
23 source code, I thought, all right, let me -- if I get
24 some time, let me try to see what happened here. Let me
25 try to reproduce the experiment.
1 Q. And is that analysis the last page of this
2 collection of notes numbered 0768 which is entitled
3 "MS-DOS 6.22 versus Windows 95 DOS 86"?
4 A. This is part of that -- this looks like an
5 early part of that analysis. And I probably don't have
6 notes on the remainder of it. They might be in here,
7 but I don't --
8 Q. Well, feel free to look.
9 A. Yeah.
10 Q. But I didn't see anything else like this.
11 A. Okay.
12 Q. But, you know, I'm not --
13 A. Right.
14 Q. You can tell me I mean, I can --
15 A. Right. I did -- I don't -- anyway, yes, this
16 last page, 0768, does pertain to attempting to reproduce
17 those results.
18 Q. Okay. And can you just describe -- I don't
19 want you to go into the gory details, but can you tell
20 me in general terms what you were doing here as
21 reflected in -- on this page of notes?
22 A. Well, as I said, I think this is from fairly
23 early in the process. And what I believe this
24 represents is a comparison I did of some directories.
25 And if we get further into this, the question of which
1 directories one looks at will be important.
2 But I was looking at the files in some
3 directory trees -- that is, a directory and all of its
4 children directories -- and comparing these
5 subdirectories of the MS-DOS 6.22 source code with
6 certain subdirectories in the Windows -- in a Windows 95
7 DOS 86 directory.
8 And whereas Dr. Bennett, if I recall, had done
9 a file-by-file comparison using windif, I think, such
10 that any change in one file would then result in the two
11 files being regarded as different, and then the size of
12 those files being then included in changed or new or
13 deleted, I decided to do a comparison within the files
14 using some code that I've used in copyright and trade
15 secret cases that I've worked on that compares -- well
16 first, I did line-by-line comparisons, it's like, well,
17 that's not really -- that's not what I would do in a --
18 typically in a copyright or trade secret case.
19 What I did is, I compared blocks, which is
20 multiple lines of source code delimited by two or more
21 line spaces. And using that, and comparing some of
22 these directories, I came up with some percentages that
23 are marked here. Clearly this was early, because some
24 of the percentages were over a hundred percent.
25 I then moved away from what's here to actually
1 try to find which directories Dr. Bennett had looked at.
2 And I think I then quickly understood why the numbers
3 that had not made sense to me were the way they were.
4 Q. And what --
5 A. And that's not really -- that's only to some
6 extent reflected here.
7 Q. Okay. And I'll come back to this in a moment.
8 A. Sure.
9 Q. But why did you come to the conclusion you did
10 about why the numbers that Professor Bennett had reached
11 were, in your view, overstated?
12 A. Well, they -- looking at the directories, first
13 of all, there was -- it was helpful that Dr. Bennett had
14 given a count of files. And I went through -- there
15 were six different Windows 95 source CDs or maybe DVDs,
16 and there were many directories that had names like the
17 ones that he called out, but there were many fewer where
18 these total number of files in the directory exactly
19 matched the ones he did.
20 There were several directories that had the
21 exact same file count. But I figured, okay, that's --
22 this has got to be what he looked at.
23 And it appeared to be, first of all, that these
24 directories in the case of MS-DOS 6.22 or -- I think
25 also MS-DOS 6 I looked at -- well, I looked at MS-DOS 5,
1 6, and 6.22, and the Windows 95 real-mode -- that if you
2 looked at those directories with the file counts that
3 Dr. Bennett had given, that it was the entire MS-DOS
4 product, including, for example, antivirus applications,
5 basic things like that. A.
6 B, there was all sorts of ancillary files in
7 these directories that, well, we might consider part of
8 the source code. Documents, text that was exchanged by
9 people. I wish I could remember now everything that was
10 in there, but I think that if we were to sit down with a
11 list of it, Dr. Bennett and I could look and say, okay,
12 this is -- this may be source code in some broad sense,
13 but it certainly does not reflect anything about the
14 final product.
15 There was a lot of material like that. Enough
16 that it would make the real-mode code numbers unusually
18 It also looked like the directory name that was
19 called out, which I think was either DOS/DOS86/DOS or
20 DOS86/DOS/DOS or something, that the one that actually
21 corresponded to the file count was not the one that had
22 been named in the reports.
23 So I wasted some time with that, because I was
24 first going on the exact directly names, and not seeing
25 anything that matched up at all, and then I say, oh,
1 here's this other subdirectory. It doesn't match the
2 directory name, but does have the file count.
3 Finally -- and this now gets back to 0768
4 here -- I thought it would be useful to -- inasmuch as
5 the exercise itself was useful, which again, I really
6 was not at all convinced it was -- I thought it would be
7 useful to break down what was in this DOS 86 directory
8 into various parts, which is the DOS, corresponding,
9 say, to the old file MS-DOS.sys, the BIOS component,
10 which is of course not the actual BIOS, but the MS-DOS
11 or Windows 95 interface to the BIOS in what used to be
13 Then there was CMD, CMD, which corresponded to
14 the command shell, command.com. And then there was a
15 DEV directory corresponding to various DOS device
16 drivers. Ansi.sys and I think probably himem and
17 other -- H-I-M-E-M.
18 Q. I don't mean to --
19 A. And there may have been -- I think then there
20 were other directories that had smart drive, and the
21 disk defragmentation utility, and -- so ...
22 Q. And I don't mean to interrupt you, but I'm
23 just -- I'm trying to -- and I appreciate that this is
24 preliminary. But I'm trying to understand how it is
25 that if you look, for example, at IO.sys, the BIOS
1 interface, the -- if you read across, you'd think that
2 these were mutually exclusive categories, or maybe
3 they're not.
4 So overlapping -- I'm just having a hard time
6 A. Well, okay. What -- the reason numbers don't
7 add up, or, in some cases, we come up to 141 percent,
8 106 percent, is, what my program does -- and again, this
9 is something I've used in other cases -- is, it
10 constructs a -- what's called an associative array of
11 the text.
12 And typically, an array in computing is indexed
13 by a number. 1, 2, 3, you know. Give me the third card
14 out of this deck.
15 An associative array is this wonderful
16 structure that's turned around. Like an array would be,
17 the third element of this deck is the 3 of diamonds. An
18 associative array is, here's the 3 of diamonds. Tell me
19 what card number it is.
20 With source code or binary code, you can say,
21 here's a piece of code. Maybe it's a couple of thousand
22 characters long. Tell me -- put it into this array, and
23 assign some number to it. And if that piece of code
24 appears again, it will get the same number.
25 You then can walk through code and say, does
1 this block of code -- have I seen it before?
2 Well, what happens is that the reason things
3 don't quite add up this way or they result in more than
4 a hundred percent is, you start with your first body of
5 code, and you may have, say, 20,000 blocks of code in
6 the original, but there's a lot of duplication in it, so
7 you actually only have, say, 15,000 patterns. And then
8 you're saying, okay -- then you take a second block of
9 code and you say, hmm, have I seen this pattern before?
10 Yes, I have. Okay. So that goes into overlap.
11 Hmm, have I not seen this pattern before? No,
12 okay. That goes into new.
13 Then when you're all done, you can -- you can
14 do this process on the original array called, like,
15 garbage sweep, as a mark, and you mark what you've
16 visited, what you've seen, and then anything that's left
17 over that you haven't seen, you say, oh, okay, I didn't
18 see that, that must now be gone. Because of looking at
19 the unique patterns rather than the actual original code
20 that may have duplication within it, the numbers look
22 I'm sorry, I --
23 Q. No, no, I --
24 A. I like to explain -- I love associative arrays.
25 They're so great. I --
1 Q. I actually thought it was a very good
3 A. Oh, good.
4 Q. You said that this page, 0768, was early in
5 your analysis -- I don't want to mischaracterize what
6 you said.
7 What I'm trying to understand is, appreciating
8 that you had questions about the utility of the
9 analysis --
10 A. Yes.
11 Q. -- did you reach some final conclusion about
12 the overlap between the real-mode DOS component in
13 Windows 95 and any version of MS-DOS?
14 A. I really didn't, because once I saw -- once I
15 saw what I felt was the explanation for Dr. Bennett's
16 numbers, and that it really didn't have much to do -- at
17 least what I was interested in, with the particular --
18 that he counted files, and I was going within the files
19 to count blocks of code -- once I saw that these
20 directories contained tremendous amounts of stuff that
21 just wasn't -- you know, I think that if he looked at
22 it, he would agree, it just wasn't pertinent to the
23 analysis, I -- so it was like, okay, I understand what's
24 going on, I'm done, just --
25 Q. Okay.
1 A. So I don't think that this -- I haven't even
2 really looked at these numbers.
3 Now, there's one other thing which is going on
4 here, which IS, I thought, okay, if -- is there maybe
5 some way in which Dr. Bennett's proposed test, or one of
6 his tests of assertions regarding the nature of Windows
7 95, if there's something about that test that -- God,
8 I'm sorry, I'm being incoherent. Let me back up.
9 You'll see that there's two -- there's a top
10 and bottom half to this page. I thought the only way
11 that it could really understand this -- and again, this
12 is when I was beginning to look at this -- was, well,
13 what was the -- if we're going to look at the overlap
14 and what's new and what was deleted between this
15 thing -- I'm sorry, this is not going to come out.
16 Between one thing and another, we have to have
17 some baseline. What does -- if we're going to look at
18 the overlap between A and B to determine whether B is in
19 a line with A or is, what do you guys call it,
20 sui generis -- is that how you pronounce it?
21 Q. Yes.
22 A. We need some baseline of, what does the
23 evolution of A look like.
24 So I thought, well, now let me do this same
25 exercise between 5 and 6.
1 Q. Okay. Now, turning to page 14 of your
2 supplemental report, and in particular, to 11, there's a
3 statement here that the Dell recovery CD contains MS-DOS
4 7.1 from Windows 98 SE.
5 And I'm trying to understand what point it is
6 you're making with that observation.
7 A. Okay.
8 Q. Because I take from your earlier point that
9 you're not just engaged in saying that things are
11 A. Okay. I hope not.
12 Q. So what is it that you draw from this fact?
13 A. Well first of all, this is not particularly
14 related to what we've just been talking about.
15 I did not examine the source code in order to
16 arrive at the conclusion expressed in Point 11 here.
17 This really comes right out of my previous
18 deposition with Mr. Hawk, who was going through my
19 earlier report. And I had noted there that there
20 were -- that contrary to the notion that there was, you
21 know, quote, no such thing as MS-DOS 7, that Dell, and I
22 believed other OEMs, had been distributing for several
23 years recovery CDs, troubleshooting CDs and things like
24 that which had what I would call MS-DOS 7 on them, which
25 the code had copyright strings in it that said MS-DOS 7.
1 And at my deposition, Mr. Hawk said -- asked me
2 the question something to the effect of, well, have you
3 ever actually compared --
4 (Telephonic interruption.)
5 THE WITNESS: Dr. Hawk -- Mr. Hawk.
6 MR. HOLLEY: Q. He'll let you call him doctor
7 if you want. He doesn't deserve it, but --
8 A. Mr. -- JD; right?
9 MR. LAMB: Well, in Germany he'd be a doctor.
10 MR. HOLLEY: Herr Dr. Hawk.
11 MR. LAMB: I like that. So does he, I can
13 THE WITNESS: Mr. Hawk asked me, well,
14 Mr. Schulman, have you actually compared the code that
15 was on these CDs with code in MS-DOS or in Windows 95 or
16 Windows 98?
17 And I just sort of sat there and said, no, it
18 didn't occur to me.
19 And Mr. Hawk I believe said, well, I think
20 you'd find it very interesting, or something like that.
21 And I was sure that he -- from when he said
22 that, I was sure that he must know something about this.
23 And I was kicking myself, and felt really bad that
24 Mr. Hawk somehow knew that this -- despite the presence
25 of strings in it that said MS-DOS 7, and despite the
1 fact that it looked just like the MS-DOS code that I've
2 been looking at for years, that somehow it wasn't
3 MS-DOS" 7.
4 And so at some later point I recalled this, and
5 I decided to just -- rather than even get into things on
6 a low-level code basis, just do MD5 hash comparisons of
7 the files.
8 And yeah, the stuff that Dell ships, or shipped
9 on its recovery CDs -- and again, that I think other
10 OEMs did before Microsoft was really pushing the OEMs
11 towards Windows PE -- was, MS -- just like it said in
12 the copyright strings, was MS-DOS 7. It was -- it
13 was -- it was the code right from -- it was the IO.sys,
14 the cmd dot -- command.com -- I'm sorry, cmd.com. There
15 was a -- on some of them there's a debug.xe, there's an
16 edit.xe, there's a smartdrive, there's a himem -- they
17 were the same files at Windows 98 Second Edition.
18 And so from this -- and I apologize for my
19 long-windedness -- from this, I conclude, A, that there
20 is a product called MS-DOS" 7, unless if Microsoft wants
21 to assert that Dell and these people have been engaged
22 in some sort of piracy, that Microsoft licenses it to
23 these people; and that it is the, quote, real-mode
24 component of Windows 98 second edition.
25 Q. I presume you've read Ralph Lipe's testimony in
1 Caldera about the changes that were made to the
2 real-mode DOS component of Windows 95 in order to deal
3 with things like long file names and --
4 A. Sure.
5 Q. -- 21 hooking utilities that would malfunction
6 under Windows 95. Are you familiar with that testimony?
7 A. Yeah, I certainly have read it. I'm not
8 recalling all of it right now, but yes, I've read that
9 testimony, and I'm familiar with that point in general.
10 Q. Okay. And is it your testimony today that
11 what's on the Dell recovery CD is the same code that has
12 been -- has had all those modifications made to it, or
13 just a renamed version of MS-DOS 6.22?
14 A. My testimony is that the code that is shipped,
15 for example, on the Dell recovery CDs is the code from,
16 in this case, Windows 98 Second Edition, but related to
17 the code from Windows 95 that Mr. Lipe has said had
18 these modifications that were made to support these
19 various -- various functionalities such as long file
20 names, plug and play, reduction of boot noise.
21 Q. Well, every version of MS-DOS has had something
22 called command.com. Right?
23 A. Yeah.
24 Q. All the way back to MS-DOS 1, I presume.
25 Are you -- did you go behind that analysis to
1 figure out whether the fact that there were similar file
2 names in this thing that Dell was shipping --
3 A. Oh, I see what you're saying.
4 Q. I mean, I'm just --
5 A. You're right. That was -- okay.
6 If you look at Point B, I have since run
7 utility to compute the MD5 hash of the IO.sys kernel.
8 MD5 hash is, you take every byte in the file --
9 it's related, in a way, to this associative array idea.
10 You take a file, maybe it's 1 megabyte in size,
11 maybe it's a gigabyte in size. You run through it, you
12 do a computation on it, which is a standard computation,
13 and you generate this very long number that represents,
14 in a -- in an unique way that file.
15 It is nearly impossible to go through some
16 other string of bytes and get that same number.
17 So I ran an MD 5 utility to compute that number
18 for the IO.sys file that comes with Windows 98 Second
19 Edition. The IO.sys file that would have all these
20 wonderful properties that Mr. Lipe talked about.
21 What was the result? It was BAECE, et cetera,
22 et cetera.
23 I then took the MD5 utility and computed the
24 MD5 hash of the IO.sys that came on the Dell recovery
25 CD. It's the same number. It's the same file. They're
1 the same size.
2 Q. Okay. Did you run the same MD5 hash on any
3 other of the files --
4 A. Yes.
5 Q. Okay.
6 A. They were almost -- yeah.
7 Q. But you didn't report that here. But --
8 A. Well, I said, there were identical matches for
9 the other files.
10 Q. All right. Now, is it -- I'm still trying to
11 understand the -- what you see as the significance of
12 all of this.
13 If I wanted to use something like MS-DOS today,
14 I could go to the web and download FreeDOS, right, if I
15 wanted that?
16 A. I'm sorry, if you wanted to do what?
17 Q. If I wanted to run some character mode
18 operating system like MS-DOS 6 or MS-DOS 7, I can do
19 that. Right? No one's stopping me.
20 A. Yeah. It comes with -- yeah. Get out your
21 Dell recovery CD, or if you're not interested in it
22 being MS-DOS, go up on the web, and there's FreeDOS, and
23 there's an assortment of DOSes. Until recently, you
24 could have bought one from Microsoft if you wanted to
25 build like a slot machine or something like that.
1 Q. Well, do you know whether Microsoft has ever
2 stopped licensing MS-DOS 6 to customers that ask for it?
3 A. I think that fairly recently, they have been --
4 they may have recently -- certainly recently, they've
5 started very heavily pushing to discourage further use
6 of MS-DOS, and instead, adoption of Windows PE, which is
7 essentially the operating system component of Windows
9 Q. But I just wanted to know -- and the answer may
10 be you don't know -- but if I was some OEM in the
11 People's Republic of China, and I asked Microsoft if I
12 could license MS-DOS 6, do you know whether or not I
13 could get it?
14 A. Right this moment?
15 Q. Yes.
16 A. I don't know.
17 Q. You refer in the materials that you
18 considered -- and now I'm back to Exhibit 15, I think --
19 to a -- two books by a man named Tanenbaum.
20 A. Sure.
21 Q. Can you tell me why you looked at those books
22 in forming your views on this case?
23 MR. LAMB: Do you know what page you're on?
24 THE WITNESS: 15 of the Materials Considered.
25 Again, there are things in the Materials
1 Considered which do not relate to the supplemental
2 report. And I probably would have looked at them in
3 connection with the deposition of another expert, I
4 suspect. So not relating to the supplemental report.
5 MR. HOLLEY: Q. But is the reason that you
6 considered this Tanenbaum text that it's one of the
7 authoritative texts on the design of operating systems?
8 A. Well, Dr. Madnick has said that.
9 Q. Do you disagree with Dr. Madnick?
10 A. No, not at all. Not at all. I consulted on
11 the first edition and am thanked in the acknowledgments,
12 so I -- you know, I think it was a pretty good book.
13 Q. Is it fair to say that there are potential
14 pitfalls in analyzing source code if you don't go the
15 next step and figure out what was compiled into the
16 final product?
17 A. Absolutely.
18 Q. And is that because there could be entire
19 branches of the source tree that are basically
20 irrelevant because they're not compiled?
21 A. Well, I wouldn't say irrelevant, because that
22 depends entirely on what you're looking for.
23 But certainly there could be entire branches of
24 source code that do not find their way into the final
1 Q. When you did your various word searches through
2 the source code for Microsoft products using the Google
3 desktop search, did you then make a determination of
4 whether those words that you found in comments were from
5 a portion of the code of the particular product that
6 actually got compiled?
7 A. Well, I did in the sense that, as you know, I
8 had done a whole analysis of this before I'd ever seen
9 the source code. It was based on analysis of the actual
11 So I knew the whole way I came up with the
12 searches I was doing in the source code was because I
13 knew what I wanted to look for in the source code,
14 having seen it in the binary code.
15 So in that sense, there was a filter on the
16 results based on, what I'm doing is confirming or
17 finding other points regarding things that I know are in
18 shipping products, because that's how I came to be
19 looking at it in the first place.
20 Q. But -- and maybe you can tell me otherwise.
21 But when I look at your notes, you refer to doing Google
22 desktop searches using particular terms.
23 A. Yes.
24 Q. You know, words that seemed interesting, "hack"
25 and "hide" and other sorts of words.
1 And what I want to know is, when you got the
2 output of that, how did you map whether that particular
3 comment related to a part of the source code that
4 actually got compiled eventually into the shipping
6 A. Well, let's come up with an example.
7 In the case of things like "hide" or "hack," I
8 didn't really end up doing very much with that. I
9 remember some specific examples where I found some sort
10 of seeming interesting language, and then -- I'm sorry,
11 this is not quite responsive to your question, but let
12 me just finish the sentence.
13 I then looked at what product it corresponded
14 with. And it was something that actually has been
15 compiled and shipped, but was just so uninteresting
16 that -- it was something called TweakUI which Microsoft
17 ships as a power toy. And I said, oh, toy, you know,
18 great. Who cares.
19 So there would -- I mean, that's not entirely
20 responsive to your question, but that's the sort of
21 thing I would do. Again, if I was searching for -- I
22 don't know, let me come up with an example --
23 Q. Well, maybe just to short-circuit this, in
24 Opinion 7 or Point 7 on page 11 I think is where I was
1 A. Okay. Let's see.
2 MR. LAMB: Page 11?
3 MR. HOLLEY: Q. Yes, of the supplemental
5 A. Well, again, we're at different --
6 Q. Oh, I'm sorry. We're at different text. This
8 A. Okay, yeah. Okay, good.
9 Ah, okay. No, with this particular issue of,
10 were there references in the code to functions which I
11 knew to be not documented, were there references in the
12 code to those functions as being APIs, or, in this case,
13 private API, private client site API, no, it did not
14 particularly interest me whether the particular file
15 that I say called out here was -- whether the version of
16 that file that I found was in a compiled branch or
17 noncompiled branch of the source code. Again, given
18 that how I had found these files largely was through
19 searching for names of APIs which I knew to be in
20 shipping products, and then it was in looking through
21 one of those files that I first encountered this
22 phrase -- I'm sorry -- I got to shut this off -- private
24 And at that point, I thought, oh, that would be
25 interesting to search for.
1 Q. If you need to take a call or something, we can
2 go ahead --
3 A. No. Actually, well let me -- I'm sorry, just
4 give me one second.
5 (Discussion off the record.)
6 MR. HOLLEY: Q. Does the presence of a call in
7 source code prove that that call is actually made in the
8 code as compiled when it executes?
9 A. In other words, when you execute the program,
10 does every single line of code that was compiled to
11 build that product, does it get executed? No. Of
12 course not.
13 Q. If you copy -- if you take a snapshot, I think
14 was the phrase you used earlier, of a particular block
15 of source code and move it to another product, and you
16 leave all the comments in that code for laziness or
17 whatever reason, it is the case, is it not, that those
18 comments could be entirely irrelevant to the new use of
19 the code?
20 A. That could be true.
21 Q. I'd like to look at your discussion of OS/2 on
22 page 13, I think, at least of my copy. And it's -- it's
23 Point No. 10. It says, OS/2-Related Warning Message in
24 Combined DOS/Windows Install Product.
25 A. Yes.
1 Q. As an initial matter, do you know whether the
2 JASTRO project ever came into being?
3 A. I seem to remember hearing about combined
4 installs that were provided to OEMs. Whether that was
5 Astro or Janus, which I believe is why it's called
6 Jastro, I don't. I don't recall.
7 Q. Well, Astro was the code name for MS-DOS 6.
9 A. Oh, okay.
10 Q. And Blue Janus was the name --
11 A. Right. Was the combined install.
12 Q. Well, Blue Janus was actually slightly
13 different. Blue Janus was a product for OEM -- excuse
14 me, for retailers who had gotten IBM PS2s with OS/2
15 preinstalled, and they didn't want it, so they ran Blue
16 Janus, and it ripped OS/2 off and installed DOS and
17 Windows instead.
18 Have you looked at that code, the Blue Janus
20 A. Blue Janus sounds familiar, and your
21 description of Blue Janus being targeted to PS2s sounds
23 That there was a Blue Janus product whose
24 purpose was to rip out unwanted OS/2 code, I -- first
25 I've heard of that.
1 Q. Okay.
2 A. I of course have looked at the code that I cite
4 Q. Okay. Now, and I guess just now -- I wanted to
5 establish a few terms: Astro, Blue Janus, Jastro is the
6 name given to this combined DOS/Windows installation
8 Have you looked at testimony from Phil Barrett
9 or others about the Jastro project and whether it ever
10 came to fruition?
11 A. Since I've seen Phil Barrett's testimony, I'm
12 sure I've seen it, but I don't recall him testifying
13 about Janus.
14 Q. Okay. Or Jastro, as the case may be?
15 A. Right. I don't recall that.
16 Q. What is it that you are -- what significance do
17 you attribute to the fact that there was a message in
18 the -- in the MS-DOS 6 code in this Jastro.txt file that
19 OS/2 files are on your computer, and you might want to
20 get rid of them?
21 A. Okay. I had seen reports of various Microsoft
22 products popping up messages when one would do the
23 initial install of those products on a machine that had
24 OS/2 installed on it.
25 And these mentions or discussions that I had
1 seen referred to error messages about the considerable
2 disk space or significant disk space.
3 I had not seen this myself, though I was not an
4 OS/2 user by that time. I had done some searching for
5 this and just couldn't find much out about it. I was a
6 little dubious of it, frankly.
7 And then when I had my opportunity to look at
8 the source code, I decided I would actually search in
9 the source code for the strings which were alleged to
10 have appeared in these various Microsoft products. And
11 I found these very strings, which had been called out in
12 these public articles in this code that I cite here.
13 Q. Okay. But you don't know as you sit here today
14 whether the informational message that is in this OS/2
15 warn text ever made its way into a shipping Microsoft
16 product, do you?
17 A. Given that there were public discussions of it,
18 I think it's a pretty good inference that someone in the
19 public saw it, given several people in the public said
20 they saw it.
21 I have not seen this message in binaries.
22 MR. HOLLEY: Can we take a short break? And
23 then I think if I take stock with my colleagues, you
24 know, maybe we can short-circuit this and try to wrap up
25 relatively soon.
1 THE WITNESS: Okay.
2 ((Recess from 11:39 a.m. to 11:48 a.m.)
3 MR. HOLLEY: Q. Mr. Schulman, looking at page
4 15 of Exhibit 15, which is your supplemental report --
5 and this is back to the question of the
6 componentizability of Windows -- there's a description
7 here of an analysis of 35 application scenarios.
8 Can you tell me why you picked 35 applications
9 to look at here?
10 A. I didn't really pick these. I asked someone
11 who did the work for me to grab as many applications as
12 he could in a reasonable amount of time based on what he
13 had on his machines, what he's used in his work, what
14 seems common, and that's -- I'm sure I would have said
15 to him, well, of course you want to exercise Microsoft
16 Office, Internet Explorer, et cetera.
17 Q. Well, if you look in Note 22 at the list of
18 these 35 applications, several of them are games that
19 are shipped with Windows. Right? So there's Free Cell,
20 Hearts --
21 A. Minesweeper.
22 Q. -- Minesweeper --
23 A. Pinball.
24 Q. Pinball --
25 A. Solitaire, but not -- someone once said that
1 Windows is a solitaire engine.
2 Sorry, gratuitous point. Spider Solitaire, I
3 don't know if that came with Windows.
4 Q. Okay. When you stay that he should exercise
5 these applications, does that consist solely of doing
6 what it says in the last sentence of this footnote,
7 which is to select application menu items?
8 A. Well, select it is maybe a little weak term.
9 But having selected a menu item, then go through some
10 process of using the functionality that is associated
11 with that menu item.
12 Q. Okay. Well, if you --
13 A. Rather than just selecting the menu item, which
14 in many cases would do almost nothing.
15 Q. Right. Now, in the case of Microsoft Power
16 Point, for example, until you actually embed a video,
17 you're not going to see calls to Windows Media Player,
18 are you?
19 A. I would assume not, unless if there was some --
20 one initialization call or something like that, no, I
21 would be surprised if you would.
22 Q. And is it fair to say that the 35 applications
23 that were tested in order to determine dlls and windows
24 that were called is a tiny subset of the tens of
25 thousands of Windows applications that exist in the
2 A. Yes. That's a -- now, some of these are the
3 most important applications. But if you were to simply
4 look at the applications on just, okay -- Microsoft Word
5 is one application, Microsoft Excel is another
6 application, you know, Pinball is a third application,
7 then yes, by a raw count like that, it -- this is
8 certainly a very tiny fraction of such a raw count.
9 Q. All right. Let's look at No. 9 in your
10 Supplemental Expert Report which refers to the MCPP and
11 WSPP documentation.
12 You say in 9a that you've only recently started
13 to examine the protocol documentation as part of the
14 MCPP and WSPP.
15 Since December 19th, have you continued to do
17 A. No. I've not been back to Zelle, Hoffman's
18 offices to -- which is the only place I can look at it,
19 in order to look at it.
20 Q. Okay. In considering the protocol
21 documentation under the MCPP in the United States, have
22 you looked at either of the exhibits that we looked at
23 earlier, the Competitive Impact Statement from the
24 Department of Justice or the Department of Justice's
25 Response to Public Comments on the Revised Proposed
1 Final Judgment?
2 A. No.
3 Q. When you say in 9b that you couldn't find
4 documentation in either MCPP or WSPP for the protocol
5 used by Windows to communicate with Hotmail servers --
6 A. Yes.
7 Q. -- what leads to you believe that Microsoft has
8 ever agreed with any government to document those
10 A. I did not say that it had.
11 Q. Okay. And you -- and so you're not opining --
12 I just want to understand your --
13 A. This is -- this Point 9 really is quite
14 preliminary. And when I say preliminary, I don't mean
15 that I'm planning some more extensive look, because as
16 much as I'd like to, I don't think I'm going to have
17 much of an opportunity.
18 Q. Okay. Fair enough.
19 A. These were really some initial observations.
20 Q. Fair enough. Fair enough.
21 And in 9c, when you say that you didn't see the
22 protocols that Outlook and Microsoft Office uses to
23 communicate with Microsoft Exchange, did you consider
24 that most the European and the United States protocol
25 documentation requirements have no application to
2 A. I did not consider that, except I just
3 wanted -- so, no. I just want to draw your attention
4 to, the last part of that sentence says, "and
5 communication between the msexch40.dll Jet Exchange ISAM
6 included with Windows XP and the exchange server."
7 So the fact that that is included with Windows
8 XP, I think, would be relevant to the "natively
9 communicate" requirement, as I understand it.
10 Q. Okay. In Europe, the protocols required to be
11 documented by the March 2004 decision are protocols that
12 Windows clients use to communicate with Windows
13 Workgroups servers running no applications. Is that
14 your understanding?
15 A. Running no applications?
16 Q. Yes.
17 A. No, I hadn't heard that. I don't remember that
18 language from the US protocol disclosure agreement.
19 Q. Well, let's --
20 A. But since I don't remember it from the
21 European, then --
22 Q. Okay. Well, I don't want to spend --
23 A. I'm sorry, could you give me the phrase again
24 without applications? Is that really the language?
25 Q. Well, it's not phrased in exactly that way, but
1 that's what it says. But I'm not testifying.
2 Why don't we look at the Competitive Impact
3 Statement, which I believe is Exhibit 16.
4 A. Okay.
5 Q. And to the page numbered 6 at the bottom. It
7 "Starting 9 months after the submission of
8 this Proposed Final Judgment of the Court,
9 Microsoft shall make available for use by third
10 parties for the sole purpose of interoperating
11 with a Widows Operating System product on
12 reasonable and nondiscriminatory terms consistent
13 with Section III-I" --
14 A. I'm sorry, where are we looking?
15 Q. Bottom of 6.
16 A. I am looking at the bottom of 6.
17 Q. In paragraph E --
18 A. Oh, okay, got you, got you.
19 Q. Should I maybe --
20 A. Top of page 7 --
21 Q. "On reasonable and nondiscriminatory terms
22 consistent with Section III-I, any communication
23 protocol that is on or after the date this final
24 judgment is submitted to the Court: 1, implemented in a
25 Windows Operating System product installed on a client
1 computer; and 2, used to interoperate natively; i.e.,
2 without the addition of any software code to the client
3 operating system product with a Microsoft server
4 operating system product."
5 A. Okay. So when you said without any
6 applications, that is the "natively" -- fine, good.
8 Q. And I just -- I wanted to know whether you had
9 taken account of that language that I just read to you
10 when you wrote Section 9 of your supplemental report.
11 A. Yes, I certainly did. That's why I said in
12 paragraph c of that that I noted that the Jet Exchange
13 is included with Windows XP. And that is why in
14 paragraph b -- well, I perhaps could have explicitly
15 noted that Outlook Express is included with the Windows
16 operating system product, but we know that, so --
17 Q. But a Hotmail server is not included in Windows
18 Server 2003, and an Exchange server is not included in
19 Windows Server 2003. Correct?
20 A. Oh, I see okay. So this is -- this is then
21 relating to the other -- to the end of that -- of the
22 clause which you read me, "with a Microsoft server
23 operating system product."
24 Let me see. Okay.
25 I will want to look at this document to see --
1 presumably there is a definition somewhere of Microsoft
2 server operating system product, and I can easily
3 believe that Hotmail is not a product in that -- it
4 certainly is a server product, but not in that -- it's a
5 service. It's not provided as a product to third
6 parties so they can have their own Hotmail servers. At
7 least I don't believe it is. Exchange mail server,
8 that's -- well, I don't know. I'll have to look.
9 Q. Okay. Before we took our last break, you were
10 talking about these distance algorithms that you were
11 using to analyze and -- I should wait till you're
12 done --
13 A. I'm sorry, I look to look these things up
14 afterwards. Good.
15 Q. My question is, the program that you described
16 that you've used in past cases that you used to do this
17 source code analysis with the arrays, is that among the
18 things that got produced to Microsoft?
19 (Discussion off the record.)
20 MR. HOLLEY: I'm sorry, I've lost my train of
22 THE WITNESS: Has that program been produced to
24 MR. HOLLEY: Q. Yes.
25 A. And I -- it -- I don't know -- I don't have
1 what has been produced to you. I certainly gave it to
2 the Plaintiff attorneys at one point, and I --
3 Q. Okay.
4 A. I'd be surprised if you don't have it. It
5 should be called sourcecomp, SRCCMP, maybe. There's --
6 I have a number of different versions of it. It would
7 be an AWK program, A-W-K, and it probably would have CMP
8 somewhere in the name, for compare. And it might be
9 SRCCMP. I'm not -- about 75 percent sure that that
10 would be what it's called. You should have it.
11 Q. Okay. Going back to No. 5 on page 5 of your
12 supplemental report, and assuming once again, as I asked
13 you to assume with me earlier, that shlwapi and shell32,
14 those dlls, are part of the redistributables for all
15 relevant versions of Internet Explorer, can you tell me
16 any interface between the redistributable IE and the
17 balance of Windows that has not been documented by
19 MR. LAMB: Objection. Incomplete hypothetical,
20 and to the extent it calls for a legal conclusion.
21 THE WITNESS: Let me see if I have this right.
22 If I accept that shell32 and shlwapi are on the
23 IE side of the line because Microsoft can put it there,
24 am I aware of APIs called out in Point 5 of my
25 supplemental record -- no, wait. Are any of the APIs
1 called out in Point 5 of my supplemental report ones
2 that don't fall into that?
3 I'm not sure I can say, because things have
4 changed around in IE7. But no, actually, by your
5 definition, in IE7, it's even cleaner, because the
6 shlwapi APIs were copied and put into IEUI.dll and are
7 called by IEframe.dll.
8 So by the definition which you're asking me to
9 accept for purposes of this question, then, yeah,
10 they're -- I mean, there are now -- most of these APIs
11 that I mentioned here are -- now even reside in a file
12 whose name includes IE.
13 Q. Let's -- sorry to jump around here, but I'm
14 just trying to close little issues that I probably
15 didn't follow up on adequately before.
16 On the question of this OS/2-related message in
17 No. 10 on page 13, is it your testimony that the
18 statement in OS/2 warn text that, quote, "Setup has
19 found OS/2 files on your computer. These files take up
20 significant disk space. Setup can remove OS/2 to make
21 more disk space available for use in Windows and
22 MS-DOS," close quote, that that statement is false?
23 A. In isolation and without any comparison between
24 OS/2 and other things that might be taking up
25 considerable disk space, no, I think -- considerable
1 disk space or significant disk space, which was the
2 other language, at the time that -- certainly we would
3 laugh at whatever amount of -- today we would laugh at
4 whatever amount of disk space they took up then.
5 But yeah, I think at the time that would be --
6 in a completely decontextualized fashion, that would be
7 an accurate statement.
8 Q. Because in the '92-'93 time frame, disk space
9 was much more important than it is now to consumers.
10 A. That's true.
11 Q. If you look at paragraph 8 on page 12 of your
12 report, referring to your earlier conclusion No. 38,
13 which reads, "Microsoft application and middleware
14 access to Microsoft Windows source code is a substantial
15 advantage that was not available to ISVs," in reaching
16 that conclusion, have you done an analysis of the source
17 code acess practices at other integrated software
18 companies like Apple and IBM and Sun?
19 A. No.
20 Q. So you don't know, for example, whether the
21 Apple developers at the Claris division have access to
22 the Mac OS/10 source code?
23 A. No, I don't.
24 Q. When I asked you at the outset of the day today
25 what things in your Materials Considered list that you'd
1 looked at in preparation for the deposition today, one
2 of the things you told me was that you'd looked at
3 Dr. Bennett's doctoral thesis on smalltalk. Is that
5 A. Well, I had not looked at the doctoral thesis.
6 I'd looked at a much shorter -- I would assume shorter
7 article, which I believe is the one whose URL is given
8 here. Oh, maybe I -- I'm sorry, this -- no, I looked
9 at -- I looked at the paper that was given at OOPSLA,
10 which I think would probably be much shorter than his
12 Q. And could you tell me why you were -- why you
13 were interested in smalltalk in connection with this
15 A. Oh, in connection with this report? I don't
16 think so at all.
17 Q. Well, maybe I misunderstood you. I thought you
18 were picking out for me from the Materials Considered
19 things that you looked at in preparation for today.
20 A. Oh, right.
21 Q. And I --
22 A. Oh, well I did look at it in preparation for
23 today. But I did not look at it in connection with the
24 15 pages of my supplemental report.
25 Q. Okay. And can you tell me why you looked at it
1 in preparation for today?
2 A. Simply because I was going through this 32-page
3 list of materials considered and trying to -- I figured
4 you might ask me, why did you look at this, why did you
5 look at that, was it connected with the report or
6 something else.
7 And I just wanted to refresh my memory about
8 some of the things that I had looked at.
9 Q. Okay. Do you intend to offer opinions in this
10 case about smalltalk in relation is to Sun's Java
12 A. No. No, I don't -- I hadn't -- should I?
13 Q. It's up to Mr. Lamb.
14 A. I'm sorry, that was -- that was unfair.
15 MR. LAMB: Well, obviously he may be called
16 upon to do a rebuttal based upon whatever Dr. Bennett
17 does or doesn't do.
18 MR. HOLLEY: And I'm not seeking to foreclose
20 Q. I'm just trying to understand as you sit here
21 today whether you intend to offer opinions on smalltalk
22 in relation to Java.
23 A. No.
24 Q. And one -- well, maybe two more questions.
25 Why in preparation for today were you looking
1 at the Technical Committee's ISV settings manager for
2 the Set Program Access and Default feature of Windows?
3 A. Wait. What page?
4 Q. Looking at -- well, both 17, which is the
5 download of the settings manager, and also page 22,
6 which is the FAQ describing the thing.
7 A. Okay. Just in your -- I was confused, because
8 you then mentioned SPAD as well, and I don't remember
9 that being called out in my citations, nor is it -- nor
10 is SPAD mentioned probably in either of the two
11 documents, though it certainly is a feature of the
12 settings manager. So, just with that --
13 Q. Okay. I appreciate that clarification.
14 A. With that --
15 Q. So with that clarification, can you tell me why
16 you were looking at those two things in preparation for
18 A. I was really just sort of trying to remember
19 what the ISV settings manager was. And you're right in
20 fact that it would be connected in part with SPAD. The
21 extent to which Microsoft's Set Program Access and
22 Defaults, or SPAD, feature is able to provide all
23 applications running on Windows with the same ability to
24 hook into various registry settings and things like
25 that, it was --
1 Q. Okay. And then finally, and this will -- you
2 can tell me if this is a compound question.
3 But you mentioned the Lampson, Thompson and
4 Anderson articles on page 16.
5 A. Yes.
6 Q. And if you need to describe -- if you need to
7 answer separately as to each of them --
8 A. Sure, I understand.
9 Q. But why was it that you were looking at those
10 three articles?
11 A. The Lampson and Thompson, I really have to
12 admit, it was just an excuse to look at two really
13 interesting pieces of classic computer science
14 literature, and, you know, bill my client for my time in
15 reading -- doing enjoyable reading.
16 The Thompson thing is -- well, they're both
17 really interesting, and I knew -- Dr. -- when I was --
18 I'm sorry. I apologize for my facetious answer.
19 The real reason that I had cited those is, I
20 had remembered that Dr. Bennett had cited those articles
21 at some point, or maybe it was Dr. Madnick, had cited
22 those. They wound up in this list, because I was trying
23 to put together as complete a list as possible of things
24 that I've looked at since the time of my initial report
25 and the similar appendix to it. And these wound up in
1 the -- in that list, I had looked at them, and I was
2 sort of trying to remember, why was I looking at this?
3 Oh, right, they're -- one of Microsoft's experts had
4 cited these. Oh, okay, I guess I'll read them again.
5 And then, the Thomas Anderson -- again, it
6 would have been, it's a paper that was cited probably by
7 Dr. Bennett. It may have been cited in the Martin
8 Minnesota report. There's a footnote in that report
9 that discusses development and operating system design
10 having to do with microkernels and XO kernels, and this
11 paper might have been cited there.
12 Q. When you say that these are classics of
13 computer science, what did you mean by that, these
15 A. Well, the Ken Thompson paper is just one of the
16 best-known -- it was a talk he gave to the ACM, the
17 Association of Computing Machinery, when he received the
18 Turing award, T-U-R-I-N-G. And it's been printed many
19 times and is quite a brief paper that shows some
20 ridiculously simple code, but which you read it, and
21 it's -- wow, this little simple piece of code is
22 remarkably complex. And, you know, someone could spend,
23 know, a year studying these few little things that are
24 in this paper.
25 It's a great -- it's classic in the sense that
1 it's inspiring. You could give this to someone and say,
2 this is it, this is what it's about. This is cool
4 And the Butler Lampson isn't quite like that.
5 The Butler Lampson piece is, it's a little annoying,
6 because it -- as he says, it hints, and he says some of
7 these hints contradict each other.
8 Some of these hints are platitudes, or he uses
9 some word like that. It's sort of these general truths
10 which, you know, you could cite them, and say, well,
11 Dr. Lampson says in his paper, you know, but you say
12 this, and it -- it wouldn't be of much use, because
13 they're at a very general level. But it's a great --
14 it's a great paper.
15 MR. HOLLEY: I have no further questions.
16 Thank you very much.
17 (Time noted, 12:15 p.m.)
19 I declare under penalty of perjury that the
20 foregoing is true and correct. Subscribed at
21 ________________, California, this ____ day of
22 ___________ 2007.
25 ANDREW SCHULMAN
1 CERTIFICATE OF DEPOSITION OFFICER
2 I, HOLLY THUMAN, a Certified Shorthand
3 Reporter, hereby certify that the witness in the
4 foregoing deposition was by me duly sworn to tell the
5 truth, the whole truth, and nothing but the truth in the
6 within-entitled cause;
7 That said deposition was taken in shorthand by
8 me, a disinterested person, at the time and place
9 therein stated, and that the testimony of said witness
10 was thereafter reduced to typewriting, by computer,
11 under my direction and supervision;
12 I further certify that I am not of counsel or
13 attorney for either or any of the parties to the
14 deposition, nor in any way interested in the event of
15 this cause, and that I am not related to any of the
16 parties thereto.
17 DATED: _____________________
19 HOLLY THUMAN, CSR No. 6834