2022.05 - 2023.07
2020.05 - 2022.11
Introduction to the Theory of Computation, Feb. 2019, Sep. 2020
The Logic Book, Nov. 2017, Jul. 2019, Sep. 2020
The Annotated Turing, Nov. 2017, Sep. 2020
Gödel’s Proof, Nov. 2017, Sep. 2020
Fundamentals of Lambda Calculus & Functional Programming in JavaScript, Feb. 2019
A New Kind of Science, Nov. 2017
2020.01 - 2022.12
Course | Semester | Score | Grade | A+ Cutoff |
---|---|---|---|---|
CS 418: Interactive Computer Graphic | Spring 2020 | 98 | A+ | 96.67 |
STAT 420: Methods of Applied Statistics | Summer 2020 | 99.5 | A+ | 99.5 |
CS 498: Applied Machine Learning | Fall 2020 | 100 | A | Extra HW |
CS 598: Advanced Bayesian Modeling | Spring 2021 | 96.9 | A+ | 95 |
CS 435: Cloud Networking | Fall 2021 | 96.44 | A | 99 |
CS 412: Introduction to Data Mining | Spring 2022 | 93.7 | A | 95 |
CS 519: Scientific Visualization | Summer 2022 | 97.96 | A | 98 |
CS 598: Practical Statistical Learning | Fall 2022 | 97.39 | A | No A+ |
The Elements of Computing Systems (Project 1 - 5), Feb. 18-20 2019
Computer Systems: A Programmer’s Perspective (Chapter 4), Jul. 2019
Code: The Hidden Language of Computer Hardware and Software, Nov. 2017
Build an 8-bit computer from scratch, Spring Festival Holidays, 2019
Feynman Lectures On Computation Feb 2019
Computer Systems: A Programmer’s Perspective (Chapter 2 - 3), Mar. 2019
The Elements of Computing Systems (Project 6 - 8), Jun. 2019
Codes: Project 6 (Assembly Compiler), May 22 2019, Project 7-8 (Virtual Machine Compiler), Jun. 14 2019
Stanford CS143: Introduction to Compiler (Week 2 - 4), Feb. 2019
The Elements of Computing Systems (Project 10 - 11), Jun. 2019
Codes: Project 10 (Parser), Jun 21 2019, Project 11 (Generator), Jun. 26-27 2019
JISON: Generating Parser using LL LR SLR LALR used in Jison, May 2019
By far, parsing techniques is the hardest part of this learning journey, the main reason might be the lack of ideal learning materials. Things are taught too abstract and too little examples are presented.
Babel: Babel Parser, Babel Traverse, Babel Generator, Jun. 2019
Babel Parser is for parsing JavaScript, using Recursive Descent Algorithm.
Vue.js: Parser for HTML used in Vue.js, Jun. 2019
Codes: Rewrite
KaTeX: Parser for LaTex used in KaTex, Jun. 2019
Math.js: Parser for Mathematical Expression used in Math.js, Jun. 2019
Wrote a tiny Mathematica-like computer algeba system for educational purposes. Implemented some rudimental algebra like Simplify
, Expand
/ Factor
and Solve
functionalities. Jan. 2020
Accelerated Computer Science Fundamentals Specialization (Coursera), Aug. 2019
The TeXbook, Jul. 2019, Dec. 2019
KaTeX : typeset LaTeX using HTML (table) and CSS struct
MathJax : typeset LaTeX into HTML and SVG format
Wrote a typesetting system which basically is a lighter version of MathJax, Dec. 2019
Fixed a minor bug in MathJax (merged into master) when outputing square root
UIUC CS 418 Interactive Computer Graphics, Spring 2020
three.js 3D Graphics Library, Mar. 2020
GSAP Javascript Animation Library, Mar. 2020