Node RSS Feed

Wed Jan 22 2020

One of the beautiful things about Node is that it is really easy to do just about anything in a few lines of code. To put this in perspective, it took me longer to make this terrible blog post header than it did for me to implement an RSS feed in node. An RSS (rich site summary) feed enables people to subscribe to blogs and get notified when there is a new post. People also use RSS feeds to aggregate all the blogs they read in one place. Although RSS is on the decline, it is still widely used in the tech community.

Before looked for a package I added a route listening on “/rss” which sends a static object that will eventually store the RSS feed object.

routes.get('/rss', (request, result) =>
{
    result.set('Content-Type', 'text/xml');
    result.send(xmlFeed);
});

Read More »



2019 in Review

Tue Dec 31 2019

Following the tradition I started last year, I’m making a quick “year in review” blog post. At this point year in review posts are cliché, however, I want to continue the tradition because reflection helps me move forward with a focused vision on what is important. I’m going to chunk this into semesters because that is how my college brain thinks right now.

1 Spring Semester

During the spring semester, I was on CO-OP at RIT doing research.

1.1 Talks Given

  • Intro to R
  • Graph Databases
  • Adversarial Networks in Cyber Security
  • How Hackers use Genetic Algorithms to Develop Malware

1.2 Favorite Blog Posts Written

1.3 RIT Datafest

Read More »



Developing an AI to Play Asteroids Part 1

Wed Dec 18 2019

I worked on this project during Dr. Homans’s RIT CSCI-331 class.

1 Introduction

This project explores the beautiful and frustrating ways in which we can use AI to develop systems to solve problems. Asteroids is a perfect example of a fun learning AI problem because Asteroids is difficult for humans to play and has open-source frameworks that can emulate the environment. Using the Open AI gym framework we developed different AI agents to play Asteroids using various heuristics and ML techniques. We then created a testbed to run experiments that determine statistically whether our custom agents out-performs the random agent.

2 Methods and Results

Read More »



CSCI 344 Final Review

Fri Dec 13 2019

A quick review for CSCI-344 (Programming Language Concepts)

1 Ch #1 What are Programming Languages

1.1 Types

1.1.1 Imperative

Most common type of language

  • Von Neumann (Fortran, Basic, C)
  • Object-oriented (SmallTalk, java)
  • Scripting (perl, python, basic)

1.1.2 Declarative

  • Functional (Scheme, ML)
  • Logical (Prolog)

1.2 Compilation vs Interpretation

Read More »



CSCI 331 Final Review

Wed Dec 11 2019

Quick review sheet for Dr. Homan’s RIT CSCI-331 final.

1 Learning from examples (Ch 18)

  • Supervised learning: where you already know the answers
  • Re-enforcement learning: Learning with rewards
  • Unsupervised: clustering

1.1 Inductive learning problems

Read More »