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

Projects - Winter 2021

Winter 2021 Projects

We have some exciting projects lined up for Winter 2021:


AdoptOpenJDK Quality Assurance

Description

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.

URL

Project Mentors

  • Shelley Lambert
  • Lan Xia
  • Sophia Guo

Affiliated Organization/Company

  • Red Hat
  • IBM
  • Microsoft
  • …and others

Number of Students

  • 2 to 4

Required Skills/Experiences

  • Communication and organization skills

Preferred Skills/Experiences

  • Java, Python, Javascript programming skills, statistical analysis, UX design, data visualization

Language Server for Eclipse Jakarta EE

Description

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.

URL

Project Mentors

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

Affiliated Organization/Company

  • Eclipse Foundation
  • IBM

Number of Students

  • 3 to 6

Required Skills/Experiences

  • Experience with Java development
  • Familiarity and experience with agile software development and typical software development tools.

Preferred Skills/Experiences

  • Experience with cloud-native Java APIs and Eclipse plugin development will be nice to have but not mandatory

Predictive Text Studio

Description

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.

URLs

Project Mentor

  • Eddie Antonio Santos

Affiliated Organization/Company

  • National Research Council
  • SIL International

Number of Students

  • 2 to 4

Required Skills/Experiences

  • Version control with git
  • Basic understanding of HTML/CSS

Preferred Skills/Experiences

  • TypeScript
  • npm
  • Continuous integration/continuous deployment
  • Frontend frameworks such as Svelte, Vue, or React
  • Frontend testing with Cypress
  • Module bundlers such as Webpack, Rollup, or Parcel

Review Board

Description

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.

URL

Project Mentors

  • David Trowbridge
  • Christian Hammond
  • Mike Conley
  • Anselina Chia

Affiliated Organization/Company

  • Beanbag, Inc.

Number of Students

  • 3 to 12

Required Skills/Experiences

  • Students should have some familiarity with Python and JavaScript. It’s not required to be an expert, but it will be very difficult to make significant progress if you have to learn the language in addition to new frameworks and codebases.

Preferred Skills/Experiences

  • Review Board is built using the Django framework on the backend, and jQuery/Backbone/HTML/CSS on the frontend. While Review Board sometimes uses those in advanced and unusual ways, some experience with those will give you a head start.
  • We highly recommend having some familiarity with git.

Participating Project Organizations

Eclipse Adoptium and Eclipse AQAvit Eclipse Foundation    IBM    Review Board



Participating Educational Institutions

University of Alberta    University of British Columbia McGill University