Bringing the computer to me

My various illnesses keep me in bed a lot of the time. Not only that, but quite often I don’t have much choice about what position my body goes in. At my better times I can sit up in bed with my laptop or book on my lap. If slightly worse then I put my laptop on the shelf next to the bed and lie sideways to use it, but that can quickly lead to pain. If I am really exhausted then I quite often lie on my front with my phone on the bed next to my head and one hand on the phone to type with, however this still causes pain in my arm, hand and shoulder and sometimes my lower back too.  At my worst points the only near-comfortable position is completely flat on my back with my arms on the bed by my sides. This obviously makes it difficult to read a book, or use a laptop computer, or even just use my smartphone.

I do have other options for entertainment at these times – I could use the radio or an MP3 player to listen to music or audio books. However I use my computer extensively to keep in touch with friends (and chat to people to minimise my depression) and to write on my blog. If I have any chance of paid work in the future it is likely to be writing or programming with the aid of my computer and so being able to use it more in bed is quite important.

Ultra 510i Long Reach Inverted Wall Mount LCD Arm
Ultra 510i

I’ve been thinking about solutions to this problem. The logical solution to me would be to mount a computer monitor over the bed on an arm attached to the wall. This isn’t exactly easy since there is a shelf unit between the bed and the wall to the side of me which is quite a big gap to bridge. I could attach an arm to the wall behind the bed but again it has to extend quite a long way. In addition I want the monitor to be able to swivel for viewing above me or in front of me. There don’t seem to be many arms that fit the specification, although I have found two from ErgoMounts that might work. The Ultra 510i Long Reach Inverted Wall Mount LCD Arm (Pictured to the right) costs £411 while the Wall Mount VisionPro 500 Series Long Reach Gas Assisted LCD Arm (Shown below) costs £215 but is not quite long enough to be comfortable. With this solution I would have a computer of some sort next to the bed, and a wireless keyboard and mouse on my lap.

Wall Mount VisionPro 500 Series Long Reach Gas Assisted LCD Arm
VisionPro 500


Such a system might work, but is quite expensive and limited so what are the other options?

Duncan from Trabasack suggests that I could use a Trabasack Mini lap tray/bag to suspend a netbook computer from. The Connect version has a velcro front and points to attach straps, so I could attach the netbook to the Trabasack with velcro and use the straps to hang it from a simple arm attached to the wall which should be cheaper than an articulated arm. The downside of this is that I would have only the small screen of my eeePC 900 and it isn’t very powerful either, but I can use it to get remote control of the PC on my desk which would do all the work. Duncan has sent me a Trabasack to try, so I’ll report back on how that goes.

Trabasack Mini Connect eee PC on Trabasack

Another option which has caught my attention is virtual reality goggles. Basically glasses with screens inside, the best available are made by Vuzix. There is a whole range of Vuzix iWear. The Wrap 280 widescreen is the bottom of the range, but it has a resolution of 384×240 (That’s how many dots fit on the screen) which makes it useless for text-based computer work and barely usable for watching video. It is, however, available for £99 or even cheaper refurbished. The top of the range Wrap 1200 has an almost-acceptable resolution of 848×480 (still pretty low) but costs £399. The Wrap 920 looks like it might be worth a try though. It has a resolution of 640×480 which is what computers displayed about 18 years ago but is only slightly lower than what my smartphone displays so it might be usable. The 920 is £199 but is also available refurbished for £129. All three of these options would need a £40 adapter to plug in to the VGA output of a computer. I could use one of these displays in any position in bed, but whether I can use them for writing a blog post or chatting to people remains to be seen.

Vuzix Wrap


Microwriter - the original chorded keyboard
Microwriter - the original chorded keyboard

Then there is the question of keyboard and mouse. While it is straightforward to use a mouse on the bed, even with my eyes covered with display screens, a full size keyboard isn’t ideal. I can touchtype but I still have to keep my hands up on the keyboard on my lap rather than down by my sides where they are more comfortable. To solve this problem I have been looking at Chorded Keyboards. These devices use only a few buttons to type the whole alphabet by pressing combinations of keys at the same time. The original Microwriter would have been useful here but two modern versions I am considering are the CyKey and the Twiddler 2.

The CyKey (shown below) has nine keys instead of six but works with combinations of keys in a similar way to the Microwriter. It costs £74. It should work alright when placed under my hand on a bed and allow me to type without moving my hand around. Unfortunately I will still have to move my hand to use the mouse.

CyKey chorded keyboard
Twiddler 2 chorded keyboard
Twiddler 2

The Twiddler 2 (pictured on the right) has a few more keys than the Microwriter or the CyKey but the principle is the same. It has a thumb-operated pointer stick too so that it can replace both keyboard and mouse. The Twiddler is popular with designers of wearable computers because it can be used without sitting down and using a table. It is more expensive than the CyKey at $199 plus postage from the USA but looks to be the best option if I can find the money.

I am also planning to use a Raspberry Pi as my bedroom computer. The Raspberry Pi is a new tiny cheap computer intended for use primarily to encourage children to learn computer programming but it looks to have many other uses. It costs about £29 for the top model and runs Linux. I intend to use it as a Thin Client, to connect to my PC via Remote Desktop, meaning that it will show me what is on my PC in a different room, and my keyboard and mouse in front of me will control that PC.

All of this portable technology has given me some interesting thoughts. I could team up a Raspberry Pi with a Vuzix Wrap 920 display and a Twiddler 2 chorded keyboard. Add in my USB powerpack and a WiFi/Bluetooth adapter to connect to the internet, and I will have a complete wearable computer for use anywhere. I quite like that idea if I can possibly find the money. Now, about my early birthday presents…

Raspberry Pi
So new it hasn't got a case yet

How to set up a free Linux server on Amazon EC2

I bet you didn’t know that Amazon sell computing time. Well they do. After having to build massive data centres full of web servers to handle the largest book store website in the world, they discovered that they had to have lots of extra computers standing by just to handle Christmas and the new year shopping rush. The logical conclusion? Rent out space on those servers to other people when Amazon don’t need them. That has now expanded massively and Amazon are one of the biggest resellers of virtual private servers. (VPS) A VPS is basically a complete computer contained within another computer. The physical computers can pretend to be many smaller virtual computers, which the customer can have complete control of without affecting anyone else.

The most intriguing part is that Amazon bill for these services in tiny increments, so that if you like, you could rent a massive server with 13 processors and 23GB of memory, but just for ten minutes. Indeed, you can rent an entire supercomputer for a day. The service is called the Elastic Compute Cloud, or EC2 for short. You can also rent a tiny little server with 1 processor and 613MB of RAM. In fact, at the moment, you can have that server completely free for a year! You will only pay if you use extra disk space or more than 15GB of data transfer. The service is really aimed at web servers, but it can also be used to run a game server, and I will show you how. Using Amazon EC2 is quite complex and not for the non technical, but hopefully this guide will get you running.

I will write another article later and tell you how to set up a Source (SRCDS) server for games from Valve such as Team Fortress 2 (TF2) and Half Life 2:Deathmatch. (HL2:DM, HL2MP) For now, here is how to get started with a free Linux server on Amazon EC2.  Continue reading “How to set up a free Linux server on Amazon EC2”

Privacy online: Where is my paranoid computer?

Calling for a system that can be used to start a computer that will automatically connect to the internet through random nearby computers, will encrypt everything that is sent over the internet, will send said information on a random untraceable route through the internet, and produces emails and documents that are provably written by a certain person and not tampered with.

I wrote a few weeks ago on the importance of secrecy. I also reviewed a book by Cory Doctorow, Little Brother. One of the things that caught my eye while reading the book was a version of Linux with an interesting description.

“Paranoid Linux is an operating system that assumes that its operator is under assault from the government (it was intended for use by Chinese and Syrian dissidents), and it does everything it can to keep your communications and documents a secret.”
Cory Doctorow (Little Brother, 2008)

In the story, activists had put together an alternative operating system based on Linux and called Paranoid Linux. An operating system is the software that tells the computer how to behave, where to store information, and determines what software or ‘Apps’ you can use. Paranoid Linux took the form of a Live CD, that is a CD that can be used to startup a computer and work without storing anything on the built in disk. The interesting thing about Doctorow’s description of Paranoid Linux is that it brings together a number of technologies that when combined make a persons activities on the computer and on the internet completely anonymous, untraceable and unreadable to anyone not intended to see them, and yet completely trustworthy and verifiable as the person they claim to be to the intended recipient. The technology described also allows a person to turn on their computer in any reasonably populated location and be connected to the internet wirelessly by hopping through other computers in a mesh network to find an internet connection.

Another facet of the story is that Xboxes were given away for free in order to sell software. (The razor blade model) The availability of free computers is a powerful temptation, and so crackers had broken the security that allowed the Xbox to only play official games, and produced a version of Paranoid Linux that allowed the free Xboxes to be used as full computers. Through a combination of freely available hardware and underground distribution of CDs containing Paranoid Linux, it because ubiquitous and allowed people in close enough proximity to form a mesh network.

The amazing thing about the technology described is that it all exists. The frustrating thing is that no one has managed to bring it all together in the way described in the story. An attempt at modeling some of it had been started with a real world Paranoid Linux project, but that has since ceased development and no one else has taken up the challenge.

So what are the technologies involved?

  • Mesh networking
  • Random anonymous routing
  • End-to-end encryption of all traffic such as web pages, email, chat and voice
  • Digital signatures and proof of identity
  • Fake internet traffic (Chaff) to provide a decoy and hide real information
A mesh network

Mesh networking is a way of linking up computers in an ad-hoc way so that a computer at one side of the group could send a message via computers in the middle all the way to the other side. Since all computers in a mesh network are linked, if one has a connection to the internet then all of them can use it. Mesh networks provide a way for people to get on line in rural areas with few internet connections, and has been implemented by the One Laptop Per Child ($100 laptop) project for use in third world countries. Mesh networks are not yet popular, but if they became so then they could be used to extend any free public WiFi points far beyond their current reach.

Random anonymous routing has been implemented in the Tor project. With Tor installed on a computer, web pages and other communications are bounced through computers belonging to several other Tor users, picked at random, before reaching the desired server. Tor is in popular usage right now in places like China and Iran to allow ordinary people to get around censorship imposed by the government. Tor is recommended by organisations like indymedia and the Electronic Frontier Foundation as a way to safeguard the privacy of their members. Tor is also recommended for whistle blowers to use when communicating with journalists. Even governments use Tor. From the Tor website:

“A branch of the U.S. Navy uses Tor for open source intelligence gathering, and one of its teams used Tor while deployed in the Middle East recently. Law enforcement uses Tor for visiting or surveilling web sites without leaving government IP addresses in their web logs, and for security during sting operations.”

Encryption is already used on web pages for activities such as shopping and sometimes when logging in to a website. (The padlock symbol that we are all trained to look for means that encryption is in use between the web browser and the server.) Encryption can be added to other communications such as email using software like Pretty Good Privacy (PGP) or the free open source equivalent Gnu Privacy Guard. (GnuPG)

Both PGP and GnuPG use what is called Public Key Encryption where every user has a public and a private key. Anything encrypted with the public key can only be read using the private key, which means that it is possible to send information securely without having to exchange keys in secret. Conversely, anything can be signed with the private key, and anyone that has the public key and trusts that it is the right one, can be certain that the person that signed that document is who they say they are and also that the document has not been modified since then.

I could not find any software that provides fake internet traffic (Chaff)  to cover up the real communications. People have talked about it but few have bothered to create any tools to do it. Perhaps this one is not so necessary.

Another technology that I would want to add to the mix is an Intrusion Detection System that looks out for malicious attacks on the computer via the internet and watches operating system files to make sure that they are not modified by malicious software or by outside agencies attempting to spy. This software should provide a warning if a system is compromised.

So why do we need all of this privacy? The tools that I have described here are already in use all around the world. Most often they are used to hide from oppressive governments in places such as China and Iran, but they are useful for many other people. Journalists, whistle blowers, activists, celebrities avoiding publication of their information, people working in sensitive jobs, and many others can all make use of these privacy tools.  Everyone has sensitive information, many transmit that over the internet. Privacy tools can be used in any location to help secure information. For example they would be useful when using open public WiFi which are otherwise easily subverted to spy on the end users.

There is a possibility that using tools to allow anonymity and privacy could draw attention to the people using them. If only a few use such tools then it could be possible to identify the internet connections with obfuscated traffic and therefore find their addresses. The answer lies in making sure that there are legitimate uses of these tools and persuading as many people as possible to use them. When all internet traffic is secured then nothing will stand out from the crowd to be tracked.

Would this get in the way of police investigations? Undoubtedly the answer is yes. Routine encryption and obfuscation of internet traffic will prevent the police from keeping tabs on suspects. And I have sympathy for them. The ability to read the email of a bomber before he does damage is very helpful in investigations, just as is the ability to tap their phone. But realising that this will make it harder for police investigations does not cause me to change my mind about it. The police and the myriad of government agencies have been routinely trawling the commmunications of many people. That is not seen as a problem when it leads to an arrest before a bombing or a kidnapping, but people should have a different opinion when the ones being observed are not planning any crime, but simply to oppose the government on illiberal laws or cuts to services, or support the publication of information. Those in power are not meant to go on fishing expeditions for our data, they are supposed to obtain a warrant from a judge on those occasions when a suspects communications could provide evidence to prevent a crime or to prosecute.

A would love to have a new edition of Paranoid Linux which bundled all of these privacy tools and made them easy to use straight out of the box. Perhaps it could be built as an offshoot of one of the existing distributions of Linux such as Ubuntu, which already has the ease of use that would be required. I see no reason why these tools could not be distributed as one installable package that could be added to an existing operating system. There could even be a version for Windows. The key thing is to make the tools available to all, easy to configure and use, and above all to make people aware of their existence and the reasons to use them.

Addendum: The non-technical summary

What I want is a system that can be used to start a computer that will automatically connect to the internet through random nearby computers, will encrypt everything that is sent over the internet, will send said information on a random untraceable route through the internet, and produces emails and documents that are provably written by a certain person and not tampered with.