Ray Wenderlich invited me to present a Hangout about Apple Watch and deliver a few WatchKit demos. On this post, you'll find all the questions we answered. A couple more handy links we discussed are:

Slides and Video


Questions Answered in Video

  1. Since the code is processed on the phone on the phone first, is there a performance lag between the watch and phone?

  2. I saw some comments in tutorial, that Swift and WatchKit doesn't work very good together.So if I'm starting application now do I need to use Objective - C?

  3. Was that just a mix of the two types of apps? hierarchy and Pagination?

  4. How Apple Watch Kit works with Push/Remote notifications?Can be tested on simulator?

  5. I may have missed this, so feel free to skip. If I use Core Data in my Container App can the Watch also use Core Data APIs or do I need to pass simpler models back and forth? Can I use NSManagedObject and NSManagedObjectContext?

  6. Do you think WatchKit Apps will help mainstream adoption of iBeacons? What are good examples of how Apple Watch and iBeacons can be paired and will any iBeacon/Apple Watch communication be featured in WatchKit by Tutorials?

  7. About using the watch as an activity tracker:Since the watch won't work without a phone, do I have to carry the phone around to have it track my activity (I'm guessing no) ?

  8. What is the storage capacity for storing apps, images, and content on the Apple Watch?

Outside Questions 

What do you think will the native SDK look like and how can we prep for it now, ahead of time?
Native SDK will probably be enabled in pieces. A post on the developer forums has a nice summary:

While there will be more (reading sensor data, albeit indirectly, maybe some microphone stuff, a bit more UI fanciness, etc) the likelihood of being given full reign is exactly zero.

I would imagine some of the first things out will be access to the sensors and hardware — motion data, digital crown, taptic engine. You might be able to have an app that can monitor the data while it is disconnected from the phone. I imagine that it may be some time before we can get full decoupled from the phone. Could we be able to make decoupled games this summer? I doubt it.

What's the most efficient way to get new data over to the watch – from data (plists? shared container?) to assets (images from the network, etc.)
Shared container for sure for data since the data is transfer is happening over bluetooth. Have a single process that is in charge of updating the information in your database (likely your iOS app), and then your extensions would have (essentially) read-only access to this database, and drive their respective interfaces almost entirely off the cached information. The Lister sample code project demonstrates how to share and access iCloud documents across an iOS app, a Today extension, and a WatchKit app extension. That could be a good place to start.

What's the general design paradigm to follow? Tables like on iOS or screenfuls of stuff?
Each app is its own animal, but here's what I'll be thinking about for app architecture. The apps really should be only viewed and interacted with for seconds. Therefore each screen could provide just what I needed at that instance and then dismissed. So instead of thinking about how users flow through an application, I'm going to think about how I can make use of actionable notifications and single screens so they don't have to.

Sentiment around developing WatchKit apps?
From my perspective, quite nice. But then again I run a meetup group so the people I see are all excited to develop for it. I know there is some trepidation for more experienced developers in the ecosystem about whether or not it will be worth it. Which leads me to... 

What App Store approval may look like in recent light of widget developers having a bad time
It is true that some developers are having trouble with apple changing rules about what Today extensions are allowed to do. That said, I think this is part of a continual process of developers pushing the limits and Apple looking at what they want to allow from their perspectives -- battery life, app store clutter, today view clutter. I'm optimistic that it will get sorted.  

In the App Store, I imagine that in watch apps will have a graphical indicator like universal apps (run on both iPhone and iPad). So when you view their app icon and listing, you know which apps run on the watch.

That said, with iOS 8 apple introduced Today Extensions and Custom Keyboards. Neither of those have icon designation and it is up to the developer to explain in the App Store description and in the app itself how to enable the OS-level features.

games on watchkit? Thoughts on the future of game dev on watchkit
Games in SpriteKit or SceneKit may take years to come to the watch. However, games that are communication-based and use notifications are possible now. In the Hackathon we had a team that mad a multiplayer card memory game where each person was interacting from their own watch.

charge for a Watch app, or can you do it with an IAP
While there may be a way to enhance functionality of a Watch app via IAP in the iOS app. You cannot control the app showing up on Apple Watch. As soon as you install the app on the phone, it will also be on the watch that is paired with that phone.

what sort of touch handling is available? If I had a circular thingy on the screen, would I be able to detect where on the edge of the circle the user has touched? If they dragged their finger around on it?
You're out of luck I'm afraid. Not gesture recognizers and no hit testing.

Due to limitations of watchkit, I'm guessing access to sensors (like heart rate) will be through healthkit api, right?
That is correct. Although we don't have access to the heart rate sensor data, we can get previous data by asking HealthKit. However, from what I've seen, HealthKit is a bit slow in responding. I'm interested to see a Watch app that uses HeathKit. If you get something working do let me know.