ⓘ Due to COVID-19, CANOSP will operate virtually for the Winter 2021 semester, including an online Code Sprint.
Code Sprint - Winter 2021

Code Sprint - Winter 2021

This semester, we have 4 exciting projects:



AdoptOpenJDK Quality Assurance (AdoptOpenJDK)

AdoptOpenJDK is a community-driven, open-source project dedicated to building, testing and distributing high-quality, fully-testing OpenJDK binaries to the Java community. AdoptOpenJDK Quality Assurance (AQA) is an ever-evolving program to “make quality certain to happen”. We create tools and innovate in the area of software verification, bringing research and prototypes to production grade solutions as part of our mission to provide high-quality OpenJDK binaries.

Participating Students

  • Deric Cheung (University of Alberta)
  • Napat Karnsakultorn (University of British Columbia)
  • Xichen Pan (University of Alberta)
  • Yanan Wang (McGill University)
  • Yanshan Wan (University of Alberta)

Project Mentors

  • Shelley Lambert
  • Lan Xia
  • Sophia Guo

Code Sprint Presentation



Language Server for Eclipse Jakarta EE (IBM)

Develop a language server and the associated Eclipse client for the set of open cloud-native Java APIs in Eclipse Jakarta EE to boost developer productivity. Eclipse Jakarta EE is an open source community-driven collaboration on defining and innovating on the next generation of cloud-native Java APIs.

The Language Server Protocol (LSP) enables language-specific assistance for IDEs and editors such as validations, auto-complete etc to be built in a common reusable way.

This project looks to develop a common Language Server using the Language Server Protocol for Jakarta EE APIs and the associated client for the Eclipse IDE.

Participating Students

  • Hani Damlaj (McGill University)
  • Jianing Xu (McGill University)
  • Leslie Dawson (McGill University)
  • Matthew Shocrylas (University of Alberta)
  • Salih Bera Sogut (McGill University)

Project Mentors

  • Yee-Kang (YK) Chang
  • Kevin Sutter
  • Ryan Zegray
  • Kathryn Kodama
  • Eric Lau

Code Sprint Presentation



Predictive Text Studio (Predictive Text Studio)

A simple web-based interface for creating dictionaries to provide predictive text and autocorrect facilities on smartphones for less-resourced languages. Its intended users are language activists that may have a spreadsheet of words in their language, but want to have predictive text on their smartphone keyboard. The functionality exists today, but is relegated to a Windows desktop app. This process should be as straightforward as possible. The core technologies are TypeScript and the web platform (e.g., LocalStorage, WebWorkers, IndexedDB). A web framework (if any) has not yet been decided. The data does need to be private (no sharing on a server), so any sensitive data is not transmitted on the network.

Participating Students

  • Alice Kim (University of British Columbia)
  • Christian Lo (University of Alberta)
  • Zachary Probst (McGill University)

Project Mentors

  • Eddie Antonio Santos

Code Sprint Presentation



Review Board (Beanbag)

Review Board is a powerful web-based code review tool that helps developers do peer review as they write code. Code review is a standard industry practice used to find bugs, improve quality, and mentor junior engineers.

Review Board is used by thousands of software companies including Yelp, LinkedIn, and VMware, as well as many open-source projects like Apache.

Students working on Review Board will have the opportunity to learn about back-end web development using Python and Django, as well as front-end development using HTML, CSS, Javascript, jQuery, and Backbone.js. Source control is managed via Git on GitHub. All patches are reviewed using Review Board, and students will be participating in the code review process.

Participating Students

  • Anahita Mohapatra (McGill University)
  • Clarissa Audrey (University of British Columbia)
  • Matthew De Rose (University of British Columbia)
  • Michael Liu (University of British Columbia)
  • Qianxi Leon Li (University of Alberta)
  • Ryan Kang (University of Alberta)
  • Seth Karstad (University of Alberta)

Project Mentors

  • Mike Conley
  • David Trowbridge
  • Christian Hammond

Code Sprint Presentation




Participating Project Organizations

AdoptOpenJDK Eclipse Foundation    IBM   

Mozilla    Review Board


Participating Educational Institutions

University of Alberta    University of British Columbia McGill University