Course: CSE 633 - Parallel Algorithms, Dr. Russ Miller, SUNY at Buffalo (2012).
In one of my favourite classes, taught by one of my favourite professors, we learned about the space and time complexities of sequential and parallel approaches to Combinational Circuits, Matrix Operations, Parallel Prefix, Pointer Jumping, and Divide-and-Conquer algorithms. We were also given access to a variety of large multiprocessor systems to implement algorithms in a variety of means (e.g., MPI, OpenMP, CUDA). For my final project, I implemented a parallel Needleman-Wunsch algorithm with C and MPI to perform global alignments of biological sequences.
Course: CSE 636 - Data Integration, Dr. Jan Chomicki, SUNY at Buffalo (2012).
We discussed varying topics in this class, including Datalog, XML, XML query languages, Semantic Web, schema matching and mapping, query containment and rewriting, data exchange, schematic discrepancies, data cleaning, and data provenance. For the final project, Raghav, Sushen, and I developed a website that integrates data from multiple movie data sources (i.e., IMDb, Rotten Tomatoes, TheMovieDb) to combine information and resolve discrepancies.
Course: COSC 4P80 - Artificial Neural Networks, Mr. Earl Foxwell, Brock University (2011).
Apart from developing an understanding of how to design, train, and test single- and multi-layer feed-forward Artificial Neural Networks to solve practical problems, we learned about Hopfield networks, Boltzmann machines, unsupervised learning, competitive learning, Kohonen maps, and self-organizing maps. I lead a seminar on the application of supervised learning techniques in speech recognition, and, for the final project, I implemented an ensemble of neural networks to classify letters in the English alphabet.
Course: COSC 4V82 - Evolutionary Computing, Dr. Brian Ross, Brock University (2011).
This being one of my favourite classes, we learned about the principles, methodologies, technologies, and applications of evolutionary computation, such as genetic algorithms and genetic programming. I presented a seminar on the use of genetic algorithms in genetic sequence alignments. For the final project, I implemented genetic programming to classify wine types from raw numeric data and recognize aircrafts in satellite photographs.
We are Loggers' was publicly released on December 5, 2010 as a database for chat logs - similar to the famous websites Bash and QDB. Soon, I realized there was room for expansion. I revised the vrlogrs' database to make room for quotations from famous people and literature. Now, vrlogrs has become an integration of funny chat logs and famous quotations.
We are Loggers looks to offer a visually appealing AJAX-driven interface for users to enjoy the thousands of user-submitted chats and quotes in the database. The ratings' system allows users to better distinguish between chats and quotes that are actually worth reading and those that are simply a waste of time. Visitors are also able to share the chats and quotes with their friends and family through various social sites, such as facebook, reddit, and twitter.
After learning about the node.js project, I thought it would be the best time to learn about a new server while fulfilling my dream to create a gaming website. Thus, I created FunNode and publicly released it on July 16, 2012. Albeit in beta, FunNode is a minimalist gaming website that will, one-day, be a place where anyone can play online games against players from around the world, for FREE. Check it out on facebook and twitter.