Campbell et al v. Facebook Inc.
Filing
199
NOTICE by Facebook Inc. Joint Notice of Refiling of Documents Accompanying Class Certification Briefs and Evidentiary Objections (Attachments: # 1 Ex. 1 - Replacement for Dkt. 178-1, # 2 Ex. 2 - Replacement for Dkt. 183-4, # 3 Ex. 3 - Replacement for Dkt. 179-1, # 4 Ex. 4 - Replacement for Dkt. 184-3, # 5 Ex. 5 - Replacement for Dkt. 179-2, # 6 Ex. 6 - Replacement for Dkt. 179-3, # 7 Ex. 7 - Replacement for Dkt. 179-4, # 8 Ex. 8 - Replacement for Dkt. 179-5, # 9 Ex. 9 - Replacement for Dkt. 179-6, # 10 Ex. 10 - Replacement for Dkt. 179-7, # 11 Ex. 11 - Replacement for Dkt. 179-10, # 12 Ex. 12 - Replacement for Dkt. 179-11, # 13 Ex. 13 - Replacement for Dkt. 179-12, # 14 Ex. 14 - Replacement for Dkt. 179-13, # 15 Ex. 15 - Replacement for Dkt. 179-14, # 16 Ex. 16 - Replacement for Dkt. 179-15, # 17 Ex. 17 - Replacement for Dkt. 179-16, # 18 Ex. 18 - Replacement for Dkt. 179-17, # 19 Ex. 19 - Replacement for Dkt. 179-18, # 20 Ex. 20 - Replacement for Dkt. 179-20, # 21 Ex. 21 - Replacement for Dkt. 180-2, # 22 Ex. 22 - Replacement for Dkt. 180-3, # 23 Ex. 23 - Replacement for Dkt. 184-9, # 24 Ex. 24 - Replacement for Dkt. 180-7, # 25 Ex. 25 - Replacement for Dkt. 180-9, # 26 Ex. 26 - Replacement for Dkt. 180-12, # 27 Ex. 27 - Replacement for Dkt. 180-17, # 28 Ex. 28 - Replacement for Dkt. 180-18, # 29 Ex. 29 - Replacement for Dkt. 180-19, # 30 Ex. 30 - Replacement for Dkt. 180-20, # 31 Ex. 31 - Replacement for Dkt. 180-21, # 32 Ex. 32 - Replacement for Dkt. 180-22, # 33 Ex. 33 - Replacement for Dkt. 180-23, # 34 Ex. 34 - Replacement for Dkt. 178-5)(Chorba, Christopher) (Filed on 6/15/2016)
EXHIBIT 229
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
UNITED STATES DISTRICT COURT
NORTHERN DISTRICT OF CALIFORNIA
1
2
3
4
)
5
6
MATTHEW CAMPBELL, MICHAEL
HURLEY, and DAVID SHADPOUR, on
behalf of themselves and all
others similarly situated,
7
)
)
)
)
)
Plaintiffs,
8
)
)
vs.
)
9
)
Case No.
C 13-05996 PJH
)
10
FACEBOOK, INC.,
)
)
Defendant.
11
)
)
12
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
13
14
VIDEOTAPED DEPOSITION OF RAY HE
Palo Alto, California
Friday, September 25, 2015
Volume I
15
16
17
18
19
20
21
22
23
Reported by:
CHRIS TE SELLE
CSR No. 10836
Job No. 2144894
24
25
PAGES
1
- 273
Page 1
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
describe as a map between user ID.
2
Q.
Between user ID and what?
3
A.
And share ID.
4
Q.
What's a share ID?
5
A.
Share ID is a unique identifier assigned
10:19:23
6
10:19:37
to a share object.
7
Q.
What's a share object?
8
A.
Share object is a, by my definition, and
9
10
most engineers' definitions, a Facebook object, FB
object, representing a share.
10:19:58
11
Q.
What is a share?
12
A.
A share is a snapshot of -- well, a share
13
can be many things.
14
by -- in general, it's a instance of a user sharing
15
something.
16
Q.
It depends on what you mean
10:20:32
Is each instance of a user sharing
17
something, does each instance of a user sharing
18
something result in the creation of a share object?
19
MR. CHORBA:
20
THE WITNESS:
21
Vague as to time.
Yes, it does depend on the period
10:20:56
of time.
22
Objection.
BY MR. CARNEY:
23
Q.
Okay.
2009 to 2012.
24
A.
I believe so, yes.
25
Q.
At what time period was that different?
10:21:09
Page 56
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
2
3
MR. CHORBA:
Objection.
Vague as to
11:04:44
share_count.
THE WITNESS:
4
share_count.
5
Depends on what you mean by
BY MR. CARNEY:
6
7
8
9
10
11
12
Q.
11:04:48
What did you mean by share_count when you
used that term in this e-mail?
A.
I couldn't, I don't remember what I meant,
because share_count means two different things.
Q.
Okay.
What are the two things share_count
11:05:01
means?
A.
Depending on the context, in the context
13
of FQL, it either meant, well, in the context of
14
FQL, it always meant the total number of share
15
objects that were created and incremented the share
16
counter for a given URL, a subset of those.
17
Q.
What did you mean by, a subset of those?
18
A.
11:05:21
Not all share objects created are
19
accounted for in the share_count.
20
Q.
Which ones are not?
21
A.
Any share objects that failed to create,
22
or any race conditions that would have occurred that
23
11:05:59
we didn't check for would not have been counted.
24
Q.
And what is a race condition?
25
A.
In the context of what I just said, if two
11:06:17
Page 77
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
people share something at the same time, we would
2
only count it once, within some margin, and, if two
3
people from two different data centers share
4
something at the same time, it wouldn't have been
5
counted more than once.
6
system for the count was not active, you were able
7
to create a share object without affecting the
8
share_count.
9
Q.
Okay.
10
A.
Also, there have been periods of time
11
Or, if the, the storage
11:06:23
11:06:36
11:06:51
where we've lost a share_count.
12
Q.
What does that mean?
13
A.
There's been data loss on the container
14
object for certain URLs.
15
Q.
16
17
20
21
22
23
11:07:10
Did you lose that information at any time
between 2009 and 2012?
18
19
When -- strike that.
A.
Yes, for certain share, or for certain
Q.
But it's just for certain URLs; it's not,
URLs.
11:07:22
let's say, a global loss of that information.
A.
There was a global misaccounting of that
information, which could be described as a loss.
24
Q.
When did that occur?
25
A.
I can't say for sure, but I believe in
11:07:39
Page 78
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
2
3
4
A.
I believe the real time metric counting
11:37:12
likes was a somewhat related revision, also merged.
Q.
Did you work on the real time metric
counting to likes and comments?
5
A.
Yes.
6
Q.
Who was that information made available --
7
strike that question.
8
9
11:37:32
With respect to the real time metric
counting to likes and comments, who was that
10
information made available to?
11
only, or third parties?
12
13
14
15
A.
Facebook employees
11:37:46
It would have unreliably been made
available to both.
Q.
Did you ever determine the cause of the
unreliability?
11:38:04
16
A.
Yes.
17
Q.
And what was it?
18
A.
The system that it was based on had a, the
19
system it was based on ran on a set of machines that
20
could not handle the load, among other reasons.
21
Q.
What were the other reasons?
22
A.
They were down sometimes.
23
Q.
11:38:22
And was that functionality replaced with a
24
different real time metric counting to likes and
25
comments?
11:38:44
Page 91
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
A.
No.
2
Q.
Do you see the term, API, that's in the
3
11:38:44
comments section?
4
A.
Yes.
5
Q.
What is API, as that term is used there?
6
A.
It's an acronym, actually, initialization.
7
Q.
And in 2009, were there different APIs?
8
A.
It depends on what you mean.
9
10
11:39:05
Developers
commonly refer to multiple APIs as one API, but,
yeah.
11
11:39:35
Q.
With different branches under the general
13
A.
That's correct.
14
Q.
What different branches existed in 2009,
12
15
16
17
API?
under sort of the umbrella concept of API?
A.
11:39:43
I would not be able to make a list of
those from memory.
18
Q.
Do you know any?
19
A.
At, depending on time, I might be able to
20
21
22
remember a few.
Q.
Okay.
11:40:00
Do you see down at the bottom of
the page, the heading, summary?
23
A.
Yes.
24
Q.
Do you know whether you drafted that
25
summary?
11:40:10
Page 92
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
Facebook server stored as a global share object?
2
MR. CHORBA:
3
THE WITNESS:
4
Objection.
02:22:01
Vague as to time.
It depends on the time period.
BY MR. CARNEY:
5
Q.
'09 through 12.
6
A.
Shared data derived from message data, if
7
a message sent to Facebook's server resulted in the
8
creation of a share object, it would, sometimes, and
9
02:22:16
this would only be under the conditions the share
10
object is actually created, under those conditions,
11
it would increment a part of a field on the global
12
share object.
13
Q.
You said --
14
A.
Sometimes.
15
Q.
You said that on what occasions would that
16
happen.
17
02:22:55
sometimes.
18
19
A.
02:23:09
I'm trying to tackle your use of the word,
There are occasions where it would not
increment the field.
20
Q.
What occasions?
21
A.
If, depending on server availability, and
22
the race conditions we previously mentioned, so, if
23
multiple people are sharing the same thing at the
24
same time, which is pretty common, and there is any
25
latency in the system, it's possible we write an old
02:23:22
02:23:38
Page 156
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
2
value, or not at all.
Q.
02:23:42
Are there any other circumstances, other
3
than race conditions, that a global share would not
4
be created following the creation of a user-specific
5
share object?
6
A.
7
was created.
8
created.
02:23:55
So, you mentioned that the global share
The global share is not always
It's just updated.
9
Q.
Oh.
10
A.
It can be created.
11
Q.
In what circumstances is it updated?
12
A.
In the general case, if the URL object
13
14
15
02:24:07
already exists, it would be updated.
Q.
And you testified a moment ago that a
certain field would be populated, correct?
16
A.
Updated.
17
Q.
Updated.
18
A.
This is the tracking info field.
19
Q.
And what document are you looking at?
20
A.
I'm looking at Exhibit 14.
21
Q.
02:24:31
And the, I'm sorry, the tracking info
22
23
24
25
Which field?
02:24:47
field; is that what you said?
A.
Yes.
If you look from, on the left, it's
maybe the, halfway down the page.
Q.
I see it.
And there is a string of 17
02:25:04
Page 157
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
2
Q.
03:33:06
have caused -- strike that question.
3
4
And what are the circumstances that may
If the user did not have JavaScript
enabled, would a global share have been created?
5
A.
No.
6
Q.
Does that mean that no ENT share would
7
03:33:30
have been created?
8
A.
Yes.
9
Q.
Does a global share have to come before
10
the ENT share?
11
MR. CHORBA:
12
THE WITNESS:
03:33:44
Objection.
Vague as to time.
Do you mean a global share would
13
never have, would not have to exist for a ENT share
14
to exist?
15
BY MR. CARNEY:
16
Q.
03:34:09
In the context of URLs embedded in private
17
messages between 2010 and 2012, would a global ENT,
18
would an ENTGlobalShare have to exist prior to the
19
creation of an ENT share?
20
21
A.
If, are we still under the premise that
03:34:26
the user has JavaScript enabled?
22
Q.
JavaScript is enabled.
23
A.
Okay.
24
25
There must be an ENTGlobalShare
before there is an ENT share, at any stage.
Q.
At any stage.
03:34:41
Page 190
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
A.
Yes.
2
Q.
What is it?
3
A.
It is the logging that happens when a user
4
5
05:56:21
visits a third party link on Facebook, link shim.
Q.
What is in the tracking info field on a
6
share object?
7
05:56:43
And I'm looking at the second line
there of the second paragraph.
8
MR. CHORBA:
9
THE WITNESS:
10
Objection.
Vague as to time.
It does depend on time.
BY MR. CARNEY:
05:57:02
11
Q.
Let's start with January 24, 2012.
12
A.
The tracking info on a share object here
13
refers to the global share object, and that was the
14
set of comma delimited numbers we previously talked
15
about, so, Exhibit 14?
16
17
18
19
Q.
Uh-huh.
05:57:17
Who is the best person to talk to
about the creation of source code for taste?
MR. CHORBA:
Objection.
Vague as to, best.
BY MR. CARNEY:
20
Q.
Most knowledgeable.
21
MR. CHORBA:
22
THE WITNESS:
23
Answer, if you know.
It depends on the time period in
question.
24
05:58:14
BY MR. CARNEY:
25
Q.
How about 2010 through 2012?
05:58:21
Page 252
Veritext Legal Solutions
866 299-5127
HIGHLY CONFIDENTIAL - ATTORNEYS' EYES ONLY
1
I,
the undersigned, a Certified Shorthand
2
Reporter of the State of California, do hereby
3
certify:
4
That the foregoing proceedings were taken
5
before me at the time and place herein set forth;
6
that any witnesses in the foregoing proceedings,
7
prior to testifying, were duly sworn; that a record
8
of the proceedings was made by me using machine
9
shorthand which was thereafter transcribed under my
10
direction; that the foregoing transcript is a true
11
record of the testimony given.
12
Further, that if the foregoing pertains to the
13
original transcript of a deposition in a Federal
14
Case, before completion of the proceedings, review
15
of the transcript
16
[X]
was
[
]
was not requested.
I further certify I am neither financially
17
interested in the action nor a relative or employee
18
of any attorney or party to this action.
19
20
IN WITNESS WHEREOF,
I have this date subscribed
my name.
21
22
Dated:10/9/15
23
24
<%signature>
CHRIS TE SELLE
25
CSR No. 10836
Page 273
Veritext Legal Solutions
866 299-5127
In the Matter of:
Campbell et al. v. Facebook, Inc.
Case No. 13-CV-05996-PJH
Date of deposition:
September 25, 2015
Witness:
Ray He
Reason codes:
1.
2.
3.
To clarify the record.
To conform to the facts.
To correct transcription errors.
Page
Line
Reads
13
1
28
12
A. Master of engineering, and computer science
and electrical engineering.
Q. Is Facebook wiki in the Facebook repository?
A. No.
29
5
30
32
39
7
7
22
42
13
52
25
Should Read
A. Master of Engineering of Computer Science
and Electrical Engineering.
Q. Is Facebook wiki in the Facebook repository?
A. The Facebook wiki code was part of the
repository, but the Facebook wiki content was not.
Q. And is the DEX system part of the Facebook Q. And is the DEX system part of the Facebook
repository?
repository?
A. I don’t know for sure.
A. The Dex code was part of the repository, but
the Dex content was not.
Facebook messager repository
Facebook messenger repository
A. A synonym for Facebook repository.
A. A browser for the Facebook repository.
I don't believe I worked directly on messages
I don't believe I worked directly on the messages
product ever.
product ever.
A. Is either a, I think he may have been an
A. Is either a, I think he may have been an
interim product manager.
Intern Product manager.
Q. Do you know what project he was the interim Q. Do you know what project he was the Intern
product manager for?
Product manager for?
A. I think, I believe I referred to it as i_data, with A. I think, I believe I referred to it as i data, with a
a space.
space.
Reason
Code
3
1
1
3
1
3
3
3
53
1
Q. And does i_data or some successor to that
product exist today?
A. Yes.
Q. And is demographic information reflected in
the i_data dashboard today?
A. I don't believe so.
A: An internal page, i_data, and an internal page,
which was kind of like domain insights.
A. If I said Mark Kinsey was an engineer, I
believe he was the interim product manager.
A. It's -- acronym?
Q. And then you said, within the context of an
FQL query, it meant total number of share object
created, correct?
A. Yes.
53
9
65
19
70
25
72
79
1
19
92
16
Q. What different branches existed in 2009,
under sort of the umbrella concept of API?
A. I would not be able to make a list of those
from memory.
93
21
97
17
101
8
102
2
120
25
128
129
21
11
Q. Is M. Kinsey, Mark Kinsey?
A. Yes.
although we may have had an interim name of
interaction total.
A. It is not a tool in the same sense that it is not
an interim tool.
deprecated interim system that we have been
talking about for the last five minutes?
to avoid risk of identifiable information per, I
think, I. Shepard or M. Vernal.
Q. What is get_stats?
A. That would be the aggregate counts we
discussed about the total, interaction, the
2
Q. And does i data or some successor to that
product exist today?
A. Yes.
Q. And is demographic information reflected in
the i data dashboard today?
A. I don't believe so.
A: An internal page, i data, and an internal
20 page, which was kind of like domain insights.
A. If I said Mark Kinsey was an engineer, I
believe he was the Intern Product manager.
A. It's an acronym.
Q. And then you said, within the context of an
FQL query, it meant total number of share object
created, correct?
A. It meant the total number of feed-posted share
objects created.
Q. What different branches existed in 2009, under
sort of the umbrella concept of API?
A. I would not be able to make a list of those from
memory. Branches don’t mean code branches, but
rather API methods or “branches” in the graph.
Q. Is mkinsey, Mark Kinsey?
A. Yes.
although we may have had an internal name of
interaction total.
A. It is not a tool in the same sense that it is not an
Intern tool.
deprecated Intern system that we have been talking
about for the last five minutes?
to avoid risk of identifiable information per, I
think, lShepard or mvernal.
Q. What is getstats?
A. That would be the aggregate counts we
discussed about the total interaction, the
3
3
3
3
3
1
1
3
3
3
3
3
3
3
throughout
throughout
163
4
174
24
178
23
179
12
197
14
212
3
221
12
223
9
241
13
247
8
251
2, 4
like_count, the comment_count, share_count.
ENT share
ENTGlobalShare
A. Permalink refers to a link where an object
would hypothetically be a render, would render
then if you click on it.
A. If, for instance, this was posted by a page on
behalf of a page, I believe it would be different.
Q. Is it FBI type shares that relate exclusively to
the message product?
A. No.
A. Facebook has, with the introduction of
schema, automatically generated documentation,
which would show up if you were to click see
more details about ENT share schema.
Q. And what if the user never hits send? Does
the URL attachment ever become an object?
A. No.
A. It's just a, I believe, literally, in the code, it's,
is, underscore, posted.
A. Appears to be a copy of an e-mail sent from
C. Mishra to myself.
Q. In June of 2010, was there a unique ID
associated with every shared URL? And I'm just
reading that next bullet point there.
A. That is, if you and I shared the same URL, the
ID would be the same.
I believe he worked on it or he had input on the
project leading up to FA 2011.
A. Without checking the code that this pulled it's
information out of.
Q. And what is
It's on the second
line of the middle paragraph.
3
like_count, the comment_count, share_count.
EntShare
EntGlobalShare
A. Permalink refers to a link where an object
would hypothetically be rendered if you click on
it.
A. If, for instance, this was posted on behalf of a
page, I believe it would be different.
Q. Is it FB type shares that relate exclusively to the
message product?
A. No.
A. Facebook has, with the introduction of
EntSchema, automatically generated
documentation, which would show up if you were
to click see more details about EntShare schema.
Q. And what if the user never hits send? Does the
URL attachment ever become an object?
A. No, it never becomes a FB share object.
A. It's just a, I believe, literally, in the code, it is
$posted.
A. Appears to be a copy of an e-mail sent from
cmishra to myself.
Q. In June of 2010, was there a unique ID
associated with every shared URL? And I'm just
reading that next bullet point there.
A. That is, if you and I successfully shared the
same URL, the ID for that canonical URL would
be the same.
I believe he worked on it or he had input on the
project leading up to F8 2011.
A. Without checking the code that this pulled its
information out of.
Q. And what is
? It's on the second
line of the middle paragraph.
3
3
3
3
3
3
1
3
3
1
3
3
3
262
23
A. I believe
is one of the class
methods on ENT share that we previously
discussed.
Q. And are you familiar with the term, ENT
feedback target with tokens?
A. Yes.
Date: November __11___, 2015
A. I believe
is one of the class
methods on EntShare that we previously
discussed.
Q. And are you familiar with the term,
EntFeedbackTarget with tokens?
A. Yes.
________________________
Ray He
4
3
Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.
Why Is My Information Online?