2019 in Review

Tue Dec 31 2019

Following the tradition I started last year, I’m making a quick “year in review” blog post. At this point year in review posts are cliché, however, I want to continue the tradition because reflection helps me move forward with a focused vision on what is important. I’m going to chunk this into semesters because that is how my college brain thinks right now.

1 Spring Semester

During the spring semester, I was on CO-OP at RIT doing research.

1.1 Talks Given

  • Intro to R
  • Graph Databases
  • Adversarial Networks in Cyber Security
  • How Hackers use Genetic Algorithms to Develop Malware

1.2 Favorite Blog Posts Written

1.3 RIT Datafest

Read More »



Developing an AI to Play Asteroids Part 1

Wed Dec 18 2019

I worked on this project during Dr. Homans’s RIT CSCI-331 class.

1 Introduction

This project explores the beautiful and frustrating ways in which we can use AI to develop systems to solve problems. Asteroids is a perfect example of a fun learning AI problem because Asteroids is difficult for humans to play and has open-source frameworks that can emulate the environment. Using the Open AI gym framework we developed different AI agents to play Asteroids using various heuristics and ML techniques. We then created a testbed to run experiments that determine statistically whether our custom agents out-performs the random agent.

2 Methods and Results

Read More »



CSCI 344 Final Review

Fri Dec 13 2019

A quick review for CSCI-344 (Programming Language Concepts)

1 Ch #1 What are Programming Languages

1.1 Types

1.1.1 Imperative

Most common type of language

  • Von Neumann (Fortran, Basic, C)
  • Object-oriented (SmallTalk, java)
  • Scripting (perl, python, basic)

1.1.2 Declarative

  • Functional (Scheme, ML)
  • Logical (Prolog)

1.2 Compilation vs Interpretation

Read More »



CSCI 331 Final Review

Wed Dec 11 2019

Quick review sheet for Dr. Homan’s RIT CSCI-331 final.

1 Learning from examples (Ch 18)

  • Supervised learning: where you already know the answers
  • Re-enforcement learning: Learning with rewards
  • Unsupervised: clustering

1.1 Inductive learning problems

Read More »



Responsible Optimization

Fri Nov 15 2019

Clive Thompson a very prominent technical author came to Rochester on November fifteenth to talk about the “Problems of Efficient Coding”. Going into this talk, I expected it to go along the lines of how making super “efficient” code often results in code that nobody understands and is hard to maintain. To my pleasant surprise, Clive Thompson provided a nuanced discussion around the cultural problems created when we try to optimize every problem using technology.

Clive Thompson
Clive Thompson

To understand Clive’s point, he used Facebook as a prime example of this problem. Before the Facebook feed system, the web largely acted like a blog where people had to actively reach out to everyone’s page to get content. Right after Facebook implemented the feed system there was a big debacle where nearly 20% of Facebook users entered a Facebook group opposed the new feed system. For nearly a week there were student protesters outside of the Facebook office. People initially found the feed system creepy because it gave everyone ambient awareness of everything happening in their network; this in some regards decreased “anonymity”. You no longer had to go out to every one’s page, Facebook created a tailored newspaper for you to consume. As a result of the new feed system, people started producing a lot more content to put on social media sites since people consumed it immediately. To filter content and only provide people with “important” posts, Facebook employed machine learning algorithms which favored posts that get more clicks. It turns out that people are very likely to click on things that are highly emotional or controversial–machine learning algorithms were quick to learn this and favor controversial content. People started to play the algorithm and turn Facebook into a hot take tire fire as it get littered with absurd conspiracy theories like #Pizzagate. Facebook’s motto used to be “move fast and break things”, however, after Zuckerburg was lambasted in front of congress, that motto is slowly changing.

Read More »