Hey! I'm Matthew Chiaravalloti, a fifth year student studying Computer Science in the School of Engineering and Applied Science at the University of Pennsylvania. As a submatriculant, I am pursuing my BSE and MSE in Computer Science with an expected graduation of May 2018. Throughout my five years at school, I've developed a passion for internet and web development at all levels. From low-level network components and technologies to high-level web frameworks, I really enjoy working on large network-related projects. A few projects that have particularly stood out are: designing and building a jetty-style HTTP server/servlet engine in java, writing a TCP/UDP packet analyzer, implementing a simplified Apache Storm clone, designing and building a Facebook clone, designing and building a Google search clone (from the server up!), and creating countless webapps (small and large) as personal projects, academic projects, and homework assignments.
|
Personal Side Projects
|
|
|
Check out a Sudoku game I made using React.js by clicking the button to the left!
|
|
Check out a simple color discovery/conversion webpage I made by clicking the button to the right...
|
|
|
|
...or view the corresponding Android application in the Play Store to the left...
|
|
...or the Android application source code to the right!
|
|
|
|
Find the common actors between two movies by checking out another Android app I developed to the left...
|
|
...or view its source code to the right!
|
|
|
|
To the left, you'll find the code for a Space Invaders game I threw together in Python. (Made for my dad.)
|
|
To the right, you'll find a very small project I developed to run a few super basic linux commands in the Windows command prompt.
|
|
|
|
Play a quick, basic Tic Tac Toe game I made to the left!
|
|
|
View my résumé to the right!
|
|
|
|
|
Search! (formerly known as Uber4Google) was the Google search clone I implemented with Pia Kochar, Graham Mosley, and Terry Sun as the final project for CIS 555: Internet and Web Systems. This project was a blast and an amazing way to end another of my favorite classes at Penn. The project was borken into several components including a web crawler (Terry), an indexer (me), a pagerank component (Graham), and the web app itself--including the search algorithm (Pia). Additionally, my group deployed our project on the HTTP server I built for a homework assignment earlier in the class! Although I attributed each component to an individual of the group, it was certainly a team effort! Along with Pia, I was responsible for implementing the Indexer, which read and indexed all the crawled web pages. I also styled to our frontend to give it a classic, circa-1998 Google! feel. It's a shame we couldn't keep it running forever, but it's quite costly to host a project of this scale with as much information as we stored! (link no longer available!)
|
|
One of avorite courses at Penn was NETS-212: Scalable and Cloud Computing. It was definitely one of the most interesting, useful, and enjoyable classes offered in the department in my opinion! I not only gained countless practical skills for real-world software development, but also learned about conceptual and theoretical aspects of scalable software systems. The final project for the course was to create such a system by building a Facebook 'clone' called Pennbook. I worked on the final project with Jose Ovalle. I had a great time working on it and poured a lot of time and effort into it and am proud of what we built. Software is never truly complete, and although we won't provide consistent updates to the site, I'll leave it live on AWS as long as I can. Please take a look at our implementation of Pennbook to the right--create an account if you'd like or just check out the landing and information pages! Even with some lingering bugs, I am still so excited about this project and cannot express enough how much I loved working on it!(link no longer available!)
|
|
|
|
As a web developer for the Daily Pennsylvanian, I helped build the Best of Penn website to the left. (link no longer available!)
|
|
As a web developer for the Daily Pennsylvanian, I helped build the PennBracket website to the right. (link no longer available!)
|
|
|
|
While I was an instructor at iD Tech, I made a few example projects for my students which you can find to the left.
|
|
Although I have nothing to link to for this one, I didn't want to skip mentioning a project that consumed a majority of my time Junior Fall. In CIS-380: Operating Systems, there are two large projects. The first is to (individually) create a small variant of a Linux-style shell that could be spawned as a process in a real shell and then continue to operate as one itself. Throughout September and some of October, I enjoyed working on that project at a comfortable pace. The second project--the one I really wanted to discuss--was to build, as a team of four, what was essentially an operating system, called PennOS. In reality, it was not an operating system, but rather a cleverly designed process that acted as an operating system provided it ran on a real host-OS. I worked with Michael Rudow, Nickhil Nabar, and Sahil Shah. The two major components were the scheduler (which Nickhil and Sahil developed for our team) and the file system (which I worked on with Michael). The third component was to integrate one of our shells into the OS (we chose mine!). We started early and worked until the deadline--there were countless meetings of more than 8 hours, many longer than 10 hours, and, of course, several all-nighters or near-all-nighters. I absolutely loved working on this project and it gave me a great idea of and respect for the complexity involved in designing, developing, and demonstrating such a large system with a team. I'm always willing to talk more about this project and have said probably too many times how much I miss working on it! (no link available!)
|
|
Thanks for visiting! Be sure to check back for updates including new projects, new layouts, and new additions to my résumé.
...more to come soon...
|
|