Anatomy of a Programming Competition

Introduction

This is a case study of The James Robertson Memorial Programming Competition, which was created to promote the Smalltalk programming language. This is a case study by example, showing what was done and how it was done.

Promotion and Marketing

Advertising the competition at CBC.ca proved ineffective and costly. The click-through rate was infinitestimally small. Otherwise, we relied heavily on YouTube and social media.

YouTube Videos

Several promo videos were created:

using Powtoon
using Animaker
using Animaker

Blogs and Social Media

The main social media sites used included Twitter, Facebook, LinkedIn, Medium, Hacker News, Instagram, and Quora.

Competition Websites

Two websites were created, one for advertising the competition and the other for operating the competition (team registrations and team submissions). The advertising website has been archived. This website was based on WordPress.com. The domain name, jrmpc.ca, was purchased from Google Domains.

The advertising website is also archived live at jrmpc.wordpress.com.

The operational website has also been archived. In the home page, Internet Archive has a problem with the embedded YouTube link, but the unplayable video is the same as the first one shown above in the YouTube Videos section (Mission: Impossible-themed).

The operational website was hosted at OVH (VPS SSD 1 running Ubuntu 16.04 LTS). The web application was written in Pharo in conjunction with the Teapot framework. The domain name, teams.jrmpc.ca, was configured at Google Domains, and the PositiveSSL certificate was purchased from Namecheap.

Contacting Schools

High schools across Canada were contacted by email, as well as snail mail. Attempts to contact various school boards were unproductive.

T-shirts and Swag

Our budget only allowed for T-shirts (from Big Mouth Promotions). Here is the design (for the front of the shirt):

using GIMP and Inkscape
examples from a team

The T-shirts were sent to all the participating teams; they were a big hit with everyone. About 100 shirts were made available for a public giveaway at the awards ceremony at Ryerson.

If budget allows, I think Smalltalk-styled coffee mugs would be a very nice giveaway.

Competition Software

The open source software for the JRMPC Organiser is now available, thanks to the great effort by Ben Coman who developed it.

JRMPC Organiser screenshot

Awards Ceremony

Trophies

The trophies for First, Second, and Third Prizes all came from Innovative Imprints in Pickering, Ontario.

Venue

The awards ceremony was scheduled for Saturday, April 18, 2020 on the campus of Ryerson University. However, due to COVID-19, a virtual ceremony was conducted instead. Here was the result:

Lessons Learned

Since this is the first edition of JRMPC, there were bound to be some teething pains. We learned several important lessons:

  • First, the website should’ve been clearer about team composition, esp. the fact that a team must comprise four students. No exceptions.
  • Second, the website should’ve been bilingual so that Quebec would participate.
  • Third, better instructional materials should’ve been provided to the teams. Our existing tutorials and such were found wanting. Some teams complained that Pharo was too difficult to learn.
  • Fourth, the competition software should’ve been fully prepared, tested and debugged by the start of competition. During the course of the competition, bugs were found and the competition maps revealed weaknesses.
  • Fifth, a larger team of volunteers should’ve been assembled. This competition entailed a great deal more work than I imagined.
  • Sixth, we were fortunate that we only had 30 registered teams. In hindsight, we weren’t really set up to handle more. In order to scale the competition properly, we’d need more money, more volunteers, and we’d need to limit the competition to 100 registered teams. Also, only the first 30 teams would receive T-shirts.

Despite it all, we are pleased at the outcome.

Conclusion

The competition was a smashing success. Thirty teams registered from across Canada. Videos were created for each of the five rounds. I’ll just show the first and last of them here to avoid repetitiveness:

Hopefully, the information here can help you with your own programming competition.

Published by smalltalkrenaissance

A non-profit advocacy organization whose mission is to promote and popularize Smalltalk.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create your website at WordPress.com
Get started
%d bloggers like this: