Mateo Maturana

I am currently a Junior at Columbia University (CC '23) majoring in Computer Science with a concentration in Mathematics. Most of the source code for my projects is included in my GitHub (with the exception of KenKen 2.0), but i'll provide descriptions and alternate links below if necessary. I can be reached at mm5589@columbia.edu. Descriptions of my relevant courses are also included below.


Projects

College

MLB Projections
August '21. This project simulates the remainder of MLB seasons and provides daily up to date projections on postseason odds, current games, and also already completed games. This was done to create a more dynamic, accurate, and expansive version of a similar project I completed in high school. Using the MEAN (Mongo, Express, Angular, Node) stack, data is pulled daily from the MLB Stats API and based on team rosters and player stats, the remaining games are simulated to model the projected outcomes. At this point, I consider the project complete (V1) and will work on deploying to a permanent location. Code .

KenKen 2.0
May '20 - Present. This project is a continuation of the initial KenKen project started in High School. Working with the same team of people, we aim to create a web application where players can compete against each other competitively solving KenKens while also having the opportunity to practice in single player. This will incorporate a backend server and frontend using the Angular Framework written in TypeScript. Languages used include TypeScript, JavaScript, Java, HTML, CSS. More Details.

High School

KenKen
December '18 - February '19. As part of a group project, built a program that generates KenKens of different difficulties and sizes. Future Improvement: Adding a GUI. Current outputs look like this. KenKen examples.

Baseball
January '19 - February '19. Program that simulates an MLB Season. Description

World Cup
April '19. Program that simulates the World Cup Qualifiers and the World Cup. Description


Technical Coursework

Computer Science

COMS W4118, Operating Systems, Spring 2021
Taught by Jason Nieh. Design and implementation of operating systems. Topics include process synchronization and interprocess mmunication, processor scheduling, memory management, virtual memory, interrupt handling, device management, I/O, and file systems. Hands-on study of Linux operating system design and kernel internals, including work with Android devices.

COMS W4115, Programming Languages and Translators, Spring 2021
Taught by Stephen Edwards. structure of computer programming languages and the basics of implementing compilers for such languages. Final Project - Creating a language and building a compiler for it.

COMS W3261, Computer Science Theory, Fall 2020
Taught by Tal Malkin. Regular languages: deterministic and non-deterministic finite automata, regular expressions. Context-free languages: context-free grammars, push-down automata. Turing machines, the Chomsky hierarchy, and the Church-Turing thesis. Introduction to Complexity Theory and NP-Completeness.

CSEE W3827, Fundamentals of Computer Systems, Fall 2020
Taught by Martha Kim. This course explains, from a logic perspective, how computers work, i.e., how 0's and 1's are manipulated to do all the advanced calculations, computations, and services that computers can perform. The first major topic is digital logic, which concerns the design of circuits to implement logic functions using standard components such as AND-gates, OR-gates, and inverters. The second part of the course involves the structure and software interface of digital computers.

COMS W3203, Discrete Mathematics, Fall 2020
Taught by Ansaf Salleb-Aouissi. Logic and formal proofs, sequences and summation, mathematical induction, binomial coefficients, elements of finite probability, recurrence relations, equivalence relations and partial orderings, and topics in graph theory (including isomorphism, traversability, planarity, and colorings).

COMS W3157, Advanced Programming, Spring 2020
Taught by Jae Woo Lee. C based introductory systems programming course and short introduction to C++. UNIX basics, SVN, Make, Pointers and Arrays, Linked Lists, I/O, Process Management in UNIX, TCP/IP, Sockets, HTTP, Software Architecture, Basic-4 in C++, MyString Class, Templates and STL, and Smart Pointers. Paper written by Jae Lee describing the class and its goals .

COMS W3134, Data Structures in Java, Fall 2019
Taught by Daniel Bauer. Introduction to fundamental ways of algorithmic problem solving by organizing and processing information efficiently. Topics: Recursion, Generics, Algorithm Analysis, Linked Lists, Stacks, Queues, Trees, Heaps, Sorting, Hashing, Graphs, NP-Completeness.

AP Computer Science A, Fall 2018 - Spring 2019
Taught by Jeffrey Billing. High School two semester introduction to programming in Java. Topics: Primitive types, Objects, Boolean Expressions, Conditional Statements, Iteration, Writing Classes, Arrays, ArrayLists, Inheritance, and Recursion.

Mathematics

MATH GU4042, Introduction to Modern Algebra II, Spring 2021
Taught by Inbar Klang. Topics: Rings, homomorphisms, and ideals, Polynomial rings, Integral Domains and Factorization, Field extensions, Galois Theory.

MATH GU4041, Introduction to Modern Algebra I, Fall 2020
Taught by Robert Friedman. This semester long course is an introduction to group theory. Historically, through the 18th century algebra was primarily about solving polynomial equations. During the 19th century, a fundamental change in perspective took place, driven by many influential mathematicians including Lagrange, Cauchy, Abel, Gauss, Galois, Jordan, and others. From the early 19th century onward, "modern algebra" has primarily focused on such abstract concepts as groups, rings, fields, modules, representations, and so on. Although these abstract concepts might have seemed foreign or unmotivated to the ancients, together they give rise to elegant and powerful results with innumerable applications.

MATH UN1208, Honors Math B, Spring 2020
Taught by Evan Warner. Part 2 of a rigorous, acclerated introductory course in calculus and linear algebra. Study of Linear Algebra includes linear independence, rank, determinants, orthogonality, and eigenvectors, culminating in the spectral theorem. Study of Vector Calculus includes the theorems of Green, Gauss, and Stokes.

MATH UN1207, Honors Math A, Fall 2019
Taught by Evan Warner. Part 1 of a rigorous, accelerated introductory course in calculus and linear algebra from a theoretical perspective rather than applied. Topics: Introduction to mathematical arguments, single-variable calculus from an abstract perspective, and linear algebra with a view towards calculus in several variables. During this course, Professor Warner maintained a website with all assignments. *Note: this link may be changed after next year when there is a more current MATH 1207 section*. During this class, I kept detailed notes in LaTeX. They can be found here. (Currently putting handwritten notes from ~8 lectures into LaTeX)