Foreign fighters and political violence in authoritarian contexts
| Date | Presenters | Method |
|---|---|---|
| 4 Dec: | Shahadaan, Kristine, Daichi | ethnography |
| 11 Dec: | Bérénice, Zorka, Victoria, Katharina | TBD |
| 18 Dec: | Shoam, Aidan, Tara, Sebastian | QCA |
foreign fighters - individuals who travel to a conflict zone from another territory (prima facie evidence of radicalism \(\rightarrow\) engagement in political violence; a ‘security failure’ by authority of origin state?)
examples historically? from cases you know of?
foreign fighters - individuals who travel to a conflict zone from another territory (prima facie evidence of radicalism \(\rightarrow\) engagement in political violence; a ‘security failure’ by authority of origin state?)
examples historically? from cases you know of?
FF is a widespread part and enduring element of political violence across the world
Take the survey at https://forms.gle/JJ7ufLwrLJYKAbvg8
import { liveGoogleSheet } from "@jimjamslam/live-google-sheet";
import { aq, op } from "@uwdata/arquero";
// UPDATE THE LINK FOR A NEW POLL
surveyResults = liveGoogleSheet(
"https://docs.google.com/spreadsheets/d/e/" +
"2PACX-1vTCOL_6dhwjrpQW9BGa1-p-uRlIknFTjWEkgBgHyaML3dziFgSxIgMU1pUmTfxJyHHm27Jv4_ZZUYT3/" +
"pub?gid=164736256&single=true&output=csv",
10000, 1, 6); // adjust the last number to select all relevant columns
respondentCount = surveyResults.length;laws banning travel to conflict zones?
banning_travelCounts = aq.from(surveyResults)
.select("banning_travel")
.groupby("banning_travel")
.count()
.derive({ measure: d => "" })
// Calculate the maximum count from your dataset
banning_travel_maxCountRE = Math.max(...banning_travelCounts.objects().map(d => d.count));
plot_banning_travel = Plot.plot({
marks: [
Plot.barY(banning_travelCounts, {
x: "banning_travel",
y: "count",
fill: "banning_travel",
stroke: "black",
strokeWidth: 1
}),
Plot.ruleY([respondentCount], { stroke: "#ffffff99" })
],
color: {
domain: [
"Yes",
"No",
"Maybe"
],
range: [
"forestgreen",
"darkred",
"goldenrod"
]
},
marginBottom: 80,
x: { label: "", tickSize: 2, tickRotate: -1, padding: 0.2,
domain: ["Yes", "No", "Maybe"]
},
y: {
label: "",
tickSize: 10,
tickFormat: d => d,
tickValues: Array.from(
new Set(banning_travelCounts.objects().map(d => d.count))
).sort((a, b) => a - b),
domain: [0, banning_travel_maxCountRE]
},
facet: { data: banning_travelCounts, x: "measure", label: "" },
marginLeft: 60,
style: {
width: 1600,
height: 500,
fontSize: 40,
},
});most effective for addressing foreign fighters phenomenon?
effective_addressingCounts = aq.from(surveyResults)
.select("effective_addressing")
.groupby("effective_addressing")
.count()
.derive({ measure: d => "" })
// Calculate the maximum count from your dataset
effective_addressing_maxCountRE = Math.max(...effective_addressingCounts.objects().map(d => d.count));
plot_effective_addressing = Plot.plot({
marks: [
Plot.barY(effective_addressingCounts, {
x: "effective_addressing",
y: "count",
fill: "effective_addressing",
stroke: "black",
strokeWidth: 1
}),
Plot.ruleY([respondentCount], { stroke: "#ffffff99" })
],
color: {
domain: [
"border security",
"social work programmes",
"block recruitment/propaganda",
"other"
],
range: [
"darkred",
"goldenrod",
"cadetblue",
"gray"
]
},
marginBottom: 400,
x: { label: "", tickSize: 2, tickRotate: -40, padding: 0.2,
domain: ["border security", "social work programmes", "block recruitment/propaganda", "other"]
},
y: {
label: "",
tickSize: 10,
tickFormat: d => d,
tickValues: Array.from(
new Set(effective_addressingCounts.objects().map(d => d.count))
).sort((a, b) => a - b),
domain: [0, effective_addressing_maxCountRE]
},
facet: { data: effective_addressingCounts, x: "measure", label: "" },
marginLeft: 60,
style: {
width: 1600,
height: 500,
fontSize: 40,
},
});MENA (Middle East, North Africa) countries have sent the largest numbers of foreign fighters to Syria
MENA (Middle East, North Africa) countries have sent the largest numbers of foreign fighters to Syria
Major centres: Tangier, Tetouan, and surrounding region, and Fes; Cairo, Alexandria, and lower Nile area; Istanbul and Antep
any visualisation problems?
Remember: regression is a tool for understanding a phenomenon as a linear function (generally) → (y = mx + b)
Numbers not in parentheses next to a variable: regression coefficient: expected change in DV for a one-unit increase in IV. NB: ositive or negative relationship?
Numbers inside parentheses next to a variable: standard error: estimate of the standard deviation of the coefficient
Asterisks/‘stars’: statistical significance: probability of results as extreme as observed result, under the assumption that the null hypothesis is correct. Smaller p-value means such an observation would be less likely under null hypothesis; hence, significance. Statistical significance suggests more precise estimates—NOT necessarily that one IV is more important than another.
a university education is the strongest correlate of joining a terrorist organization.
Despite the difference in space and time, ISIS foreign fighters have a similar profile to members of Hamas, Hezbollah, the Palestinian Islamic Jihad, and even violent political activists in Bengal. The men in all these samples are predominately male, well-educated, urban, unmarried, and young.
a university education is the strongest correlate of joining a terrorist organization.
Spain example
Economist (a bit sensationalist and some graphic imagery)
David Malet
top policy priority for dealing with returning fighters?
top_priorityCounts = aq.from(surveyResults)
.select("top_priority")
.groupby("top_priority")
.count()
.derive({ measure: d => "" })
// Calculate the maximum count from your dataset
top_priority_maxCountRE = Math.max(...top_priorityCounts.objects().map(d => d.count));
plot_top_priority = Plot.plot({
marks: [
Plot.barY(top_priorityCounts, {
x: "top_priority",
y: "count",
fill: "top_priority",
stroke: "black",
strokeWidth: 1
}),
Plot.ruleY([respondentCount], { stroke: "#ffffff99" })
],
color: {
domain: [
"prosecution",
"surveillance",
"deradicalisation programmes",
"reintegration service",
"deportation",
"citizenship revocation",
"other"
],
range: [
"indigo",
"goldenrod",
"darkred",
"cadetblue",
"darkorange",
"forestgreen",
"violet"
]
},
marginBottom: 500,
x: { label: "", tickSize: 2, tickRotate: -60, padding: 0.2,
domain: ["prosecution", "surveillance", "deradicalisation programmes", "reintegration service", "deportation", "citizenship revocation", "other"]
},
y: {
label: "",
tickSize: 10,
tickFormat: d => d,
tickValues: Array.from(
new Set(top_priorityCounts.objects().map(d => d.count))
).sort((a, b) => a - b),
domain: [0, top_priority_maxCountRE]
},
facet: { data: top_priorityCounts, x: "measure", label: "" },
marginLeft: 60,
style: {
width: 1600,
height: 500,
fontSize: 40,
},
});are returning foreign fighters a significant threat?
threatCounts = aq.from(surveyResults)
.select("threat")
.groupby("threat")
.count()
.derive({ measure: d => "" })
// Calculate the maximum count from your dataset
threat_maxCountRE = Math.max(...threatCounts.objects().map(d => d.count));
plot_threat = Plot.plot({
marks: [
Plot.barY(threatCounts, {
x: "threat",
y: "count",
fill: "threat",
stroke: "black",
strokeWidth: 1
}),
Plot.ruleY([respondentCount], { stroke: "#ffffff99" })
],
color: {
domain: [
"Strongly disagree",
"Disagree",
"Neutral",
"Agree",
"Strongly agree"
],
range: [
"red",
"pink",
"lightgrey",
"lightgreen",
"forestgreen"
]
},
marginBottom: 180,
x: { label: "", tickSize: 2, tickRotate: -45,
domain: ["Strongly disagree", "Disagree", "Neutral", "Agree", "Strongly agree"]
},
y: {
label: "",
tickSize: 10,
tickFormat: d => d,
tickValues: Array.from(
new Set(threatCounts.objects().map(d => d.count))
).sort((a, b) => a - b),
domain: [0, threat_maxCountRE]
},
facet: { data: threatCounts, x: "measure", label: "" },
marginLeft: 140,
style: {
width: 1350,
height: 500,
fontSize: 30,
}
});should states be able to revoke fighters’ citizenship?
revokeCounts = aq.from(surveyResults)
.select("revoke")
.groupby("revoke")
.count()
.derive({ measure: d => "" })
// Calculate the maximum count from your dataset
revoke_maxCountRE = Math.max(...revokeCounts.objects().map(d => d.count));
plot_revoke = Plot.plot({
marks: [
Plot.barY(revokeCounts, {
x: "revoke",
y: "count",
fill: "revoke",
stroke: "black",
strokeWidth: 1
}),
Plot.ruleY([respondentCount], { stroke: "#ffffff99" })
],
color: {
domain: [
"Strongly disagree",
"Disagree",
"Neutral",
"Agree",
"Strongly agree"
],
range: [
"red",
"pink",
"lightgrey",
"lightgreen",
"forestgreen"
]
},
marginBottom: 180,
x: { label: "", tickSize: 2, tickRotate: -45,
domain: ["Strongly disagree", "Disagree", "Neutral", "Agree", "Strongly agree"]
},
y: {
label: "",
tickSize: 10,
tickFormat: d => d,
tickValues: Array.from(
new Set(revokeCounts.objects().map(d => d.count))
).sort((a, b) => a - b),
domain: [0, revoke_maxCountRE]
},
facet: { data: revokeCounts, x: "measure", label: "" },
marginLeft: 140,
style: {
width: 1350,
height: 500,
fontSize: 30,
}
});What are the special conditions of political violence in within an authoritarian regime?
Putin’s Russia has seen much more right-wing violence than any other comparable country in the past 25 years.
The RTV-RUSSIA dataset currently consists of 495 events, including 406 deadly events causing 459 deaths over a period of eighteen years (2000-2017). RTV-RUSSIA has been patterned on the RTV dataset (RightWing Terrorism and Violence in Western Europe) compiled by Jacob Ravndal,[4] and features the same set of variables (date, location, event type, perpetrator type, perpetrator’s organizational affiliation, victim, weapon(s) used, number of casualties, as well as a description of the event).
Type of violence
|
||||||
|---|---|---|---|---|---|---|
| Perpetrator type | Premeditated attacks | Spontaneous attacks | Plots | Preparation for armed struggle | Unknown | Sum |
| Organized groups | 48 | 3 | 2 | 0 | 1 | 54 |
| Affiliated members | 10 | 1 | 2 | 0 | 1 | 14 |
| Autonomous cells | 34 | 0 | 7 | 0 | 0 | 41 |
| Gangs | 121 | 12 | 0 | 0 | 2 | 135 |
| Unorganized | 74 | 15 | 1 | 0 | 1 | 91 |
| Lone actors | 16 | 8 | 2 | 1 | 1 | 28 |
| Shadow groups | 0 | 0 | 0 | 0 | 1 | 1 |
| Unknown | 104 | 7 | 2 | 1 | 16 | 130 |
| **Total** | 408 | 46 | 16 | 2 | 23 | 495 |
Anonymous feedback here: https://forms.gle/NfF1pCfYMbkAT3WP6
Alternatively, please send me an email: m.zeller@lmu.de