Tariq Ali is an aspiring web developer dedicated to producing interesting applications and websites for businesses. Before entering into web development, Tariq served as a journalist, real estate agent, and college instructor. He has a special talent in writing and researching effectively. You can email him at tra38@nau.edu.

Tariq Ali's resume is here.

Microsoft Contract (2017)

  • Worked on an internal .NET application to automate the interview scheduling process at a department. The application uses C#, jQuery, and Microsoft SQL.
  • Participated in a project to identify critical issues within an application. Wrote C# and C++ code to instrument telemetry, and used internal tools to generate e-mail alerts based on that telemetry.

Ramal Tech Consulting (2017 to present) - I worked with several companies to help build and maintain their web applications.

  • Contributing to Gitcoin.co, a freelancing web application focused on open-source projects. The project uses Python, Django, jQuery, Docker, and the Ethereum blockchain.
  • Built an admin dashboard for an organic milk delivery business, using Ruby on Rails and RailsAdmin. Also helped them maintain their Wordpress website as well.
  • Maintained an educational web app for Kaplan that teaches data science concepts, using Ruby on Rails and Angular 1.X.
  • Built a report generator for athletes using Calyx (a Ruby gem), and a Ruby on Rails webapp for gathering reviews about athletic programs using jQuery and RailsAdmin.

Technological Spikes (2016) - While working at Firespring, I wrote minor applications to determine the feasibility of new projects for the company.

  • Setting up an insurance rate calculator, using NodeJS as a reverse-proxy server to allow us to query an external API.
  • Rebuilding an internal website (the "Checkin Board") using the ReactJS framework.
  • Creating an online form, while using RSpec and FactoryGirl to test the functionality of this form.

Remote Consultancy Projects (2015)

  • UTradeBook - As part of my work at Serene Technologies, I wrote a basic website to allow college students in Canada to buy and sell books online. This web app is built using Ruby on Rails, and uses Ruby, Bootstrap, and JQuery.
  • Content Management System - Digital Fractal Technologies commissioned me to build an internal web application that will allow them to update the content on their 'tour guide' mobile applications. The web app is built using the Sinatra framework, and uses Ruby, Bootstrap, JQuery, and JCrop.

Wordpress Websites (2014)

  • Dr. Syed Azeemuddin commissioned me to build and maintain several Wordpress websites, including one for a 501(c) non-profit organization. I also was in charge of checking and responding to other people's emails as well as sending out regular newsletters.

"Teaching Computers How To Write", a lighting talk presentation delivered at the Janurary 2016 meeting of the Houston Data Visualization Meetup group. Gives a high-level overview of text generation.

"Meet Your Audience", a full-length presentation delivered at the June 2016 meeting of the Ruby and Open Source Meetup in Lincoln, Nebraska. Discusses 'bot traffic' (the 48.5% of all online traffic), the different types of bots, and what steps can be taken to block bots.

"Open Source Contributions - A Story About Calyx", a lighting talk delivered at the August 2016 meeting of the Ruby and Open Source Meetup in Lincoln, Nebraska. Explains my experiences in contributing to Calyx, a Ruby gem that focuses on text generation.

Essential Copying and Pasting From Stack Overflow: Stack Overflow is an essential tool for the modern programmer. Learn how to utilize the latest in "crowd sourcing" technologies to help meet management deadlines. (Inspired by a parody O'Reilly cover posted by @ThePracticalDev. Written in a deadpan manner.)

An Introductory Guide to Computer-Generated Works: A compilation of blog posts about Natural Language Generation, posted previously on dev.to.

Pro Tips For Ethereum Wallet Management: A book designed to help users of the Ethereum blockchain understand how to protect their funds from being lost or stolen. Nick Dodson wrote the book, while I and Sunny Aggarwal served as editors.

Contributions To Other Projects:

  • Howdoi - A command-line tool written in Python, designed to search Stack Overflow using the terminal. I added URLs to search results and did a minor bug fix to display the proper URLs.
  • Classifier-Reborn: A Ruby Gem to enable users to use machine learning algorithms (Bayesian and "Latent Semantic Indexer") to classify data. I provided a small bug fix that resolved two outstanding issues.
  • Calyx: A Ruby Gem that makes it easy to do text generation. I serve as a contributor to the Gem, implementing the feature of loading JSON and YAML files and debugging an existing feature that allows the gem to accept and handle raw data.

Individual Work:

  • Zombie Writer: Ruby gem that generates short news articles based on rearranging the order of user-provided paragraphs. Provides proper citation (in the form of a hyperlink) to the original sources of these paragraphs. Users can specify whether they want to use "machine learning" (Latent Semantic Analysis and K-Means Clustering) or "randomization" when generating news articles. Available on Rubygems.org
  • Tra38-Calyx: Fork of "Calyx". Ruby Gem that makes it easy to do text generation. The gem can accept and handle raw data, making it very useful for robojournalism. The gem is available on Rubygems.org and can be installed by typing gem install tra38-calyx. This gem is no longer being maintained, as the features in this gem has since been implemented in the main Calyx gem.
  • Prolefeed: A Ruby gem that generates stories by randomizing the order of user-written paragraphs. The end result is surprisingly readable. Available on Rubygems.org.
  • Skynet - A command-line program written in Ruby, designed to generate fictional stories based on a user template. The gem is not available on Rubygems.org and can only be downloaded from GitHub.




  • The Track Method - Arranges paragraphs using a specific structure (the "Track Method") inspired by the Story Compiler approach invented by Chris Pressey. The resulting novella is 13,606 words. However, since the corpus was old-fashioned, the generated text also seems old-fashioned as well.


  • The Atheists Who Believe In God - Uses a dataset (a Pew survey) to generate short stories about a specific demographic...self-described atheists who claim to believe in God or a universial spirit
  • Cyberpunk Corporation Generator - Uses a templated approach to generating short "histories" about futuristic corporations.
  • (NaNoGenMo: Dada 2.0) 2.0 - Randomly arranges the paragraphs of a preexisting news article, thereby "creating" a new article. Major inspiration for the "Prolefeed" Ruby gem.

PARANOIA Super Mission Generator: A Ruby program designed to generate missions for the PARANOIA tabletop roleplaying game. Uses Calyx, Progressbar, and Redcarpet, script hosted on repl.it. Source Code and Documentation

Single-Page Blog (with Noscript Fallback): An experiment to generate a functioning single-page application that still works when the user disables JavaScript. Uses jQuery, dataTables.js, Jekyll's Liquid templates, and a "pure CSS" modal box. The content from this blog is the same content as the default blog. Source Code

COCOMO Application Composition: A webapp intended to help programmers estimate how long a coding project will take, by using COCOMO II's "Application Composition" model. Uses jQuery, Bootstrap, and calculate.jquery. Source Code

StackAI: An aggregator of 'artificial intelligence' questions from six StackExchange websites - built using Ruby on Rails and Bootstrap. Built before AI StackExchange entered public beta. The aggregator was hosted on Heroku, but was not maintained following the establishment of "AI StackExchange" and eventually fell into disuse, with the aggregator itself eventually failing. The link provided is a link to an Internet Archive version of the website, but some of the internal links do not work directly (you will need to copy the internal link and paste them into Internt Archive).</strong>Source Code</strong>

Architect: A small Ruby script that can generate stories based on a noun prompt, as an entry into the DigiLit competition being held at Dartmouth College's Neukom Institute for Computational Science. You can read a postmorterm of this program here.

Hashography: Hashography is a group project made during Dev Bootcamp. It visualizes how users are tweeting about certain words in real time, around the world. Written entirely in Javascript, it utilizes the Twitter and Google Maps API, Node.js, and Socket.io. Website was originally hosted on Heroku, before being moved to repl.it.Source Code

Friend Computer: A program that is able to write blog posts by using Twitter and AlchemyAPI.Source Code

Zybourne Clock Redux: A "time modification" game, where users are able to change the history of a steampunk planet by adding and deleting events. The game uses JavaScript, JQuery and MaterializeCSS, with Ruby on Rails used as a scaffolding system.Source Code

Tic Tac Toe Challenge (source code at link): A program that allows you to play Tic-Tac-Toe in the command line. Created as part of a coding challenge for 8th Light. Coded entirely in Ruby.

Science-Fiction Calendar (source code at link): A project that will determine information about a planet's own calendar system, based on astronomical data.

Click here for all open-source projects