Macs Should Work Better with Other Apple devices

iMacs used to be able to work as external monitors for other Macs, via Target Display Mode.

Unfortunately, the new 5k iMacs don’t support this. Which is a shame, since it’s the best display I’ve ever used on a computer: it’s spacious for getting work done, and immersive for videos. It’s super high-res, at 5120 pixels wide! Colors pop, thanks to the Display P3 color space. It even supports 10 bits per channel color, not just 8. It’s a shame to have such a top-quality display go waste when I could be using it with a Macbook Pro.

This matters all the more given the enormous price of ₹1.8 lac I paid for my machine. I would certainly expect it to be more flexible for that price.

Not only should the iMac support Target Display Mode, but Apple should take it to the next level: in addition to just the monitor, you should be able to use the iMac’s webcam, keyboard, mouse and ports. Like external speakers plugged in to the iMac. Or an external hard drive plugged in into the iMac.

You should have access to all apps and data stored on both devices in a unified manner [1]. You should be able to open and use any app that’s installed on either device. All your windows from both devices appear in one desktop. Spotlight finds apps and files that are installed on either device. If you get a FaceTime call, it should just work as long as FaceTime is enabled on either device, using either of the two webcams, whichever you prefer.

Apps that are installed on both machines should show a combined view. Like a combined inbox in Mail.app that shows new mails on both machines, if you have different accounts set up. Likewise, a unified calendar, contact list, Photos and iTunes libraries. If you had Safari windows open on both machines, you should be able to drag a tab from one window to another. You may be able to turn this off, say via a drop-down menu in each app that says, Show me my data from:

[ ] iMac

[ ] Macbook Pro

[ ] Both

This requires a new API for apps to adopt. Apps that haven’t adopted this API, or whose developers have decided it doesn’t make sense for their app, would not be unified. You’d see two Dock entries for such an app, each badged with the name of the computer it’s running on. The app would appear twice in the Cmd-tab menu. Quitting one won’t quit the other. Each instance of the app would see only data stored on that computer, if it’s a library app like iTunes. Or if it’s a traditional app with File Open dialog boxes, the boxes would default to the same computer the app is running on. If I open the iMac’s copy of TextEdit, type something and press Cmd-S, by default it would save on the storage of the iMac.

Apps that are unified using this API could be load-balanced between the two machines. If you’re running an app that requires all the memory of one machine, and you open a new Safari window or tab, it could execute on the other machine, so that the system remains responsive.

This would subsume Target Disk Mode as well. Currently, that’s a mode that lets a Mac act as an external drive when plugged in to another Mac. It’s a pain to use, since you have to reboot the Mac, interrupting whatever you’re doing there, deal with unsaved files, losing your playback position in VLC, and so on.

The iMac should support a Thunderbolt 3 port, to work with the Macbook Pro. This port should also be able to fall back to USB-C mode, when plugged in to the one-port Macbook, which doesn’t support Thunderbolt. You should be able to buy Apple’s Thunderbolt 3 to Thunderbolt 2 adapter to use this hypothetical iMac with an older Macbook Pro or Air, going all the way back to 2011.

Things should work optimally even if the other Mac’s GPU can’t drive a 5k display. Or if you’re using a connection that doesn’t have enough bandwidth to drive a 5k display at 60 FPS (only Thunderbolt 3 is up to this task). In those cases, the iMac should use its own powerful GPU to drive its display. Since rendered framebuffers won’t need to be sent down the wire between the two Macs — only the rendering commands—any connection will do [2].

It would be impressive to have a 2011 Macbook Air be able to use a 5k display at 60 FPS at 10 bits per channel, with everything remaining smooth.

The iMac would be a better monitor than any standalone monitor, even if you never use it as a computer by itself, because the iMac can lend its substantial hardware resources to a connected laptop.

It’s not just iMacs that should be able to lend their displays to another Mac. If you have two Mac laptops, you should be able to use them in tandem, in effect creating more screen space and horsepower than one laptop has.

iDevices should also work as an external monitor for a Mac. Some of the them, like the 13-inch iPad, are big enough, and others, like iPhones, can still be useful to show at-a-glance information like your slack and email inboxes. If you have a habit of keeping these in the background and Cmd-tabbing every once in a while, you could instead place them on another screen, for at-a-glance access. There’s already an app for this, but maybe iOS could integrate it. After all, you don’t need third-party software to make an iMac work as an external display for another Mac.

Macs should also work as external monitors for iDevices, say if you’re watching a video on an iPhone and realise that it would be more comfortable to watch it on Mac. After all, even the 12-inch Macbook has a far bigger screen than most iDevices. iOS already supports external displays using a dongle that connects via HDMI to a monitor. This should also work over Lightning, with the Mac acting as a monitor. Any Mac with a built-in display, even a 12-inch Macbook.

In addition to Target Display Mode, Macs should be able to work as AirPlay receivers. Why should I need an Apple TV, when I already have a 27-inch iMac, which is big enough to watch comfortably from my sofa? Or any Macbook, for that matter. This is the same point as the previous paragraph, but it should also work wirelessly.

Finally, Macs should also subsume the Apple TV, by becoming compatible with the Siri Remote. Especially desktop Macs, like the iMac or Mac Mini, which sit in one place and so are well-suited to act as a TV. Why do I need a separate device just to receive input from a remote? I already have too many devices. Apple should just make the Siri remote compatible with macOS, and convert the Apple TV from a hardware device to a macOS app. In fact, Apple used to make such an app earlier, which was discontinued in 2009. It’s time to revive it.

Footnotes:

[1] For security, you’d get a prompt on both machines, and you’d have to okay it on both. That way, your friend won’t be able to connect her Macbook Pro to your iMac, and get access to your personal data. Unless you’re signed in to the same iCloud account on both devices.

[2] All this requires support in macOS. If you connect a Mac running an older version of macOS, or a Windows laptop with a suitable port or adapter, the iMac should still work as an external display, using the existing Target Display Mode. The unified stuff won’t work — data and apps on the iMac will be inaccessible, and its keyboard, mouse and webcam won’t work.

In this backward-compatibility mode, when you plug two devices in, you’ll get a prompt asking which device you want to use as a monitor for the other. You should be able to use a laptop as a monitor for a desktop, if you’re already working on your desktop and would just like a secondary display. Why have a laptop sitting on your desk unused if it can help?

Consulting CTO. Earlier: Google | Founder | CTO | Advisor