← All speakers
On this page

Pamela Fox is a Principal Cloud Advocate at Microsoft helping developers build Python applications with Azure, Microsoft Foundry, GitHub, and Visual Studio Code. Her career spans Google developer relations, early engineering roles at Coursera and Woebot, Khan Academy programming education, and teaching computer science at UC Berkeley.

From developer advocacy to computing education

Fox worked on the Google Maps and Google Wave APIs in Mountain View and Australia before becoming Coursera’s second frontend engineer. At Khan Academy, she created computing curriculum and improved its live-coding environment. She founded the Girl Develop It San Francisco chapter, developed openly licensed instructional materials, taught courses including CS61A and CS302 at Berkeley, and helped start Woebot’s engineering team. Her professional biography connects that experience to her current work making Python and cloud development more accessible.

Her educational projects include interactive recursion visualizations and browser-based Python programming exercises. Other repositories include a reusable Python project template and a browser local-storage caching utility.

Practical convictions about production AI

  • Hybrid retrieval with semantic reranking. Fox combines keyword search, vector retrieval, rank fusion, and semantic ranking because embeddings can introduce irrelevant results while missing exact terms. In her comparison of retrieval strategies, vector-only retrieval scored 2.79 out of 5 for groundedness, compared with 4.87 for text-only search and 4.89 for hybrid retrieval with semantic ranking. Because her synthetic dataset favored lexical overlap, she emphasizes evaluating the actual workload.
  • Evaluation beyond sample questions. Her ai-rag-chat-evaluator combines model-graded groundedness and relevance with programmatic citation checks. Fox has found that changing retrieval parameters or models can improve results more than prompt tinkering, while model-based evaluations introduce meaningful latency and cost.
  • Repeatable, production-minded Python architecture. Her AI Engineer workshop connects asynchronous Python services, response streaming, PostgreSQL, Azure AI Search, infrastructure as code, and deployment through Azure Developer CLI. She advocates token-based document chunking, particularly for multilingual content, and treats traceable citations, observability, and identity-based authentication as application requirements.

Read the topics behind these talks

2 conference talks

Key ideas

Scroll to read ↓

Build and deploy a Python chat app, add retrieval over database rows or documents, and follow the engineering decisions that turn a working demo into a testable application.

  • Getting an application running before building everything yourself
    1:25 ↗
  • Establish the account and model connection
    6:13 ↗
  • Open the template and understand its async backend
    17:39 ↗
  • Configure the connection and make the chat app your own
    23:21 ↗
  • Deploy with a separate environment configuration
    29:22 ↗
  • Recover from region and naming constraints
    37:48 ↗
  • Ground answers in retrieved database rows
    41:18 ↗
  • Turn documents into searchable, citable chunks
    46:04 ↗
  • Understand what changes when infrastructure changes
    52:52 ↗
  • Make quality observable and testable
    56:33 ↗
  • Inspect the failures behind retrieval scores
    1:03:29 ↗
  • Update embeddings deliberately, and retrieve code by structure
    1:09:38 ↗
  • Manage prompts and budget evaluation runs
    1:15:55 ↗
  • Separate model compatibility from reliable output
    1:20:53 ↗
  • Use computation when the question spans the whole dataset
    1:25:42 ↗

Key ideas

Scroll to read ↓

Build and deploy a Python chat application, then extend the same workflow to product retrieval and document answers with citations, query rewriting and evaluated search.

  • How do you get an AI application running quickly?
    1:13 ↗
  • Support beyond credits—and a shorter path to experimentation
    6:34 ↗
  • Separate deployment funding from model access
    11:46 ↗
  • Start with a shared development environment
    25:55 ↗
  • Run the chat app and ask for a haiku
    29:06 ↗
  • Use async I/O and stream the response
    33:01 ↗
  • Deploy through Azure Developer CLI and Bicep
    36:23 ↗
  • Retrieve product rows before generating an answer
    42:11 ↗
  • Turn conversational requests into search constraints
    45:49 ↗
  • Make documents searchable and answers inspectable
    48:05 ↗
  • Customize the app, then inspect what ingestion actually extracts
    51:18 ↗
  • Evaluate the retrieval combination, not just the vector index
    54:51 ↗
  • Confirm a working result and stop unused environments
    57:24 ↗
  • Keep the document index current
    1:01:12 ↗

References