At Xtreme Labs, we often build apps that interact with a large address book. Contacts are necessary if the user wants to share their favorite product to a friend, or send an article through email. To ensure we handle the worst edge cases, we need to test with a large number of contacts. Of course, it’s very inefficient to have an intern manually input all the contacts onto a device (and our interns have more important things to do!). Fortunately, we found a way to load all the contacts in a short time. How, you ask? Here’s the secret to importing a large contact list onto your iOS devices in less than 5 minutes.
Although barcode scanning has formerly only been used in industrial uses, the rise of smartphones changed that completely. Anyone who owns a smartphone now also has a “barcode in their back pocket”, a powerful tool for consumer advertising and mobile strategy. In fact, even though the technology is still very new in Canada and the US, mobile barcode scanning has increased over 1600% during 2010.
One of the most important goals in a successful mobile strategy is a high user conversion rate, meaning the user completed an intended call-to-action. Some factors that affect conversion rate are:
- What the user wants
- Where the user wants
- What the user need to act
- When the user is most likely to act
It is the fourth factor that mobile smartphones and barcode scanning prove their greatest merits. Since the window of opportunity for a user to act is quite narrow, information has to be delivered quickly and in a seamless fashion. With a QR code, a user can be instantly be redirected to a website, perform an automatic action, or receive information; all without a 3rd party server.
Barcodes and Mobile
At a high level, there are two types of barcodes that a mobile device can use for scanning, 1D and 2D. Both serve the same purpose: represent data to be interpreted by the scanning device. 1D barcodes represent the data by varying widths and spacing of parallel lines (hence giving the name barcode). 2D barcodes systems use a variety of symbols, usually rectangles, dots and hexagons.
The differences though are far larger than merely aesthetic, and it was the widespread use of 2D barcodes that make mobile scanning important for smartphones. Firstly, 2D barcodes can store a variety of data. A 1D barcode stores up to 30 numbers, while a 2D barcode can store up to 7,089 numbers. This additional storage capacity accommodates allows a smartphone application to receive text, a hyperlink, telephone number, SMS/MMS message, email, or many other possibilities. Even a hyperlink itself presents a myriad of possibilities beyond just redirecting the user to a mobile site: your application can play a video, check-in on Foursquare, update a Twitter status, “Like” a Facebook page, display map directions, and many more. The second advantage of 2D barcodes lies within the phone hardware itself. 1D barcodes are more challenging to scan with lesser quality cameras without an auto-focus camera feature. For these reason, when choosing a mobile strategy, we recommend adopting 2D barcodes, preferably the QR system. In fact, during Q1 of 2011, 2D barcode scanning outnumbered 1D scans.
Since QR codes can be used for nearly any function, including logistics, advertising, customer service, etc., their use is showing up across a variety of industries in imaginative ways. Actually, 22 percent of the Fortune 50 companies used mobile barcodes within their mobile strategy. One of the first widespread uses for barcodes on mobile phones was done by BlackBerry with the BBM messaging service, allowing users to add contacts by scanning a QR code displayed on a friend’s device. Some other imaginative uses by industry leaders are:
- Best Buy – in-store QR tags on merchandise can be scanned to access online reviews
- Golf Digest – 2D barcodes found in the magazine can be scanned to gain access to interactive videos with tips
- Real Estate – potential buyer’s can scan “for sale” signs to access interactive tours of the property
Integrate your App
With all the potential for mobile scanning, it is relieving that integrating with your current mobile application is not a daunting task. A quick search will reveal a large list of available barcode scanning libraries; available for iOS, Android, Windows and BlackBerry. When choosing a barcode library, accuracy and speed are two of the most important factors to take into account. At Xtreme Labs, the two libraries we use most often are Red Laser and Zbar:
- Red Laser – This is a paid barcode-scanning app with an SDK available for iOS and Android developers. Top companies across the world use Red Laser to provide fast, accurate and reliable scanning using their available SDK. Nice features of Red Laser are it’s wide device support (doesn’t require autofocus) and support for both 1D and 2D code systems (13+ code types in total). Red Laser’s main drawback is that it is expensive; they acquire 10% of sales if used within a paid application along with a minimum license fee of $2500
- ZBar – This is an open source software suite and among the best among the freely available options. Although integration requires more effort than Red Laser’s SDK, it supports reading bar codes from various sources including video streams, images and raw intensity sensors.
Other options do exist, including ShopSavvy, pic2shop, Zxing, and QuickMark to name a few.
Whichever library you choose to go with, the end result is the same: mobile barcodes are a revolution and not a fad. With all the benefits and tools available, including best practice guides and mobile libraries, the merits and opportunities of mobile barcode scanning are an important factor to look into when developing your mobile strategy to enhance user experience and increase conversion.
Our First Guest Blog Post!
Not too long ago we posted a blog on how-to improving your app store rating. We never know who’s going to read our blog but are thankful for all of our readers. A few weeks ago, one of them reached out to us asking to share his knowledge on improving your app store ratings with you. His name is Robi Ganguly, Co-founder and CEO of Apptentive, a site dedicated to helping customers converse directly with the developers in order to improve ratings, increase downloads and help developers create more successful applications.
We were thrilled that Robi wanted to share his knowledge with us. So here is his take on getting better ratings and reviews for your apps:
App developers want great ratings in the app store because they are interpreted as an indicator of quality. Data from a report titled Examining the Relationship Between Reviews and Sales by researchers form NYU and the Georgia Institute of Technology suggests that this is of particular value for things that are difficult for consumers to evaluate prior to purchase, such as books, movies, and apps. The higher the rating, the more likely you are to pique the interest of potential customers.
It is natural then to ask, “How can we get better ratings?” and, “How do we get better reviews?” But those are the wrong questions. Instead, the questions you should ask are:
- How do we create a great experience so people will love our app?
- How can we engage with our customers, so the ones who love us will write a review?
It’s not about you: it’s about the customers
The ratings and reviews in the app store are not for you, the app developer. They are for your customers. Ratings and reviews can help you identify what customers like or dislike about your app, but their primary purpose is to act as guideposts saying, “This will make your life better,” or warning, “Danger, thar be dragons.”
An e-mail to all your customers asking them to rate your app or code in your app to ask for a rating after a certain numbers of uses are both legitimate techniques for soliciting feedback, but they put the focus on you, the developer, not on the customer. As we like to say, “if you’re trying to get ratings just to get more ratings, you’re doing it wrong.” Nothing about these techniques makes life better for your customers. The key to better reviews is to identify the customers who love your app, and encouraging them to talk about it. And one way to do that is to engage with your customers.
Listening and acting
Customers today have a different set of expectations. Simply being able to fill out a “Contact Us” form and have your question disappear into the ether is not enough. In these days of instant downloads, 24-hour service hotlines, customers expect to be heard when they speak up. You need to provide an easy way for customers to give feedback, you need to listen, and you need to respond.
Listening is important because your app might make sense to you, but it doesn’t always make sense to your customers. In a recent blog post, Seth Godin suggests that the biggest customer question is, “Why isn’t this as important to you as it is to me?” Find out what your customers expect, what is confusing, and identify what you can work on. Listening sends two powerful messages. First, you are telling your customers that you care enough about their opinion to give them the tools to express it in a quick and easy manner. Second, you are telling your customers that you trust them enough to give you real and honest feedback on your application.
Responding is also important. For positive comments, taking the time to say “Thank you,” tells your customers that there are real people behind the app. Negative feedback provides an opportunity to make your product better. Acknowledge the user’s frustration, diffuse the tension, apologize, and if feasible, make it right. Fix that bug. Show that you care about creating a great experience for all of your customers. Give them reasons to stick around, to trust you, to understand why your app works the way that it does.
Get more reviews
A quick search of the app developer discussion boards will show that the ratio of app downloads to app reviews varies greatly, with the numbers ranging from one in one hundred to one in five hundred. When you listen to feedback and respond, good things can happen: more feedback, better ratings, more honest input, and a significant number of customer relationships that are spawned through simple conversation. And you will know which users are engaged with your app.
Research at George Washington University and University of Texas Austin suggests that the number of reviews also matter. More reviews encourages more sales (Do online reviews matter? by Duan, Gu, and Whinston). There might be many users out there who love your app, who aren’t necessarily thinking, “I need to go write a review.” So ask them to.
In the end, you will have better ratings and more positive reviews. What is more important, though, is that you have created a connection with your customers. By asking for feedback, by listening, by responding, and by encouraging them to rate your app, you will have relationships with engaged customers who love your product and who want to talk about it.
69 Yonge Street, Suite 600
Toronto, ON M5E 1K3
Tuesday, September 25, 2012
Xtreme Labs Leverages Industry Expert for Growth and Innovation in Mobile
TORONTO, Sept 25, 2012 – Xtreme Labs today announces that Chamath Palihapitiya, former VP of Growth, Mobile, and International for Facebook and Founder of The Social+Capital Partnership, has personally invested in the company to become a significant shareholder. Chamath Palihapitiya will join the Board and will serve as an advisor to the Executive team as the company moves through its next phase of growth.
“Since our inception Xtreme Labs has been a leader in mobile innovation, and with this announcement, we are now better equipped to move forward with greater velocity to become one of the world’s largest, most successful mobile companies,” said Amar Varma, CEO of Xtreme Labs.
Chamath Palihapitiya brings extensive experience and knowledge of both start-ups and the tech industry. In addition to his work in growth and mobile with Facebook, Mr. Palihapitiya has an impressive track record of funding and mentoring start-ups like Playdom (acquired by Disney) and Yammer (acquired by Microsoft) all of which have been incredibly successful.
“Xtreme Labs is one of the best-kept mobile secrets in Silicon Valley. They’ve built more than 300 custom apps that have been downloaded hundreds of millions of times. Sundeep and Amar have amassed a team of over 150 talented engineers and mobile experts that are behind many of the Valley’s most successful mobile experiences,” said Chamath Palihapitiya.
Xtreme Labs will continue to collaborate with industry leading brands to bring its mobile products to life including companies such as Groupon, Shutterstock, Rypple (now Salesforce), CIBC and IAC. Since its inception in 2008, the company has worked with consumer brands to bring them to life in the mobile domain. More recently, there has been a significant push to work with businesses on their enterprise focused solutions. For Xtreme Labs, the underlying notion around the enterprise is to build transformative experiences which materially impact the way companies do business. As Xtreme Labs progresses, it will continue to increase its focus in other verticals including retail, financial services, education and healthcare.
“This major investment will allow us to continue to focus on what we do best: innovation,” said Sundeep Madra, CTO of Xtreme Labs. “We will continue to work with our clients and partners to create outstanding mobile products and experiences, in conjunction with creating open source frameworks to decrease the barriers to development. Xtreme Labs will launch an open source framework platform in the New Year. This will accelerate our abilities to supply leading mobile solutions for some of the world’s best companies across all platforms.”
With years of experience of collaborating with the world’s top brands, along with Palihapitiya’s wealth of knowledge and experience, Varma and Madra have found the perfect recipe to propel Xtreme Labs into the future of engineering the world’s best mobile products.
About Xtreme Labs:
Located in Toronto, Palo Alto, and New York City, Xtreme Labs leads the world’s biggest brands in creating award-winning mobile products. Xtreme Labs’ expertise in mobile spans both the consumer and enterprise industries, providing a wide range of solutions for mobile, tablet, TV, mobile web, connected devices and more. All projects are handled in-house by a talented team of engineers, designers, product managers, QA and U/X experts.
For more information visit http://www.xtremelabs.com
For more information:
Passbook is an exciting new feature coming to iOS 6 which has endless possibilities. Creating a basic pass is extremely simple, yet there is much room for customization.
Passbook will be useful in many areas. A “pass” is not necessarily a pass in the traditional sense, because it may represent a ticket, a coupon, a payment card, or a boarding pass. Some common uses include flight tickets, movie tickets, bus or train tickets, store coupons, or store payment cards. Anything which currently uses a barcode may be turned into a pass for Passbook.
Mobile technology is penetrating the Enterprise space as a means to provide solutions for businesses. The new trend emerging are products in the form of applications and sophisticated software to improve work systems, internal organization and they way employees perform through the assistance of apps, mobile software and connected devices.
Xactly, a provider of market-leading management software for businesses, partnered with Xtreme Labs to create the Xactly Incent application for iPad. This Enterprise app is a tool for sales teams and individuals already using Xactly Incent services.
Teams and individuals can track their commissions, bonuses, performance and goals any times. The stunning graphs and slick animations make for an impressive user experience. The graphs display commission data, and the animations show employee’s progress towards their goals. Xactly’s app is the mobile solution to keep a sales employees organized.
As a native iPad app, Incent for iOS takes full advantage of all that the iPad has to offer. Easily swipe through dashboards, and touch or zoom to display more details. Other features of the app allow users to:
- Track individual and team performance to quotas
- Deliver real-time visibility across your organization
- Calculate compensation quickly and accurately
- View charts for tracking annual and quarterly performance
- Review incentive details, including credits, commissions, bonuses and payments
Xactly Incent for the iPad is available today for free in the app store. Discover how enterprise apps can help take your the app today to take your sales organization to the next level.
Until recently, Android design lacked definition and we had to fend for attractive apps as best we could. Now with Honeycomb and Ice Cream Sandwich, Google has shaped up and come out with an awesome design vision for the platform. For 3.0+, beauty can be native and the Action Bar is the new standard.
Yet, the majority of the Android market isn’t 3.0+, and isn’t likely to be for a while. Back-porting is time consuming, but Jake Wharton has conveniently done almost all of it for us with his ActionBarSherlock library.
We’re reluctant to acknowledge it but the shorter days, colder nights, and the arrival of the CNE here in Toronto all signal that summer is coming to a close. This is a sad time for all of us, but especially for kids who spend their summer days at camp.
Timber Lake Camp, based in New York state, understands that for campers and their families alike leaving at the end of summer can be a sad time. After spending days making new friends, exploring the outdoors, enjoying fun activities and free time returning back home and to school can leave many with a feeling of disconnect.
Partnering with Xtreme Labs, Timber Lake Camps have created three different apps to keep campers from their three overnight residential camps connected all throughout the year. Three apps for iPad and iPhone connect campers to three different camps; Timber Lake, Tyler Hill, or Timber Lake West.
Access your CampInTouch account, the Timber Lake Facebook page, Twitter feed, YouTube videos and links to other TLC Family of Camps from inside the app. Still can’t wait to go back to camp? Check out these features you’re sure to love:
COUNTDOWN TO CAMP
Set a countdown to remind you how many days are left until you’re back at camp. Set up notifications on a daily, every other day or weekly basis.
PHOTO OF THE DAY
View the ‘Photo of the Day’ through the app and share it with your family and friends on Facebook, Twitter, or via email.
Relive camp highlights of summer at with daily updates. Through the app get weekly camper, staff or alumni stories, along with recaps of events and reunions.
Access your CampInTouch account, the Facebook page, Twitter Feed, YouTube Videos & links to all the other camps in the TLC Family of Camps.
Great News! Our BlackBerry Developer Group Meetups are back!
Join us and BlackBerry Developer Evangelist Patrick Mollins on Monday, September 10, 2012 at 6 p.m for an overview of Cascades and a code walk-through at the Fox and Fiddle. Come out for free drinks and snacks as you learn how to create amazing BlackBerry 10 apps with an astonishing user experience using the Cascades UI framework.
To register click here!
Where: Fox and Fiddle, 27 Wellesley Street East, Toronto ON. M4Y 1G7
When: Monday, September 10, 2012
Time: 6:00 p.m. – 9:00 p.m.
Whether you’re planning on spending a quiet weekend in the city, or you’re heading out of town to go off the grid, you won’t be the only person trying to soak up these next three days that make up the last of the Summer long weekends here in Canada. And what better way to relax than with a great book?!
Here are some titles from our in-house library that are sure to bring you hours of reading pleasure over the Labour Day long weekend.
1) Designed for Use: Create Usable Interfaces for Applications and the Web by Lukas Mathis
Take a deep dive with author Lukas Mathis into research, design, and implementation. This book explains how these are the essential stages in designing usable interfaces for applications and websites. Mathis inspires you to look at design in a whole new way, explaining exactly what to look for, and what to avoid, in creating products that people will be excited about. If you’re obsessed with design, or have never given it a second thought, this book is sure to entertain you.
2) Thinking, Fast and Slow by Daniel Kahneman
We cannot get enough of this book! In fact, we love it so much we have ordered over 15 copies of it for our library. Nobel Prize winner and author Daniel Kahneman explains the two systems of how we think and how we make decisions. Can you always trust your intuition? When should logical and reason guide your choices? Find out in the compelling page turner. You won’t be able to put it down.
3) The Wealthy Barber Returns by David Chilton
We could all use a few more pointers on how to manage our money. And since its a topic that we often stress about, why not spend your time relaxing this weekend while author David Chilton empowers you to do better, and more with your money. This guy knows his stuff!
Also check out the first book in this series: “The Wealthy Barber”
Pair programming. You may be familiar with this concept by now as it draws quite a long-standing debate in the software development world. In an article published yesterday by The Wall Street Journal, Joseph Walker positions pair programming as a way for “Computer programmers to learn tough lessons in sharing”. But that didn’t come before Jon Evans questioned whether or not pair programming was considered harmful in a tongue-in-cheek titled TechCrunch post. This prompted our VP of Engineering, Farhan Thawar, to rebut with this article. The New York Times wrote about pairing in 2009, noting for writing software, a buddy system is best. So again, here’s our two cents on the topic.
Pair Programming Works in Practice
In theory, pair programming seems like an interesting concept for development to many computer engineers and software developers alike. In practice, pair programming works by pairing two engineers with two screens, two mice, two keyboards and one computer work together to write code. Code can be written fast, can be debugged on the fly, and is mutually beneficial for both programmers as there is an exchange of knowledge for the project they are both working on. But on the flipside, the argument against pair programming claims that it can cause groupthink, a lack of creativity for the developer, or makes two great engineers ineffective when put together to program.
To dispel those arguments we must look at where pair programming has been beneficial in practice. Google’s Jeff Dean and Sanjay Ghemawat have paired together in the development of groundbreaking work like MapReduce and BigTable that powered Google’s “rise to the web’s most dominant force.” Kent Beck, a major proponent of Extreme Programming and now at Facebook, is strong advocate of pairing. He wrote the 1999 book titled “Extreme Programming Explained” where he states that software should be released quickly and improved along the way, echoed in Facebook’s mantra of “Move Fast and Break Things”.
Grockit CEO Roy Gilbert said the practice has proven a success, and his developers “continue to evangelize the method.” Pivotal Labs, a software-development shop that was bought by technology giant EMC Corp. in March, has its 175 engineers pair all day, every day. They too change partners daily in a practice called “promiscuous pairing.”
Pair Programming Pragmatically
With so many conflicting opinions on what the best practice is, it’s no wonder there’s so much commotion over this development process. But what people seem to misunderstand is that pair programming needs to be adapted in order to fulfil its purpose and to fit the needs of the developers. For example, pairing doesn’t work 100 per cent of the time, or in all situations. Nor does it work with every personality that exists on a team. Taking these things into account is how we’re able to pair effectively most of the time.
From the beginning, we pair program daily at Xtreme Labs. We’ve molded it to fit in with our process, hence why we’ve been able to make it so successful. Putting the notorious engineering egos aside, our whole team has adapted to the use of paired programming, and thrives under its use. Working in pairs to collaborate on projects, everyone from our principal engineers, to new co-ops fulfilling a work term, get to make great contributions to their assigned projects. Our team has come to understand how to use this method of development to their advantage, something that many companies who are opposed to pair programming, seem to have not figured out yet.
When pairing doesn’t work for a part of a project, then it’s not used. When someone needs privacy to email or work on something away from the eyes of their pair, email stations around the office are available at their disposal. Collaborating, which has been confused to cause groupthink in the context of pairing, helps both engineers figure out problems faster and from a new perspective. (Another side note to dispel the ‘groupthink’ argument is a ‘pair’ is two, a ‘group’ is several). As a result, developers are better able to overcome those same problems that might occur again when pairing with others later on. When a pair isn’t working out, the solution is simple: get a new one. Weekly ‘Anchor Status’ meetings provide the perfect opportunity to voice any concerns; this is also where the lead engineer of a pair can re-allocate resources based on the difficulty of a project. The initiative and responsibility given to to each pair allows them to make executive decisions on how much help they will need that week. Having a pair be able to self-direct themselves on building code for a project gives them plenty of opportunity to be innovative and creative as long as there’s a finished product of high quality in the end.
For us, the proof that pair programming works is in our ability to ship high-quality builds to our clients every week. Pair programming allows us to deliver features in a guaranteed period of time to our clients. Because we are able to do this, we are able to make outstanding products faster for our clients. With all the talk and attention pair programming is getting, it’s nice to see it become the mainstream way of developing. After all, two heads are better than one.
We like to keep tabs on new and innovative ways that technology is being used, especially in Toronto and abroad. Here’s what caught our eye this week:
Toronto startup GestSure has sure got a grip on useful surgical tools, well, figuratively. The self-title tool is the result of a Microsoft Kinect hack that uses depth-sensing 3D cameras to “integrate easily and flexibly into the Operating Room workflow”.
With their sterile hands working away on a patient, many doctors face the problem of being unable to access important patient documents and images while in the OR. The digital images they need to access are either in a non-sterile state or is handled by another healthcare professional. The last thing a surgeon wants to do is put patients at risk by passing bacteria back and forth between equipment.
Using GestSure, surgeons are able to manipulate 2D and 3D images that appear on the screen themselves. Doctors simply face the Kinect device that is hooked up to a display and use hand gestures to look at and navigate these images of parts of the body that need attention by zooming, turning and moving the image – without touching anything.
This is a huge benefit to doctors who are performing surgery since they no longer have to remove their gloves, or use their hands to access the data and re-sterilize before continuing with the operation.
Motion & depth sensor technology is a hot trend right now, so obviously we’re all over it here at the Labs. We’re working on some projects of our own that utilizes this trendy technology, stay tuned for more details. But in the meantime, here are some other cool Microsoft Kinect Hacks that have impressed us at the Labs:
When debugging your mobile application, logging can provide critical information. A few problems arise from the simplicity of iOS’s logging interface. The built-in method,
NSLog, is mainly a development tool, but when left in release code it will still be executed. Removing
NSLog calls before release can be a tiresome process, but leaving them in will slow down your application.