We’ve come to expect printers to require their own ink cartridges, even to the point of having microchips to identify the cartridge. This makes ink cartridges relatively complicated when they really shouldn’t be. This is an area where at least you’re paying extra for the knowledge that it’s the right ink for the printer, so it shouldn’t dry up or clog the printer. The printers may also be relatively subsidised as the manufacturers aim to make their profits from the ink rather than the printer, giving you very competitive prices if you don’t print much.
This is nothing new. Razor blades have been the classic place for vendor lock-in – making no money on the initial purchase but charging a huge premium for branded cartridges compared to the cost of plain razor blades. Again, you buy into the system knowing that there’s a lock-in and you’re paying more for the disposable part and less up front.
What’s much worse is ignoring common standards to provide proprietary interfaces for hardware like hard drives and cameras. By all means implement a driver or app that provides value-added features to improve the experience. But don’t hide away the open standards so people can’t do as much with the hardware.
An example. The Buffalo Ministation Air. You’d buy it if you want 1/2 TB of storage wirelessly. If you don’t care about wireless, then you’d use a wired portable drive instead. So why, then, does it not publicly provide a means to access the drive wirelessly from a Windows device? Why are we locked into a poorly maintained application that limits what files you can see on Android, and which sometimes fails to list even supported files? Why can’t we have Windows shares/Samba, NFS, etc, perhaps DNLA for sharing media? Those would support other applications. Why do the decision-makers assume that all their customers only want to use their devices in the ways they tell them to? I don’t. I want to be able to access the files directly from another app. I want to play files wirelessly from my Windows tablet. I might even want to push the boat out and try to think of it as being properly integrated storage with my other portable devices.
It’s rather disappointing, then, to have the manual effectively tell you ‘this hardware may be sleek and pretty, but it has behavioural problems and doesn’t play well with other kids’. Fortunately, they lie. Of course they’re not going to implement their own alternative to Windows shares. They just keep them hidden away and don’t bother to publish them. That way they can write noddy apps to control the whole process that use that secret wisdom, while we uninformed (presumably unwashed) masses have to satisfy ourselves with the meagre offerings passed on. Or, rise up in glorious revolution, proclaim loudly the secret knowledge, and help others to free themselves from the shackles of app lock-in. 10.10.10.254/Public1. admin/admin. The truth is free.
Another example are some of the IP cameras. There are established protocols which are well supported by drivers, allowing various systems to stream video data from disparate sources to do with what they will. Limited only by creativity, intelligence, technology and (frequently) patience, it’s possible to create a network of open devices monitored all at once, or analysed for movement, faces or Funny Cat Fails. In the name of simplicity (and selling a few premium services at ‘only’ the cost of their brand reputation), many of the IP cameras hide away their open protocols behind applications which require registration or subscription to a monitoring service which can (for a fee) detect movement and host it themselves. If you want to be really stung, you can store a few GB of video, too. And when you want to watch it, you can watch from your Android app, one feed at a time, with motion detection that soon becomes reminiscent of water torture as the incessant reminder that your family are still in and moving around leads you to turn off any such motion detection, unencumbered as it was by the ability to set Appropriate Times Of Day to operate.
I have 4 IP cameras. One of them is a lump of Chinese cheapness, with all the quality instruction and build quality that I’ve come to expect from that. For all that, perhaps because of that, it doesn’t forgo open protocols, it embraces them, and as a result is the most useful of the set. The pair of Philips IP cameras and my BT IP camera are both much more solid feeling. They look nicer. The video is clearer. But I can’t hook them up to a custom system to try to identify who’s at the door because they’re all LOCKED DOWN. Yes, in the name of simplicity I can only access them from an app, and now if I wanted to set up all 4 cameras at once I’d have to switch between 3 pieces of software to view them all. What could make things easier? I think you’ve guessed by now – it would be much easier FOR ME if the manual told me how I could access the underlying open protocols, because then I could (almost trivially) integrate them with the software I want to write. I’m pretty sure the open protocols are there (for some I’ve seen a web page with login running on the camera), but without the required access information, I’m stuck in Toy Land.
These Android apps certainly make simple use cases easier. You don’t need to worry about firewalls and routing, you set up a single account and that’s almost job done. Some even have some nice integration to pick up a QR code from the webcam stream to quickly configure the IP camera to your account. But when you want to do something, anything, out of the ordinary, then these become like training wheels to a professional cyclist – severely restrictive of making full use of what would be possible without those extras. Like training wheels, users should be able to free themselves from the proprietary apps and use the hardware to its full capacity.
So please, any people working for hardware vendors reading this (I can but hope), when you’re looking at a custom app or open protocols, remember. It’s not an either/or proposition. It’s OK to have a ‘my first IP Camera/Hard Drive/Automated Nose Picker’ interface, but unless you’re actively advertising the lock-down, let the underlying protocols be known and accessed so that those of us who want to do more than 1 thing with a device have a reasonable chance to do so. We might even start spouting about the virtues of your open software rather than ranting at length about lock-in.