U.C. BERKELEY

Minor in Electrical Engineering and Computer Science

how IS electrical engineering and computer science (eecs) related to geography?

01. remote sensing

Remote sensing is the process of detecting and monitoring the physical characteristics of an area by measuring its reflected and emitted radiation at a distance from the targeted area. Special cameras collect remotely sensed images of the Earth, which help researchers sense things about the Earth. (USGS)

02. coding

By gaining a background in different coding languages I can manipulate large and small geographic data sets and apply different computer science applications to my environmental work.

03. algorithms

GIS Application rely on advanced computer science algorithms and software development, platform integration, hardware design and operating system principles. By studying EECS I have been able to apply my training coupled with a solid theoretical and developmental foundation.

projects

If you would like to see the code for these projects please email me.
(I can not make them public on github for school of conduct purposes)

CS 61B: DATA STRUCTURES

cube puzzle game

Implemented functionality where user can click square on game for cube to roll onto and the cube will pick up a blue square if its face is not already blue. Learned about Model-View-Controller architecture for project structure to implement a CubeModel that followed an observer design pattern.
click here for the project spec

enigma

First large scale project of CS61B, replicated the WWII German encryption machine Enigma by building generalized simulator that could handle numerous different descriptions of possible initial configurations of the machine and messages to encode or decode. Worked mostly with Java's String, HashMap, ArrayList, and Scanner data structures to handle string manipulation, data mapping required, and file reading for encryption.
click here for the project spec

ataxx

Created a replica of the game Ataxx in Java in CS61B. The objective of the game is to fill the board with your color and moving to a square adjacent to an opponent's square changes their color to yours. Built both the GUI version and the command line version of the game implementing both manual players and AI players. For AI player, used game trees and alpha beta pruning based on heuristic values.
click here for the project spec

graph api

I created a graph package API that includes traversals, breadth first search, and depth first search in Java. A replica of a Makefile and a Trip application were clients created with this API. The Trip application finds the shortest path between two locations using A* search.
click here for the project spec

CS 61A: The Structure and Interpretation of Computer Programs

HOG

This was the first CS61A project to gain a basic understanding of the features of Python. Most of the time was spent understanding the given code. Learned how to implement control statements and higher-order functions.
click here for the project spec

MAPS

Created a Voronoi diagram in Python to make a visualization of restaurant ratings using machine learning and the Yelp academic dataset. Model segmented Berkeley into regions that were shaded by the predicted rating of the closest restaurant (yellow is 5 stars, blue is 1 star).
click here for the project


ants vs. some bees

Created a tower defense game inspired by Plants vs. Zombies using a combination of functional programming and object-oriented programming.  
click here for the project spec

Scheme

Used Python to code an interpreter for Scheme language for CS61A. Learned both about functional programming through Scheme coding assignment and Read-Eval-Print-Loop through coding each step of the process for interpretation.
click here for the project spec

Back to home page