IP blocking affects a number of communities (https://meta.wikimedia.org/wiki/Talk:No_open_proxies/Unfair_blocking). For experienced editors, it is easier to request a workaround for the block, such as IPBlockExempt right on the wikis they are active on. However, IP blocks have acute effects for in person events. During the event, a person who is new to the wikis often experiences the block. We want to better understand metrics and data around the impact of IP blocks on good faith users attending events.
We have a event logging data when a block notice is shown to a user. @Iflorez has documented several ways to both identify the individual users enrolled in Event Registration or historical Events in the Programs and Events Dashboard. In order to determine if the event organizer tools being built by the Campaign Product team might be a viable route for reducing the impact of IP Blocks, we need to better understand the baseline and metrics around this problem.
We would minimally like to be able to evaluate the following questions:
* What percent of event participants enrolled in an event have experienced an IP Block within a specific window (a month, quarter or year, etc) of time near when they attended an event?
* What percent of event participants experienced an IP Block during an event they were participating in? (might be more complex and require a more complex analysis)
* Which geographies have most effected users?
* If we can divide the data between in-person and online-first events, what differences do we see in impact?
## Notes
Notes from @Iflorez:
> A query to pull all names in the [[ https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/extensions/CampaignEvents/+/refs/heads/master/db_patches/tables.json | CampaignEvents ]]:
>
> ```
> user_ids_query =
> '''
> SELECT DISTINCT ce_participants.cep_user_id
> FROM ce_participants
> '''
> cep_user_ids = mariadb.run(user_ids_query, 'centralauth')
> ```
>
> And a second query to match the CampaignEvents id to global username:
> ```
> #GET usernames
> user_names_participants_query = '''
> SELECT gu_name AS username,
> gu_id AS user_id
> FROM globaluser
> WHERE globaluser.gu_id IN {cep_user_id_tuple}
> '''
> user_names_p = mariadb.run(user_names_participants_query.format(**query_vars), 'centralauth')
> ```
> You can view cells 9-18 in [[ https://github.com/wikimedia-research/campaigns-product-base-reporting/blob/main/01_data_collection.ipynb | this GitHub repo ]] for more on editor data pulling for CampaignEvents monthly reporting.
>
> See also [[ https://wikimedia.slack.com/archives/CLKDS4MG9/p1716345359735839 | this thread ]]