Pavithran Pathmarajah

Weather Station Analyzer

Language: HTML; CSS; Javascript; Ruby;

Api: D3; Sinatra;

Created: 02/22/16

Time Span: 2 Months

Team Size: 4

Reason: School - Data Analysis Project

This application's intended purpose is to identify weather stations which are not required and may be relocated. The application does this by first placing all stations in a un-directed edge weighted graph, After this the graph is converted into a minimum spanning tree while only keeping edges between stations whom's weather data is accurate to one another's within the user's specified tolerances. At this point the nodes with the greatest number of edges is removed, which leaves one of three node types. The first are stations which cannot be used to predict other stations, the seconds stations used to predict stations, and the third stations predicted. At this point the program then checks if the new layout is still accurate within user tolerances and to do this the program checks the layout over two additional years. At this point all data processing has been completed where it is put into a Json file and is displayed for the user. 

On the technical side, the program uses a Model View Controller design. The Model being the backend which is built in ruby and harnesses an SQLite3 database for the data storage and manipulation. The Controller is the server which uses the Sinatra API to effectively connect the Front-end to the Back-end. The View is written in HTML/CSS/Java-Script, and uses an electron wrapper to allow it to act as a standalone application. 

Working out a few final bugs, GitHub will be available soon

Available via Google Drive

Personal WebSite

Language: HTML5; CSS; Javascript

Created: 01/10/16

Time Span: OnGoing

Team Size: 1

Reason: Display CV

This is my personal website. Hosted via GitHub and with a domain name provided by name cheap. I created this website because I wanted a way to showcase my CV easily for everyone to see, and so I can keep track of what I've done. I dabbled with WordPress, which boasts an intuitive interface, but I found it cumbersome and was unable to find the layout that I desired. At this point I decided since I knew enough about HTML and CSS, from when I played with it in high school, I would construct my own site from scratch. I took out my pencil and paper drew out a design, chose a colour palette, and got to work.

Currently working on new website with updated colour scheme and Responsive Design

Available on GitHub | Sources

Welcome To Canada

Language: Java (Android)

Created: 27/11/15

Time Span: 34.5 Hours

Team Size: 4

Hackathon: HackWestern 2

Location: Western University

This application was made for android by Mike Hong, Jack Li, Matthew Ngai and myself. This application is targeted to those who are new to the country and do not know much about the culture and customs and is designed to make the transition to Canadian life simpler.
Some key features the application offers include:
  • Push Notification for national Holidays
  • Translations of Commonly used English words into 9 different Languages
  • Currency Exchange Rates

Available on GitHub | Mike Hong | Jack Li | Matthew Ngai

Block Evader

Language: Java (Android)

Created: 19/03/14

Time Span: 3 days

Team Size: 1

Reason: Recieved First Android Phone

This was truly my first android app, I worked on intensively for a few days and then quit on android (until a Hackathon in 2015). I made this application because I wanted a game that was simple and fun to play while waiting at the bus stop. The game is straight forward all you must do is dodge the falling blocks. The game itself is very inefficient but the idea was simple enough, on first load it would create the images based on the phone’s resolution and size, then the gameplay would be randomly spaced and placed falling blocks.
The game had features that I believe more applications should have:
  • Personalized: The app allowed users to select there preferred colour scheme
  • Input: The user could select to use touch input or the phones gyroscope
NOTE: This application was made on a Motorola RAZR (not the v3), and is quite buggy on other phones

Apk Available on Dropbox


Language: Java

Created: 01/03/14

Time Span: 3 Months

Team Size: 4

Reason: Class Project

Location: Newmarket High School

This was the first large program that I worked on in a team. Working along side Stephen Webb, Shirley Xiao and Christopher Wilson. Over 3 months we made a custom rendition of the classic game Tetris. We designed and implemented a 3D-Render engine from scratch and implemented our rendition on the classic game Tetris.
The features that set this game apart from the rest were:
  • New Blocks: 1x1, 2x1, 3x1, miniature L, Bomb (Blew up blocks)
  • Screen Rotation: Rotating the game and phsycis 90, 180 and 270 degrees randomly
  • Custom Game Mode: You can include or exclude any features
  • A variety of 3D-Depths

Available on GitHub | Shirley Xiao


Language: Turing

Created: 2010

Time Span: 75 minutes

Team Size: 1

Reason: Was just introduced to programming and was playing around

Location: Newmarket High School

This was the first program that I made with graphics. In high school I was not able to appreciate the text based programs we worked on because it seemed too simple. During class I would typically finish my work early and use the reference guide to find new things. I taught myself arrays, graphics, and loops. Than made this snake game to show my work, this very high level language is what made me finally decide to become a Software Engineer.

Available on GitHub