Fri, 13 Dec 2019 22:26:02 -0600Desktop-First Mobile Computing

mr's Preposter.us Blog

I was thinking today about how I have this expensive laptop for work, and in order to create an ideal working environment I connect it to an external display, keyboard, trackball, etc.  I do this at work, and I do this at home (I regularly work remote).  I do this so much that I spend very little time using the built-in screen and keyboard.

This got me thinking about why I even have a laptop at all?  Why not have a desktop that’s always connected to a good set of peripherals?  It would be a better value, and I wouldn’t need to haul the machine and it’s various accessories around.

There are some advantages to having a single computer vs. one at each location.  It’s less hardware to maintain, and it’s easier to pick up exactly where you left off when you’re using the same computer.  It’s also convenient to have the computer with you in a pinch where you need to do some work even if it means forgoing the comfort of your regular setup.

This got me thinking about how most of these advantages come from simply transporting the core of the computer, the storage, the processor and the necessary memory.  The input/output devices are always worse than the non-mobile equivalent, and at the same time are the components that contribute the most to making the device delicate and expensive.  

So, what if instead of all this you could carry a device that contains only the core components of the computer with only a minimal amount of input/output peripherals.  If you’re starting to think what I’m talking about sounds like a smartphone, you’d be right.

But phones are phones and while you can connect most of them to keyboards (and some of them to displays), there’s few that you could use in place of a laptop, and fewer (if any?) that you could use as a desktop computer.  This has less to do with hardware and more to do with software.

The most common smartphones run Apple’s iOS or Google’s Android operating systems and these systems are designed to work in a way that has no resemblance to desktop computers.  Beyond their user interface it is their application interface, the way software is written, used, distributed and maintained that is the biggest barrier to using smartphone hardware as a replacement for desktop computers.  There’s little users or programmers can do about this because these limitations are enforced by the vendors of these devices and while there are work-arounds, they create so much drag on both users and developers that few can afford to deviate from the application patterns prescribed by the vendors.

For a long time this was the end of the line for this sort of thinking.  A handful of attempts have been made to implement devices described above but as far as I know none survived for long of they made it to the market at all.  The only reason I can see for this is that their sustainability depended on a level of adoption that the market did no bear.

However the introduction of the PinePhone ( https://www.pine64.org/pinephone/) may change all that.

The PinePhone is an open-source computer in a smartphone form factor.  The hardware provides all of the resources necessary to support a workflow like the one described above.  More importantly, unlike other smartphones, the device is open enough to accept a standard desktop operating system, so using it I’m the way I use my laptop (connecting it to desktop peripherals and treating it like a desktop computer) is completely feasible.

Additionally the PinePhone contains a touchscreen display that could be used in a pinch between stationary setups just like a laptop.  In this mode it is significantly more compromised from an interface perspective, but the trade-off in terms of portability and reduced cost is substantial.  Additionally it’s easy to imagine a compromise in the form of a laptop-style accessory that could provide a better interface than the touchscreen while away from a desk, if this was necessary.

 So instead of looking at the PinePhone as a phone, the idea is to look at it as a general-purpose computer, designed to be connected to desktop-style peripherals under normal conditions, but with the ability to be used like a mobile device when in-between desks.  Using this “desktop-first”, philosophy uncompromising applications can be developed for the device that provide full-functionality under normal conditions and reduced, essential functionality when necessary “on the road”.  Under all conditions the user benefits from having a familiar work environment where they can seamlessly suspend and resume work without depending on external third-party services or even network connectivity.

The more I think about it the more problems a device like this can solve.  This might be the basis for a new form of computing that, like other revolutionary technologies looks like a small change form the status quo but turns out to be a new direction as subsequent iterations evolve.