This repository houses the various projects and assignments I completed during my time at Loyola Marymount University. Some of these repositories might be private due to class requirements, if access is needed please contact me at tbahar@lion.lmu.edu.
CMSI 186 Programming Lab: Java programming lab focused on dynamic programming. Typical projects include discrete simulation, randomized estimation, maze solving, dynamic programming, large-number arithmetic, and numerical methods.
CMSI 281 Data Structures: Classwork and homework assignments designed to provide an introduction to data types, information structures, and algorithms. All work done in Java.
[CMSI 282 Algorithms] : Algorithm paradigms, with an emphasis on combinatorial search. Topics include: generating combinatorial objects; greedy methods, dynamic programming; randomized algorithms; modern heuristics such as genetic programs and simulated annealing; advanced sorts and order statistics; cake-cutting and fair division; graph algorithms; computational geometry. All work done in Java.
[CMSI 284 Computer Systems Organization] : An introduction to the basic organization of computer systems. Digital representation of textual and numeric information. Machine instructions and instruction formats, assemblers and assembly languages, linking and loading, process execution, interrupt and device-handling, and file management. System-level programming in C and assembly language.
CMSI 370 Interaction Design : Introduction to interaction design and human-computer interaction, with equal emphasis on learning how to design and evaluate interaction architectures, and learning how to use existing frameworks to implement such architectures. Course project coded with React and utilized the Shippo and MapBox APIs to create an efficient package tracking web app.
CMSI 371 Computer Graphics: Introduction to interactive computer graphics. Topics include the design and use of three-dimensional graphics engines and APIs, animation, physics and computer games, 3D modeling, computational geometry, shading, ray tracing, and fractal geometry. All projects coded in C++ and used GLUT and OpenGL libraries.
CMSI 386 Programming Languages: A comparative study of the rationale, concepts, design, and features of several major programming languages including, JavaScript, Java, Python, Swift, C++, C, and Haskell.
CMSI 387 Operating Systems: Learned about concepts in the design of operating systems, including processes, process management, mutual exclusion, synchronization and message-passing, primary memory management, multiprogramming, paged allocation and paging policies, resource and I/O management, file systems, and security. Problems coded in C and Java.
CMSI 399 App Development Practicum: Course designed to teach students React and prepare students for the workforce through group projects, standups, and interview practice. Worked on two React web applications with 3 other students per project that utilized the Spoonacular and Petfinder APIs. Interview questions coded in JavaScript.
CMSI 486 Introduction to Database Systems: Introduction to the theory and design of database systems. Database assignments completed using MongoDB and Neo4j.
CMSI 488 Language Translation and Implementation: Introduction to the theory and design of translators and interpreters for high-level computer programming languages. Topics covered in assignments include programming language specification, scanner construction, parser construction, intermediate representations, virtual machines, regexes, code generation, and optimization. Culminated course by creating a new programming language from scratch with 5 other students coded in JavaScript.
Pet Match: React web app I collaborated on with three other students that uses the Petfinder API to help users find adoptable animals near them that match their needs/desires by taking a short quiz. Came up with concept and served as Project Manager intending to promote the adoption of shelter animals to help save animals who are being put down due to shelters closing down and help mitigate the anxiety and boredom quarantining has caused. Coded in React, JavaScript, HTML/CSS and uses React Router and the Petfinder API.
Should I Stay or Should I Go?: React web app I collaborated on with three other students that uses the Sponacular API to help decide whether to eat out or prepare food at home in terms of health. Upon searching for a food users are presented with the nutritional information(calories, protein, carbs, etc.) related to the entered food for a meal one could prepare at home versus a meal they could purchase at a restaurant. Served as SCRUM Master on project.
The Whole Story: News centered web app I worked on as the UI/UX lead + Front End Developer as part of the Mozilla Builders LMU Spring 2020 Hackternship with two other students. I also created all the artwork for the site myself. The Whole Story's goal was to help the younger generation become politically-informed in a holistic manner by removing avenues for implicit bias to enter their news stream leading to a deeper and more individualistic political understanding. Coded in React, JavaScript, HTML/CSS, and utilized Semantic UI.
RE Climate Webapp: RE is an environmentally focused React web app I worked on as the UI/UX lead + Front End Developer. I also created all the artwork for the site myself. Coded in React, JavaScript, HTML, and SCSS.
Personal Website: Created a personal website to better share my projects and skill set. Coded in React, JavaScript, HTML/CSS, and uses Semantic UI.
Inkling: Collaborated with five other LMU Students to create Inkling. Inkling is a programming language that lets you follow your gut—you learn to program by doing what makes sense to you while learning to shift your thinking to grow as a programmer and as a thinker. It is a simple English-modeled and statically typed language made to help beginner programmers step into coding and then easily transition into other languages. Coded in JavaScript and uses Ohm and Jest + Personally created Inkling informational website using React and Bootstrap.
Google Summer 2018 CodeU Baker's Dozen Chatapp: Learned and followed industry best practices such as: contributing to open source software using Git and GitHub, conducting regular code reviews with/for teammates, extending an existing codebase, designing new components and interfaces and leading them to completion. Collaborated with a team of peers to design and implement a chat app using Java, JavaScript, HTML/CSS, Maven, and JUnit Testing leveraging various Google Cloud Platform APIs, including App Engine and Datastore.
Rock, Paper, Scissor: Simple Rock, Paper, Scissors game coded for a Girls Who Code teaching assistant application challenge. Coded in HTML, JavaScript, and CSS.