<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Ben Grawi</title>
    <description>The portfolio of Ben Grawi</description>
    <link>http://bgrawi.com/</link>
    <atom:link href="http://bgrawi.com/feed.xml" rel="self" type="application/rss+xml" />
    <pubDate>Sun, 31 Aug 2025 18:54:23 +0000</pubDate>
    <lastBuildDate>Sun, 31 Aug 2025 18:54:23 +0000</lastBuildDate>
    <generator>Jekyll v3.10.0</generator>
    
      <item>
        <title>Project: Fourier Visualizations</title>
        <description>&lt;h4 id=&quot;about&quot;&gt;About&lt;/h4&gt;
&lt;p&gt;An HTML5 canvas visualization of how Fourier series, or adding smaller and faster sin waves together, can approximate any periodic wave that you can then hear directly. These visualizations provide the foundation for oscillators used in most music synthesizers. The visualization shows each sin wave as a circle being added to the previous sin wave’s value. It color codes them so that the equation, component, and circle can be easily recognized. By using the WebAudio API, these waves can be heard individually or all together by directly using the math shown. Since we can’t hear sound waves of 1-2Hz, the audio frequency is instead based at 220Hz, but the actual sound wave is still exactly what is shown (save for normalization of the &amp;gt; 1 values).&lt;/p&gt;

&lt;h4 id=&quot;technologies&quot;&gt;Technologies&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;HTML/CSS/JS&lt;/li&gt;
  &lt;li&gt;AngularJS&lt;/li&gt;
  &lt;li&gt;Google Material Design Components&lt;/li&gt;
  &lt;li&gt;WebAudio oscillators&lt;/li&gt;
  &lt;li&gt;HTML5 canvas 2d&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;View how computers approximate analog waves as a digital signal&lt;/li&gt;
  &lt;li&gt;Provides an intuition for connecting math, visual representations, and auditory cues to convey the underlying principles.&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Mon, 01 Feb 2016 00:00:00 +0000</pubDate>
        <link>http://bgrawi.com/project/fourier</link>
        <guid isPermaLink="true">http://bgrawi.com/project/fourier</guid>
        
        
        <category>project</category>
        
      </item>
    
      <item>
        <title>Project: JSFlap</title>
        <description>&lt;h4 id=&quot;about&quot;&gt;About&lt;/h4&gt;
&lt;p&gt;Easily create and simulate finite state and Turing machines in a browser-based re-implementation of JFLAP, the Java Formal Languages and Automata Package. JFLAP is an incredibly important tool used in teaching the foundations of Computer Science Theory and is used in college classes around the world, however it was created before advances in modern user experience and application deliver were around. JSFLAP changes this by improving many of the poor user experiences, like requiring 5-6 clicks and menus to create a node and edge tool, I simplified this to a single click and drag gesture which is much more intuitive. By re-creating the basic flows, this is able to help teach students more quickly how the fundamentals of CS Theory work. Finite Automata and Turing Machines are the basis of language processing, computing, and higher-level concepts like Regular Expressions are all more easily expressed in JSFLAP.&lt;/p&gt;

&lt;h4 id=&quot;technologies&quot;&gt;Technologies&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;Typescript&lt;/li&gt;
  &lt;li&gt;HTML/CSS&lt;/li&gt;
  &lt;li&gt;AngularJS&lt;/li&gt;
  &lt;li&gt;Foundation UI library&lt;/li&gt;
  &lt;li&gt;D3.js&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;Easy-to-use UX, just click and drag to make new nodes and edges&lt;/li&gt;
  &lt;li&gt;Keyboard shortcuts, snapping, multiple tools&lt;/li&gt;
  &lt;li&gt;Instant updates to test strings to test the graph&lt;/li&gt;
  &lt;li&gt;Export to PNG, file, and LaTeX.&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Sun, 14 Dec 2014 00:00:00 +0000</pubDate>
        <link>http://bgrawi.com/project/jsflap</link>
        <guid isPermaLink="true">http://bgrawi.com/project/jsflap</guid>
        
        
        <category>project</category>
        
      </item>
    
      <item>
        <title>Project: Bryx 911</title>
        <description>&lt;h4 id=&quot;about&quot;&gt;About&lt;/h4&gt;
&lt;p&gt;I created the front end website for the Bryx 911 suite of apps. I wrote a Google Maps data visualizer, user management system, and live-updating alert feed for first responders and dispatchers so that they can view and respond to 911 alerts as they happen.&lt;/p&gt;

&lt;h4 id=&quot;technologies&quot;&gt;Technologies&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;HTML/CSS/JS&lt;/li&gt;
  &lt;li&gt;AngularJS&lt;/li&gt;
  &lt;li&gt;Google Maps API&lt;/li&gt;
  &lt;li&gt;Bootstrap&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;Google Maps data visualization&lt;/li&gt;
  &lt;li&gt;User Management&lt;/li&gt;
  &lt;li&gt;Real-time alerts shown on a map&lt;/li&gt;
  &lt;li&gt;Beautiful marketing/landing page&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Mon, 01 Sep 2014 00:00:00 +0000</pubDate>
        <link>http://bgrawi.com/project/bryx911</link>
        <guid isPermaLink="true">http://bgrawi.com/project/bryx911</guid>
        
        
        <category>project</category>
        
      </item>
    
      <item>
        <title>Project: Commit Guru</title>
        <description>&lt;p&gt;I created my first site with a node.js backend framework called sails.js and a frontend in Angular.js&lt;/p&gt;
&lt;h4 id=&quot;about&quot;&gt;About&lt;/h4&gt;
&lt;p&gt;I worked with RIT (now Concordia) professor Emad Shihab along with Christoffer Rosen, a 5th-year student at the time, to create a commit analyzing service designed to find patterns of bug-introducing commits in repositories and then make predictions for new commits.&lt;/p&gt;

&lt;p&gt;The frontend is my favorite AngularJS/Bootstrap stack, but the backend is actually a NodeJS server running Sails.js, which is an awesome framework I came across and fell in love with.&lt;/p&gt;

&lt;p&gt;We also have a python daemon running, which I started work on, but Christoffer really brought it to fruition. It’s purpose was to do the actual ingestion and statistical analysis of the repositories with R.&lt;/p&gt;

&lt;h4 id=&quot;technologies&quot;&gt;Technologies&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;HTML/CSS/JS&lt;/li&gt;
  &lt;li&gt;AngularJS&lt;/li&gt;
  &lt;li&gt;Bootstrap&lt;/li&gt;
  &lt;li&gt;Sails.js on NodeJS&lt;/li&gt;
  &lt;li&gt;Python&lt;/li&gt;
  &lt;li&gt;PostgreSQL&lt;/li&gt;
  &lt;li&gt;R&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;####Features&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Account creation and tracking&lt;/li&gt;
  &lt;li&gt;Feedback on commit ranking&lt;/li&gt;
  &lt;li&gt;Analysis of various commit metrics and suggestions of bug-inducing commits&lt;/li&gt;
  &lt;li&gt;Historical commit search and repository overview&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Fri, 16 May 2014 00:00:00 +0000</pubDate>
        <link>http://bgrawi.com/project/commitguru</link>
        <guid isPermaLink="true">http://bgrawi.com/project/commitguru</guid>
        
        
        <category>project</category>
        
      </item>
    
      <item>
        <title>Blog: New Site!</title>
        <description>&lt;p&gt;Hello everyone! I have finally redesigned my website and updated it with all my latest projects. I have switched off of
the Ghost blogging platform and have moved to Jekyll and Github Pages. I look forward to making more blog posts in the 
future.&lt;/p&gt;
</description>
        <pubDate>Fri, 25 Apr 2014 16:54:46 +0000</pubDate>
        <link>http://bgrawi.com/blog/general/new-site</link>
        <guid isPermaLink="true">http://bgrawi.com/blog/general/new-site</guid>
        
        
        <category>blog</category>
        
        <category>General</category>
        
      </item>
    
      <item>
        <title>Project: CSH ScheduleMaker</title>
        <description>&lt;h4 id=&quot;about&quot;&gt;About&lt;/h4&gt;
&lt;p&gt;CSH ScheduleMaker has had a long history. The project was initially created by jQuery founder John Resig, and then updated in 2011 by Benjamin Russell. I decided that it’s style was in need of an update along with the need to work on mobile phones. I choose to first give it a fresh coat of paint with a heavily-modified version of Bootstrap, which soon evolved into a complete front-end rewrite of all of the logic into AngularJS. This tool is now used by thousands of RIT students and it help makes their lives easier&lt;/p&gt;

&lt;h4 id=&quot;technologies&quot;&gt;Technologies:&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;HTML/CSS/JS&lt;/li&gt;
  &lt;li&gt;AngularJS&lt;/li&gt;
  &lt;li&gt;Bootstrap&lt;/li&gt;
  &lt;li&gt;PHP&lt;/li&gt;
  &lt;li&gt;MySQL&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;####Features:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Completely new and fresh redesign&lt;/li&gt;
  &lt;li&gt;Generate the most optimal schedules for RIT classes&lt;/li&gt;
  &lt;li&gt;Schedules render as SVGs or images, both of which can be printed and customized&lt;/li&gt;
  &lt;li&gt;Better sharing tools and image previewing on Facebook&lt;/li&gt;
  &lt;li&gt;Full mobile support&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Sat, 19 Apr 2014 00:00:00 +0000</pubDate>
        <link>http://bgrawi.com/project/schedulemaker</link>
        <guid isPermaLink="true">http://bgrawi.com/project/schedulemaker</guid>
        
        
        <category>project</category>
        
      </item>
    
      <item>
        <title>Project: Reddit Notifier</title>
        <description>&lt;h4 id=&quot;about&quot;&gt;About&lt;/h4&gt;
&lt;p&gt;Kaycee Pozniakas and I built “Reddit Notifier” in 24hrs at the RocHacks 24 hour hackathon at the University of Rochester. It is a Google Chrome webstore app which has since amassed a large following.&lt;/p&gt;

&lt;h4 id=&quot;technologies&quot;&gt;Technologies&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;HTML/CSS/JS&lt;/li&gt;
  &lt;li&gt;jQuery&lt;/li&gt;
  &lt;li&gt;Chrome APIs&lt;/li&gt;
  &lt;li&gt;Reddit APIs&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;Reddit notification count and dropdown in chrome’s toolbar&lt;/li&gt;
  &lt;li&gt;Adjust the refresh rate of the notifications&lt;/li&gt;
  &lt;li&gt;Jump directly to the conversation when you click on the notification&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Sun, 13 Apr 2014 00:00:00 +0000</pubDate>
        <link>http://bgrawi.com/project/redditnotifier</link>
        <guid isPermaLink="true">http://bgrawi.com/project/redditnotifier</guid>
        
        
        <category>project</category>
        
      </item>
    
      <item>
        <title>Project: Green Team HV</title>
        <description>&lt;h4 id=&quot;about&quot;&gt;About&lt;/h4&gt;

&lt;p&gt;GreenTeamHV.com is the result of multiple hundreds of hours and many iterations of The Green Team’s site. What started out as a small Wordpress site evolved into a massive single-page app that I wrote from the ground up.&lt;/p&gt;

&lt;p&gt;I designed the user interface and entire backend by myself, through which, I learned a ton about programming through. I wrote my own MVC framework for php (something I would not do again, but was a great learning process!) complete with my own frontend JS routing library that utilized HTML5’s pushState.&lt;/p&gt;

&lt;h4 id=&quot;technologies&quot;&gt;Technologies:&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;HTML/CSS/JS&lt;/li&gt;
  &lt;li&gt;Custom Frontend JS library&lt;/li&gt;
  &lt;li&gt;jQuery (with various plugins)&lt;/li&gt;
  &lt;li&gt;Custom PHP MVC Framework&lt;/li&gt;
  &lt;li&gt;MySQL&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;features&quot;&gt;Features:&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;Natural language searching&lt;/li&gt;
  &lt;li&gt;RETS Data Feed syncing (listing data)&lt;/li&gt;
  &lt;li&gt;Google Calendar/Contacts sync&lt;/li&gt;
  &lt;li&gt;Full user management between other services&lt;/li&gt;
  &lt;li&gt;Lead capturing and management&lt;/li&gt;
  &lt;li&gt;Responsive Design&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Sat, 23 Feb 2013 00:00:00 +0000</pubDate>
        <link>http://bgrawi.com/project/greenteamhv</link>
        <guid isPermaLink="true">http://bgrawi.com/project/greenteamhv</guid>
        
        
        <category>project</category>
        
      </item>
    
  </channel>
</rss>
