Leaving Three

In February I started the process of moving my phone and my wife’s phone to Virgin from Three [1]. The reason is that Three didn’t offer any good phones on affordable contracts, the cheapest that was suitable was a HTC Desire HD which would have cost me $55 per month, while I could justify spending that for my own phone (which is used for responding to SMS from Nagios to fix client servers) I didn’t have the budget to spend that much on my wife’s phone too – and I really want us to have the same type of phone for ease of support. So I chose Virgin who offers the Sony Ericsson Xperia X10 for as little as $29 per month – I chose a $39 per month deal that included 1500MB of data transfer and also had three months free which makes it effectively $34.12 per month.

When using previous phones that weren’t particularly smart I had also carried a Netbook and a 3G modem with me most of the time. Now that I have a phone that is a ssh client I don’t need that so I tried to cancel the contract today.

Three allows you to do almost everything over the Internet except cancel a contract – their web site doesn’t even give a phone number to call for that purpose. This must keep their support people busy, Vodaphone (which has just merged with Three) has recently had a horrible security breach because their sales booths used public Internet access for all customer data [2]. Also there is currently a law suit against Vodafone for poor network performance and misleading claims about service areas [3]. My experience with Three performance has been reasonably good apart from the fact that they advertised 3G service in Bendigo and provided none.

As Three are apparently desperate to retain customers they offered me free service for 6 months if I don’t close the account now. So I have a SIM that supports 1G of 3G data transfer per month for no charge until December (worth $90). What can I do with it? I don’t own a 3G modem as I gave that to my parents (who are quite happy with pre-paid 3G net access via Three) and the phones that I have which can be used for tethering are a little slow (usable for ssh and basic web access but not for Youtube etc).

Is there a way of selling such a SIM? Note that my name is still on the contract and any excess data or roaming fees will be billed to me so I can’t just put it on ebay.

I guess that one thing I can do is to use the SIM for receiving phone calls. For example if a friend was visiting from another country and wanted to receive calls without paying roaming fees I could lend them a phone.

Any ideas?

This Event Will be Photographed

sign saying This event will be photographed. Images may be used in Banyule City Council promotional material (posters, website, flyers etc).  If you do not want your image used, please go to Event Control staff and tell them.

The above sign was prominently displayed at a fair that was recently run by the Banyule Council. We have had some discussions in the Linux community about what policies should be used in regard to photography at events, it seems that this is a precedent for being able to opt-out of public photography.

Locked Down Phones and Horrible Telcos

Choosing a Phone

I was considering renewing my Three contract and getting a HTC Desire HD [1]. What I need is a phone that is good for being a ssh client on 3G networks, has a good camera, and has all the fancy Google Apps.

In the comments Lon recommended a Norwegian review of phone cameras which gave the Sony Ericsson Xperia X10 a much better review than the HTC Desire HD [2] – the Xperia was the highest rating Android camera phone while the Nokia N8 was the best overall.

Also the Xperia is a lot cheaper, I can get it on a $29 monthly cap from Virgin as opposed to $44 per month from Three. So just on hardware and price the Xperia beats the Desire HD.

One of the advantages of the Xperia from Virgin being cheap is that my wife and I can use the same model of phone. This avoids having to solve two sets of phone related problems and also allows us to do things like swap batteries between the phones based on who can most conveniently charge their phone.

The Need for Root

But one problem with e Xperia is that the CyanogenMod images for rooted Android phones can’t be installed on an Xperia because the boot loader hasn’t yet been cracked [3]. I would like to run CyanogenMod so I can get wireless proxy support, and support for tunneling IP over DNS, ICMP, and OpenVPN.

The Three web site claims that they have 3G phone and net access in Bendigo, but on a recent holiday my phone said that it was “roaming” all the time and I couldn’t get net access. I ended up having to use McDonalds Wifi net access which had ports such as 22 blocked and thus forced me to use Iodine IP over DNS to get proper net access. To avoid having to talk my mother through rebooting servers in future I need to have a mobile ssh client that can use all possible protocols. I could carry my EeePC with me all the time, but sometimes it’s good to travel light.

OTOH, as I feel compelled to fiddle with all my computers it would probably give me a more reliable mobile experience if I was unable to mess with my phone.

Why Buying a Phone Outright Isn’t Viable

A $29 monthly plan is probably the cheapest plan that will do for anyone who uses a phone regularly, I have had a Three $29 plan for the last four years which allows up to $150 of calls to be made in a month and typically use about $60. So any plan which doesn’t have such a cap will have to be no more than half the price of Three on a per-minute basis to compete. If I’m going to pay $29 per month ($696 over a 24 month contract) then I can use a free phone. If I was to buy a phone then it would cost at least $500 for anything that I like and maybe a lot more.

Buying a phone independently of a contract would about double the cost of owning a phone. It’s really not a viable option.

Therefore I am compelled to buy a phone that is on offer from a Telco. Things like the Nokia N900 are nice devices but as the Telcos don’t offer them I can’t consider them.

No Discount if you Don’t get a Phone

The annoying thing is that the Telcos don’t offer a discount if you choose not to get a phone. Obviously buying the hardware costs them some money, so a $29 cap with a phone included should have a matching offer of something less than $29 if you choose not to get the phone from them. I currently have a $29 per month contract with Three, I can renew that for another two years at the same rate and get a half-decent phone for “free” or I can renew for two years on a $19 per month contract and get a low-end phone for “free” but I can’t get a price that is lower than $19 per month if I decide to keep my current phone.

If Three was to offer such a discount then I would consider buying a phone outright over the net and staying with them. But as it is they don’t provide good deals for buying a phone and give me an economic incentive to go to another provider. So I will probably use Virgin when my contract runs out in January.

Locked Phones

Many Telcos still sell locked phones on a contract. When that happens it’s really difficult to get a phone unlocked as the Telco employees usually aren’t very helpful. There are a variety of web sites claiming to generate unlock codes for phones, most seem to charge $10 or more for this service and the free ones have a very small range of phones, so getting the unlock code from the Telco seems to be the only option for a phone at the end of it’s contract period as it’s not worth enough to justify the $10 expense.

While some Telcos sell unlocked phones on plans the ones that lock their phones have a chilling effect on the industry. Most people don’t test whether their old phone can be used with a different provider they just throw it out – the phone stores conveniently provide bins for old phones that are apparently recycled for some good cause.

Conclusion

If you make serious use of mobile phones (EG being ready to fix errors reported by Nagios 24*7) then choosing a new phone and plan is one of the most difficult things there is to do. All the plans are quite complicated and every Telco offers a different set of phones. The Telco web sites are usually poorly done, most of them don’t have an option to search for Android phones or for phones with a certain minimum resolution – they usually don’t even state the resolution and use terms such as WQVGA which don’t even have a fixed meaning in pixels. When it comes to choosing a plan most Telcos don’t have a clear comparison of the different plans, writing your own spreadsheet comparing plan costs is a good idea.

The fact that Telcos such as Virgin and Three/Vodaphone allow free calls to other people using the same company makes it even more tricky. I have to discuss my phone plans with several relatives as there is a good incentive for everyone to use the same provider.

I think that we need government regulation on the way that phones are bundled. The market for phones that aren’t associated with Telco contracts has been destroyed by the anti-competitive behavior of the Telcos.

Quality of Cameras in Phones

The discussion in the comments on my post about a mobile phone for Sysadmin use [1] turned to the issue of picture quality. This is an issue for a sysadmin as photographing the screen of a crashed computer while being a rare occurrence can be an important part of solving a computer problem.

Lon recommended a review of phone cameras by the Norwegian site Amobil [2]. This review only included devices that had already passed earlier review, so even the HTC Desire HD (which came last on the Amobil tests) still has a better camera than most phones on the market. It’s a pity that no English-language site seems to have done such a review.

The Amobil article (when translated) says: “In the mobile industry is faced with the need for much extra processing for the images to look good, because there is no room for large optics and large image sensors that receive sufficient amount of light”.

IMHO that’s overstating the case. I have yet to see a camera-phone that couldn’t be redesigned in a trivial way to give a better camera functionality. It appears that the limiting factor is the thickness of phone which limits the maximum focal length and therefore the maximum area (I presume it’s safe to assume that Fresnel lenses are not viable for cameras). My LG U990 Viewty is 14.8mm thick, I would be happy with something a bit thicker if it gave a better picture, 30mm wouldn’t be a problem (my first few mobile phones were thicker than that and had no camera). Maybe a design could have the camera stick out such that the main body of the phone was 15mm thick while the camera part was 30mm. Also having the camera in a central part of the phone (underneath the touch-screen) probably loses at least 1mm of focal length. It seems that the amount of light captured will be the square of the focal length, so an ideal (IMHO) camera design could have twice the depth of a Viewty, 4* the light captured, and therefore have an 8MP camera with a better response in adverse light than the Viewty (which is pretty good for a phone but crap for a camera).

I noted in the comments that it’s a pity that camera-phones don’t support storing pictures in RAW format, Paul pointed out that the Nokia N900 supports RAW pictures. I’m glad to learn that at least one phone-camera manufacturer is doing the sane thing, now we just need to have RAW pictures as a check-list item on reviews to force others to do the same. I wonder whether a modified version of the Android OS could support RAW format…

Amobil published an article about some joint ventures between camera and phone companies [3]. Apparently LG are working on a phone with 3* Optical Zoom that uses Pentax optics, while the Olympus camera company is considering the purchase of a phone company with the apparent aim of producing a killer camera-phone.

I wonder whether I should delay the purchase of my next phone for a few months to take advantage of some of these developments. If nothing else I expect some significant improvements in the screen resolution of phones in the near future. The maximum screen resolution that is common at the moment is 800*480 (WVGA), but the iPhone 4 supports 960*640 resolution which is 60% more pixels and I expect other manufacturers to release phones to compete with it in the near future.

Raw Satire Usually Fails on the Internet

Sarcasm and satire usually don’t work on the Internet. One cause of this is the lack of out of band signalling via facial expression or tone of voice. Another issue is the fact that in real life people usually know something about the person who they listen to while on the Internet it’s most common to read articles without knowing much about the author. So the reader can’t use “I know that the author isn’t an asshole” as a starting point to determine whether a message should be interpreted literally.

This is really nothing new. The standard in printed communication for a long time has been to use Emoticons (Wikipedia) to indicate emotion and other interpretation that might not be deduced from a direct reading of the text. The Wikipedia page cites examples of emoticon use dating back to 1857 – although the combinations of characters used for different emotions has changed significantly many times. The common uses that we now know on the Internet date back to 1982.

In my experience the symbol :-# is commonly used to note sarcasm or satire. Unfortunately it seems that none of the Internet search engines allow searching for such strings so I couldn’t find an early example of this being used. While I haven’t found a reference describing this practice, I regularly receive messages annotated with it and find that people generally understand what I mean when I use it in my own email. But that is usually applied to a sentence or two.

For a larger section of text a pseudo-HTML tag such as </satire> can be used to signal the end of satire. It seems that a matching start tag is optional as recognising the start of satire is a lot easier once the reader knows that some of the content is satirical. In spoken English a phrase such as “but seriously” may be used for the same purpose, but such a subtle signal may be missed on the Internet – particularly by readers who don’t use English as their first language.

Another way of signaling a non-literal interpretation is by using Scare Quotes – the deliberate usage of quotation symbols to indicate that the writer disagrees with the content that is written. That is common for the case of referencing a phrase or sentence that you disagree with, but doesn’t work for a larger section of text.

A final option is to make the satire or sarcasm so extreme that no-one can possibly mistake it for being literal. This is not always possible, Poe’s Law holds that “Without a winking smiley or other blatant display of humor, it is impossible to create a parody of Fundamentalism that SOMEONE won’t mistake for the real thing” [1]. I think that Poe was understating the case, it is impossible to create a parody of religion that most people won’t mistake for the real thing without signals or context. For an example read LandOverBaptist.org and Chick.com, of course if you know those sites then you will know whether they are satirical or serious – but I expect that most readers of my blog won’t invest enough effort into either of those religious sites to determine whether they are serious or satire.

But satire and sarcasm without signals or a reputation usually fails. One example of success is The Onion which is a long running and well known satirical news site [2]. But even The Onion it is regularly mistaken for being serious – the number of occasions when people forward me Onion articles for amusement are vastly outnumbered by the number of occasions when I see people taking it seriously.

Even when material is known to be satirical it can still fail grossly. An example is the Chaser’s satire of the Make A Wish Foundation [3]. Even material that is well known to be satirical seems to fail when it attacks bad targets or attacks in a bad way. One difficulty is in satirising bigoted people, to effectively satirise them without attacking the minority groups that they dislike can be a difficult challenge.

Finally, when you write some satire and members of your audience don’t recognise it you should consider the possibility that you failed to do it properly. If you can’t get a hit rate close to 100% for people with the same background as you then it’s probably a serious failure.

A Netbook for Aircraft Navigation

There is apparently some MS-Windows software for navigating light aircraft in Australia. It takes input from a GPS device and knows the rules for certain types of common tasks (such as which direction to use when approaching an airport). My first question when I heard of this was “so if the Windows laptop crashes does your plane crash?“. But I’ve been assured that paper maps will always be available.

The requirement is for a touch-screen device because a regular laptop in the open position won’t leave enough room for the control stick. So the question is, what is the best touch-screen Windows laptop? It must be relatively rugged spinning media for storage is unacceptable due to the risk of damage in turbulence, it should be relatively cheap (less than $1000), and can apparently have a somewhat low resolution for the screen.

The pilot who asked me for advice on this matter is currently thinking of the ASUS Eee T91 which runs Windows XP home, has 16G of solid-state storage and a 1024*600 screen. I am concerned about the reliability of that system as the rotatable screen design seems inherently weak.

The Smartbook concept sounds appealing, I don’t expect that you would want to wait for a typical OS to boot while flying a plane. But those devices mostly use ARM CPUs and thus can’t run MS-Windows. One particularly interesting device is the Always Innovating Touchbook [1] which has a detachable keyboard – which would be handy for non-airline use. Unfortunately it seems that Always Innovating aren’t doing production at the moment, they say “The current Touch Book production is in stand-by and will resume in the summer when we will release our newest and craziest innovation” – well summer is almost over in the northern hemisphere so I guess that means there won’t be anything from them for another 9 months.

A device such as an iPad would also be a good option for looking at static documents. The pilot is considering using a MS-Windows PC to generate images and then viewing them on such a device. But he’s not really enthusiastic about it.

Are there any good and cheap touch-screen devices that run MS-Windows? Are there any particularly noteworthy PDF reader devices which would be better than an iPad for viewing maps while flying a plane? Is it possible to run a MS-Windows application that uses a GPS under Wine on a Netbook?

Cyborgs solving Protein Folding problems

Arstechnica has an interesting article about protein folding problems being solved by a combination of brute-force software and human pattern recognition in the form of a computer game [1]. Here is a link to the primary source which also mentions the fact that players can design their own proteins which could potentially cure some diseases [2].

This is very similar to Garry Kasparov’s observations about ideal methods for playing chess given computers and humans [3].

It is also similar to Jane McGoningal’s ideas about using online gaming to make a better world [4] which inspired my post about choosing a free software mission [5].

What other serious problems can we solve via computer games and screen-savers?

Yubikeys Have Arrived

Picture of lots of Yubikeys

In my previous post about the Yubikey I suggested that computer users’ groups should arrange bulk purchases to get the best prices [1]. I ran such a buying club for Linux users in Australia as well as members of SAGE-AU [2].

The keys have arrived and I now have to start posting them out. Above is a picture of two boxes that each contain 100 keys. Presumably if you buy a smaller number of keys then you get more fancy packing.

Thanks to Yubico for giving us a greater discount than the usual discount rate for boxes of 100 keys!

ATI ES1000 Video on Debian/Squeeze

The Problem

I’ve just upgraded my Dell PowerEdge T105 [1] from Debian/Lenny to Debian/Squeeze. Unfortunately the result of the upgrade was that everything in an X display looked very green while the console display looked the way it usually did.

I asked for advice on the LUV mailing list [2] and got a lot of good advice. Daniel Pittman offered a lot of great advice.

The first suggestion was to check the gamma levels, the program xgamma displays the relative levels of Red, Green, and Blue (the primary colors for monitors) where it is usually expected that all of them will have the value of 1.0. This turned out to not be the problem, but it’s worth noting for future instances of such problems. It’s also worth noting the potential use of this to correct problems with display hardware, I’ve had two Thinkpads turn red towards the end of their lives due to display hardware problems and I now realise I could have worked around the problem with xgamma.

He also suggested that it might be ICC, the command “xprop -root | grep -i icc” might display something if that was the case. I’m still not sure what ICC is about but I know it’s not set on my system.

The next suggestion was to use the VESA display driver to try and discover whether it was a bug in the ATI driver. It turned out that the VESA driver solved that problem, I was tempted to continue using the VESA driver until I realised that the VESA driver has a maximum resolution of 1280*1024 which isn’t suitable for a 1680*1050 resolution display.

After reviewing my Xorg configuration file Daniel noted that my frame buffer depth of 16 bits per pixel is regarded as unusual by today’s standards and probably isn’t tested well. As 24bpp is generally implemented with 32bits for each pixel that means it takes twice the frame-buffer storage (both in the X server and in some applications) as well as twice the memory bandwidth to send data around. So I generally use 16bpp for my systems to make them run a little faster.

(II) RADEON(0): Not using mode “1680×1050” (mode requires too much memory bandwidth)

I tried using a depth of 24bpp and then I saw messages such as the above in /var/log/Xorg.0.log. It seems that the display hardware in my ATI ES1000 (the on-motherboard video card in the Dell server) doesn’t have the memory bandwidth to support 1680*1050*24bpp. I tried using the gtf to generate new mode lines, but it seems that there is no 24bpp mode which has a low enough vertical refresh rate to not exhaust memory bandwidth but which is also high enough for the monitor to get a signal lock.

The Solution

My current solution is to use 15bpp mode which gives almost the same quality as 16bpp and uses the same small amount of memory bandwidth. It seems that 15bpp doesn’t trigger the display driver bug. Of course one down-side to this is that the default KDE4 desktop background in Debian seems perfectly optimised to make 15bpp modes look ugly, it has a range of shades of blue that look chunky.

What I really want to do is to get a better video card. Among other things I want to get a 1920*1080 resolution monitor in the near future, Dell is selling such monitors at very low prices and there are a bunch of affordable digital cameras that record video at that resolution. Even if I can get the ES1000 to work at 1920*1080 resolution it won’t support playing Full HD resolution video – I can barely play Youtube videos with it!

I’ve previously described my experience with the awful Computers and Parts Land (CPL) store [3] where they insisted that a PCIe*16 graphics card would work in my PCIe*8 system and then claimed to be doing me a favor by giving me a credit note for the full value (not a refund). This convinced me to not bother trying to buy such a card for the past year. But now it seems that I will be forced to buy one.

What I Want to Buy

I want a PCIe*8 video card that supports 1920*1080 resolution at 24bpp and has good enough performance with free Linux drivers to support Full HD video playback. Also PCIe*4 would do, and I’m prepared to compromise on support of Full HD video. Basically anything better than the ES1000 will do.

Does anyone know how I can buy such a card? I would prefer an ATI card but will take an NVidia if necessary.

Note that I have no plans to cut one of the PCIe sockets on my motherboard (it’s an expensive system and I’m not going to risk breaking it). I will consider cutting the excess pins off a video card as a last resort. But I would rather just buy a PCIe*8 video card.

Note that I am not going to pay cash in advance to a random person who reads my blog. Anyone who wants to sell me a second-hand card must either have a good reputation in the Linux community or ship the card to me on the condition that I pay after it passes the tests.

Update: The first version of this post said that I upgraded TO Lenny, not FROM it.

Storage vs RAM Size

In a comment on my post Shared Objects and Big Applications about memlockd [1] mic said that they use memlockd to lock the entire root filesystem in RAM. Here is a table showing my history of desktop computers with the amounts of RAM, disk capacity, and CPU power available. All systems better than a 386-33 are laptops – a laptop has been my primary desktop system for the last 12 years. The columns for the maximum RAM and disk are the amounts that I could reasonably afford if I used a desktop PC instead of a laptop and used the best available technology of the day – I’m basing disk capacity on having four hard drives (the maximum that can be installed in a typical PC without extra power cables and drive controller cards) and running RAID-5. For the machines before 2000 I base the maximum disk capacity on not using RAID as Linux software RAID used to not be that good (lack of online rebuild for starters) and hardware RAID options have always been too expensive or too lame for my use.

Year CPU RAM Disk Maximum RAM Maximum Disk
1988 286-12 4M 70M 4M 70M
1993 386-33 16M 200M 16M 200M
1998 Pentium-M 233 96M 3G 128M 6G
1999 Pentium-2 400 256M 6G 512M 40G
2000 Pentium-2 600 384M 10G 512M 150G
2003 Pentium-M 1700 768M 60G 2048M 400G
2009 Pentium-M 1700 1536M 100G 8192M 4500G
2010 Core 2 Duo T7500 2200 5120M 100G 8192M 6000G

graph of RAM/disk sizes from the above table

The above graph shows how the modern RAM capacities have overtaken older disk capacities. So it seems that a viable option on modern systems is to load everything that you need to run into RAM. Locking it there will save spinning up the hard drive on a laptop. With a modern laptop it should be possible to lock most of the hard drive contents that are regularly used (IE the applications) into RAM and run with /home on a SD flash storage device. Then the hard drive would only need to be used if something uncommon was accessed or if something large (like a movie) was needed. It also shows that there is potential to run diskless workstations that copy the entire contents of their root filesystem when they boot so that they can run independently of the server and only access the server for /home.

Note that the size of the RAM doesn’t need to be larger than the disk capacity of older machines (some of the disk was used for swap, /home, etc). But when it is larger it makes it clear that the disk doesn’t need to be accessed for routine storage needs.

I generated the graph with GnuPlot [2], the configuration files I used are in the directory that contains the images and the command used was “gnuplot command.txt“. I find the GnuPlot documentation to be difficult to use so I hope that this example will be useful for other people who need to produce basic graphs – I’m not using 1% of the GnuPlot functionality.