Suhail Ghafoor

Manager Information Technology at Arizona State University,
Consultant at Pathfinder Center, Biodesign institute.
I know how to use a paper shredder.

Projects

Complete products that fulfill the purpose they were made for. Their robustness is a different question.

November, 2019
python InDesign javascript

Simple bingo website that lets you host your very own bingo party with a computer.

April, 2019
UX/UI html css javascript

An example of how basic design principles can make massive improvement in UX of a website.

October, 2018
javascript html

A simple browser based javascript subtitles converter from SBV to SRT.

July, 2018
golang hugo

The website you are looking at this moment. Generated using hugo to function without any server side code. Written in golang.

June, 2018
php wordpress pdf

ASU branded website for a lab with custom built ordering forms, pdf invoice generator with MEAC letterhead and ASU branded transactional emails.

April, 2018
c++ html javascript

A model verifier for finite automata written in C++. The goal of this program is to check whether a system meets given specifications.

November, 2017
Swift iOS

Simple app written in Swift that makes asynchronous requests to USGS API and downloads data of recent earthquakes and displays them on a map.

July, 2017
wordpress ssl

Revamp of a lab website while also updating the backend and removing outdated code.

June, 2017
nodejs javascript

Simple web remote for GPMDP written in nodejs utilizing websockets.

June, 2017
php drupal javascript

Website for research center at ASU. Rebuilt from scratch using drupal and ASU brand guidelines with a custom built RSVP system.

May, 2017
prolog html

A seating chart generator for classrooms for exams with random seats assigned to random students and custom gap between them.

February, 2017
wordpress

Revamp of a scientific articles review blog, bringing it up to modern standards.


Reference code snippets

Code that I wrote to accomplish very specific tasks that I find very useful for reference.

Name Tech Description
Exam matcher Python Parses an exam using regex and separates detects questions and their answers. Can match the orders of questions in multiple versions of the same exam.
Url to thumbnail PHP Given a url of a video hosted on ted, youtube or vimeo, finds where the video is hosted and outputs the thumbnail for that video.
Questions Reader Java, JSON Example of how you can read and parse JSON file in Java. Requires JSON library.
Salesforce/Airtable subscription form. PHP, Javascript Example of salesforce newsletter subscription form. Also shows how a single form can be submitted to multiple destinations.
StayinAlive NodeJS, Firebase Ping a computer and upload the response (up or down) to firebase. Also send an email if the computer is down.
StayinAliveClient NodeJS, Firebase, Websocket Downloads computer status from firebase and displays them on a local website while constantly updating status using websockets
Google Analytics to CSV Java, CSV Pulls information from google analytics and exports it CSV. Good for exporting a huge amount of data at once.
Frequency in array Java Count frequency of a string in a given array without using any functions or classes in Java.
Youtube to airtable Python Scrape videos data like duration, thumbnail, closed captions, views and description etc from youtube and pushes to airtable.
BAM index checker bash Given a folder, checks if the bam index files in a directory are newer than their corresponding bam files.
Get book metadata Python Get ISBN numbers from an airtable sheet, query google books for book information like cover, title, description and add them back to airtable.
Get articles metadata Python Get DOI numbers from airtable, query crossref for article metadata and APA reference and fill back airtable fields.
Random number generator bash Simple random number generator for bash.