Fun with Selenium: Scraping Instagram Locations

In this project, I’m going to show you how my friend and I scraped data from Instagram’s (somewhat) public API and how we used this data to gain insights about the most popular locations to take pictures in a given area. Find repo here. Motivation One of my close friends really likes taking pictures. One thing I never realized was how hard it was to find good places to take pictures, especially in Tallahassee, FL (my hometown). ...

March 17, 2021 · 7 min · Me

Panther: A Distributed Web Crawler in Python

Overview Panther is a distributed, (mostly) compliant, web-crawler written in Python. In English: Panther is a service that lets you slowly download/index the web piece-by-piece. In a nutshell, the way it does this is using an algorithm called BFS. If you think of the web as an actual web like below (with urls as points and links as edges), then what Panther does is start at a point and slowly expand from that center by visiting its closest neighbors. ...

March 11, 2021 · 7 min · Me

Blanche: A Spotlight Search for Chrome

One thing that’s really been on my mind for the last semester is just how differently people are starting to view their computers/devices now in comparison to just 10+ years ago. It seems like for the early half of the 21st century, we’ve always forced software and hardware to adapt to the user. Today, I think the tide is starting to change; I think that people are now increasingly expected to adapt to the technology available, not the other way around. As we’ll see, I think this change in expectations could be used to make pretty large changes in the way we interact with the web. ...

January 13, 2021 · 8 min · Me

Workflow 1.0: Terminal

I think a workflow is really important. Of course everyone agrees, but I want to go further and argue that having the right workflow at the right time could actually determine how well things works out for you in the long term and even how passionate you are about this something in the future. Many people’s first impressions of programming is incredibly intimidating since the amount of things thrown at them is really high and the number of familiar things (software used, relatable experiences) is really low. If you’ve taken a CS class or tried to learn programming, you probably remember the experience yourself. But most importantly, when you’re first starting out, the scariest thing is trying to step outside the box of what you know to work. The average person is not only new to the language or skill they want to learn, but also new to the software and the toolchain surrounding the language/skill they’re learning. The worst experience isn’t being wrong about something, it’s not knowing when or even how you’re wrong. Those experiences aren’t tied to CS as much as they’re tied to the toolchain since great software nowadays highlights when you’re wrong or shows you how to fix runtime errors in a meaningful way. But most importantly, great software is understandable and predictable so you know what to do when something fails, and exactly how to fix it. ...

November 2, 2020 · 6 min · Me