Personal Computers as Multistratal Technology

HP-Sure-Run-Error
HP “Sure Run” technology here getting into conflicts with the OS and/or computer BIOS itself.

As I was struggling through some operating system updates and other installs (and uninstalls) this week, I was again reminded about the history of personal computers, and about their (fascinating, yet often also frustrating) character as multistratal technology. By this I mean their historically, commercially and pragmatically multi-layered nature. A typical contemporary personal computer is a laptop more often than a desktop computer (this has been the situation for numerous years already, see e.g. https://www.statista.com/statistics/272595/global-shipments-forecast-for-tablets-laptops-and-desktop-pcs/). Whereas a personal computer in a desktop format is still something that one can realistically consider to construct by combining various standards-following parts and modules, and expect to start operating after installation of an operating system (plus typically some device drivers), the laptop computer is always configured and tweaked into particular interpretation of what a personal computing device should be – for this price group, for this usage category, with these special, differentiating features. The keyboard is typically customised to fit into the (metal and/or plastic) body so that the functions of a standard 101/102-key PC keyboard layout (originally by Mark Tiddens of Key Tronic, 1982, then adopted by IBM) are fitted into e.g. c. 80 physical keys of a laptop computer. As the portable computers have become smaller, there has been increased need to do various customised solutions, and a keyboard is a good example of this, as different manufacturers appear to resort each into their own style of fitting e.g. function keys, volume up/down, brightness controls and other special keys into same physical keys, using various keyboard press combinations. While this means that it is hard to be a complete touch-typist if one is changing from one brand of laptops to another one (as the special keys will be in different places), one should still remember that in the early days of computers, and even in the era of early home and personal computers, the keyboards were even much more different from each other, than they are in today’s personal computers. (See e.g. Wikipedia articles for: https://en.wikipedia.org/wiki/Computer_keyboard and https://en.wikipedia.org/wiki/Function_key).

The heritage of IBM personal computers (the “original PCs”) coupled with the Microsoft operating systems, (first DOS, then various Windows versions) has meant that there is much shared DNA in how the hardware and software of contemporary personal computers is designed. And even Apple Macintosh computers share much of similar roots with those of IBM PC heritage – most importantly due to the influential role that the graphical user interface and with its (keyboard and mouse accessed) windows, menus and other graphical elements originating in Douglas Engelbart’s On-Line System, then in Xerox PARC and Alto computers had for both Apple’s macOS and Microsoft Windows. All these historical elements, influences and (industry) standards are nevertheless layered in complex manner in today’s computing systems. It is not feasible to “start from an empty table”, as the software that organisations and individuals have invested in using needs to be accessible in the new systems, as also the skill sets of human users themselves are based on similarity and compatibility with the old ways of operating computers.

Today Apple with its Mac computers and Google with the Chromebook computers that it specifies (and sometimes also designs to the hardware level) are most optimally positioned to produce a harmonious and unified whole, out of these disjointed origins. And the reliability and generally positive user experiences provided both by Macs and Chromebooks indeed bears witness to the strength of unified hardware-software design and production. On the other hand, the most popular platform – that of a personal computer running a Microsoft Windows operating system – is the most challenging from the unity, coherence and reliability perspectives. (According to reports, the market share of Windows is above 75 %, macOS at c. 20 %, Google’s ChromeOS at c. 5 % and Linux at c. 2 % in most markets of desktop and laptop computers.)

A contemporary Windows laptop is set up in a complex network of collaborative, competitive and parallel operations networks of multiple operators. There is the actual manufacturer and packager of computers that markets and delivers certain, branded products to users: Acer, ASUS, Dell, HP, Lenovo, and numerous others. Then there is Microsoft who develops and licences the Windows operating system to these OEMs (Original Equipment Manufacturers), collaborating to various degrees with them, and with the developers of PC components and other device makers. For example, a “peripheral” manufacturer like Logitech develops computer mice, keyboards and other devices that should install and run in a seamless manner when connected to desktop or laptop computer that has been put together by some OEM, which, in turn, has been combining hardware and software elements coming from e.g. Intel (which develops and manufactures the CPUs, Central Processing Units, but also affiliated motherboard “chipsets”, integrated graphics processing units and such), Samsung (which develops and manufactures e.g. memory chips, solid state drives and display components) or Qualcomm (which is best known for their wireless components, such as cellular modems, Bluetooth products and Wi-Fi chipsets). In order for the new personal computer to run smoothly after it has been turned on for the first time, the operating system should have right updates and drivers for all such components. As new technologies are constantly introduced, and the laptop computer in particular follows the evolution of smartphones in sensor technologies (e.g. in using fingerprint readers or multiple camera systems to do biometric authentication of the user), there are constant needs for updates that involve both the operating system itself, and the firmware (deep, hardware-close level software) as well as operating system level drivers and utility programs, that are provided by the component, device, or computer manufacturers.

The sad truth is, that often these updates do not work out that fine. There are endless stories in the user discussion and support forums in the Internet, where unhappy customers describe their frustrations while attempting to update Windows (as Microsoft advices them), the drivers and utility programs (as the computer manufacturer instructs them), and/or the device drivers (that are directly provided by the component manufacturers, such as Intel or Qualcomm). There is just so much opportunity for conflicts and errors, even while the big companies of course try to test their software before it is released to customers. The Windows PC ecosystem is just so messy, heterogeneous and historically layered, that it is impossible to test beforehand every possible combination of hardware and software that the user might be having on their devices.

Adobe-Update-Issue
Adobe Acrobat Reader update error.

In practice there are just few common rules of thumb. E.g. it is a good idea to postpone installing the most recent version of the operating system as long as possible, since the new one will always have more compatibility issues until it has been tested in “real world”, and updated a few times. Secondly, while the most recent and advanced functionalities are something that are used in marketing and in differentiation of the laptop from the competing models, it is in these new features where most of the problems will probably appear. One could play safe, and wipe out all software and drivers that the OEM had installed into their computer, and reinstall a “pure” Windows OS into the new computer instead. But this can mean that some of the new components do not operate in advertised ways. Myself, I usually test the OEM recommended setup and software (and all recommended updates) for a while, but also do regular backups, restore points, and keep a reinstall media available, just in case something goes wrong. And unfortunately, quite often this happens, and returning to the original state, or even doing a full, clean reinstall is needed. In a more “typical” or average combination of hardware and software such issues are not so common, but if one works with new technologies and features, then such consequences of complexity, heterogeneity and multistratal character of personal computers can indeed be expected. Sometimes, only trial and error helps: the most recent software and drivers might be needed to solve issues, but sometimes it is precisely the new software that produces the problems, and the solution is going back to some older versions. Sometimes disabling some function helps, sometimes only way into proper reliability is just completely uninstalling an entire software suite by a certain manufacturer, even if it means giving up some promised, advanced functionalities. Life might just be simpler that way.

Linux on Vivobook X202E

Ubuntu on Vivobook X202E
Ubuntu on Vivobook X202E

In January 2013 I bought a Asus Vivobook X202E, a small, budget class, touch screen laptop. It has now served me almost four and a half years – an eternity in ICT terms. For some time it has been upgraded from Windows 8 into Windows 10, which in principle operates rather well. It is just that the operating system eats almost all resources, and it is painfully slow to do anything useful, with contemporary web apps and browsers particularly. Even a Chromebook serves better in that regard.

Last night I tried installing Linux – Ubuntu 17.04 version – into multiboot configuration to X202E. There were certain hurdles in the setup: it was necessary to disable Secure Boot, get into the UEFI/BIOS (fast F2 pressing in boot sequence), disable Fast Boot, enable Lauch CSM (disable Launch PXE OpROM), and enable USB options, in order to make the system bootable from an USB installation stick. (Also, my first attempts were all failures, and it was only when I tried to use another USB stick when the boot from USB disk option came available in UEFI/BIOS.)

Currently, all seems to be ok in Ubuntu, and laptp works much faster than in the Windows side. The battery of this laptop has never been strong, and in its current condition I would say that 2-3 hours is probably maximum it can go, unplugged. Thermal cooling is also weak, but if run ‘indicator-cpufreq’ tool and drop the CPU into slower speeds, the system stays manageable. The reality is, however, that the realistic life cycle of this little machine is coming towards its final rounds. But it is nice to see how Linux can be used to breath some new life into the aging system. Also, the touch controls and gestures are better today in Ubuntu, than they were only few years ago. Linux is not a touch-focused operating system by design, and gestures work rather badly in e.g. Firefox – Chrome is better in that regard. Windows 10 is much more modern in that area, and pen-based computing is something that one can really integrate in one’s daily work flow only in Windows 10. But writing, coding, and various editing tasks for example can be achieved in a small Ubuntu laptop quite nicely. Chromebooks, however, are also making promising steps by opening the vast repositories of Android apps that is good news for hybrid devices and touch-oriented users. Linux remains strong as a geek environment, but when user cultures and mainstream users needs are considered, other software and service ecosystems are currently evolving faster.

Surfacing experiences

2016-02-26 18.08.19
I have been testing the Surface Pro 4 mobile device / two-in-one Windows 10 computer recently – here are some first impressions:

Windows 10 “Hello” feature with its biometric (camera) login is fast and more convenient way to log in to a mobile device that is constantly closed and opened than e.g. passwords or even a fingerprint reader – you just start the tablet and look at it, and it recognizes you and unlocks (the first times it does this feel almost magical).

After installing few essential pieces of software (and updates to the Windows 10 OS), the next thing one notices is fan noise: the process of Dropbox downloading my data from the cloud heated the system so much that the small vents were really pushing air out; on the other hand, after some OS updates, in regular use Surface Pro 4 seems to be mostly rather quiet and cool device.

The touch-screen pen that attaches to the sides of device with snappy magnets is well designed and functional; however, it takes some time to realise that the Surface Pen works in different way than most other such pointing devices. You cannot navigate, flip or scroll web pages using the pen, for example. Microsoft has decided to disable that functionality, which frankly feels pretty weird. The pen selects and draws, but you need to use your fingers to scroll through pages, that is the Surface way. Changing hands to do such basic things requires some learning. There seems to be also some inconsistency in how the pen works in different applications and OS screens, but I need to experiment further to make sure.

2016-02-26 18.09.46The most essential accessory (apart from Surface Pen) is the Type Cover, which is a pretty good keyboard & touchpad combo. It is not perfect (there is some flex, and a flappy cover is never a solid part of device like a real clamshell laptop keyboard is), but it is much better than many other keyboard covers for mobile devices. Keys have slightly rubbery feel and I cannot get as high typing speed as e.g. with a good ThinkPad keyboard or Logitech K810, for example, but with this keyboard Microsoft is almost there. The touchpad is a smooth glass thing that reacts precisely, is large enough and can handle multitouch (five simultaneous touch points), so gestures work fine. (The double-tap and select actions do not always register, however, as the touchpad is affected if Surface Pro is used in uneven or soft surfaces.) The trick is to develop the necessary skills where you automatically put your hands for some tasks to the touchscreen of Surface display, and for some to the touchpad – and then do some elements in multitasking with keyboard combos (Win-Tab, Ctrl-Tab, Alt-Tab etc.) and even then some tasks with the pen. The form factor of Surface also changes depending whether you use it with the keyboard or not, in landscape or vertical orientation, or whether the OS is in Windows 10 desktop mode or tablet mode (the “Metro” user interface that was introduced in Win 8).

This leads to the key lesson derived from testing Surface Pro 4 so far: it is essentially a “Pro” thing, rather than a casual entertainment and surf board. The lack of really high quality, polished and well-designed apps for Win10 tablet mode emphasises that the key use case still lies at the PC desktop side of things. And there is nothing wrong with that: most professionals will benefit from a fully-powered laptop that can also double as a crisp and sharp tablet for those presentation, negotiation or demo events, for example. Ability to use multiple interaction modalities and control techniques, coupled with flexibility and extensive range of different software (communications, office tools, games, media, arts, design tools, etc.) also means that the scope of uses Surface Pro 4 can handle is really great – but that the entire experience also involves its fair share of complexity. While using an iPad, for example, is so straightforward that you can hand one to your grandma and expect her to manage on her own (mostly), Surface Pro has a mixture of elements that are useful and well designed, but can at least initially confuse even a power user.

Where Microsoft cannot get full points is software finish, however. Particularly the display driver of Surface Pro appears to be still half-finished and buggy: e.g. it is now clear that one should not use the default Windows 10 Edge browser with Surface Pro 4, as entering sleep mode with the Edge open will most likely crash the display driver, and the OS even. It is common to see completely blurred, unreadable text rendered in Edge. Giving up on Edge and using Google Chrome fixes that. Another buggy thing is the way sleep mode is implemented in general. There seems to be quite a lot of Windows software that either stops Surface Pro 4 from entering the sleep mode altogether, or which keeps some processes running so intensely, that the fans keep pushing hot air out even while device is supposed to be “sleeping”, and the battery will run out quickly. (I had to uninstall Skype immediately, and Lync/Skype for Business was as bad.) The battery life is a key interest to any mobile worker, and Microsoft really needs to work on this even more. There are multiple different results in the reviews, done with wildly different settings and processor loads: some claim to get 10+ hours from Surface Pro 4, some say that in heavy use three hours is closer to reality. I still have to test this, but I would say that for typical office use, Surface Pro 4’s battery and the way Windows 10 and its current generation of drivers operate, a full working day (I mean a long working day) is probably too much to ask. This is disappointing, but I think about five hours of real-time use with moderate load and multitasking is all it can do. There might be some battery saving techniques, tweaks to the display brightness etc. that will have an effect, but most users will probably not try anything like that, and just try hunting for a power outlet throughout the day – and that is not a good thing for a cutting edge, professional device that is designed primarily for mobile use in 2016. Making a tablet that is also a PC, capable of running fully powered versions of standard productivity software is not that easy feat.

I think that Surface Pro is still “work in progress”, and there are new system software updates coming out every now and then, fixing the worst bugs (at least sometimes), but much work still remains to be done. But even in its current form, Surface Pro 4 might be the optimal compromise for some – most probably for some experienced Windows power users that have need for all that flexibility and multiple use cases that Surface Pro 4 affords, and who are also willing to find solutions and work-arounds for bugs, and to learn new ways of working and handling their tools, in order to get the most out of this “mobile workstation”.

More information: https://www.microsoft.com/surface/ (Microsoft’s marketing pages for Surface Pro).

Edit: I have now (29 Feb, 2016) been using SP4 for a few full work days, and while using Chrome and avoiding installing any more sleep-messing software (Skype, Lync, Win10 ‘Messaging/Skype Video’ app), the situation has been much better than initially, the battery life remains as the main bottleneck. Perhaps bit over a half of regular, intensive work day, and you need to find the power brick. But what this tool delivers, I love: it is light enough (though more hefty and solid than an iPad, of course), and capable enough to run whatever text, media, graphics software I have thrown at it. Game testing is the next in line, and while I do not have spectacular expectations (this has no powerful discrete graphics card), it should manage some DOTA, Minecraft etc. We’ll see.

2016-02-26 18.13.40