Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
@JacksonFergusonDev
JacksonFergusonDev
Follow

Jackson Ferguson JacksonFergusonDev

Astrophysics student at UVic working at the intersection of computational physics, instrumentation, and systems engineering.

Highlights

  • Pro

Block or report JacksonFergusonDev

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
JacksonFergusonDev /README.md

Jackson Ferguson

Computational Astrophysics and Systems Engineering | University of Victoria

I apply the rigor of the scientific method to software engineering. My work focuses on Vertical Integration and Entropy Reduction, building systems where software precision meets hardware reality.

Whether analyzing the spectral composition of a galaxy cluster or managing a physical supply chain, my goal is the same: to build deterministic tools that extract Signal from Noise.


Contact + Collaboration

  • Email: jackson.ferguson0@gmail.com
  • LinkedIn: jackson--ferguson
  • Open to: Instrumentation development, data acquisition systems, circuit measurement and characterization, lab automation, and scientific Python development
  • Interests: Research collaborations involving hardware, software, and experimental validation

Featured Engineering Systems

A Vertically Integrated Audio Analysis Platform

Analysis topology Universal RP2040 Analog Interface

A complete electronics workbench built to measure and analyze audio circuits. Rather than buying test equipment, I built four interconnected systems from scratch: a logistics tool for parts management, a clean power supply, a guitar overdrive pedal to test, and a custom oscilloscope to capture the data. The project documents the full process from component ordering to frequency response analysis.

  • RP2040 Oscilloscope (Primary Instrument): Built a USB oscilloscope and spectrum analyzer around the RP2040 microcontroller with a custom analog front-end circuit:

    • Four-stage signal conditioning: current limiting for protection, AC coupling (3 Hz cutoff), switchable voltage dividers for different input ranges, and diode clamps to prevent overvoltage
    • Store-and-forward firmware architecture separates high-speed sampling from USB transmission to avoid data loss
    • Measured noise floor of 1.3 mV RMS, calibrated sampling rate to 97.8 kSps using 60 Hz mains frequency as reference
    • Python analysis tools for FFT, waveform rendering, and automated transfer function measurement
    • Supports line-level audio, high-impedance instrument signals, and 0-5V sensor inputs via jumper configuration
  • Linear Power Supply: Assembled a 9V voltage regulator based on the L7809 chip to provide clean DC power for the test circuit.

  • Red Llama Overdrive (Device Under Test): Built a guitar overdrive pedal using CD4049 CMOS inverter chips biased into their linear region to generate soft-clipping distortion. This circuit serves as the test subject for frequency response and harmonic distortion analysis.

  • Component Management: Developed alongside the star-ground logistics system to track parts inventory and ensure all components were ordered correctly before starting assembly.

The complete workflow—from BOM generation to spectral analysis—is documented in detail, including schematics, firmware source code, and Jupyter notebooks showing the measurement and analysis process.


A Deterministic Dependency Manager for Physical Hardware

Star Ground Demo

In software, uv sync resolves dependencies instantly. In hardware, a missing resistor is a blocking failure. This tool treats physical inventory as a strict dependency tree, reducing the Logistical Entropy of manufacturing.

  • Invariants over Inference: Rejects probabilistic parsing (LLMs) in favor of a Hybrid Spatial/Regex engine to ensure 100% data integrity.
  • Yield Management: Implements "Nerd Economics" (heuristic buffering) to transform procurement from simple arithmetic into a risk-management strategy.
  • Reliability: Verified via Snapshot Regression testing against a Golden Master library of PDFs.

Fault-Tolerant State Capture for Distributed Development

Pulsar demo

Standard git commits conflate saving work (High Noise) with publishing features (High Signal). Pulsar decouples them by creating an immutable, out-of-band state graph.

  • Zero-Interference: Manipulates the git object database directly (write-tree) via a temporary index, guaranteeing it never locks or corrupts the user's active staging area.
  • Distributed Reconciliation: Merges work from multiple machines (Laptop/Desktop) using a "Zipper Graph" to prevent split-brain history.

Data Analysis & Physics

Computational Physics and Statistical Modeling

Vectorized Particle Transport Gaussian Mixture Redshift Model

Applied statistical methods to extract physical measurements from noisy astronomical and experimental data.

  • Galaxy Cluster Mass Estimation (ACO 2670): Used velocity measurements of galaxies in a cluster to estimate total mass through the virial theorem, finding a mass-to-light ratio of 291 ± 60 (solar units)—evidence that most of the cluster's mass is dark matter rather than visible stars.

  • Exoplanet Atmosphere Modeling: Solved equations for atmospheric pressure and temperature profiles to model the atmospheres of high-gravity exoplanets.

  • Monte Carlo Particle Simulation: Validated theoretical attenuation equations by simulating individual particle interactions and confirming expected statistical behavior.


🛠 Technical Stack

Domain Toolkit
Analysis Python Scientific Stack (NumPy, SciPy, Pandas), FFT, Signal Processing
Firmware MicroPython
Interfaces Streamlit, CLI design
DevOps Docker, GitHub Actions, uv (Dependency Locking)
Circuit Design Python-based schematic generation
Documentation LaTeX, BibTeX

In physical systems, engineering is as much about constraining uncertainty as it is about implementing logic.

Pinned Loading

  1. data-science-portfolio data-science-portfolio Public

    A collection of computational pipelines bridging theoretical astrophysics, atmospheric science, and statistical inference.

    Jupyter Notebook

  2. star-ground star-ground Public

    A full-stack logistics engine for electronics. Ingests messy BOMs (Text, CSV, PDF), normalizes data, and generates production-ready manufacturing bundles.

    Python

  3. systems-audio-lab systems-audio-lab Public

    An end-to-end hardware development lab. Includes a custom RP2040 oscilloscope, automated Python logistics (Star Ground), and soft-knee topology analysis of the Red Llama overdrive.

    Jupyter Notebook

  4. git-pulsar git-pulsar Public

    Out-of-band, fault-tolerant Git state capture for distributed development.

    Python

AltStyle によって変換されたページ (->オリジナル) /