(2018-11-30) Ink And Switch Tablet Showdown

Adam Wiggins/Ink and Switch: Tablet showdown. Desktop computers are the gold standard for pro computing. Yet many of classic abstractions such as hierarchical filesystems, overlapping windows, cut-and-paste, cursors/focus, and shortcut keys are a poor fit for a tablet.

The design language of smartphones, on the other hand, is all about compactness and on-the-go usage. They are optimized for one-handed use. But work-oriented apps on a tablet should use all your facilities (including both hands) for a high-bandwidth connection between your brain and the device.

A productive tablet-based application will require some fresh interface ideas.

The tablet should:
Feel good in your hand.
Be roughly the size of an A5 notebook.
Offer “Instant on”

The stylus should:
Feel good in your hand.
Have low inking latency (<25ms).

Also key is an easy way to distribute builds to test users.

At a minimum, we need to take over the entire screen and gesture space, with no OS chrome, control panels, or system-wide gestures getting in the way

lastly, we want the ability to build in scripting or automation to the application. Programmability via an embedded scripting language like Javascript or Lua is straightforward on desktop platforms, but tablet platforms often have tighter restrictions.

Here’s our comparison of the four platforms we tested in detail in 2017 and 2018.

In brief: the Surface is reasonably good on most counts; the iPad is a study in contrast between truly spectacular benefits and truly awful flaws; Android is mediocre across the board; and Chrome OS shows great promise but isn’t quite there today.

Read on for the details.

For a company who only entered the productivity hardware game six years ago, Microsoft’s Surface products are surprisingly compelling.

*Samsung’s Tab S3 is a small, sleek, and inexpensive tablet. It comes with a stylus that doesn’t need pairing or charging. The OLED screen offers a delightful true-black for dark-mode apps.

Android is a modern mobile operating system with everything you expect from such*

In theory, Android was the perfect platform for us, and the Tab S3 was a solid tablet/stylus hardware choice. The lackluster elements of this platform are pervasive.

We tested the stylus latency as poor.

On the development side, we found Android Studio and Kotlin to be serviceable but generally unappealing

Apple’s iPad Pro and its stylus are perhaps the most impressive computing devices ever created.

iOS is the ultimate walled garden, with Apple exerting a total stranglehold over every user’s ability to create and distribute software.

iTunes Connect is a terrible admin interface

Embedded programmability is mostly a non-starter on iOS

The iPad, iOS, and Xcode/Swift are a pinnacle of humanity’s achievements in computing hardware, operating systems, and developer tools. At the same time, Apple’s chokehold over software creation is a depressing nadir for computing empowerment and freedom.

Google’s Chrome OS is somewhat of a dark horse entrant to this showdown

Web development is native development on Chrome OS. This means we can build the app much as we would for a web app or on Electron. But then that app can be installed and run as a local piece of software!

Our team has had good experiences with Electron, so we were excited about this. Generally web technology has traditionally had an excellent developer experience. Being able to build our software with Typescript and React with full access to the Javascript/HTML/CSS ecosystem was incredibly appealing.

*Unfortunately the great promise of a powerful Linux combined with mobile platform capabilities and a web technologies app development story did not bear out for us.

Web standards and APIs don’t provide the depth of access and control we needed, such as the stylus API mentioned below. But there is no “native” to fall back to*

This is a laptop with a touchscreen, and that confounded our abilities to built a great tablet-and-stylus-first experience. In theory the upcoming Slate might solve some of this problem.

Trying to use a two-in-one device on a daily basis makes it clear that this is an ergonomics trainwreck. that Apple is on to something in saying a touchscreen laptop makes no sense.

Stylus latency is acceptable. A bigger problem is that the pointer events API claims to be agnostic to the hardware, but in practice has many pre-cooked assumptions about the types of gestures the app developer might want to support

Chrome Apps, though on the surface similar to Electron, were consistently frustrating with their limitations. We struggled to get a separate backend thread for our app

On the development side, we never found a comfortable workflow for the edit/build/run cycle. With an iPad or Android tablet you can use the simulator or connect via a cable to your development machine. No such thing exists on Chrome OS

A few other options we evaluated in less depth:

Flutter on iPad or an Android tablet. We were really impressed with Flutter

We built a sample drawing app with Flutter which worked seamlessly on iPad and macOS and is a surprisingly small amount of code.

And as to whether the tablet+stylus can ever be a good tool for work, this remains an unsolved problem for our industry.


Edited:    |       |    Search Twitter for discussion