Conrad Stoll is a developer, backpacker, and photographer from Austin, TX. He joined Mutual Mobile after college and has worked there for two years. As an iOS Architect, Conrad helps kick off new projects and works to champion best practices throughout the iOS team. He is a strong believer that great teams build great software. Conrad loves to hike and spent three summers as a Ranger at Philmont Scout Ranch. His other passion, apart from iOS, is both Sports and Wildlife Photography. Once at a UT football game, Vince Young ran over him while taking photos on the sidelines. Neither Vince Young nor Conrad's camera were harmed in the making of this factoid.
Automated UI Testing is one of the holy grails of mobile software development. There's several options out there for implementing automated UI tests but in this talk I'd like to discuss the KIF framework developed by Square and how it can be used to build powerful integration tests for your applications. We'll talk about some of the advantages KIF has for different testing scenarios, how to integrate KIF into your continuous integration system, and show some useful improvements and abstractions around KIF that make it easier to write automated UI tests.
If you're writing iOS apps these days you need to know how to work with web services. But where do you start? How do you mesh your web services with Core Data? "But I thought using Core Data in the background was hard!" What do you do when your API changes, or isn't finished? In this talk we'll see just how bad things can get if web service integration is not done well, and learn some tips for making web service integration easier. Come see why great web service integration will create a sustainable product for you, and a great experience for your users!
Change is one of the constant tenets of developing mobile software on the iOS platform. Every year we watch eagerly as Apple unveils the next iteration of the worlds best mobile platform. But change can be difficult to handle sometimes, both for developers and for our users. This talk will take a look back at some examples of change that iOS developers have experienced and discuss tactics for handling those changes. Change is something that we should embrace, as well as expect and be prepared for, as we continue building delightful applications on the iOS platform.
Mobile app security has been in the news a lot lately. Whether it's Starbucks storing unencrypted user passwords or mobile banking apps not handling man-in-the-middle attacks, users are now very aware of security. Not everyone is building a mobile banking app, but we all have users that expect our apps keep their data secure and private. Security is just as much a feature as a beautiful and well designed interface is, and all it takes is one security breach to put a black mark on an otherwise well crafted application.
The hardest part of mobile security is that mobile devices are inherently insecure. We carry them around with us all the time, where anyone can have physical access to them. Since we can't securely store the device itself, the focus shifts to securely storing the user's data on the device. It's important not to store or transmit user data in irresponsible ways. There are plenty of levels data storage security though, and every app will have a different set of requirements. Thats why its so important to design for security from the beginning and make decisions about what level of security is acceptable to you, your stakeholders, and your users.
This talk will focus on some key best practices for securing iOS apps. We'll discuss different ways to securely store data on iOS, some common safeguards to make sure network communication is happening securely, and explain why the keychain might not really be as secure as you think. Expect to learn at least a few tips that you haven't heard of before!
Security is certainly a very large field. Its hard to define what would really make any app deserving of being called "secure". This talk will help you better understand security on iOS and how to make decisions about how to address security in your apps.
Apple introduced WatchKit in November and developers have been abuzz building the first versions of their apps for the Apple Watch. WatchKit supports building interactive notifications, glances, extensions. WatchKit extensions are not as powerful as fully native apps can be on the Apple Watch, but they are still flexible enough to keep developers busy for the initial launch.
This talk will recap what we’ve been able to build using WatchKit and also take a look forward to what we hope to see in the native Apple Watch SDK expected to be introduced at WWDC. By now we’ve seen many examples of excellent WatchKit extensions. We’ll discuss some of the innovative techniques developers have found to build amazing experiences using this initial toolset, and how things may change with access to a native SDK.
The Apple Watch is the most personal computer that Apple has ever made and it’s going to require a change in our thinking about how we approach building personal software. We’ll be thinking about how to tailor our approach to software design towards these new devices and how we hope to build great experiences with access to things like the accelerometer, heart rate sensor, taptic engine, and digital crown.
When Steve Jobs told us years ago that the iPhone runs OS X, few would have guessed that statement would one day also apply to a wristwatch. The Apple Watch development platform is quite powerful, but it also demands a simplistic approach to create wearable software that people want to use. This talk will examine the current state of developing wearable software with WatchKit and walk through an example of building an app for the Apple Watch.