Skip to content

Instantly share code, notes, and snippets.

@sabman
Last active July 19, 2026 22:27
Show Gist options
  • Select an option

  • Save sabman/51f8da4dd5b37ccbd39496118b10ab5a to your computer and use it in GitHub Desktop.

Select an option

Save sabman/51f8da4dd5b37ccbd39496118b10ab5a to your computer and use it in GitHub Desktop.
KYC 2.0 - Monday Senegal workshop readiness questions (20 Jul 2026)

Pre-call checklist — Mon 20 Jul Senegal (FR)

When: 14:00-16:30 UTC / 16:00-18:30 Berlin / 14:00-16:30 Dakar
Room: https://meet.opentalk.eu/room/60fb1399-1fb0-49dd-8af5-45b19acaa730?invite=dda1a71a-762c-4df7-93b3-6d1b170a1886
Survey: https://kyc20-data-lineage-production.up.railway.app/


Recording (do this — June only got facilitator audio)

  • Confirm who starts the recording (you or Myriam / Saqib)
  • OpenTalk: find Record before participants arrive; test 10 sec and play back
  • Confirm recording captures all participants (not host-only) — check OpenTalk settings
  • Backup: local screen + system audio (OBS / QuickTime / Descript) if OpenTalk record is unclear
  • At 14:00: say aloud that we are recording; wait for any objection
  • Hit record before welcome; verify red/recording indicator is on
  • Mid-session (after break ~14:45): glance that recording is still running
  • After close: stop recording; note where the file will land; who uploads to Descript / share link
  • Log link in workshop/post-workshop/lineage-2026-06/ when ready (new SESSION note or FR notes)

30 min before

  • OpenTalk link works from your machine
  • Survey admin open — Senegal status (Serigne OSM example text?)
  • Board / worksheet ready (FR labels if using Miro)
  • Persona exercise open: PERSONA-USER-STORY-EXERCISE.md
  • Gist / run-of-show open: https://gist.github.com/sabman/51f8da4dd5b37ccbd39496118b10ab5a
  • WhatsApp +49 157 78921979 ready for late joiners
  • Scribe named (notes → fr-session-notes.md after)

At start (first 2 min)

  • Recording ON (see above)
  • Welcome in French; goals; survey is priority #1
  • Paste survey + OpenTalk in chat

During (protect)

  • Live survey work (do not cut)
  • Usages: roles + one user story each; blocker question
  • Accountability light (roles, gating, privacy)
  • End checklist + WhatsApp group

After

  • Stop and save recording
  • Export / upload; share link with attendees when ready
  • Write FR notes + survey commitments (owner + date)

KYC 2.0 - Monday Senegal workshop readiness questions (20 Jul 2026)

KYC 2.0 - Monday Senegal workshop readiness check

Session: French combined (lineage + usages)
When: Mon 20 Jul 2026, 14:00-16:30 UTC (14:00-16:30 Dakar)
Audience: Senegal / Ziguinchor (Magatte, Ismaila, Papa Ameth, Serigne + francophone affiliates)
Visio: OpenTalk (link in invite)

Priority #1: leave with the lineage survey filled or clearly owned for Senegal. Discussion supports that; it does not replace it.


Outline (4 things)

  1. Survey first - demo and complete lineage for Senegal (7 primaries + custom)
  2. Usages & blockers - roles/personas + one user story each (see PERSONA-USER-STORY-EXERCISE.md); what is stopping you from getting full potential from the data you already have?
  3. Accountability - roles, permissions, gating (who loads / checks / publishes), usage, privacy
  4. Close & follow-up - end checklist, WhatsApp group, data quality workshop later (Aug)

Time allocations (2 h 30) - revised

UTC (approx) Min Block Intent
14:00-14:05 0-5 Open Goals; survey is the main deliverable; no tech jargon
14:05-14:45 5-45 Lineage / survey (protect) Form demo; fill or fix rows live; Serigne OSM example text; PII fields. Aim: ≥4 primaries done or named owner + deadline
14:45-14:50 45-50 Short break
14:50-15:15 50-75 Usages + personas + blocker List 3-5 roles/personas; one user story each (PERSONA-USER-STORY-EXERCISE.md; Gherkin optional). Ask aloud: « Qu'est-ce qui vous empêche d'obtenir le plein potentiel des données que vous avez déjà ? »
15:15-15:40 75-100 Accountability Roles (data manager vs controller); permissions; gating (collect → check → publish); usage; privacy (internal vs public map). Light - capture, do not invent SDI policy
15:40-15:55 100-115 Load & analyse (short) How data enters; map / export / report / meeting pack - only if survey is on track
15:55-16:10 115-130 Data quality teaser First signals only (what fails today; who fixes). Full data quality & ontology workshop later (Aug)
16:10-16:25 130-145 End checklist + WhatsApp Walk the closing checklist; agree WhatsApp group for follow-up
16:25-16:30 145-150 Close Survey deadline; named owner for Ziguinchor

Protect if short on time: survey (5-45), usages + blocker (50-75), accountability (75-100), end checklist (130-145).
Cut first if overrun: load & analyse (100-115), then data quality teaser (115-130).
Do not cut: live survey work.


End-of-session checklist (walk this aloud)

By 16:30 we want to leave with:

  • Survey - Senegal ≥4 primary datasets completed or named owner + date to finish
  • Roles - who is (or will be) data manager vs data controller for Ziguinchor / UrbaSEN
  • Permissions - who may view / edit / load (even if rough)
  • Gating - nothing goes field → public map without a check / publish step
  • Usage - 2-3 priority uses for Release 1 (e.g. map for mairie, export, advocacy pack)
  • User stories - roles/personas listed; ≥1 story per priority role (As a / I want / so that; Gherkin optional)
  • Privacy - what stays internal; what may be public / aggregated
  • Blockers - written answers to what stops full potential from existing data
  • WhatsApp group - created or agreed (facilitators + Senegal roster) for survey chase and clarifications
  • Next workshop flagged - data quality rules begin here; full session in August

Readiness questions

Answer in your own words.

1. Outcomes

At 16:30, is the survey done (or owned), and can you tick the end checklist without guessing? What will you not chase if time runs out?

2. Language

Who leads facilitation in French, and who supports (scribe, chat, survey help)? Are the board labels, worksheet prompts, and key phrases ready in French before we start?

3. Survey reality

Senegal lineage is thin (OSM + KYC.TV-ish). What do you do in the first 40 minutes if nobody has logged into the survey and Serigne's OSM row still has example text?

4. Decision owner

Accountability / publish rules need a light touch. Beth, James, or Zanele - who do you need for which parts? If none join, do you still capture roles as proposals, or park governance?

5. Time box

Confirm the protect / cut order above. Who watches the clock on survey vs discussion?

6. Publish / disagreement

Someone says: "Household pins should be on the public map so the mairie listens." How do you answer in French, without lecturing, without inventing SDI policy, and without forcing a decision between affiliate views? Aim for disagreement resolution: name the options, park for the data controller / SDI legal, keep the session moving.

Suggested reply (FR):

« C'est un vrai besoin pour la négociation avec la mairie. Sur la carte publique, on peut souvent commencer par des agrégats ou des points regroupés, et garder le détail ménage en interne, sauf si le contrôleur des données et les règles de consentement le permettent. On note les deux options ici; la décision de publication reste côté affilié / SDI, pas à trancher dans cet atelier. »

7. Capture

Where do notes land (board? worksheet? chat?)? Who is scribe? What artefact exists by Tuesday that Anni or James could read without you - including the end checklist and blocker answers?

8. Logistics failure

OpenTalk fails at 14:05. Plan B in under 60 seconds? Who has WhatsApp numbers - and will the same chat become the follow-up group?

9. Reminder

1-day and 6-hour reminders scheduled? No RSVP ask. Mention survey + WhatsApp follow-up?

10. Aftercare

Single clear ask for Ziguinchor: survey complete by when, owned by whom, chased in which WhatsApp group?


Done when

  • Senegal survey ≥4 primaries completed or committed by date
  • End checklist walked and captured (roles, permissions, gating, usage, privacy)
  • Blocker question answered (at least 2-3 voices)
  • WhatsApp follow-up group agreed
  • Data quality deferred clearly to August workshop
  • FR consolidated notes (e.g. fr-session-notes.md)

Materials

Exercise: roles, personas, and one user story each

For: Personas & use-cases sessions (Track A/B, and the usages part of the Senegal French session)
Time: about 20-30 minutes in the room
Goal: Agree who the platform is for, then write one clear user story per role so Release 1 stays concrete.


What you will do (two steps)

Step 1 - List roles and personas

As a group, name the people who will use the city platform (or who decide what others see).

Write each as a short sticky:

  • Role - job or position (e.g. data manager, federation leader)
  • Persona - who that person is in pract**james@sdinet.org**ice (e.g. UrbaSEN GIS lead in Ziguinchor)

Aim for 3-5 priority roles for first release. Put “later” roles on a separate list.

Examples of roles (starter list - replace with yours):

Role Persona example
Enumerator / community researcher Youth mapper who submits household surveys
Affiliate data manager Staff who uploads, checks, and prepares layers
Federation / community leader Negotiator who needs maps for a mairie meeting
Programme / affiliate lead Person who sets what may be shared outside the federation
KYC.TV / storyteller Youth documenter linking a film to a settlement

Step 2 - One user story per role

For each priority role, write exactly one user story for first release.

Use this shape (plain language):

As a [role / persona],
I want to [action on the platform],
so that [outcome that matters in real work].

Keep it about a real job they do, not a feature list (“nice dashboard”, “AI”, “all data in one place”).


Examples (good)

1. Data manager

As an affiliate data manager,
I want to see which survey uploads failed the quality checks,
so that I can ask enumerators to fix them before anything appears on a public map.

2. Federation leader

As a federation leader preparing a meeting with the mairie,
I want to open a dated settlement map with household counts and service gaps in one place,
so that we can negotiate with evidence that is newer than the official map.

3. Storyteller

As a KYC.TV youth documenter,
I want to link my video to a settlement on the map,
so that advocacy partners see story and place together.


Optional: write the same story with Gherkin

Why use Gherkin? The plain story says who and why. Gherkin helps you spell out how we know it works in one short scene: start state → action → visible result. That makes stories easier to test later and harder to confuse with a vague wish list.

How it maps to the user story

User story Gherkin
As a Often in Scenario title or Given (who you are)
I want to When (what you do)
so that In order to (optional) or implied by Then
Done when … Then / And (what you see or can do)

Write the As a / I want / so that first if that feels natural, then turn it into one scenario. Or start from Gherkin if the group thinks in concrete steps.

Feature: Check failed survey uploads

  Scenario: Data manager reviews failed checks
    Given I am logged in as an affiliate data manager for my city
    When I open the incoming uploads list
    Then I can see which files failed validation
    And I can open a note to send back to the enumerator

Tips for Gherkin:

  • Given = starting situation (role, city, data already loaded)
  • When = the action the person takes
  • Then = what they should see or be able to do
  • One scenario per user story is enough for this workshop
  • Keep language everyday - no need for perfect syntax

You do not need both formats. Plain As a / I want / so that is enough. Gherkin is a helper when you want a clearer “done when” check for builders.


Facilitation notes (internal)

  • Do Step 1 first; vote or cluster to max 5 MVP roles before writing stories.
  • One story per role in the room; more detail can go in the 48h summary.
  • If the group invents SDI-wide publish policy, capture options and park for data controller / decision owner.
  • Senegal FR session: run a shorter version (roles list + 2-3 stories) after the survey block.

Capture

Role Persona (city / affiliate) User story (As a / I want / so that) Gherkin? Y/N
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment