ioscon

While It’s Compiling: Skills Matter Interviews Boisy Pitre

While It’s Compiling is a continuing series of interviews with experts across a range of bleeding-edge technologies and practices, exclusive to Skills Matter. Be sure to subscribe to this blog for future interviews, or follow us on Twitter.

Find out who we’ll be interviewing next, and get a chance to put your questions forward with the hashtag #whileitscompiling.

Boisy Pitre at iOSCon 2014

We had a fantastic start to the year when we hosted the first ever iOSCon here at our headquarters in London, bringing together some of the world’s leading iOS experts including Boisy Pitre, Affectiva’s Mobile Visionary and lead iOS developer.

Boisy’s work has led to the creation of the first mobile SDK for delivering emotions to mobile devices for the leading emotion technology company and spin-off of the MIT Media Lab. We were delighted to get the opportunity to interview Boisy while he was here.

You can find the link to his talk from iOSCon at the bottom of this post, and all the talks here.


Hi Boisy, thanks for joining us for this year’s iOSCon. Can you tell us a little about yourself and the work you’ve been doing with Affectiva?

Sure. Currently I’m with Affectiva, an MIT media lab start-up based in Boston. We have an interesting technology which analyzes people’s facial expressions to determine their emotional state. The technology was developed, based on the research that one of the co-founders, Rana El Kaliouby, had pioneered in the affective computing field. The applicability of that technology was originally targeted towards the market research industry to help measure consumers’ emotional connections to brands and media.

About a year ago, Affectiva decided to expand their technology to mobile devices and tap into other industries beyond their current market – including gaming, healthcare, education and others. So, I came on board to lead this mobile initiative; and worked with some brilliant engineers to shrink the existing technology, which had a significant server component, down to the iOS platform. The Affdex Mobile SDK is the outcome of that effort. It does all the processing and reporting of emotional data on a frame-by-frame basis back to the app, right on the device – eliminating the need to connect to a server.

So it’s built on a lot of research – was iOS the natural progression and the natural platform to go to? What sets it apart from other platforms?

iOS was the initially targeted platform. In hindsight, I believe this was the right choice, as targeting iOS devices has been a bit easier due to the commonality of hardware and software; and it allowed us to get the SDK to market pretty quickly. Although we initially focused on iOS, I knew we were going to eventually develop an Android piece as well; which we’re almost done with, in fact. For the Android SDK, we hired team members who love and play in that sandbox. My philosophy is that for a company to be successful in a mobile strategy they should have experts that specialize in a particular platform.

In terms of applications going beyond the obvious marketing and advertising aspects, what are the real-world applications that exist now? Is there anything particularly interesting or exciting that Affectiva is working on right now?

As far as I’m concerned, it’s the wild west for apps that want to take advantage of emotion technology. It reminds me of the introduction of the iPhone in 2007. The idea of touching your device was not new, but Apple started democratizing it with the iPhone. That was the first really breakthrough moment in mobile. The second important breakthrough moment in mobile was the introduction of voice as input – again, Apple democratized how we interact with our phones and our devices when they offered Siri. I see emotional analysis having that same potential in mobile. Like voice, it give us a way of controlling the device and for the device to understand you better and offer you more choices.

So what type of apps can take advantage of this technology? Well obviously the low-hanging fruit would be games, where you’re interacting with the game – you want to have your emotions maybe control the game or have the game respond to your emotions in some way to adjust the level of intensity of play.

Health is another big opportunity where I think this technology can bring value. Take emotional health and well-being, for instance… there’s so much research pointing to the fact that our emotions have an impact on our health for better or for worse. So there’s a whole avenue of possibilities in that regard.

Then there’s the fun stuff. Imagine an app that analyzing your photos on your device to determine the emotional content to get an overall feel of your pictures. Or an app which changes music or colors on the screen while it watches your facial expressions. . Approaches like that can certainly lead to some interesting applications.

Of course, Affectiva is pursing app ideas at the moment based on this technology, but I cannot comment on them at this moment.

You mentioned that 2007 was the introduction of the first device, and how it’s moved-on, especially with Siri. Do you think that for someone such as myself, as a user of this device, are things going to continue coming out in stages, or is there anything around the corner that’s going to be as big and as ground-breaking as touch, or voice? Is there anything that’s going to jump out?

Emotion recognition technology has the potential to be that huge leap which brings in completely new way of interacting with our devices, whether we’re sensing emotions using the camera or through some other sense or mechanism. Having technology understand us better and gather deeper insights into our own emotions, through analysis at specific points in the day as we’re using apps, is a significant break-through in computer-human interaction.

And it’s a different level of interaction that liberates us. Just like touch liberated us from typing on tiny keyboards, and added a new paradigm of full natural touch with swiping. Emotional expressions in our face are instinctive; and they too can be a form of input and control, but they can also be a great form of feedback to us. I really think this will raise awareness of how we see ourselves in the world, as well as how we interact with others.

We hosted Droidcon last year, with devices such as the interactive mirror that could recognise your emotions in the morning. There is a huge interest currently in the Internet of Things, in connected devices and so on. Going beyond the iPhone or Android devices themselves, do you do much in terms of reaching out into connected devices?

Certainly. This technology can reach beyond just the device in your hand. For example, the automotive industry has expressed interest in our technology. That industry may be easier to break through on the Android side of things than it is with iOS, as iOS is a lot more compartmentalised and controlled by Apple. But certainly that’s one industry which could benefit from emotional analysis – just imagine driving along and your car wants to know if you’re falling asleep or paying attention or distracted; it’s looking at locations for safety, and again, health and well-being.

You touched on the fact that Apple and iOS is compartmentalised and controlled a lot more than Android. Do you think that’ s a drawback? Is this holding developers back on iOS or does it create an environment to focus ideas and energies?

Keep in mind that I’m coming from the Apple perspective as that’s the sandbox I play in. I completely understand and buy into Apple’s reasoning for why they do things. I’m also looking at this from a developer point of view.

We all know that Android exists on many, many mobile devices. It can be ported, unlike iOS, to phones, tablets, and other devices. The trade-off for such sheer ease of portability is the “fragmentation issue” which leads to complexity in development. At some point it becomes too massive for developers to support each of those devices. They must pick and choose their device support carefully.

I believe this is getting better as Android matures, but compared to Apple’s unified, streamlined hardware upgrading approach, it’s still a mess.

Apple’s approach, while certainly much more restrictive, brings a sense of order to the device chaos that permeates Android. If anything, I would argue that developers fare better in the Apple ecosystem because of these controls. But that is my opinion, of course.

Finally, in terms of Affectiva and how you work on a day-to-day basis – what’s the structure there? How does the team work?

We have two engineering teams, one dedicated to Android and the other to iOS. Each has an engineering lead. Both engineering teams interface with the science team, which concentrates specifically on the core technology of emotional classification. As science improvements are made, they are provided to engineering, which integrates the changes and improvements into the SDK code base. Agile is the foundation development methodology we use to organize and account for our work across the teams. This constant, connected cycle allows us to quickly iterate so that we can test, examine performance, etc.


Watch Boisy’s talk from iOSCon 2014

Boisy Pitre

What if your iPad or iPhone could detect your emotional state and respond in a way that enhances your day? What if an app could deliver soothing content when you’re feeling upset, or play your favourite song when you’re feeling happy? Find out how you could achieve this in Boisy’s talk!

You can see the rest of the Skillscasts from iOSCon 2014 here.

 

This Week at Skills Matter: 12 – 16 May

iOScon 2014

You could cut the excitement with a knife here at Skills Matter HQ, as we get ready to host our first ever iOS Developer’s Conference – iOScon 2014!

Taking place this Thursday and Friday in the heart of London’s Tech City, we bring you some of the greatest minds in iOS for two days of talks, followed by the iOScon Hackathon weekend.

Speakers include Daniel Steinberg, Martin Pilkington, Daniel Thorpe and many more. View the full line-up here, and grab your ticket now!


Here’s what else is happening this week!

Monday:

The fantastic Open Tech School return for their first of a two-part workshop on Python. This is the second time OTS have run this workshop, and after a fantastic response they return to continue their introduction to programming – with help from the London Python User Group!

The London Ruby User Group are also here to take a closer look into ActiveResource, and to show you how to understand the frustrations and triumphs to learning code in Ruby. They are joined by three experts – Angela Ebirim, Adam Rogers and Gabe Da Silveira – for three talks covering learning to code, how to win developers and influence designers and alternative approaches for internal rails services.

Tuesday:

Join the London Selinium Meetup on Tuesday for two talks which may differ how you shape your testing. Iain McCowatt and Rashmi Ranjan P take you through Models of Automation and Automating Google Analytics tracking.

London Ajax join us for a discussion on Meteor: A modular platform. Join them as they meet to talk about the platform which develops client/server applications in pure JavaScript.

Wednesday:

Our final User Group of the week ahead of iOScon, the London Scala User Group meet to talk on CQRS & Scala + Spoiwo. Jamie Pullar (senior developer in Concentra’s Product Development Team) leads on CQRS & Scala, followed by Norbert Radyk (enior developer, technical architect and development lead) who will take us through Spoiwo.

While It’s Compiling: Skills Matter Interviews Matias Piipari

matias_piipariWhile It’s Compiling is a series of interviews with experts across a range of bleeding-edge technologies and practices, exclusive to Skills Matter. Be sure to subscribe to this blog for future interviews, or follow us on Twitter.

Find out who we’ll be interviewing next, and get a chance to put your questions forward with the hashtag #whileitscompiling.

This week we spoke to Matias Piipari, CTO of Papers and co-developer of the Papers app for Mac and iOS. Matias began work at Mekentosj, an Apple Design Award and Ars Design Award winning scientific software company which became the Papers unit at Springer in an acquisition in 2012. After 6 months he also took on co-directorship of Livfe Ltd where he has taken part in developing reference management and PDF reading application Papers2 for Mac, as well as Papers for iPad.

Matias will also be talking about advanced grand central dispatch tricks at iOScon – check SkillsMatter.com for updates and tickets!


1. What drew you towards mobile platforms?

It was a combination of procrastinating very hard whilst trying to look like I was working very hard as a research scientist, and being able to program Cocoa applications in Objective-C for Mac around the time an iPhone SDK suddenly became available.

I was midway through a computational biology PhD, working on some machine learning techniques in Cambridge at the time the Android SDK and then the iPhone SDK appeared. The publicly available iPhone SDK, once it was released, drew me and a colleague (Ben Schuster-Bockler) from the research institute in pretty much right away. It really felt something big was going on in mobile computing, and it was suddenly easy to get started playing with your ideas for devices with sensors, GPS, etc.; cool things that a computer wouldn’t have. We started working on apps months after the SDK became available, first as contract work for others and then our own. Certainly by the time the iPad was introduced, it was obvious this was not a transient trend, but something you would really want to build a career in.

Meanwhile, towards the end of my PhD I had become addicted to this insanely cool Mac app called Papers for reading and citing research papers, and had met its developer Alexander Griekspoor. The ability to start using this app on my iPad was really the reason I initially bought one as soon as I could, and somehow not long after I ended up sending a feeler to work for Papers. I couldn’t believe it when I got this dream job I’m still in – that’s where mobile development fun really started for me!

2. Is there anything in particular about iOS that appeals to you?

Cocoa and associated APIs, closeness to C/C++, and great hardware to distribute your software on. Cocoa is an incredibly powerful and intuitive framework to program with. It’s just fun, in a way that I’ve not found many other languages or frameworks to be after a while of practicing it. It is not a coincidence it has stood its ground for some 25+ years since its NeXT beginnings. The topic of replacing Objective-C with a more modern language comes up with predictable frequency, but since Apple shifted over to the LLVM compiler and the new 64-bit Objective-C runtime, they have continued to show that it still has punch and that they can keep up with the times.

By closeness to C/C++, I mean that you have both easy to understand abstractions available in the Smalltalk derived Objective-C object/class and message passing style. You can also “think” in ways that are close to the machine you are targeting, and make use of the masses of open source code available in C and C++ without the kind of hassle and performance hit that can be associated with that in managed environments (try debugging manually memory managed code running inside a Java or .NET application!).

And finally, Apple of course just makes really nice to use devices that our target market – scientific researchers and students, especially in higher education – use and love. I feel really privileged to work on software which people use during their daily work, and who feel strongly enough about it to post lots of great feedback that helps us improve the product.

3. What new projects are you working on right now?

There’s a few general themes:

1) Bringing previously Mac-only features onto the iPad and iPhone versions of the app.

2) Data synchronisation and allowing our users to share their research paper libraries easily with others. We’ve built our own cross-platform SQLite3 based data synchronisation framework at Papers, which allows our users to synchronise their data between iOS devices, Macs and PC. We are seeing a lot of demand for this feature and there’s a lot of scope for extending this functionality.

3) Something which I can only describe as “Using crazy machine learning techniques inside an iOS app to make seemingly magical things.” Stay tuned!

4. Where do you see iOS in the next five years?

For us at Papers the most interesting thing about iOS as a platform is how, in terms of hardware capacity and Cocoa + the Objective-C runtime, a mobile device is getting closer and closer to what a Mac is capable of. For anyone writing software that targets both desktop and mobile devices, this means that we make less compromises when we ship the application for iOS devices than we used to when the initial iPhone and then iPad versions were made available. To make this concrete, for Papers we share almost all non-UI related code between the two platforms, and between 70-80% of the source code. This fraction we see only going up as more and more media-related CPU and memory hungry tasks become available on iOS.

I see this kind of change only going further in the next few years. Obviously touch, keyboard & mouse driven UIs dictate key differences between platforms, and both UI paradigms will stay, but for sure we’ll be seeing more and more powerful mobile devices running iOS and the convergence of iOS and OSX based frameworks from Apple, in large part being driven by the mobile end. So iOS as a platform is definitely something to stay current on!

One thing I’m quite hoping to see within five years in Apple’s development environment for iOS, or third party tools for iOS development, is support for alternative LLVM based languages. Objective-C is a pleasure to work with and definitely here to stay for that time, but there are all these interesting things going on with more functional influenced languages with LLVM compiler infrastructure and well thought out concurrency models. Things like Rust, Nimrod, and Julia definitely would have a place in many kinds of programming tasks in mobile apps too.

5. What do you wish you’d known when you’d first started out?

That there are so many obvious app ideas which have not been implemented because no-one has bothered trying seriously. Just go for it and don’t stop before it’s in the App Store.

6. If you could ask the iOS community anything, what would it be?

What means of automated testing do you use to test your iOS apps?


Want to recommend a way of automated testing for iOS? Tweet us at #whileitscompiling or @skillsmatter 

Matias will be talking about advanced grand central dispatch tricks at iOScon – check Skills Matter for updates and tickets! 

Daniel Steinberg to give an exclusive iOS App Development workshop, 14th May

daniel

Daniel Steinberg will be joining Skills Matter this May to deliver an exclusive iOS App Development Quick Start workshop, covering all the fundamental cornerstones of developing apps for iPad, iPhone, and iPod Touch. The workshop includes Xcode, Objective-C, View Controllers, and Storyboards – everything you need to get started in just one day! This course suits developers from all levels, from beginner to advanced; so as long as you know a C-style language and some object-oriented programming, this workshop is for you.

Click here to find out more!


iOScon 2014

Not only is Daniel giving this fantastic course, he’ll also be presenting the keynote talk at iOScon, our first ever iOS developer conference. And he won’t be alone; you can meet other top thinkers like Martin Pilkington, who will be demystifying Autolayout, Amy Worrall to talk about Key Value Coding, and Simon Whitaker on UIKit Dynamics.

iOScon will be taking place the day after the workshop from May 15th – 16th, followed by a free weekend hackathon on May 17th – 18th where you can meet and collaborate with other iOS developers, create a new app or game, and even win a prize!

If you’re interested in learning more about iOS, meeting other developers, and enhancing your skills, we’ve got a great week coming up for you in May – take your pick!

While It’s Compiling: Skills Matter Interviews Martin Pilkington

martin pilkingtonWhile It’s Compiling is a series of interviews with experts across a range of bleeding-edge technologies and practices, exclusive to Skills Matter. Be sure to subscribe to this blog for future interviews, or follow us on Twitter.

Find out who we’ll be interviewing next, and get a chance to put your questions forward with the hashtag #whileitscompiling.

This week we chatted to Martin Pilkington, freelance iOS developer and founder of M Cubed Software, and has been writing for Apple’s platforms for 10 years. He started tinkering with Autolayout when it was first released and fell in love with it straight away, so much so that he is currently writing a book on the subject called The Autolayout Guide (due out Spring 2014).


1. What drew you towards mobile platforms?

I started out developing for the Mac well before the iPhone came about. One of the first apps I developed for the Mac was actually a tool to create linked collections of notes for the early iPods, so I’ve been working with portable devices for quite a while. I bought an iPod touch when they first became available and fell in love with it. When the iPhone SDK came out I jumped at the chance to play around with it, especially as all my skills from developing for the Mac were transferable.

2. Is there anything in particular about iOS that appeals to you?

The big thing is that it appeals to me as a user. There are lots of plusses as a developer, but the key question I have before developing for any platform is: “do I want to use this platform myself?”

3. What new projects are you working on right now?

I have various client projects I’m working on, which I can’t really talk about. The main project I can talk about, which is quite relevant for my talk, is a book I’m working on called The Autolayout Guide. I see a lot of people struggling with Autolayout, just as I did when I started, but the resources available now are just as lacking as they were for me. I wanted to write the definitive guide on Autolayout to help people learn to get the most out of it. It’s also a bit of an experiment as I’ll be releasing it as an iBook, so I’m hoping to add more and more to it as time goes on.

4. Where do you see iOS in the next five years?

I don’t know where it will be, but I know where it would like to be. There are two big problems I have with iOS that I’d like to see solved.

The first is the iPad. A lot of apps are designed to take full advantage of the iPad’s screen space, really making you feel the difference between the iPad and iPhone. Unfortunately, the OS is still stuck in the “big iPhone” world. This has become even more apparent with iOS 7, where the iPad feels like an afterthought. Despite the complaints Windows 8 gets, I believe it has far more interesting features on tablets than iOS (such as the split screen) and I’d like to see Apple catch up.

The second is better integration between the Mac and iOS. iCloud tabs is one small step towards this, but I want to see it in more places. If I’m writing an email, I want to be able to pick up my iPad and finish that email there. I want to be able to copy something on iOS and paste it on the Mac. And most importantly I want to be able to send files, photos, etc between the two without having to resort to email or syncing the device. Before they got shut down, Palm was starting to make inroads into this area, but no-one else has really picked it up.

5. What do you wish you’d known when you’d first started out?

How to use Instruments. I still haven’t mastered it yet, but it’s one of the most important tools in your arsenal.

6. If you could ask the iOS community anything, what would it be?

To file more radars asking for an official plugin API for Xcode. That’s probably the biggest change that could happen to our tools, and radars are the only way to get Apple to act.


Got a question for Martin? Leave us a comment below!

Martin will be giving a talk about mastering Autolayoutat iOScon, our first ever iOScon conference. Check Skills Matter for updates and tickets!