It’s been just over a month since the beginning of the Undergraduate Capstone Open Source Project (UCOSP) project. We’re at the midterm point now, and it’s clear that we’re getting the hang of this whole thing: Github, BlackBerry® WebWorks™, bbUI.js and native extension development. The students have put together three BlackBerry WebWorks extensions for LED, Compass, and Image Thumbnails, with two more in development. We’ve also had a few commits to the bbUI.js project which should be pulled into version 0.9.5.
Let’s see what two of the students have to say about the experience at this point in the project. First is Hidaya Sekkal, a student from the University of Ottawa, who said the following:
“During our code sprint in Kitchener-Waterloo, we were provided with an introduction on how to setup and use our environment (Simulator and Ripple emulator), and received a Dev Alpha device to be used for testing purposes. We also learned how to use the Github and the proper procedure to load and commit bbUI.js applications. An explanation of the different commands used on the Git Shell, the difference between the Next branch and the Master Branch was also provided.
“Our main task was to add features in the BlackBerry 10 open source projects. The task that I was to complete was to add functions to bbUI.js. My first modification was to the Slider control. With the help and support of our mentor, Tim Windsor, I was able to add many useful features (add, remove, disable, enable, hide) to this particular control. The second control that I modified was the Toggle button, which I was able to add similar options to. For my final project I am creating an application to detect BlackBerry devices using the PIN number assigned to each device, and the HTML5 Geolocation API. I was able to finish the first part of my project, the detection of the Geolocation Data. This experience of working on the open source BlackBerry projects was both an honor and a great learning experience for me, which I will apply to my future career endeavors.”
The second student commenting on his experience so far is Arman Fallah from the University of British Columbia, who has an outstanding hint for extension developers:
“It’s been a little more than a month and my UCOSP experience is far from over. Being a part of the BlackBerry GitHub community has shown me how open source communities can bring developers together to solve any problem. I’m currently working on the Unzip/Zip extension for the BlackBerry 10 Native SDK.
My first C/C++ Extension contribution to the Native SDK exposed the compass sensor functionality for BlackBerry 10 compatible devices. This extension allows users to monitor the compass sensor to get real-time leading information–a good candidate for that native-accelerated compass app in the future.
One thing that helped me to accelerate my development process was to add some pre-build and post-build steps for my Eclipse project.
mv compassJnext.so ../../../output/community.compass/device/; cp -r ../../../output/community.compass/* <Path to SDK Directory>/Framework/ext/community.compass/
“Before this addition, I would have to move folders around every time I wanted to package and sign the application. Now, everything would be put in their place and I could open up Ripple, package, sign, and deploy.
“Planning for that final application at the end of the program is coming underway and I hope to deliver something to the app marketplace that will be worth some coin.”
Anyone who’s been a student can appreciate that goal. Ramen noodles lose their appeal for everyone eventually, and let’s not even get started on student loans. For the end of the term, each student is working on their own application which can be either fully open source, or closed source built with open-source components. I’m looking forward to hearing their plans and working with them to bring their applications to the BlackBerry® App World™ storefront.
If you are interested in getting involved in our open source development, check out our site on Github.