Wishlist for iOS 7, OS X 10.9, WWDC 2013

No reason to keep you waiting, here are my wishes for WWDC 2013.

iOS 7 features

Cleaner design

Yes, I want it to. Less gloss, a simpler look. Yada yada yada.

Quick settings in notification center or multitasking tray

Why do I still have to dig into settings to turn on and off wifi, bluetooth, airplane mode, do not disturb mode, etc? Put it somewhere I can reach from wherever I am in the system.

Better multitasking tray

Show me the actual app instead of the icon when I use the multitask menu. Think WebOS or something similar.

Better (or no) lock screen

The lock screen has limited use. Add more useful stuff to it, like app controlled widgets, or maybe let me disable it. I never accidentally hit the sleep button anyway, so why do I need it?

Swipe to switch app

I can see that swiping with four fingers up or down could be difficult on the iPhone, but from side to side would work. So I want the app switching gestures from the iPad on my iPhone. I’ve also dreamt about being able to switch apps by swiping below the screen (on a wider home button or similar), but that would only be on the new iPhone. So I’d prefer both.

iOS 7 developer features (APIs)

More multitasking options

I like the idea of limiting multitasking options to preserve battery life, but there are many features that would be great to have. Like:

  • Let me wake my app to update data when the phone is idle, charging and on Wifi
  • Let me add a web request to a push queue when offline, so it pushes the data when the phone goes online

OCR API

OCR is difficult. You fix, give me API. Add to camera APIs and UIImage.

Better networking APIs

Why do we still need AFNetworking to get good networking APIs?

Performance best practices documentation

UICollectionView and UITableView optimization is difficult. I shouldn’t have to resort to Google to find best practices. You wrote the APIs, tell me how to make them sing.

NSMakeRange -> NSRangeMake

Follow your own idioms FFS.

Fix cumbersome APIs with shorthands instead of autocomplete.

This? Really?

double delayInSeconds = 2.0;
 dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC));
 dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
 // Code
 });

Support CocoaPods

It makes developing with 3rd party frameworks nice. Embrace it and built it into xCode.

OS X 10.9

  • Make it more stable
  • Make Finder modern (tabs! it’s 2013!).
  • Update API to match iOS.
  • Don’t screw it up.

Other stuff

  • iWork 2013 – It’s been too long
  • Xcode 5 – Now with less suck and more stability
  • MacBook Pro Retina with Haswell – Longer battery life and more power never hurt anyone
  • New iPhone or iPad – Not for me, but to silence the press
  • Mac Pro – Not for me, but to silence the Internet

How Apple can fix the TV

Lately there have been many rumors about Apple working on a TV. Not today’s Apple TV product, but a full TV with the Apple TV software built in.

I’ve been thinking about this for a while, and I’ve come up with some explanations for why this may be a good idea and how it could work.

The problem

Even though companies like Samsung and Sony tries to convince you otherwise, the TV of today is a dumb device. The primary function of your TV is to be a display for the digital cable box provided by your cable provider. What this means is that the cable box occupies the primary input, and thus discourages you from using any other device connected unless necessary. This is in part because changing inputs is still a pain in the rear, unless you have one of those fancy universal remotes, which are a pain in the rear to configure.

In list form:

  • Today’s TVs are dumb.
  • Changing inputs is a pain.
  • Cable box is primary device.
  • Any other device becomes secondary.

The solution (aka the iTV)

The iTV will be a full size TV, probably between 40″ and 60″ in size, and most likely available in a few different size options. Inside will be the same chip that drives the then current generation of iPad, with software very much like the Apple TV of today. There will be some key differences though:

The interface will have an extra option for cable TV. This will be HDMI input 1, just as on your current TV. But since iTV has iTunes streaming built in, it will be the primary temptation ahead of the cable box. To simplify the experience, both the iTV and your cable box can be controlled from your iPhone with a remote app, which supports all the popular cable company box remote signals. If some cable company won’t help Apple do this, they will say “screw you”, just as they’ve done with other potential partners before.

There may be a remote included that looks like an iPod touch, just without the headphone jack and docking ports (or it may be optional). Any other HDMI (or other) inputs will be displayed in the primary interface not with a number, but with the device name. For instance, you’ll have a menu a bit like this:
Movies – TV Shows – Cable TV – PS3 – Internet – Computers – Settings

Notice how Cable TV and PS3 becomes a part of the main menu. Optionally, if you have more than one device in addition to your cable box, they may be listed in a menu called Devices or something else obvious, but with their full name displayed in the sub menu.

Other possibilities would be recording shows, streaming to and from iOS devices (AirPlay, but possibly also from the TV to your device wherever you are) and iOS/Mac calendar integration.

To summarize:

  • The TV will finally have a great interface
  • Switching inputs will be more organic thanks to proper naming and iOS app universal remote
  • Cable TV will be demoted to just another content source
  • iTunes will be the primary content source (just what Apple wants)
  • Your TV will be beautiful and easy to use
  • AirPlay and possibly recording and streaming to your devices

Bonus: Siri

Siri might be the single best way to solve searching on your TV. Searching for content with an on-screen keyboard is horrible. Using your iPhone as the remote is a little better, but talking would be perfect, at least in quiet rooms. I’m 100% sure that Siri won’t be the only way to interact with your TV, but it just might become your primary choice. It would work by holding down a button on your remote, then the volume would fade to mute while you give your command. An omnidirectional mic in the TV would pic up your command and search is library of content and devices.

This would be even better if they could integrate the programming list from your cable provider, giving it the option to answer something like: “South Park will be on later today. Do you want me to remind you, or record it?”. Then imagine the possibilities provided when integrated with your iPhone’s calendar: “It appears you’ll be away when Mad Men airs tonight. Would you like for me to record the show, put it in your Netflix queue, or stream it to your iPad when it airs?”.

Let’s hope Apple does this and forces some innovation to happen in this stale, outdated industry.

iPhone 2011 event predictions

This must be one of the most confusing pre-announcement states we’ve been in when it comes to Apple. It’s been a long while since we knew so little and had so many different and contradicting rumors.

My predictions this time is based 20% on wishes and 80% educated guessing. As always I’ve read most of the rumors out there, and have tried to piece together a good sense of what’s to come.

iPhone(s)

We know the event is about iPhone. It says so right on the invitation: Let’s talk iPhone.

The big question has become: One or two?

I believe that an iPhone 4S is 98% likely. It has been leaked from both iTunes preference files and factory image leaks.The big question is: Will there be an iPhone 5?

I Think iPhone 5 is 80% likely. It’s simply been too long since the iPhone 4 launch for Apple to release just a single incremental upgrade. The iPhone 5 cases also contributes to this. The most likely scenario is that the iPhone 4S is available immediately for a lower price than the iPhone 4 is today, and with upgraded internals. The iPhone 5 will be available towards the end of this month.

iPhone 4S

  • Same design as the CDMA iPhone 4
  • Same camera and display as iPhone 4
  • A5 processor
  • 512MB or 1GB RAM
  • iOS 5 including Assistant feature
  • Lower price
  • 8GB or 16GB model

iPhone 5

  • (50% chance of being same as 4S, or:) 4″ display, same pixel density (retina)
  • 8 megapixel camera in the rear, 2 or 3 megapixel in front
  • A5 processor (possibly with higher clock speed than 4S)
  • 1GB RAM
  • iOS 5 including Assistant feature
  • Same price as iPhone 4 today
  • 16GB/32GB or 32GB/64GB (depends on 4S configuration)
  • Thinner, iPad 2-like design

Assistant

The headline feature of both phones will be a new voice-enabled virtual assistant. It will understand what you say and do things like creating appointments, sending text messages, math, wikipedia lookups and more. Assistant will require iPhone 4S or 5 because it requires the processing power of the A5 chip. This is because it uses Nuance technology which is way more accurate than the current voice features of iOS 4.
You will also be able to transcribe voice to text in any text-field through a button on the keyboard to enable transcription. The assistant will be based on tech from Apple-owned Siri, Nuance (of Dragon Dictation fame) and the information engine Wolfram Alpha. It will support all the same languages as Dragon dictation does.

iTunes

Tim Cook will mention that iTunes movie rentals and iBooks will be available in several more countries, mainly in Europe. This will be thanks to new deals with content providers. The Apple TV will become available in those same countries. An upgraded Apple TV with the A5 chip and 1080p is possible, I’ll give it 40% chance of happening.

iPods

The iPod shuffle and Classic will die (or be unchanged). The Nano will run some sort of iOS with app capability and will be lowered in price slightly to compensate for the loss of the shuffle. The Nano might get a low-end camera.
A 128GB iPod Touch will replace the classic. The touch will be upgraded with iPhone 4S internals (except with cheaper cameras) but same design or closer to iPhone 5.

Other stuff

I don’t think Apple will launch anything else than iPhone and iPods, mostly because they have more than enough to go through, and like to keep their events focused. If something else comes up, it might be new headphones to counter the Beats that HTC are bundling. The default headphones that Apple sell are absolutely terrible and ready for exchange. Maybe they start bundling their in-ear set with high-end products, or maybe the low-end headphones are upgraded to something in between.

Wildcard: New Apple TV is an actual TV.

Detecting double click on NSButton

While developing a new feature for Mine Searcher I needed to detect a double click on a NSButton. Be very careful where you use this, or the HIG monster will mutilate you.

In your .h, add the following:

id pressedButton;
double pressedButtonTime;

In your .m, in the method that runs when you click the button, put the following:

NSDate * newDate = [NSDate date];
NSTimeInterval newTime = [newDate timeIntervalSinceDate:[NSDate dateWithNaturalLanguageString:@"01/01/1970"]];

if ((pressedButtonTime >= newTime-1)&&(pressedButton == sender)) {
NSLog(@”doubleclick detected”);
}

pressedButton = sender;
pressedButtonTime = newTime;

3 reasons why enumerated lists will help your blog

You may have noticed that many of your favorite blogs use a lot of enumerated lists. Do you think this is a coincidence? I don’t.

1. Lists are exciting

“10 ways to make art from nothing but air”, you might read in a tweet. 10 ways? Really? What can they be? Lists automatically makes you ask yourself questions about what it might contain. Ranked lists are even better, like “Top 5 iPhone apps for clowns”.

2. Lists are easy to read

Lists gives you defined sections of text which is always easy to follow. Each list item is typically limited to one or two paragraphs, thus not requiring too much concentration.

3. The number of items defines the length

You may have limited time, attention span or interest in a topic. In such cases the numbers of items on a list might decide if you bother readhing the post or not. When you read the headline of a normal post or article, you typically know next to nothing about the length of the text. But you can be pretty sure that a list with 20 items will be longer than one with 5 items.