Coding Open Source with Students from Across Canada


This past weekend I participated in the kickoff sprint for a truly remarkable program: The “Undergraduate Capstone Open Source Projects”, or UCOSP. It’s a program offered by Canadian universities, where students contribute to open source projects for course credit. This term there are more than 50 students involved from 19 universities. Six of them – students from UBC, Laurentian, Ottawa, and Waterloo – will be working with me on BlackBerry® Open Source projects, such as bbUI.js and our community BlackBerry® WebWorks™ extensions.

Despite being new to mobile, open source, and BlackBerry development, most students dove right in and were able to contribute right away. Here’s what Andy Wu had to say about the weekend:

“I had a wonderful time at the UCOSP sprint over the weekend. Walking in with no previous open source development experience, I had no idea what to expect. Our mentor, Tim Windsor was very nice and helpful; he helped us getting started with minimum down time. He showed us the basics of BlackBerry development, including application signing, packaging and deployment to the test device. My first assigned task was creating a BlackBerry 10 native extension that exposes the LED API to JavaScript. The BlackBerry 10 NDK was super easy to pickup with the sample codes provided. I was able to get the extension working with a test application by the end of the weekend. Before the weekend ended, I used the fork and pull request on GitHub for the first time. This is my first step to the open source world.”

Based on skillsets and interest, one half of the group is focused on extensions developed with C++ and JavaScript®, while the other half enhances the bbUI.js project for BlackBerry® 10. Karan Khiani, one of the students working on bbUI.js, said:

“This weekend has been quite breathtaking – coming together with likeminded people to work on the BlackBerry 10 platform has been a really rewarding experience. Tim guided us through the initial process, briefing us on the BB10 platform as well as guiding us in terms of the projects that we would be working on through the semester. We were given plenty of flexibility in picking between native application enhancement (C/C++) or UI enhancements using web technologies like HTML 5 and CSS 3. I decided to go with the web project.

“Upon arriving to Waterloo for the weekend, each of our team members picked a task that they would like to accomplish in the next few days. The task I picked was enhancing the functionality of some of the input controls for the BlackBerry 10 front end. This involved forking the existing repositories, writing the code that would add the functionality, testing the code and making a request to merge it back to the central repository. Luckily for me, I managed to finish all my tasks just in time before I had to leave Waterloo for the weekend.

The most refreshing aspect of my entire development experience was that I was able to set up my development environment in a matter of minutes. I look forward to spending the next few months with the guys at RIM and chipping in as much as I can for the BlackBerry 10 platform.”

As participants in our open source development community, you’ll be able to follow their contributions on our GitHub repositories and start using their updates in your own applications. Go there now to see the first pull requests that they have made. We’ll post other updates from different students in early November and again in December, while I’ll be tweeting updates and anecdotes from my account @timothywindsor with the hashtag #bbucosp. If you would like to join our growing community of open source developers, get in touch with me today!

Join the conversation

Show comments Hide comments
+ -