Explore my work.

Try a tool, follow a case study or start with working code. See what each project does and what is ready to use.

Public catalogue

7 projects and 3 patterns

Completed PolicyLens sample review with changed access, the granting statement and a candidate correction

PolicyLens

Local tool · Node.js · public change review and Org demo

For cloud engineers reviewing a permission change: see what access it adds, find the permission responsible and check a proposed fix.

In the case
A database-delete request changes from denied to allowed; the granting permission is identified.
Before using
Runs locally on supplied policies. The benchmark is authored cases, not an AWS simulator check.
Run public IAM demo Review PolicyLens case
First steps
  1. Follow the repository's Node.js quick start.
  2. Select Change review, load the example and review the change.
  3. Inspect the denied-to-allowed verdict and its cited statement, then verify the proposed correction.

The public example needs no API key. Account-wide controls such as SCPs and permission boundaries are not evaluated.

Actual ProjectLens review: the synthetic Northstar example needs evidence before a decision

ProjectLens

Browser tool · no account · sample files included

Check whether a project's written update agrees with its schedule, then prepare questions for the next review.

Try this
Find three issues in the sample, including an unacknowledged 73-day finish-date movement.
Before using
Schedule differences do not prove delay causes or contractual responsibility.
Try the schedule review Review ProjectLens case
First steps
  1. Select Try the Northstar example.
  2. Inspect the three blockers and their source dates.
  3. Use Review my change pack to compare your own XER files.

The browser comparison works locally. Export your record to keep a copy; this is not a shared team workspace.

QuickSupply agency dashboard showing sample cover requests

QuickSupply

Recorded case study · no setup to watch

See how I redesigned a Liverpool supply-teacher booking process, from a school's request to an agency assignment and teacher response.

Watch this
A school requests cover, an agency assigns a teacher and the teacher responds.
Before using
Recorded prototype with fictional data, not a live staffing service.
Watch the booking walkthrough Explore the source
First steps
  1. Play the recorded walkthrough on the case page.
  2. Follow the school, agency and teacher handoffs.
  3. Read the repository's setup and security warnings before running it.

A fictional-data case study, not a live staffing service or deployment-ready starter.

Actual Winchester demo with the under £425k filter applied to seeded homes

Winchester House Hunter

Browser example · no account · seeded homes

Explore how a home-buying shortlist changes when budget, station distance and missing evidence are considered together.

Try this
Filter nine example homes to five under £425k, then inspect one home's missing evidence.
Before using
Homes, fit scores and negotiation prices are illustrative, not listings or valuations.
Try the shortlist Review Winchester case
First steps
  1. Choose Under £425k or a station-distance filter.
  2. Open a home to review its evidence checklist.
  3. Explore the affordability inputs and market context.

The homes are examples, not live listings. This is an exploratory tool, not financial advice or a valuation.

Actual lakehouse browser example with sample data checks and two review warnings

Marketing ML Lakehouse

Browser example · Python to rebuild or adapt

Turn campaign files into checked reporting tables. Explore sample quality warnings or rebuild the published pipeline locally.

Try this
Inspect two warnings in the sample quality review, then follow the Python rebuild guide.
Before using
The console is rebuilt from the pipeline on every push. On the 24-row holdout the next-day model shows no reliable skill over the prior-day baseline.
Explore sample data Review Lakehouse case
First steps
  1. Inspect Data quality in the browser example.
  2. Follow the published walkthrough to rebuild the example data and model.
  3. Open the local Streamlit dashboard to inspect those outputs.

No ad account is needed. The sample does not establish campaign uplift; the next-day model is compared with a prior-day baseline and its limits are stated.

HR Performance Analytics Power BI summary dashboard

HR Performance Analytics

Historical case · Power BI Desktop to edit

For BI learners: inspect a dashboard handoff and its corrections to the meaning of employee fields in Microsoft's sample data.

Read this
Why a sick-leave balance is not annual absence, and a row's update date is not age or tenure.
Before using
Corrected CSVs and a review PDF exist locally. The public files remain historical; the Power BI refresh is outstanding.
Read the corrections first Review HR Analytics case
First steps
  1. Read the correction on the case page before opening the repository.
  2. Inspect the original files as historical work, not current HR findings.
  3. Rebuild measures from appropriate source fields before reusing the report.

Fictional AdventureWorks data. The old labels must not inform employee decisions.

Can England Win It tournament scenario simulator

Can England Win It?

Browser experiment · no account

Change the football scenarios and play through an animated tournament. Kept as a finished experiment in simulation and interaction design.

Try this
Change the assumptions and play the tournament to compare simulated outcomes.
Before using
Finished entertainment experiment, not a forecast or betting tool.
Explore the tournament Read the retrospective
First steps
  1. Choose the team's mood and pressure response.
  2. Pick a player and play the tournament.
  3. Read the model assumptions in the repository.

A scenario game, not betting advice or a validated forecast.

Patterns you can reuse.

For developers and data practitioners. Start with the included examples, inspect the output, then replace the inputs for your own task.