Tag: Cellular Telephones

Year of the GNU/Linux Smartphone?

I don't much care for Apple's phone ecosystem or Google's.

I've got an old Nexus 5, and it's running LineageOS, an alternative version of Android that doesn't include proprietary Google code. Wherever possible, I use open-source software from F-Droid; where I still need the occasional proprietary app, I use Amazon's app store or Yalp Store, a program which can pull binaries from the Play Store without requiring the Play Store to be installed.

It works pretty well, for the most part, but my phone's showing its age. It doesn't support LineageOS 15, and the regular updates to 14 have slowed to monthly security patches. On top of that, I recently had an issue with the power button and had to take it in for repairs.

But I don't want to get a new Android phone. The reason I fixed my Nexus 5 instead of replacing it is that there are some alternatives coming later this year that are neither Android nor iOS, and I want to wait and see what happens with those.

Before I go any farther, I'm going to get into a note about nomenclature.

There's an operating system that most people call Linux. More precisely, it uses a kernel called Linux and a collection of userland programs called GNU. The makers of GNU ask that people call the operating system GNU/Linux; here are a few links that explain their reasoning:

GNU founder Richard Stallman's reasons for calling the OS "GNU/Linux" are primarily ideological, but there is a practical reason to call it that, too: Google has released two operating systems that use the Linux kernel but not the GNU userland. Those operating systems are Android and ChromeOS.

So if I say "a Linux phone," that includes Android. But if I say "a GNU/Linux phone," I'm explicitly talking about a phone that doesn't run Android.

With that explanation out of the way, I want to talk about GNU/Linux phones.

The most mature GNU/Linux phone OS is Sailfish, a descendant of Nokia and Intel's now-defunct MeeGo developed by a Finnish company called Jolla. I've looked into Sailfish OS, but its device support is very limited, and the OS has proprietary components. Given that I'm trying to get away from proprietary software as much as I can, I don't see Sailfish as an improvement over LineageOS.

There's also Ubuntu Touch. While Ubuntu parent Canonical is no longer developing Ubuntu Touch, a community called UBports has continued development.

I tried Ubuntu Touch on my Nexus 5 back in 2017. I was impressed by how mature it was and how much I could do with it -- but I couldn't get it to work with Sprint service. I posted a help request on the forums; nobody ever responded. It's been some time and it's possible that whatever issue I was having does not exist in the current version -- but I'm not in a hurry to try again.

I did recently buy a OnePlus One which I'm testing UT out on, and it's really coming along. There are definitely some pain points (the keyboard is terrible), but if I had to use it as a daily driver, I could. Provided I could get it to work with my wireless network.

Course, if I want Ubuntu Touch to get better, that's something I can help out with myself. It's an open-source project, and I'm a computer programmer. I can contribute code myself, and the only thing stopping me from doing it is sitting down and taking the time to do it. I gotta figure at least some of the keyboard design problems are things I could figure out how to fix.

But there are other alternatives besides Ubuntu Touch, too.

postmarketOS is a phone OS based on Alpine Linux and Plasma Mobile. It looks promising, but it's still in alpha; a Nexus 5 running postmarketOS can make phone calls, but the audio doesn't work.

But perhaps most interestingly, there are phones coming out later this year that will run GNU/Linux distros out of the box.

The Purism Librem 5 is an upcoming GNU/Linux phone focused on free/open-source software, privacy, and security; it's built on PureOS, which uses the GNOME desktop environment, but also plans to support Plasma and Ubuntu Touch. It's currently scheduled for release in Q3 2019, though it's been delayed twice already, so that date could slip again.

The biggest barrier is the price. Freedom, as they say, isn't free; the Librem 5 doesn't have the most impressive specs, but it costs $650 for a preorder and will cost $700 after launch. And I'm sure not going to preorder a phone with an untested operating system before any of the reviews are in.

While I greatly appreciate what Purism is doing, $700 is a lot to ask.

That's why I'm more interested in the PinePhone, another forthcoming GNU/Linux phone (this one based on Plasma) expected to sell for $150.

For that price, I don't expect a high-end phone. PINE64 makes low-end single-board computers; think Raspberry Pi -- so I expect this will be pretty close to a Raspberry Pi with a screen attached to it. And for $150, I don't expect it to be a particularly good screen.

But for that price, it's sure tempting to try it out; I'm not expecting a great phone, but I'd be very impressed if it's even an adequate phone. I'll be keeping an eye on this one.

There are a few other entrants here. Necunos Solutions has a mobile device coming that's based on GNU/Linux and Plasma Mobile -- but I wouldn't call it a phone, because it doesn't have a cellular modem. At 1200 euros, it seems more like an expensive boondoggle than a real contender -- but every open-source project helps upstream, and at minimum, the Necunos Mobile should contribute some useful code that other projects can use.

There's also last year's Gemini, an oldschool-style clamshell phone with a full hardware keyboard that's designed for Android but also supports a GNU/Linux dualboot. That said, it looks like it's still pretty early days for GNU/Linux support, and Xfce and LXQT sure don't look like desktops I want to use with a touchscreen.

Ultimately, I think this is a pretty exciting time. With the Librem 5 and the PinePhone hopefully coming this year, UBports getting better all the time, and postmarketOS, er, approaching the point where you should be able to make a phone call and hear the person on the other end, I'm hoping this may be the year that GNU/Linux becomes usable as a daily driver. Not for end users; it's certainly not going to be as fully-featured or easy-to-use as desktop Linux has become (my grandpa uses Linux Mint). But for the sort of power users who were running GNU/Linux on their desktop 15 or 20 years ago. Guys like me.

Fingers crossed. Especially for the PinePhone. Hope my Nexus 5 holds out until then.

School of Wizardry

I've been listening to Jeremy Parish's interview with Robert Woodhead, the co-creator of Wizardry. It's a great interview and recommended.

I think about Wizardry sometimes. I first played it on the Mac.

If you pull up the original Wizardry on archive.org, or if you go looking for screenshots, here's the kind of thing you can expect to see:

Wizardry for Mac with lineart dungeon graphics
Via Hardcore Gaming 101, which has a great comparison of the various editions of the game.

You can get more detailed maze graphics by maximizing the window, but at 512x342 that comes at the cost of having to move other windows on top of each other to fit:

Wizardry for Mac with detailed dungeon graphics
I took this screenshot myself.

Of course, if you want to get fancy, you can try emulating a later version of MacOS with a higher resolution, and then you'll have plenty of room. Like these madmen here:

At any rate, I've gone back and tried some of the other versions of Wizardry, but I still think the Mac version is the best, with its GUI and its more detailed graphics. It's not perfect -- look how small the maze window is, even at its larger size; and why does the Castle window need to be visible when you're in the maze? -- but the game is well-suited for a point-and-click, drag-and-drop interface.

The first five Wizardry games aren't currently sold for modern systems, but GOG and Steam both sell Wizardry 6 bundled with DOSbox. So why not sell the Mac versions of the earlier games and bundle them with Mini vMac? I guess I'm not sure what the legality is of distributing old versions of the MacOS; they might need a license from Apple in addition to getting one from whatever company owns Wizardry these days.

I've also often wondered why nobody's ever remade the original Wizardry for modern computers, taking the Mac version as a base and adding quality-of-life improvements. The closest thing I've ever seen is a Japanese remake of the first three games called Wizardry: Llylgamyn Saga that was released for Windows (as well as PlayStation and Saturn) in 1998.

Wizardry: Llylgamyn Saga for Windows
Via Hardcore Gaming 101

Llylgamyn Saga is not quite what I'm talking about; I tried it a few years back and my impression was that it was a Windows port of a console game and its interface felt like it. It simply didn't handle as smoothly with a mouse as the Mac version.

What I'd like to see? Remake the original game. Use touchscreen devices as the primary platform. Copy Etrian Odyssey's mechanic of using the touchscreen to map the dungeon as you go, the way we had to use graph paper in the old days.

Etrian Odyssey Untold 2
Etrian Odyssey Untold 2
Via Jeremy Parish -- him again! -- at USgamer

Using half a phone screen wouldn't be so different from EO using the DS/3DS touchscreen. The biggest immediate hurdle I can think of is fat fingers: Etrian Odyssey is designed for a stylus; drawing with a finger would mean the grid squares would have to be larger. Pinch-to-zoom would be a good idea, or just a toggle to zoom the map in or out. Build to accommodate different resolutions; there's no reason a tablet user should be stuck with a map that's sized for a phone. Of course you could hide the map during combat, menu navigation, in town -- anywhere where it's not necessary. Use a point-and-click, drag-and-drop interface similar to the Mac version; when you go into town, you can drag-and-drop characters between the active party and the reserves.

Add some modern quality-of-life improvements, too. Obviously the weapons shop should behave like it would in a modern RPG: compare a highlighted weapon to the weapon a character currently has equipped. (If it'll fit onscreen, show how it compares to the weapons every character has equipped.)

And allow users to toggle the oldschool rules. Let them play with original inscrutable spell names, or with simple, plain-English ones. Allow them to disable characters aging on a class change, or the possibility of a teleport spell going wrong and permakilling the entire party. Hell, allow a mode where players can navigate through the maps they've made and point to the square they want to teleport to, or even set waypoints so they don't have to do that every time. Maybe even allow them the option of seeing monsters, treasure chests, and other points of interest before walking into them.

Once you've rebuilt the first game in this new engine, it wouldn't be hard to do the second and third. 4-7 would require more work but would be possible. Probably not 8, as it abandons the grid format in favor of free movement.

Hell, open it up. Since I'm dreaming anyway, I might as well say open-source the whole thing -- but failing that, at least release a level editor.

Maybe the best way to go about this would be for a fan group to start by creating a game that's Wizardry-like but noninfringing -- similar D&D-style rules, similar generic fantasy races, classes, and monsters, but different maps, spells, enemy behaviors, etc. -- and then, once they've released a finished game, make an offer to whoever it is who owns the Wizardry copyrights these days to port the original games to the new engine.

A man can dream.

Android Without Google

In my last couple of posts, I've talked a bit about the drawbacks of iOS and Android, but acknowledged I've found the alternatives lacking. Ultimately, I went back to Android -- but not stock Android.

Android -- at least, the base OS -- is free/open-source software. As such, there are many different variations of Android available.

Replicant is the only Android variation endorsed by the GNU Project; it seeks to provide an Android experience with only free/open software. Unfortunately, it has drawbacks: it has a very limited number of supported devices, the most recent of which is the Samsung Galaxy Tab 3, which was released in 2013. Replicant itself isn't quite that outdated; the latest version is 6.0, based on Android 6.0 Marshmallow (2015). And even though Replicant itself is free, it still requires proprietary firmware in most cases.

I've ultimately settled on LineageOS, an Android distribution descended from the previous CyanogenMod project.

You can install Google Services and Apps (Gapps) on top of LineageOS, but on my latest installation, I opted not to do that. I get most of my Android software from F-Droid, a free software repository.

I do run a few proprietary apps; the Amazon App Store is one source, and there's a program called Yalp Store (you can get it from F-Droid) that lets you download apps from the Google Play Store without installing Gapps -- though keep in mind that does violate Google's terms of service.

Someone also recently recommended microG to me; it's a free re-implementation of Google Services. I haven't tried it out yet, but it looks promising.

All in all, I was surprised by just how easy it ended up being running an Android-based OS without Google's proprietary apps and services. That's easy for values of "easy" that include being comfortable flashing your phone, of course, but so far it's worked out pretty well for me.

I'd sure like to see one of those alternatives get a better foothold, though. More competition is good for everybody, especially if that competition comes from free software.

Android Alternatives

Yesterday I talked a little bit about Ubuntu Touch, a would-be alternative smartphone OS based on GNU/Linux (that is to say, the Linux kernel and GNU userland, as opposed to Android, which is based on the Linux kernel and Google's own userland).

There are other phone OS's out there, too.

Jolla's Sailfish is another GNU/Linux-based OS, based on Nokia's abandoned MeeGo platform. It's the most mature of the lot, but supports a limited number of devices. I haven't tried it because the port for my phone, the Nexus 5, hasn't been updated since 2015. But it appears to have pretty good support for Sony Xperia phones, and it runs Android apps through a compatibility layer, though my understanding is that that compatibility layer is proprietary, drains the battery significantly, and doesn't have full compatibility.

Other than iOS, Android, and, to a lesser extent, Windows Phone, Ubuntu Touch, and Sailfish, there aren't a lot of mobile OS's that are ready for prime-time. KDE's Plasma Mobile is still in early stages; the steps for setting it up on a Nexus 5 indicate that it's strictly for developers right now.

GNOME doesn't have much of a mobile presence at this time, either, though Purism has announced that its upcoming Librem 5 phone will feature a GNOME desktop (with Plasma as an alternative option).

There's also LuneOS, a fork of Palm/HP's webOS (which, like Android, is based on the Linux kernel but not the GNU userland). It's still early days too.

I also just ran across postmarketOS, whose homepage says "The project is at very early stages of development and is not usable for most users yet." (Boldface in original.)

One of the biggest problems facing all these projects is the proliferation of different Android devices, most of which rely on proprietary firmware for hardware support. There is a project in the works that should help with the hardware support issues (though not with the inherent problems of proprietary firmware); it's called Halium, and it should make development much easier for all these projects.

In the meantime, though? You're probably stuck with iOS or Android -- Apple's walled garden or Google's spyware.

There are ways to run Android without Google services or proprietary software. I'll get to that tomorrow.

The Sorry State of Smartphones

It's disappointing that the smartphone market has turned into a choice between two OS's: iOS's walled-garden approach where Apple decides what software you're allowed to run on the phone that you ostensibly own, and Android's spyware panopticon security nightmare.

There are a few alternatives, none of them very good.

A few months ago, I tried switching from Android to Ubuntu Touch. Canonical abandoned Ubuntu Touch a few months back, but it's still under development by a small community-based group called UBports.

Here's what I wrote at the time (originally posted on Brontoforumus, 2017-07-03):


It's a pretty different idiom from Android (no ubiquitous three buttons at the bottom of the screen, though their functionality is there; swipe from the left edge of the screen to get a dock, from the right edge to get a Windows 7-style list of open programs, and the Back button is handled at the app level), but I could get used to it, and the list of available apps seemed sufficient for my day-to-day use.

The only real problem was that the phone didn't work.

I fucked around with the settings for awhile but all I managed to accomplish was to change what it said under "carrier" from "Sprint" to "none".

So I decided to give LineageOS another shot. (Well, technically my first time using it as LineageOS, but I used it plenty when it was Cyanogenmod.) It appears that I've mostly fixed the Sprint issues I had with it before.

But I thought Ubuntu was pretty impressive, and I intend to give it another shot someday. Maybe once they finish updating it to a 16.04 base.


I should probably update my post about getting Sprint to work on LineageOS (then CyanogenMod); I need to update the title and the links, and add the last step that finally got it (mostly) working.

I've managed to do okay without Gapps, too -- but maybe I'll get to that another time.

Where Will the PC Go? -- Part 3: Business

Over the past couple of posts, I've given some of the reasons I think tablet PC's could replace traditional desktops and laptops. Today I'm going to talk about why I don't think that's going to happen anytime soon: the business market.

In enterprise, Microsoft still rules the roost, with Windows and Office. The lock-in is strong.

And while the BYOD trend isn't likely to go away, and in fact there are some major features of Android Marshmallow that are designed to make it easier to use a phone with dual profiles for home and work, that's still a far cry from replacing work-provided computers with devices that workers bring from home.

And there's a simple reason why: whatever costs a company incurs by buying a computer for every one of its employees are offset by standardizing on hardware and software to make IT's job easier. When everybody's running the same few programs on the same few models of computer, it limits the number of potential compatibility issues. When every computer is running the same stock image, it's easier to control devices' security, and when IT pushes every software update, it limits the possibility that the latest patch will break anything. And when a computer does break down, it makes it easy to replace it with a machine of the same model with all the same software and settings.

And when data is stored on an internal company server, it's less vulnerable than if it's in somebody's Google Docs account, or Dropbox, or whatever the hell MS and Apple call that thing where your home directory automatically gets uploaded to their servers now.

And that's just talking general best-practices for every company. You start getting into companies (and government agencies) where security is tightly restricted, whether that be military, intelligence, healthcare, or just a lot of sensitive proprietary information, and there's no fucking way you're going to allow people to use their personal devices for work.

(Unless you're the Director of the CIA and send confidential information to your personal fucking AOL account. But I digress.)

Convertibles

All that said, business has already started transitioning away from desktops to laptops, and I can foresee the possibility of Windows-based convertible tablets like the Lenovo Yoga and the MS Surface picking up some traction. I don't think it would be a BYOD scenario; I don't think businesses are apt to move their operations over to workers' own personal tablets -- but they could eventually start equipping every worker with a company-supplied tablet instead of a company-supplied laptop.

But first, prices are going to have to drop. The reason laptops passed desktops is that their prices approached parity; that hasn't happened with tablets yet. You can get a respectable mid-range Lenovo laptop for under $400; you can get a Lenovo tablet with a keyboard in that price range, but it's going to come with pretty anemic specs. 2GB RAM and 32GB internal storage is okay for a tablet, and might work for a device you only use when you're traveling, but I don't think a machine like that is good enough to use as a daily driver, even for end-users who only need Windows and Office. If you want a convertible tablet with comparable specs to a mid-range laptop, you can expect to pay 3 times as much -- at least, for now. Moore's Law is still in effect, and that gap's going to close, just like the gap between desktops and laptops did.

SaaS

There's one more factor that can make the puny specs of a 32GB tablet moot: apps that run in a browser instead of locally. Office 365 could potentially replace the traditional client-side version of MS Office for business users.

But most business users don't just use Microsoft Office. I've worked at companies both big and small, and nearly all of them have some sort of ancient proprietary program that they rely on for day-to-day use, and often several. Transitioning from an already-long-in-the-tooth program to a new one that performs the same features but runs on a server is not a quick, easy, or cheap task.

I'll talk more about SaaS in the next post -- and, in particular, the challenges it faces in displacing high-performance applications like multimedia editors and games -- and I think it's making major inroads. But the business sector depends so heavily on legacy software that I just don't see it transitioning entirely to the cloud within the next decade. We'll have cost-competetive convertible tablets before we have every app in the cloud.

Where Will the PC Go? -- Part 2: Possible Solutions

In my previous post, I established that, despite strides made in screen keyboards and text-to-speech programs, a hardware keyboard is still the best way to write text documents.

In this one, I'll look at how phones and tablets work as replacements for PC's.

Problem 3: Phones Are Still Phones

Of course, you can connect a phone to a computer monitor, and to a keyboard. Or to a game controller.

Awhile back I hooked my phone up to my TV, and paired it to my DualShock 4, and fired up Sonic 4.

The game ran fine -- I didn't like it very much but it ran fine.

And then my mom called me.

The game stopped, and my TV screen filled up with a message that I was getting a phone call. So I walked across the room, picked up my phone, disconnected it from my TV, and answered it.

This is not optimal behavior for a computer.

Now, there are possible ways to fix this.

Headsets and speakerphone are two ways to answer the phone without having it in your hand, but neither one is optimal. Speakerphone is often hard to hear and can have that awful echo. And as for headsets, well, do I carry one in my pocket? Do I keep one in every room where I might dock my phone and use it as a computer?

A better solution would be to "connect" your phone to a monitor and speakers wirelessly, maybe using a device like a Chromecast. That way you could keep it next to you, or in your pocket, while still editing documents, or playing Sonic 4, or whatever. And if it rang, you could answer it, and not lose whatever was on your screen -- say I get a call where I want to take notes with my keyboard (as frequently happens); there could be a way to do that.

But the easier solution is probably to have the device that's connected to your keyboard and monitor(s) not be your phone. Especially if people continue to buy other devices, such as laptops or tablets.

Problem 4: Phone Interfaces Don't Make Good Desktop Interfaces

Windows 8. Do I even need to elaborate?

Microsoft tried to design an interface that would work on phones and on desktops. It was a huge failure.

This was entirely foreseeable. A 4" touchscreen is completely different from a pair of 1080p monitors with a keyboard and mouse attached to them. An interface designed for the former is a lousy fit for the latter, and vice-versa.

So, with Windows 10, Microsoft tried something else, and something altogether more sensible: the OS was designed with a phone/tablet interface and a desktop computer interface, with the ability to switch between the two. If you connect your phone to a dock that's hooked up to a monitor, a keyboard, and a mouse, then the interface changes to desktop mode.

Which is a good idea (and one that Canonical has been moving toward for years), but Windows Phone hasn't exactly set the world on fire (and Ubuntu Phone isn't a thing that anybody seems to want). Windows tablets, on the other hand, including Lenovo's Yoga series and MS's own Surface line, have fared much better.

Google's moving toward this sort of convergence too; it hasn't gotten as far as MS or Canonical yet, but there have been hints of future compatibility between Android and ChromeOS.

Ah yes, ChromeOS -- and the return to dumb terminals running server-side programs.

I think that's going to be key to bringing a few of the major special-case users on board with the transition to lower-powered systems: gamers and media designers.

We'll get to them soon. But in the next post, I'll be looking at the market that's really going to continue driving PC sales: business.

Where Will the PC Go? -- Part 1: Identifying the Problem

The other day, Ars Technica posted an article called Cringe-worthy “PC Does What?” campaign wants you to upgrade, about a new ad campaign the PC industry is pushing to try and convince users to buy new computers.

The PC industry is in trouble. It's built around a pattern of regular upgrades that customers just aren't buying anymore. And it's trying whatever it can to stop the bleeding.

On the other hand, rumors of its demise have been greatly exaggerated. In the comments thread on the Ars article, someone named erikbc said:

Well, if anyone believes PC is dead they need to get their head checked.
And understand some numbers:

https://en.wikipedia.org/wiki/Usage_share_of_operating_systems#Desktop_and_laptop_computers

A user named has responded:

…said every horse-and-buggy salesman in 1900 ever.

Which, okay, doesn't actually make a whole lot of sense. (In fact I am fairly confident that very few horse-and-buggy salesmen in 1900 ever said "If anyone believes PC is dead they need to get their head checked" and then linked to Wikipedia.) But, like many shitty analogies do, it got me thinking about why it was a shitty analogy.

Mainly, I don't think the PC will go away to the extent that horse-drawn carriages have. I think it's possible that tablets could completely replace desktop and laptop computers, but I don't think that can happen until they effectively duplicate the functionality of PC's -- in effect not actually replacing PC's but becoming them.

General Case: Typical End Users

While it's easy to point to the rise of the smartphone as the reason for declining PC sales, it's only one of the reasons. There's another one: the last processor most end users will ever need was released in 2006.

A typical end user only needs a few things in a PC: a web browser, an office suite, music, and videos. (And those last three are, increasingly, integrated into the first one; I'll circle back to that in a later post.)

In 2006, Intel released the Core 2 Duo, which, paired with even a low-end onboard graphics chip, could handle HD video and drive two 1920x1080 monitors. And it's 64-bit, so it can handle more than the 3GB of RAM that 32-bit processors max out at.

There have been plenty more, and plenty better, processors in the 9 years since. But they're not better for people who only use their computer for browsing, Office, listening to music, and watching videos. The Core 2 Duo was good enough for them.

There are people who greatly benefit from newer and better processors -- gamers and people who produce media rather than just consuming it. But they're special cases; I'll get to them later. For the average user, the difference between a Core 2 Duo and a Core i7 isn't even noticeable.

The computer industry grew up in the 1990's around the expectation that people would upgrade their computer every few years to handle new software. And people just don't do that anymore. They buy a new PC when the old one quits working; not before.

But, at least at this point, they still need a PC. People may be buying more phones than PC's, but, at least in America, a phone is not a replacement for a PC.

Problem 1: Screen Keyboards

Screen keyboards are a pain in the ass.

They're fine for short communication -- text messages and tweets -- but they're just too slow and imprecise for long-form writing. (I thought of writing this post entirely on a screen keyboard -- like last week's handwritten post -- but I think that would make me want to gouge my eyes out.)

There are still plenty of requirements for longform writing in day-to-day life -- reports for school and reports for work, for starters. And that's even in professions where you don't have to write for a living, never mind ones where you do. People who write articles, and especially people who write books, are best served with a keyboard to type on.

And maybe that won't always be the case. Maybe kids growing up with screen keyboards aren't learning to type on traditional keyboards; maybe they're faster with screen keyboards than they are with hardware ones. Maybe, within a generation, we will see essays, reports, articles, even books, all written with screen keyboards. I suspect that if we do, they'll look a whole lot different than they do today.

Or maybe screen keyboards will get better. Maybe predictions and autocorrect will improve. Maybe a faster paradigm than qwerty + swipe will catch on. There's a lot that can happen in this space.

Or maybe we won't be using keyboards at all.

Problem 2: Text-to-Speech

Speech recognition software has grown by leaps and bounds. Terry Pratchett used Dragon Dictate and TalkingPoint to write his last few novels.

But being good enough for a first draft, for a user who is no longer physically capable of using a keyboard, isn't the same thing as being able to recognize a full range of standard and nonstandard grammars and sentence structures, pick correct homonyms, and understand slang and regional dialects. (Pratchett liked to tell the story of how he had to train his text-to-speech software to recognize the word "arsehole".)

Text-to-speech software might be good enough for simple, clear documents, such as manuals, lists, daily work logs, AP-style newsbriefs, and technical writing (provided you're writing on a subject that doesn't have a lot of jargon words that don't appear in a simple dictionary). But for writing that's meant to convey personality -- editorials, reviews, fiction, even this blog post -- text-to-speech algorithms have a long way to go.

So, for now at least, a good old hardware keyboard remains the best way to input large blocks of text into a computer. In my next post, I'll examine why a dedicated PC is still the best thing to connect to that keyboard, and how phone and tablet OS's are (or aren't) working to bridge that gap.

Stuff On Screens

Handwriting
Type

This blog post is handwritten.  Instead of alt text, the complete text is transcribed in the Typed tab.


Yesterday I ran across two 2013 articles about books, literacy, and libraries in the Guardian, one by Neil Gaiman and the other by Susan Cooper. The Gaiman one is excellent, but I was disappointed by Cooper's, partly because it digresses substantially from its point, but mostly because of a couple of paragraphs I can't stop thinking about. She starts off quoting a talk she gave in 1990:

"We – teachers, librarians, parents, authors – have a responsibility for the imagination of the child. I don't mean we have to educate it – you can't do that, any more than you can teach a butterfly how to fly. But you can help the imagination to develop properly, and to survive things that may threaten it: like the over-use of computers and everything I classify as SOS, Stuff on Screens. I do realize that the Age of the Screen has now replaced the Age of the Page. But on all those screens there are words, and in order to linger in the mind, words still require pages. We are in grave danger of forgetting the importance of the book."

All that was 23 years ago and it's all still true. The screens have just grown smaller, and multiplied. In America, there are already a few digital schools, which have no books, not even in the library. And in schools across America, so many children now work on laptops or tablet computers that cursive handwriting is no longer being taught. Maybe that's also happening here. I suppose that's not the end of the world; lots of authors write their first drafts on a computer, though I'm certainly not one of them. But there's something emblematic about handwriting, with its direct organic link between the imagining brain and the writing fingers. Words aren't damaged by technology. But what about the imagination?

I am not a luddite. I've written screenplays for small and large screens. I love my computer. But as you can tell, this last author of the weekend is offering an unashamed plea for words on pages, for the small private world of a child curled up with a book, his or her imagination in direct communication with the imagination of the person who wrote the words on the page.

I have a great deal of respect for Ms. Cooper. The Dark is Rising Sequence meant a lot to me when I was a kid. And I absolutely agree with her premise that books and libraries are vital and that we must continue to treasure, support, and protect them, even in an increasingly digital world.

But her handwringing about Kids Today and their Screens just strikes me as a bunch of Old Person Nonsense.

At least she acknowledges that the decline of cursive is no big deal.

I heard my aunt bemoan the lack of cursive education in schools recently. My response was, "What the hell do kids need to know cursive for?" It's harder to read than print, it's (at least for me) harder and slower to write than print, and in the twenty-first century it's about as essential a communication skill as Latin. It may be an interesting subject to study, but it's hardly a necessary one.

In sixth grade, I had two teachers who wouldn't let us submit typed papers. Everything had to be written in ink, in cursive. One of them even had the gall to justify this restriction by saying "This is how adults communicate."

Well, it's twenty-one years later, and you know what? I can't think of a single time in my adult life that I've ever written anything in cursive. I don't even sign my name in cursive.

You know what I, as an adult, do use to communicate, each and every single day of my life? A goddamn computer.

I'm a Millennial. At least, I think I am; nobody seems to agree on just what the fuck a Millennial is, exactly. But consensus seems to be that I'm on the older end of the Millennial Generation, and I certainly seem to fit a lot of the generalizations people make about Millennials.

I've been online since I was six years old (though I didn't have a smartphone until I was almost 30); I grew up with Stuff on Screens.

And that means I read a lot.

As far as Stuff on Screens and literacy, I'm inclined to agree with Randall Munroe:

XKCD Writing Skills strip

I'd like to find a corpus of writing from children in a non-self-selected sample (e.g. handwritten letters to the president from everyone in the same teacher's 7th grade class every year)--and score the kids today versus the kids 20 years ago on various objective measures of writing quality. I've heard the idea that exposure to all this amateur peer practice is hurting us, but I'd bet on the generation that conducts the bulk of their social lives via the written word over the generation that occasionally wrote book reports and letters to grandma once a year, any day.

Millennials read all the time, and we write all the time. And that promotes the hell out of literacy, no matter how goddamn annoying it is to see somebody spell the word "you" with only one letter.

Per Cooper's contention that people experience a closer kind of bond with words on paper than words on screens, research indicates that this distinction is decreasing as more and more people become accustomed to screens. Via Scientific American:

Since at least the 1980s researchers in many different fields—including psychology, computer engineering, and library and information science—have investigated such questions in more than one hundred published studies. The matter is by no means settled. Before 1992 most studies concluded that people read slower, less accurately and less comprehensively on screens than on paper. Studies published since the early 1990s, however, have produced more inconsistent results: a slight majority has confirmed earlier conclusions, but almost as many have found few significant differences in reading speed or comprehension between paper and screens. And recent surveys suggest that although most people still prefer paper—especially when reading intensively—attitudes are changing as tablets and e-reading technology improve and reading digital books for facts and fun becomes more common. In the U.S., e-books currently make up between 15 and 20 percent of all trade book sales.

Now, there are ways in which physical books are superior to digital ones. One is DRM. DRM is a blight; it is a threat to libraries, to academia, to preservation, and to the very concept of ownership.

But it's also optional. Its not an inherent part of ebooks; it's bullshit added to them by assholes. And I suspect that, within a generation, it will be gone, just as music DRM has been gone for about a decade now.

There's one more case where paper books are superior to digital ones: pictures. I've already spoken at length about comic books shrunk to fit a 10" screen, as well as the color problems that can arise when they're not printed on the same paper stock they were designed for. The same goes for picture books, art books, photo books; for magazines whose layouts are designed for the printed page. When you put these things on a small screen, you do lose something tangible (and if you put them on a large screen, you lose portability).

On the other hand, I've currently got some 173 books and 362 comics on a 10" rectangle that fits in my backpack, and that is amazing.

People carry libraries in their pockets now. That's not a threat to literacy, it's a boon -- so long as voters and politicians understand that these portable libraries are not meant to replace the traditional kind, but to supplement them.

But for people who love books -- at least, people of my generation who love books -- it's not an either-or question. It's not "Should I read paper books, or digital ones?" It's "Holy shit, look at all the books I have access to, and all the different ways I can read them!"

The first iPhone was released in 2007. It's too early to gauge what long-term effects, nationally or internationally, the smartphone revolution will have on literacy and reading habits.

But I'm more inclined to agree with Munroe than Cooper: a generation that's reading and writing all the time is going to be better at reading and writing than one that isn't. Even if you think they're doing it wrong.


An angry hat tip to Scott Sharkey, who used to handwrite blog posts, which gave me the utterly terrible idea for this time-consuming pain-in-the-ass of a post. (Granted, I'm pretty sure he had the good sense never to do it with a six-page essay with working links.)

Also, the part where I printed an image and then re-scanned it is kind of like something this one angry lady on a My Little Pony fan site did once.

(And yes, I'm aware that I forgot to use blue pencil for the Scientific American link. I am not going back and redoing it. That's the thing about writing stuff out on paper: it's kinda tough to add formatting to something after you've already written it.)

E-Mails and Passwords

So the other day I decided it was past time to reset all my passwords.

I'm pretty good about password hygiene. I've been using a password locker for years, with a unique, randomly-generated* password for every account I use. But I'll admit that, like most of us, I don't do as good a job of password rotation as I might. That's probably because I've managed to amass over 150 different accounts across different sites, and resetting 150 different passwords is a giant pain in the ass.

(I'm thinking that, from here on in, I should pick a subset of passwords to reset every month, so I never wind up having to reset all 150 at once again. It would also help me to clear out the cruft and not keep logins for sites that no longer exist, or which I'm never going to use again, or where I can't even find the damn login page anymore.)

There was one more reason I decided now was a good time to do a mass update: I've got two E-Mail addresses that have turned into spam holes. As I've mentioned previously, I'm currently looking for work and getting inundated with job spam; unfortunately I went and put my primary E-Mail address at the top of my resume, which in hindsight was a mistake. Never post your personal E-Mail in any public place; always use a throwaway.

Which I do, most of the time -- and that's created a second problem: I've been signing up for websites with the same E-Mail address for 15 years, and also used to use it in my whois information. (I've since switched to dedicated E-Mail addresses that I use only for domain registration.) So now, that E-Mail has turned into a huge spam hole; it's currently got over 500 messages in its Junk folder, and that's with a filter that deletes anything that's been in there longer than a week. My spam filters are well-trained, but unfortunately they only run on the client side, not the server side, so any time Thunderbird isn't running on my desktop, my spam doesn't get filtered. (If I'm out of the house, I can tell if the network's gone down, because I start getting a bunch of spam in my inbox on my phone.)

So now I've gone and created two new E-Mail addresses: one that's just for E-Mails about jobs, and another as my new all-purpose signing-up-for-things address.

My hope is that the companies hammering my primary E-Mail address with job notifications will eventually switch to the new, jobs-only E-Mail address, and I'll get my personal E-Mail address back to normal. And that I can quit using the Spam Hole address entirely and switch all my accounts over to the new address. Which hopefully shouldn't get as spam-filled as the old one since I haven't published it in a publicly-accessible place like whois.

Anyway, some things to take into account with E-Mail and passwords:

  • Don't use your personal E-Mail address for anything but personal communication. Don't give it to anyone you don't know.
  • Keep at least one secondary E-Mail address that you can abandon if it gets compromised or filled up with spam. It's not necessarily a bad idea to have several -- in my case, I've got one for accounts at various sites, several that I use as contacts for web domains, and one that's just for communication about jobs.
  • Use a password locker. 1Password, Keepass, and Lastpass are all pretty highly-regarded, but they're just three of the many available options.
  • Remember all the different devices you'll be using these passwords on.
    • I'm using a Linux desktop, an OSX desktop, a Windows desktop, and an Android phone; that means I need to pick a password locker that will run on all those different OS's.
    • And have some way of keeping the data synced across them.
    • And don't forget that, even with a password locker, chances are that at some point you'll end up having to type some of these passwords manually, on a screen keyboard. Adding brackets and carets and other symbols to your password will make it more secure, but you're going to want to weigh that against the hassle of having to dive three levels deep into your screen keyboard just to type those symbols. It may be worth it if it's the password for, say, your bank account, but it's definitely not worth it for your Gmail login.
  • Of course, you need a master password to access all those other passwords, and you should choose a good one. There's no point in picking a bunch of unique, strong passwords if you protect them with a shitty unsecure password. There are ways to come up with a password that's secure but easy to remember:
    • The "correct horse battery staple" method of creating a passphrase of four random words is a good one, but there are caveats:
      • You have to make sure they're actually random words, words that don't have anything to do with each other. Edward Snowden's example, "MargaretThatcheris110%SEXY.", is not actually very secure; it follows correct English sentence structure, "MargaretThatcher" and "110%" are each effectively one word since they're commonly-used phrases, the word "SEXY" is common as fuck in passwords, and mixed case and punctuation don't really make your password significantly more secure if, for example, you capitalize the beginnings of words or entire words and end sentences with periods, question marks, or exclamation points. Basically, if you pick the words in your passphrase yourself, they're not random enough; use a computer to pick the words for you.
      • And this method unfortunately doesn't work very well on a screen keyboard. Unless you know of a screen keyboard that autocompletes words inside a password prompt but won't remember those words or their sequence. I think this would be a very good idea for screen keyboards to implement, but I don't know of any that do it.
    • There are programs and sites that generate pronounceable passwords -- something like "ahx2Boh8" or "ireeQuaico". Sequences of letters (and possibly numbers) that are gibberish but can be pronounced, which makes them easy to remember -- a little less secure than a password that doesn't follow such a rule, but a lot more secure than a dictionary word. But read reviews before you use one of these services -- you want to make sure that the passwords it generates are sufficiently random to be secure, and that it's reputable and can be trusted not to snoop on you and send that master password off to some third party. It's best to pick one that generates multiple passwords at once; if you pick one from a list it's harder for a third party to know which one you chose.
  • Of course, any password is memorable if you type it enough times.
  • And no password is going to protect you from a targeted attack by a sufficiently dedicated and resourceful attacker -- if somebody's after something you've got, he can probably find somebody in tech support for your ISP, or your registrar, or your hosting provider, or your phone company, or some company you've bought something from, somewhere, who can be tricked into giving him access to your account. Or maybe he'll exploit a zero-day vulnerability. Or maybe one of the sites you've got an account with will be compromised and they'll get everybody's account information. Password security isn't about protecting yourself against a targeted attack. It's about making yourself a bigger hassle to go after than the guy sitting next to you, like the old joke about "I don't have to outrun the tiger, I just have to outrun you." And it's about minimizing the amount of damage somebody can do if he does compromise one of your accounts.
  • And speaking of social engineering, security questions are deliberate vulnerabilities, and they are bullshit. Never answer a security question truthfully. If security questions are optional, do not fill them out. If they are not optional and a site forces you to add a security question, your best bet is to generate a pseudorandom answer (remember you may have to read it over the phone, so a pronounceable password or "correct horse battery staple"-style phrase would be a good idea here, though you could always just use letters and numbers too -- knowing the phonetic alphabet helps) and store it in your password locker alongside your username and password.
  • You know what else is stupid? Password strength indicators. I once used one (it was Plesk's) that rejected K"Nb\:uO`) as weak but accepted P@55w0rd as strong. You can generally ignore password strength indicators, unless they reject your password outright and make you come up with a new one.

* For the purposes of this discussion, I will be using the words "random" and "pseudorandom" interchangeably, because the difference between the two things is beyond the scope of this post.