Justice “JJ” James [pdf]
I like all languages.
Education
University of British Columbia - BSc
September 2021 - April 2025 [expected]
Skills & Interests
- Interests: type theory, computer security, compiler engineering, abstract algebra, language design, category theory, formal syntax, formal semantics, type-logical grammar, distributed systems, origami
- Experienced with: Nim, Rust, Java, Python, Racket, C, Bash, HTML/CSS, Tailwind CSS, Toki Pona
- Currently learning: Agda, Haskell, Lean, [Java/Type]Script, Latin, type theory, cryptography
- Assorted skills: Linux, Git, server administration, HAProxy, Nginx, Docker, cross-site scripting, SQL injection, template injection, request smuggling, CSRF, reverse engineering, digital forensics analysis
Volunteering
- President (May 2024 - present): to be determined!
- Treasurer (May 2023 - April 2024): handling club logistics, maintaining the clubroom, organizing events
ICFP 2023: International Conference for Functional Programming
September 2023
- Student volunteer and attendee
PLDI 2023: Programming Language Design & Implementation Conference
June 2023
- Virtual student volunteer
Relevant Coursework
CPSC 539b: Dependent Types [no credit]
Fall 2023 (current)
CPSC 539b: Implementing Type Systems [no credit]
Spring 2023
- Worked through and discussed Benjamin C. Pierce's Types and Programming Languages
- Discussed a bevy of additional papers: primarily Jana Dunsfield's work on bidirectional typechecking
- Implemented a type system in Rust as a term project, with bidirectional typechecking, subtyping, and algebraic data types, later extended with typeclasses
CPSC 421: Introduction to the Theory of Computing [no credit]
Fall 2022
CPSC 311 Reading Group: Introduction to Interpreters [no credit]
Fall 2022
CPSC 411: Introduction to Compiler Construction [no credit]
Spring 2022
- Lectures only. Did not attempt assignments. Plan to properly take Spring 2025. (scheduling... :-< )