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 »



CSCI 331 Review 2

Mon Nov 04 2019

1 Ch 4: Iterative improvement

1.1 Simulated annealing

Idea: escape local maxima by allowing some bad moves but gradually decrease their size and frequency. This is similar to gradient descent. Idea comes from making glass where you start very hot and then slowly cool down the temperature.

Idea: keep k states instead of 1; choose top k of their successors.

Read More »



CSCI 331 Review 1

Sat Sep 28 2019

CSCI-331 Intro to Artificial Intelligence exam 1 review.

1 Chapter 1 What is AI

1.1 Thinking vs Acting

1.2 Rational Vs. Human like

Acting rational is doing the right thing given what you know.

Read More »



Teaching SSH Through a CTF

Sun Sep 22 2019

A few weeks ago at RITlug I gave a talk teaching people about how to use SSH. After a quick presentation going over the basics of SSH there was a CTF-esk challenge. We had a great turnout and engagement during this meeting so I look forward to making more interactive workshops like this in the future.

1 SSH Challenge

Read More »



Photography in the Age of Social Media

Tue Jun 11 2019

John Green’s recent video on Vlogbrothers got me thinking a lot about why I take photos and the impact that social media has had on my journey in photography.

Read More »