Home

Portfolio

Resume

Support Bot

Motivation

Being an engineering student is hard, especially as a first year student, doubly so during the pandemic. I wanted to change that. As the co-creator of the Western Engineering Discord, I wanted to create a discord bot to help answer common questions and help students navigate the constantly changing schedule.

The Process

The Tech Stack

  • Python was used to take advantage of libraries like pandas for easy data management
  • The Google Docs API was used in order to use google sheets as a data base (more on this later)
  • The Discord Apps API sending messages to the server and recieving commands

Design Philosophy

Sending automated messages to send on given commands was the simplist part of this project so I won't go into depth there. Since the main task of the bot was to send an automated weekly schedule, I needed a simple an easy way to pull from some kind of data base. There are many ways to do this however the problem is many of them would require either a technically adept person to manage or a custom interface which I didn't have the time to make. The compromise I landed on was to use google sheets. This way I could easily share the document with colaborator who wanted to volunteer to help maintain the schedule.

Interface

Lessons Learned

  • Usabilty is more important than technical robustness - it doesn't matter how amazing of a database you have if no one can use it.
  • When starting a new project, make the tech stack as simple as possible - it can be tempting to try to use a million libraries and frameworks, but the focus should be minimum functionality before exploring more complex implementations.