June 24, 2015 - Sanjeev BA and Guy Martin
Open Source + Academia: The Stanford CS210 Story
The archer learns when he forgets all about the rules of the way of the bow and goes on to act entirely on instinct. In order, though, to be able to forget the rules, it is necessary to respect them and to know them.
— Paul O. Coelho – The Way of the Bow
This quote aptly applies to students making the transition from academia to the corporate world, as they get ready to apply their skills and knowledge to meet the ever-changing demands of businesses. The Linux Foundation has observed that these businesses are increasingly depending on open source. The academic community contributes a lot in terms of code, documentation, and research to open source projects and helps bring forward core innovations for mainstream adoption.
In recent years, encouraging students to contribute to open source projects has increasingly been adopted as one of the best ways to prepare them for their careers ahead. It also doesn’t hurt that some central tenants of open source (question everything, try things, and fail fast) fit nicely with what good students already do.
Our team has been actively engaging the student community over the past few years through key academic partnerships and mentoring initiatives. Our most recent iteration of these initiatives is a collaborative effort with Stanford University, through the “CS210: Project-Based Computer Science Innovation & Development” program.
This is a student-driven initiative, following an agile development philosophy, that emphasizes advancing their ideas through an aggressive design-development-release cycle. The program runs for two academic quarters (16 weeks) and takes students through project definition, prototyping, and working with users to help refine their deliverables. It also allows the students to work directly with industry partners in bringing these projects to life.
Our team at Samsung provided resources in the form of mentoring and business strategy (Guy Martin), as well as technical expertise (Sanjeev BA).
Setting The Context
Each industry partner comes up with a theme and provides hardware to support projects in this theme. Our team chose “The Wearable Coach” to take advantage of the new Samsung Gear S wearable device which is powered by the Tizen open source platform. The Gear S has a wealth of embedded sensors to track arm/wrist motion & action. Our hope was for the students to develop a service using these sensors to evaluate the user’s technique and suggest performance improvements in specific sports domains. We weren’t trying to replace human coaches, but were trying to provide athletes with data they could use with their coaches to find areas they needed to work on.
As expected, the students from Stanford came up with numerous innovative ideas after multiple brainstorming sessions. Two teams were formed, and two ideas were chosen based on discussions with Guy Martin: SyncRow and Curve.
SyncRow by ‘Team AthletIQ’
SyncRow by Team AthletIQ is coaching software that provides data insights for competitive rowing teams by using wearable technology. SyncRow collects geographical, physiological and motion data which helps teams and coaches train more effectively. Utilizing the Samsung Gear S smartwatch as a sensor platform and collecting data from its sensors to track arm/wrist motion, SyncRow correlates the movements of different rowers in the team. It measures the synchronization and the performance of the rowing team as well as individual rowers. The collected data allows coaches to see which rowers are coming in too late or too early in the rowing stroke and also helps individual rowers track changes in their performance over time. There are existing solutions out there that do this, but, they are expensive, require extensive installation of hardware on the oars, and are limited in features. SyncRow provides a comprehensive feature set with an intuitive interface and significant cost benefits compared to these existing systems.
Curve by ‘Team WatchIt’
Curve by Team WatchIt is a wearable application utilizing the Samsung Gear S, Thalmic Labs Myo, and a Samsung Galaxy S phone to help users improve their golf swing. The Myo device tracks a person’s swing arc, so it can be displayed to the user. The Curve application on the Gear S also tracks certain swing metrics in combination with the Myo, so that users can learn how to improve their unique swing. After the user has taken and categorized a certain number of good and bad swings, the application will suggest how to alter their approach to best match their optimal swing. By relaying information from a Myo device to the Gear S, users can get more accurate suggestions about how to improve their swing. The app also has features like swing rating and history, and all of this is presented elegantly on the wrist, just in time for the next swing. The application also features a server which can process this data in a Cloud-based backend to provide detailed insights based on all of the user’s swings to view after a game or practice session.
Snapshots From the Apps
Tizen provides a rich, web-based programming model based on standard APIs like W3C and Khronos. In addition, it also provides a device-native API to access specific device capabilities. The Tizen SDK provides the complete development environment for using these APIs to build, debug, package and publish applications for devices like the Gear S.
It is used by professional application developers for building commercial grade Tizen applications around the world. Using their Gear S developer devices and the SDK, the student teams were able to test core functions and quickly iterate on their application’s designs in an agile fashion.
The students also had the opportunity to travel to Samsung Electronics Headquarters in South Korea to present their ideas and initial prototypes to senior executives. One of the key aspects of this program was engaging our corporate leaders and the student community in a direct conversation. This provided the students with an understanding of the corporate environment and its constraints that will help them in their careers ahead.
Final Project Demos & Results
The projects were showcased at the Stanford Software Faire, held at Stanford University on the 9th of June, 2015.
There was tremendous response from the audience who tried these apps, and many people were excited about the possibilities of what wearable devices and sensors could do for coaching. We could not have asked for a more pleasing way to complete the collaborative effort than having SyncRow by Team AthletIQ take FIRST PLACE in the computer science departmental awards for senior projects! Seeing open source projects like Tizen play a key role in helping academia realize their innovative ideas is what we strive for and we couldn’t be happier with the results we achieved together.
Open Sourcing The Apps
Today we are also excited to announce that we are going even further, and will be open-sourcing both the “Curve” and “SyncRow” applications. This will include the Gear S applications and any supporting analytics code for the wearable coach services themselves. We will be releasing the source under the MIT open source license and the code will be publicly available soon. Stay tuned to this blog and our Twitter account for more details.
Coordinating global academic initiatives like CS210, in partnership with premier institutions like Stanford University, requires a coordinated effort from multiple teams across Samsung, including strategy, software development, management and logistics. The Samsung Open Source Group realizes that such coordination is key to our success, and we will continue to promote such initiatives as we engage more with the academic and open source communities in the future.
About Sanjeev BA
Sanjeev B.A. has been involved in Tizen since its inception and has contributed towards the development of different software components of the platform, including open source components like EFL (elementary, elev8 and ecore). He has also developed native applications for Tizen using EFL and the native Tizen API. Recently, he also contributes to IoTivity, the open source project for enabling secure connectivity for IoT devices across multiple industry verticals. His prior experience involved software development for telecom solutions and mobile devices.
About Guy Martin
Guy Martin is no longer employed by Samsung. We thank him for all of his great work and wish him the best in his future endeavors. Guy Martin was a Senior Strategist with the Samsung Open Source Group, where he represented the company to the broader open source community and works with internal Samsung teams to help accelerate their use of and collaboration with open source software. Guy has more than 20 years of experience in software engineering, technical marketing, and community management consulting. He has helped develop collaborative & open source communities for groups such as the US Department of Defense, Motorola, and Sun Microsystems. He speaks regularly on open source and community topics to audiences of all levels at conferences such as LinuxCon, OSCON, Red Hat Summit, SCALE and Korea Linux Forum.
Image Credits: Open Source Way