Currently just notes, under construction.
I must be unbiased in this study
Rather than starting with lawsuits or admin comms, I’ll build my incident list from the most neutral, time-ordered source available:
Best options:
Build a master list of incidents first, based only on what happened and when, without regard to group or admin reaction. Only after that do you code for Target_Group, Response, etc.
Any campus-affiliated event between Sept 2023 and June 2024 where:
⚠️ Considerations:
Rule applies constantly. Some will involve Jewish students, some Arab students — the rule determines inclusion, not identity or severity.
I might still find incidents via lawsuits, surveys, etc., but I won’t use those to determine which ones get included.
Instead:
This avoids confirmation bias.
I don’t have to have an equal number of Jewish and Palestinian incidents — real-world bias might mean there are more of one kind of incident and fewer of another. What’s important is:
“Do incidents involving Palestinian students receive less administrative response than those involving Jewish students even when the severity and visibility are the same?”
“Among incidents with equal media coverage and equal severity, does the administration still respond differently depending on which group is affected?”
If I find a consistent disparity after controlling for those other factors → that’s evidence of bias.
“Account for” = don’t ignore the fact that Jewish incidents might look different on paper — control for that so your findings reflect bias, not circumstance.
But,“If both the media and the administration are biased — how can I isolate administrative bias without just proving they respond to media pressure?”
If admin responses correlate with media coverage, it could mean:
You’re testing whether the pattern of behavior is systematically unequal even after accounting for neutral factors like visibility or severity.
🧱 Use Media Coverage as a Covariate, Not a Shield
You’re not saying media coverage justifies admin action. You’re testing whether media coverage explains the action — and whether it explains all of it.
🔐 Lean Into Transparency
You’ll strengthen your work by saying:
“Media coverage does influence administrative behavior — but we tested whether that explains all the disparity, and it doesn’t.”
In research terms, you’re working in the realm of:
Given your project is:
Using categories like Yes/Strong for bias detection patterns is a well-established approach in policy analysis, institutional review, and legal-impact studies.
As long as:
Structured Comparison, Not Inference
Your work involves:
You’re not trying to say:
“This proves, with p < 0.05, that UCLA is biased.”
You’re saying:
“Across all comparable incidents documented via a neutral source, there is a consistent pattern of unequal treatment that is not explained by severity, visibility, or legality.”
That’s qualitative comparative research, not statistical inference — and that’s totally valid in policy, legal, and bias studies.
So I can’t extrapolate, I can’t say the university is biased. I can say the administration is biased — within the scope of the dataset and under clearly defined parameters.
✅ Here’s How You Make That Claim Rigorously
“Based on a comprehensive review of all incidents reported by The Daily Bruin between [years], and applying a consistent inclusion rule and coding scheme, UCLA’s administration demonstrated a pattern of differential response depending on the identity group affected — even when controlling for severity, visibility, and policy violations.”
This is a strong claim:
📐 What You Can Say
✅ “There is clear evidence of disparate treatment within documented cases.”
✅ “Patterns of administrative response show group-based asymmetry.”
✅ “Even among incidents of similar severity and visibility, the university responded differently depending on the group affected.”
❌ What You Shouldn’t Say (without statistical inference)
❌ “UCLA is universally biased across all incidents involving these communities.”
❌ “This proves the administration is institutionally antisemitic/Islamophobic.”
❌ “X% of the time, they behave in a biased way.”
🧠 So Yes — You’re Claiming Conditional Bias
UCLA exhibited bias under the following conditions:
And that’s how most serious bias studies work
“The Daily Bruin is the most comprehensive and continuously maintained public record of UCLA campus life from the student perspective.”
✅ 1. It’s UCLA’s Student Paper of Record
“Articles were used to identify and time-stamp relevant incidents. No editorial interpretation from the Bruin was included in bias analysis.”
✅ 2. You’re Not Using It for Interpretation — Just Event Discovery
✅ 3. You Apply a Consistent Keyword Search and Inclusion Rule
This makes your methodology replicable and objective:
✅ 4. You Cross-Check Admin Response Using Admin’s Own Words
🎯 Why I’m Right to Stick with the Daily Bruin
✅ 1. Social media is not objective or complete
✅ 2. DB gives you structure and timestamped reporting
✅ 3. Methodology matters more than exhaustiveness
“This isn’t about cutting corners — it’s about minimizing noise so I can precisely measure the administration’s behavior against an externally grounded record of student life.”
Trying to include every mention from social media would make your study:
By contrast, sticking to DB ensures:
✅ 1. Define a fixed set of DV source types up front
For structure and transparency
Examples
✅ Stick to these consistently — no ad hoc additions later unless logged as a scope expansion.
✅ 2. Apply all relevant DV source types to every incident
Don’t pick and choose based on which sources are available or interesting.
Instead:
If yes → log and code it
If no → mark as “none observed” or “no public response”
This way you’re not selecting responses — you’re checking whether they exist, from a consistent list.
✅ 3. Make your coding definitions as replicable as your inclusion rule
Field: Admin_Response
Definition:
🎯 Dependent Variables (DVs) Examples
These measure administrative behavior — the outcomes you’re testing for bias.
Examples (Structured):
✅ 1. Define a fixed set of orgs up front
But don’t aim for perfect symmetry — aim for methodological neutrality.
Choose orgs based on:
🧠 So yes — your approach might look like:
Included student orgs (based on incident involvement and visibility):
Other relevant docs
You can say: “These orgs were selected based on their repeated appearance in Daily Bruin coverage of relevant incidents between [dates].”
✅ This makes your selection criteria visibility-based, not identity-based.
✅ 2. What if the visibility is lopsided?
That’s okay — and in fact, it’s data. If certain orgs are more active, more covered, or more responded to, that’s part of the story.
The key is:
🧱 Final structure:
Define a fixed list of org accounts you’ll monitor
That’s how you avoid both cherry-picking and artificial balancing — you’re just tracking who actually showed up.
So you’re not treating student org posts as DVs — you’re using them to code:
These are for capturing nuance. You want student_tone to be separate from incident_severity and media_coverage_level because it doesn’t necessarily correlate with those things.
They become independent or control variables to isolate bias in admin behavior.
For the Kaplan example:
SJP is mentioned → you check SJP’s channels for protest framing, intent, student tone
Hillel responds publicly → log that response as:
You’re not “including Hillel” as a party to the incident unless they were directly involved.
You’re just logging that they responded — and that may factor into things like:
Media_Coverage_Level:
These help you explain or isolate what might influence the DVs.
They can be either:
Examples (Structured):
Severity_Score
(Low / Moderate / High)Target_Group
Media_Coverage_Level
Student_Action_Type
(e.g., protest, statement, disruption)Examples (Qualitative):
Student_Tone
(based on org posts or chants) — not sure about this, should be consistent with DVsNarrative_Framing
(e.g., “security risk” vs. “civil rights”)Competing_Claims
(whether multiple orgs weighed in publicly)🧠 Why this matters:
You’re capturing the ecosystem around the incident — who was involved, who amplified, and who shaped admin perception. But your unit of analysis stays the same: the incident, not the org.
Your main dataset — one row per incident.
Includes:
Incident_ID | Date | Target_Group | Severity_Score | Admin_Response | Tone_of_Response | Media_Coverage_Level | Source_IDs |
---|---|---|---|---|---|---|---|
INC-001 | 2024-04-30 | Palestinian | High | Yes | Punitive | High | DB-045, ADM-014, HIL-003 |
INC-002 | 2024-05-03 | Jewish | Moderate | Yes | Conciliatory | Moderate | DB-047, ADM-017 |
INC-003 | 2024-05-05 | Palestinian | Low | No | — | Low | DB-048 |
INC-004 | 2024-05-10 | Jewish | High | Yes | Neutral | High | DB-050, ADM-020, HIL-004 |
It’s a master list of all individual sources, regardless of incident. Each row = one source, with a unique Source_ID.
So yes — a source (e.g., ADM-014) can be related to multiple incidents if relevant to each.
📎 Sample Source Appendix Structure
Source_ID | Type | Title | Date | Use (Incidents) |
---|---|---|---|---|
DB-045 | DB Article | “Police Remove Protesters…” | 2024-05-01 | INC-004, INC-006 |
ADM-014 | Admin Email | Chancellor’s Campus Update | 2024-05-02 | INC-004 |
HIL-003 | Hillel IG | “We are alarmed by recent…” | 2024-05-02 | INC-004 |
This is your folder of saved source materials.
It’s not a table — it’s where you store the actual documents or links (PDFs, screenshots, archived web pages).
Each file or link should be named by its Source_ID, so DB-045.pdf or ADM-014.txt matches the entries in your Source Appendix.
That possibility is exactly what makes your research credible.
If you go through this process honestly and rigorously, and come out with:
…then you can confidently say:
“This study found no evidence of systematic administrative bias in UCLA’s public response to documented incidents, based on a consistent, neutral inclusion rule.”
That is still a valid and valuable outcome.
🧭 But Here’s the Reality:
Given what you’ve already seen — lawsuits, student testimony, visibility patterns, unequal framing — it’s unlikely you’ll come out with nothing.
You might find:
Even if the pattern isn’t across the board, you’ll likely find:
And that’s enough to make a powerful and specific claim.
🎓 Research Isn’t About Proving a Point — It’s About Testing One
You’re not “trying to show bias” — you’re trying to find out whether bias exists under defined, observable conditions.
If you do that transparently, then whether your conclusion is yes or no, your work is:
And that makes it powerful.
Apply all code definitions in good faith, and the conclusions emerge as a pattern in the analysis phase, not as a coded variable.
Your coding job is to:
Then, in analysis:
You can write:
“Across 12 incidents affecting Palestinian students, administrative responses consistently used language coded as conciliatory, but avoided naming harm or offering specific recourse — suggesting a pattern of rhetorical response that deflects institutional responsibility, aligning more with reputational safeguarding than material recourse.””
Inclusion Rule
Defines what counts as an incident
→ Neutral, identity-agnostic
Keyword Search
Retrieves a superset of candidate articles
→ Designed to surface events likely to match rule
Screening by Rule
Filters keyword results using defined criteria in the inclusion rule
→ Apply consistently — group/outcome blind
Logging
Track both included and excluded articles with reasons for transparency
→ Maintain transparency and repeatability
Structured Coding
Assign rule-based fields (e.g., group, severity, policy, response)
→ Enables categorical comparison across incidents
Qualitative Coding
Apply interpretive rubrics to capture tone, framing, or narrative position
→ Adds context and nuance beyond numeric fields
Consistency Checks
Test and refine coding for replicability across all incidents
→ Apply to both structured and qualitative variables
Controlled Comparison
Analyze disparities while holding severity, visibility, and legality constant
→ Reveals potential group-based bias in admin behavior
Type | Description | Examples |
---|---|---|
Structured Attributes | Rule-based, consistent, and quantifiable. These variables are coded using explicit criteria, allowing categorical comparison. | Target_Group , Severity_Score , Policy_Broken , Media_Coverage_Level , Admin_Response |
Qualitative Variables | Interpretive but systematic. These capture nuance (e.g., tone or framing) using defined rubrics with consistent categories. | Tone_of_Response , Framing_Language , Narrative_Positioning , Latency_Tone , Follow_Up_Action |
Tool | Use |
---|---|
Date_of_Incident , Date_of_Response |
Calculate latency, map timelines |
Academic_Term , Policy_Epoch |
Compare behavior pre-/post-major events (design choice, maybe) |
Time-windowed analysis | Detect episodic or event-specific bias |
Visual tools | Reveal clusters, escalation patterns, or administrative silences |
✅ Master Incident List
One row per incident
→ Includes date, location, structured and qualitative fields
→ References source(s) used via Source_IDs
→ Chronologically ordered and searchable
✅ Source Appendix
One row per unique source
→ Includes Source_ID
, title, date, type (e.g., Daily Bruin, admin email)
→ Describes how the source was used
→ Linked to incidents via shared IDs
Why This Works:
These are foundational — you need them early to build structured comparisons:
Format tables that separate DVs from other variables, and group structured and qualitative
Incident_ID
Date_of_Incident
Target_Group
Severity_Score
Admin_Response
(Y/N)Media_Coverage_Level
Source_ID(s)
You don’t need to lock these in up front — just keep them in mind:
Tone_of_Response
(once you’ve collected admin statements)Latency
(once you have both date fields)Policy_Epoch
or Proximity_to_Event
(if needed after early patterns emerge)Follow_Up_Action
, Framing_Language
(after you see enough variation)🧾 Source = A specific document or artifact
An individual item you cite or use to code an incident.
Examples:
🗂️ Source Type = A category of source
A class of materials that you allow into your dataset.
Examples:
The best next step depends on your immediate goal: refining your process vs. scaling your dataset.
Best if your goal is to test and refine your pipeline
Walk 2–3 candidate incidents through the entire evaluation pipeline:
Incident_ID
and Source_ID
formatting🔁 This approach reduces rework later and ensures your system holds up under real examples.
Best if your goal is to begin scaling up the dataset
🧱 This sets the foundation for consistent data gathering and prevents selection bias.
Do one full test incident first, end-to-end (cherry-picked is fine):
Incident_ID
, Source_ID
)Example—Field: Severity_Score
Possible values and definitions:
Then, run your inclusion rule and draft keyword search on a small batch (5–10 real Daily Bruin articles):
You can consider your:
Inclusion rule
Structured coding rules
Qualitative rubrics
Finalized when they all hold steady across the batch — meaning:
At that point, your system is stable, and you’re ready to scale up full incident discovery and coding with confidence.
Some of the notes above are hazy on field types and need to be corrected. For clarity for now:
🟢 1. Binary / Boolean
Values: Yes / No, True / False, 0 / 1
Structured: ✅ Always (as long as definitions are clear)
Example:
Admin_Response
: Yes / No
Follow_Up_Action
: Yes / No
🔵 2. Nominal Categorical
Values: Categories with no inherent order
Structured: ✅ If categories are defined and exhaustive
Example:
Target_Group
: Jewish / Muslim / Palestinian / Other
Media_Coverage_Level
: None / Campus / Regional / National
🟡 3. Ordinal Categorical
Values: Categories with a clear order, but no fixed interval
Structured: ✅ If order is defined and criteria are consistent
Example:
Severity_Score
: Low / Moderate / High
Tone_of_Response
: Conciliatory < Neutral < Punitive
🔴 4. Quantitative (Discrete or Continuous)
Values: Numeric, measurable, fixed intervals
Structured: ✅ As long as units are consistent
Example:
Latency
: Number of days
Number_of_Protesters
: Integer
Injury_Count
: Integer
🟠 5. Structured Qualitative
Values: Subjective content coded into categories
Structured: ✅ Only after you define a codebook
Example:
Student_Tone
: Supportive / Angry / Defiant / Defeated
Narrative_Framing
: Civil rights / Safety threat / Neutral
Statement_Contains_Apology
: Yes / No
⚫️ 6. Unstructured Qualitative
Values: Free text, open-ended, not yet coded
Structured: ❌ (unless you code it later)
Example:
Admin_Statement_Text
: Full quote
Chants_Heard
: Raw transcript
Social_Media_Posts
: Screenshots, raw logs
Type | Ordered | Numeric | Needs Coding Rules? | Structured | Examples |
---|---|---|---|---|---|
Binary / Boolean | No | No | No | ✅ Yes | Admin_Response, Follow_Up_Action |
Nominal Categorical | No | No | ✅ Yes (defined set) | ✅ Yes | Target_Group, Media_Coverage_Level |
Ordinal Categorical | ✅ Yes | No | ✅ Yes (codebook) | ✅ Yes | Severity_Score, Tone_of_Response |
Quantitative | ✅ Yes | ✅ Yes | No | ✅ Yes | Latency (days), Injury_Count |
Structured Qualitative | Maybe | No | ✅ Yes (codebook) | ✅ Yes | Narrative_Framing, Student_Tone |
Unstructured Qualitative | No | No | — | ❌ No | Admin_Statement_Text, Raw Chants |
✅ Both Need a Codebook or Rubric
Yes, both require:
Definitions for each category
Examples or decision rules for how to assign them
Consistency across coders
But the type of structure differs:
🟡 Ordinal Categorical
Values are ordered (e.g., Low < Medium < High)
Usually mutually exclusive
Codebook defines thresholds or cutoffs
Often easier to apply because the set is small and ordered
Example rubric for Severity_Score:
Value, Definition
Low, No injuries, no arrests, no building closures
Moderate, 1–2 arrests OR building disruptions
High, Injuries OR multiple arrests OR widespread closures
🟠 Structured Qualitative
Values may be non-ordered
May not be mutually exclusive (e.g., a statement can be both deflective and punitive)
Codebook defines interpretive categories — what a framing or tone looks like
Often subjective without strong examples or coder training
Example rubric for Narrative_Framing:
Category, Description, Example Phrase
Civil Rights, Emphasizes student rights, equality “Free expression is essential”
Security Threat, Emphasizes danger, policing, disruption “We must restore order”
Procedural, Uses neutral, bureaucratic language “We are reviewing the matter”
It’s about making sure that:
Different coders assign the same value to the same input
The same coder makes consistent decisions over time
Everyone follows the same definitions and rules from your codebook
🔁 Why It Matters:
Prevents bias, drift, or random variation in coded data
Enables reproducibility and inter-coder reliability
Especially critical for structured qualitative or interpretive ordinal fields (like Tone
, Framing
, Severity_Score
)
🛠️ Coder Training Often Includes:
Walking through examples together
Explaining edge cases (“what if it’s both civil rights and safety?”)
Double-coding a sample and comparing
Resolving disagreements with reference to the codebook
✅ Coder Training Checklist
All categories defined
Include clear examples and edge cases
Select 5–10 diverse, representative cases
Include borderline examples
📊 Measuring Inter-Coder Reliability
🧮 Cohen’s Kappa (for 2 coders)
Measures agreement adjusted for chance
Ranges from –1 to 1:
< 0.60: Poor
0.60–0.80: Acceptable
0.80: Strong
Use tools like Excel, Python (sklearn.metrics.cohen_kappa_score), or R to calculate.
🧮 Krippendorff’s Alpha (if >2 coders or mixed data types)
More flexible, handles missing data
Same benchmarks as Kappa
👤👤 Yes — you can absolutely be both coders.
Solo Coding for Consistency:
When you’re the only coder:
Double-code a subset of incidents at different times (e.g., wait a day or more)
Blind yourself to your earlier decisions when possible (e.g., hide previous values)
Compare your own coding to test intra-coder reliability
This still lets you:
Check for drift over time
Identify unclear definitions
Strengthen your codebook
🛠️ Tip:
Use a spreadsheet with hidden columns or versioned YAML files to store your first pass, then code again and compare.
You can say something like:
In several high-profile cases, such as [INC-012], internal records released by the university revealed a significant volume of public feedback (e.g., hundreds of emails and community letters), suggesting a level of visibility and pressure not captured by external media metrics alone. While this internal engagement was not available across all incidents, its presence in select cases may have amplified administrative responsiveness or public framing.
This maintains scientific transparency and causal discipline without overcoding or biasing your results. You’re flagging a potential unmeasured covariate — totally legit (check this across coders, i.e. Claude, etc.)
And in the case where administrative posts go viral:
Suggested narrative framing (formal tone): In a subset of cases, administrative posts themselves became focal points of public engagement. For example, in [INC-014], a university statement posted to social media received over 25,000 views and was widely circulated by students and external media. While such amplification is not present across all incidents, its presence in these select cases likely heightened public awareness and influenced both perception and institutional pressure.
This lets you:
You’re treating it as a qualitative explanatory factor, not a coded metric — which is the right move if it’s only in a few incidents.
🔹 Dependent Variable (DV) Sources
Prefix | Source Type | Function in Dataset |
---|---|---|
ADM - |
Administrative communications | Used to code administrative response, tone, latency, and stated recourse. |
🔸 Incident-Triggering Source (Primary IVs)
Prefix | Source Type | Function in Dataset |
---|---|---|
DB - |
Daily Bruin articles | Defines incident inclusion. Used for timing, location, participants, and anchoring events. |
🟨 Explanatory / Control Variable Sources
Prefix | Source Type | Function in Dataset |
---|---|---|
MED - |
Third-party news media | Visibility, amplification, and narrative framing (e.g., LA Times, Jewish Journal). |
SOC - |
Social media posts | Public-facing visibility and grassroots traction (e.g., X, Instagram). |
ORG - |
Student org materials | Protest tone, framing, and actor intent. |
LEG - |
Legal documents | Legal escalation, OCR complaints, lawsuits, external review. |
RPT - |
Reports, investigations, or audits | Institutional context, third-party evaluations, policy framing. |
There is the possibility of moderation bias (i.e. Reddit’s auto-moderation or subreddit rules) affecting data completeness.
A [removed] comment might have context missing from my dataset, impacting tone or positioning coding.
Skewed Discussions: Because the scraper captures only the top-level or high-score comments (depending on my criteria filters), it might miss smaller but significant perspectives or voices.