about me_

I started doing research with Dr. Flavio Esposito during my Junior year of undergrad. We studied Software-Defined Networking (SDN). We looked to implement and evaluate several moving target defense strategies in SDN. During my senior year, I worked with Dr. Esposito to design and begin implementing an application that allows humans to control a drone or swarm of drones through conversation. This project aims to lower the barriers between users and drones by not requiring extensive and fine-tuned knowledge of physical controllers.

During the summer of 2018, I worked as a Research Intern at the MIT Lincoln Laboratory in Lexington, Massachusetts. Dr. Steven Gomez mentored me while I worked on a visualization tool for network security analysts gathering information in an enterprise-scale SDN. I compiled my summer work into this poster, which I presented at the ACM Internet Measurement Conference in Boston, MA, on October 31, 2018.

During the academic semesters around that internship, I started to work more closely with Dr. Nathaniel Rivers at Saint Louis University. We worked on making the English Department's technology resources more accessible to students and instructors. This work was inherently human-centered and required a bidrectional understanding of users' needs and desires. And in Dr. Rivers's courses, we examined the ways in which rhetoric and technology interact.

The MIT LL research experience and work with Dr. Rivers proved instrumental to me. They were my first experiences with Human-Computer Interaction research, the field in which I work now. I had nurtured interests in computers and in writing, but those interests remained separate entities until I learned about their convergence in the work of people like Dr. Gomez and Dr. Rivers.

I volunteered in a yearlong, community-based program called the Alumni Service Corps at Marquette University High School. A lot of Jesuit high schools have an ASC program. The one at MUHS is extra special to me because I went there. The Computer Programming class I taught is an introductory CS class; students learned fundamental programming concepts using the Java programming language. I taught it from a human-centered perspective, encouraging students to think about other disciplines involved in modern computing. I often brought in speakers and topics from outside the book and the class's traditional curriculum. We discussed how VR affects attention, how video games rely on geometry, how visualizations can explain sorting algorithms, and the ethical implications of different technologies.

We practiced productive collaboration through a series of group projects. Individual projects challenged students to get creative in their algorithms and visual effects. We were just outputting to a terminal, but some guys figured out how to make some cool stuff! High on my to-do list is showcasing some of their projects here.

Here is a link to the course website.

I went to Saint Louis University in St. Louis, MO. I majored in Computer Science with a minor in English. I appreciate the Jesuit approach to education.

My undergraduate Computer Science courses included:

  • Computer Security
  • Computer Ethics
  • Programming Languages
  • Network Programming
  • Artificial Intelligence
  • Algorithms
  • Operating Systems
  • Computer Architecture
  • Data Structures
  • Object Oriented Software Design
  • Taming Big Data

My favorite out of those has to be Taming Big Data. I took it freshman year with Dr. Kevin Scannell. We learned some machine learning techniques and how to apply them. Our final project was to write a sentiment analyzer for tweets in the Basque language. I achieved the most accurate results in the class with a 73% correct classification.

As far back as my memory goes, my dad has worked in software product management. When I was younger I wanted to be just like him. I spent time with various softwares and messed around with computer parts. I was curious about how all these systems worked, so I used them, broke them, built things with them. I eventually learned how to program them, and that hooked me on Computer Science.

The first program I wrote was a virtual world. In my first CS class Sophomore year of high school, we learned programming concepts through the Alice educational software. I was amazed with how easy it was to create digital worlds and tell stories through them. I was entranced with the ability to create immersive software. I loved watching my friends play with the worlds I wrote. In the second half of my first CS course, we turned to Java, and I found joy in how quickly coding came to me. I felt that I could understand the esoteric language at the heart of every computer program I had ever used.

I work with computers in ways that my sophomoric mind couldn't have imagined, but that tinkering mentality is still very much there for me. I like prototyping things, seeing how well they work, thinking of how else they can work, and understanding where they fall short. I more or less follow that process in my personally expressive projects, and in my research—although there is more idea-grappling and paper-reading before getting to the prototype phase in my formal reserach.

I approach computers from an art and science angle rather than one or the other. For most of my life, I thought the most important computer work was making them better, faster, stronger. I see the value in that, but now I see the greatest value in figuring out what this technology means for us as humans on this strange rock. That's where the art comes in, and I think it's an important perspective to consider when thinking of human-computer interaction problems.

These are some of my favorite languages and tools. To see some of these things in action, head to the projects tab.

  • Unity. This software is my most recent love( / hate) interest. I make virtual environments for experiments with it. Maybe I'll get around to making one of my game ideas with it.
  • JavaScript. I've found myself using it a lot in personal projects (like driving the backend of this website, as well as its interactive pieces) and in internships. D3.js is powerful for creating visualizations. A-Frame is awesome for bringing virtual reality to web browsers. React is cool for UI development, and I look forward to rewriting this website in it.
  • HTML. Yeah yeah, "it's not a ~real~ programming language." I like reading and writing HTML. With the tools out there today, it wasn't necessary to write all of this website's HTML by hand. But I did, because it's fun.
  • Bash. My favorite scripting language because I love the Linux command line. I use Bash to automate some tasks when I can, and I like to break it out to scrape web pages. I used it extensively in a collaboration project with a sociology researcher as well.
  • Python. I like using Python because of how quickly I can prototype with it. I've used it in a couple research projects, my Senior Capstone project, and programming challenges.
  • Go. I do not have a lot of technical experience with this language yet, but I've read about how it works on a lower level. I especially like the language's approach to sharing data in concurrent systems. If you're interested, this article is a cool read on that topic.

I love spending time outside and looking at stars. Some highlights: hiking the White Mountains in New Hampshire, the Smoky Mountains in Tennessee, and a variety of places in Northern Wisconsin and around Seattle. I like to rock climb as well! I've only climbed outside once, and it was at Jackson Falls in Southern Illinois.

I fly a drone every now and then.

I meditate, and I practice yoga. These practices are important for my mental health. Reflecting on how I move through the world is something that resonates in many other parts of my life.

I collect records. My uncle gave me a 1972 Kenwood record player when I graduated high school, and I have been hooked on vinyls ever since. My collection has grown to well over 200 records, spanning the 1940's to the present. My friend and I had an all-vinyl college radio show. You won't hear us anymore, but you can tune in at KSLU.slu.edu if you ever want to listen to some awesome SLU DJs.

I write spoken word poetry and rap. I've performed some of my work with my guitarist friend Luke Vest at my college radio station's open mic nights. Some of my favorite musicians: Frank Ocean, The Avalanches, Bon Iver, Donald Glover, Watsky, Ivy Sole, Noname.

I read. I especially dig Cory Doctorow, Neal Stephenson, Douglas Hofstadter, John Scalzi, Stephen King, F. Scott Fitzgerald, and Hermann Hesse.

I play video games. I'm in The Outer Worlds right now. I got pretty into Assassin's Creed Odyssey—a beautiful-looking game—but I've lost steam on that game at the moment. I'm also known to fire up a game of Fortnite with some friends. Playdead's INSIDE is the coolest game I've played.