Projects
-
Operating Systems
- Used semaphores and monitors to solve multithreading problems, such as reader/writer, one-line bridge.
- Implemented 3 page replacement algorithms, and used sorting algorithm files to explore Belady’s Anomaly.
- Used sockets to implement a message exchange system which could handle concurrent requests.
Operating System Concepts (The Dinosaur Book)
Image from amazon.com
-
Computer Networks
- Implemented UDP, TCP, and built Reliable Data Transfer (RDT) based on a UDP system in Linux.
-
Data Mining
- Studied various models in Classification, Clustering, Association Analysis, and Anomaly/Fraud Detection.
- Used logistic regression with regularization and Stochastic Gradient Descent to classify large-scale datasets.
- Built a SVM from scratch with linear & Gaussian kernels. Applied Cross Validation to adjust parameters.
-
Regression Analysis & Multivariate Statistical Analysis
- Used R to Visualize & Analyze high-dimensional datasets: regression, LDA, PCA, CCA etc.
-
Shutterbug (iOS app)
- Presented a list of popular Flickr photo spots and allow users to see photos taken in those spots.
- Downloaded photo data using Flickr API, and used multithreading to avoid blocking main thread(UI etc.)
- Parsed JSON to get most popular photo spots; put the data into a list (UITableView) sectioned by country.