Click here to Skip to main content
15,881,588 members
Articles / Product Showcase
Article

Case Study: Sesame Factory Engages Sensor Functionality on Ultrabook™ Systems for an Enhanced Diary Application

26 Jul 2013CPOL11 min read 19.5K   50  
Case Study: Sesame Factory Engages Sensor Functionality on Ultrabook™ Systems for an Enhanced Diary Application

This article is in the Product Showcase section for our sponsors at CodeProject. These articles are intended to provide you with information on products and services that we consider useful and of value to developers.

To encourage developer innovation in enabling a more immersive user experience with Ultrabook™ devices, Intel held the EMEA-based Ultrabook Experience Software Challenge in 2012. The challenge was held over 6 weeks and hosted 30 participants from 11 countries. Participants developed original applications that integrated touch, gesture, and voice functionality. Judging criteria were as follows:

  • Functionality. Does the application work quickly and effectively, without any issues?
  • Creativity. Does the application represent an innovative usage model?
  • Commercial potential. How useful is the application for the mass market?
  • Design. Is the application simple to understand and easy to use?
  • Fun factor. How positive is the emotional response to the application?
  • Stability. Is the application fast and simple, without glitches?

Sesame Factory won second-place with Day to Day, a diary application in which users can document their day-to-day experiences. In addition to text, users can include photos as well as their current mood, the weather, and location information for each entry (see Figure 1). The application, including the graphics, was developed specifically for this challenge.

Image 1

Figure 1. Day to Day diary entry

Product

The idea for Day to Day came from the Sesame Factory development team. Ercan Erciyes, co-founder, explains, “We like recording our days, taking notes, and reading them years later. It’s like looking at pictures and noticing how everything was different. This process offers the ability to reflect on what our priorities were and what really mattered back then.”

Day to Day is the team’s first Microsoft Windows*-based application. Previously, they focused on embedded software development in C and web-based applications. The team most recently created a web-based platform that presents originally crafted how-to videos. This application enables web and mobile users to view step-by-step, instructional, how-to videos for various topics.

Throughout the design process, the team wanted to include a lot of features in the application, but they also wanted to keep the interface as simple as possible. Erciyes says, “Initially, we wanted to include location selection from a map, photo import, cloud syncing, video import, and more, but time was limited and we had to prioritize our ideas. At this stage, Ultrabook features helped us shorten the development time because we could use the global positioning system (GPS) instead of manual location selection and the embedded camera instead of a photo import function. When the initial feature set was fixed, we prepared wireframes and started the design and development.”

During the design process, the team spent considerable time trying to imagine the easiest ways for users to use the application. They carefully considered the buttons and the application canvas (see Figure 2). Erciyes notes, “To keep the user interface (UI) as simple as possible, we had to design the dashboard first to be understandable and easy to navigate, and then good-looking. We took the pictures of the UI elements ourselves and gathered opinions to determine what each image evoked for people.”

Image 2

Figure 2. Day to Day application home page

When choosing the programming language to use, the team had three choices: C#, C++, and HTML5+JavaScript*. Erciyes describes the decision-making process: “We listed our priorities and deep-dove into the Windows 8 programming documentation to understand how each module and function could be implemented in each language. The team’s familiarity with HTML5+JavaScript and the usability of the Windows 8 application programming interfaces (APIs) were factors in our decision to use HTML5+JavaScript.”

Development Process for Windows 8

Day to Day is a Windows Store app. The biggest consideration in deciding whether to program for desktop or Windows Store was the number of users they could reach. “In addition,” says Erciyes, “usability and rapid development, as advantages of HTML5, had an impact on our decision. The availability of the development libraries when using HTML5 met our needs for development. For the software development kit, we preferred the built-in support of Microsoft Visual Studio* Express for including Windows 8-specific libraries and debugging.”

Sesame Factory specializes in development environments based on HTML5, Cascading Style Sheet version 3 (CSS3), JavaScript, Python*, Java*, C, and Ruby, so the team had no previous Windows development experience prior to the challenge. Erciyes says, “Getting to know the Windows development environment took some time and effort. As the deadline of the challenge got closer, it became the biggest problem. The documentation support from both Intel and Microsoft helped us a lot in resolving this issue.”

Development Process for the Ultrabook Platform

Enabling touch, GPS, camera, and accelerometer sensors helped the team provide an enhanced user experience for the Ultrabook platform.

Touch

From the time the team discovered the native support for touch that Ultrabook provides, they knew touch would be a key component of Day to Day’s functionality. Erciyes says, “We knew that support for touch would be one of the most important features, unlike with a traditional PC application. We spent a lot of time on the UI and working out how we could provide the best user experience. With Day to Day, users can navigate through screens simply by touching the Ultrabook screen.”

Erciyes notes that the team’s intention was to design UI elements in such a way that every touch gesture provided flawless operation. He explains: “When working on touch, the main focus is enabling users to use the application with ease and when desirable, but it’s also important to keep the application canvas attractive and usable.”

From a coding perspective, the team did not implement additional functionality for touch recognition. Erciyes says, “The hardware and the operating system worked perfectly for us, so we had to deal only with the user experience/UI design.”

Designing the application in a way that allowed both touchscreen and traditional keyboard-mouse interactivity showed the team that offering the touch feature adds great value to the application. Erciyes comments, “We were familiar with the benefits of touchscreen functionality for easing people’s interaction with machines. However, we were not familiar with touchscreen functionality on a traditional laptop device. We could clearly see that this everyday technology integrated on a laptop computer would change the user experience. While working on the touch component, the team learned that adding even a simple sensor feature could add incredible value to the application.”

Sensors

Day to Day supports Ultrabook sensors, as follows:

  • Accelerometer. The UI changes its view based on the device orientation; the modular design works well in both portrait and landscape view. So, users can change the orientation of their devices and continue to create and navigate their entries according to the position of the device.
  • GPS. Diary entries are saved with the user’s location and current weather conditions. This feature provides users the ability to perform personal analytics, such as whether their mood is affected by location or weather, or the number of different places that they have been (see Figure 3).
  • Camera. Users can add pictures and videos to diary entries.

Image 3

Figure 3. Series of Day to Day diary entries

The team determined which sensors to use based on those they thought would create an enhanced experience within the application. Erciyes comments, “Adding sensor functionality not only enriched the user experience but also added value to it. These capabilities enabled us to include geolocation, positioning responsiveness, and photo and video capabilities to the application. The built-in GPS sensors in the Ultrabook platform helped us to detect the user location and the weather conditions to include with each diary entry. So, users get the ability to browse their entries based on location. The camera device increases interactivity and creates an engaging user experience. Diary entries that include photos, videos, and geolocation information offer an enhanced user experience over traditional PC applications.”

Challenges and Opportunities

For the 2012 Ultrabook Experience Software Challenge, EMEA-based software developers and ISVs (independent software vendors) were invited to submit their ideas for original software applications that leverage the latest Ultrabook functionality, including touch, gesture, and voice recognition. The purpose of the Challenge was to encourage innovation and creativity for a more spontaneous and intuitive user experience with Ultrabook devices. Thirty participants were selected, with nominees from 11 countries: the United Kingdom, Spain, Italy, Germany, the Netherlands, Russia, Romania, Israel, France, Greece, and Malta. Each participant received an Ultrabook software development platform and had six weeks to finish the application. The panel of judges included Intel engineering, marketing, and retail representatives.

The Sesame Factory team’s biggest challenge was understanding the Windows programming environment. Erciyes notes, “One of the key problems we faced was with asynchronous programming—writing functions in response to a user’s actions. We had no previous experience with this aspect. However, after reading documentation and forums, we could easily implement the code.”

Erciyes adds, “During the development process, it’s inevitable that you will face problems. When you do, the first thing is to check your code, then debug it; if you still cannot solve the problem, you reread related documentation and consult Intel® Developer Zone forums to find an answer. This was our process, and the community support answers and proper API documentation were helpful for us.” In particular, the team found the following web sites useful:

The team also made some interesting comments on several Ultrabook features.

  • Touch. “When we used an Ultrabook with the touch feature for the first time, we had a ‘wow’ moment. We found ourselves touching the screen a lot. Especially when scrolling and other gestures where needed, we noticed that it was more responsive than the touchpad.”
  • CPU performance. “With this feature, we thought that users could switch their computers on quickly and create a diary entry about something that just happened.”
  • Long battery life. “To preserve battery life, the most common behavior is to decrease the backlight of the LCD. This action automatically limits the user experience and enthusiasm. With the Ultrabook platform, this scenario is less likely to happen compared with traditional PCs.”
  • Portability. “Compared with traditional laptops, the Ultrabook chassis is more elegant, stylish, and light. We just loved carrying the Ultrabook around.”

Future Development

In terms of next steps, the team sees a big opportunity to develop additional applications for Windows 8. Erciyes says, “Compared with other application platforms, design and programming can be implemented relatively easier. Adding new features and keeping Day to Day updated based on user requests are our first priorities. Meanwhile, we are developing new applications to enrich our portfolio with easy-to-use and user-oriented applications.”

The team has additional features planned for future versions of the application:

  • Calendar browsing. Provide an overview of users’ memories from a specific date
  • Map view. Show entries on a map and give users a birds-eye view of places they’ve been
  • Mood view. Display the overall mood for a selected period of time, giving users a unique perspective to analyze their mood
  • Cloud syncing. Store the entries securely in the cloud, so users can access them from different locations and devices
  • Export. Enable users to export their entries and create good-looking PDFs that they can print

Summary

For the EMEA-based Ultrabook Experience Software Challenge, the developer Sesame Factory won second-place with its application, Day to Day, a diary application in which users can record the events of each day. The application enables users to include supplemental information, such as photos, location, weather information, and a mood indicator. As the Sesame Factory development team’s previous work has used C and Python, Day to Day is their first Windows-based effort. For this project, they used HTML5+JavaScript as their programming language. The team made good use of Ultrabook sensors, with touch, accelerometer, GPS, and camera functionality, to enrich the user experience. The team’s biggest challenge was understanding the Windows operating environment, and they found good documentation from Intel and Microsoft to help. They hope to continue improving Day to Day as well as develop new Windows-based applications.

Company

Sesame Factory is a start-up company founded by Ercan Erciyes (@ererciyes) , Semih Hazar (@shazar), and Engin Subaslar (@esubaslar). In 2011, the company founded Nasil TV (www.nasil.tv), a web-based video application that presents originally crafted how-to videos. The company was acquired in early 2013 by Mynet, the most prominent Internet portal in Turkey.

About the Author

Karen Marcus, M.A., is an award-winning technology marketing writer who has 16 years of experience. She has developed case studies, brochures, white papers, data sheets, solution briefs, articles, website copy, video scripts, and other documents for such companies as Intel, IBM, Samsung, HP, Amazon* Web Services, Microsoft, and EMC. Karen is familiar with a variety of current technologies, including cloud computing, IT outsourcing, enterprise computing, operating systems, application development, digital signage, and personal computing.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
United States United States
You may know us for our processors. But we do so much more. Intel invents at the boundaries of technology to make amazing experiences possible for business and society, and for every person on Earth.

Harnessing the capability of the cloud, the ubiquity of the Internet of Things, the latest advances in memory and programmable solutions, and the promise of always-on 5G connectivity, Intel is disrupting industries and solving global challenges. Leading on policy, diversity, inclusion, education and sustainability, we create value for our stockholders, customers and society.
This is a Organisation

42 members

Comments and Discussions

 
-- There are no messages in this forum --