• Deep generative demixing: Error bounds for demixing subgaussian mixtures of Lipschitz signals


  • On the best choice of Lasso program given data parameters

    Details PDF

  • Deep generative demixing: Recovering Lipschitz signals from noisy subgaussian mixtures

    Details PDF

  • Sensitivity of ℓ₁ minimization to parameter choice

    Details PDF

  • Parameter instability regimes in sparse proximal denoising programs

    Details PDF

  • Enrichment map profiling of the cancer invasion front suggests regulation of colorectal cancer progression by the bone morphogenetic protein antagonist, gremlin-1

    Details PDF

Recent Posts

More Posts

Install python3 using Homebrew.


This post was written as part of the Math section for the 2019-2020 Future Science Leaders program. If you’re interested in using any of the resources below for your own outreach program, there are two caveats. You are free to use any of my materials with proper attribution. However, some of the materials below were created or co-created by Matt Coles and for these you should e-mail us to check.


A brief summary and some incomplete reflections from the 2018 BC Data Science workshop.


A kind of repository for some links to blogs and resources that I’ve found useful over the years.


A post describing the code for a matrix completion tutorial I wrote for the 2017 BC Data Science workshop



Host a website on GitHub with Hugo

A tutorial on how to create, customize and host a website using Hugo and GitHub Pages.

Matrix Completion

A matrix completion mini-project that I designed for the 2017 BC Data Science Workshop

Video Compression Analysis

My take on the video compression project from the bcdata workshop

Gradient Descent

Gradient descent concepts from Mark Schmidt’s 540 course at UBC (with code ported to Python).

Slides from the UBC MGC seminar series

MSc project submission

On Multiscale Analysis and PDE Methods on Graphs in Image Processing


In Fall 2020, I was the lecture and lab instructor for the UBC MDS program’s DSCI 551: Descriptive Statistics and Probability for Data Science.

In 2017, 2018 and 2019, I was a teaching assistant for the UBC MDS program. UBC MDS courses for which I’ve been a TA include:

  • DSCI 551: Descriptive Statistics and Probability for Data Science
  • DSCI 542: Communication & Argumentation
  • DSCI 523: Data Wrangling
  • DSCI 552: Statistical Inference & Computation I
  • DSCI 513: Databases and Data Retrieval
  • DSCI 571: Supervised Learning I
  • DSCI 573: Feature and Model Selection
  • DSCI 563: Unsupervised Learning
  • DSCI 572: Supervised Learning II
  • DSCI 553: Statistical Inference and Computation II
  • DSCI 574: Spatial & Temporal Models
  • DSCI 554: Experimentation and Causal Inference
  • DSCI 525: Web and Cloud Computing
  • DSCI 575: Advanced Machine Learning

I was co-organizer and workshop TA for the 2017 BC Data Science workshop and 2018 BC Data Science Workshop.

Past TA duties include: ODEs, Vector Calculus, Calculus I and Mathematics for Biology.