This is part of my blog, which I have long since stopped maintaining. The page has been preserved in case its content is of any interest. Please go back to the homepage to see the current contents of this site.
“Forgotten Children” is an idea that’s been kicking around my head for a long while, and it’s always felt like it ought to be novel-length, albeit possibly a short novel. For several years I’ve laboured under the misapprehension that it might be publishable, and that if it was, I should keep it to myself until it’s done.
However, it’s become abundantly clear that if there’s no kind of pressure on me, I just don’t do it. Thus, I’m going to serialise the damn thing on the internet. Hopefully, the fact that a few people out there might be reading it and waiting for the next chapter will encourage me to get off my arse and write. I can’t promise my ability to write it quickly, or frankly even well, but I’m going to put it out there in case someone enjoys it.
This is a thought exercise around the idea of an idealised democracy. I do not pretend that it is likely to be achieved at any point, nor do intend to actively campaign for it. Your thoughts and comments are welcome.
On the whole my country, the United Kingdom, does Democracy pretty well. One only has to look at numerous examples around the globe to know how bad some of the alternatives can be. I just can’t help feel that the entire system is inefficient. We vote by constituency, which is fine for me as a traditionally Lib Dem voter in a constituency that swings about evenly between Lib Dem and Conservative. But what about the Labour voter here, who has pretty much no chance of successfully electing his candidate?
I’m not just arguing in favour of Proportional Representation, though. The MPs that we elect represent us, at least in theory. But how well do they, or even can they? Each constituency has people with so many wide-ranging opinions that one man or woman can’t hope to represent all of them. And then how well does an MP in government represent their constituents compared to an MP in opposition? Doesn’t the Whip system and the concept of “toeing the party line” blur the line between us being represented by an MP and us being represented by that MP’s party? And if we’re being represented by such a huge unwieldy thing as a party, how can we ever hope to agree with everything a party believes in?
What I propose is an open and transparent implementation of the extreme of direct democracy - a weakening of the powers of MPs to vote on our behalf, and a radical expansion of the power of public referendum. I also propose that the government, be it in the form of MPs or merely a body of civil servants, have the following core functions:
- Maintain an open and fair system of staging referendums. Referendums, in which members of the public vote directly on national policy, must be fair and free from corruption. Infrastructure must be in place to allow them to happen regularly. Referendums should take place over media such as the Internet only if they can be independently proven to be unrigged, and so long as other means are also provided so that no-one is left out. Results of the votes much be published accurately and in a timely manner using an open format and an open licence. There must be traceability between a referendum and the policy change it causes.
- Provide an unbiased source of information. If the public are expected to vote directly on matters of policy, they must have the information to make an informed decision. Raw facts and unbiased analysis must be provided in formats that are accessible to all. Be it the BBC or some other institution, it must be regularly and rigorously checked to ensure it is bias-free.
- Maintain the economy. Ensure that the public cannot vote to do irreparable damage the the economy. Maintain the free market where at all possible, and if services should remain nationalised, such as the NHS, they must be rigorously examined for inefficiencies to avoid wasting public money.
- Maintain the welfare state. Ensure that the public cannot vote to further disadvantage those already poor and disadvantaged. Social security benefits must be maintained and improved upon to ensure that poverty is eliminated and quality of life improves.
- Maintain diplomatic relations. Represent the country internationally. Ensure that the will of the people is accurately reflected in our dealings with other nations and international bodies.
Stimuli: Coffee, Neuromancer
Software items successfully written: 0
Stimuli: Curry, Beer
Software items successfully written: 1
I leave you to draw your own conclusions.
In a fit of last-minute coding, I’ve produced version 0.1 of my automated team-picker for the Premier League’s Fantasy Football game. (If you’re intending on playing, you only have 12 hours left to get your team in before the start of the season!)
Its purpose is to analyse player stats, and suggest which players to pick based on points/price ratio and current injury lists. It’s based on my team-picker for the Telegraph’s fantasy football game, and uses exactly the same algorithm. It’s also run online automatically every day, so you can visit one page to get the latest results.
You can find it here:
I am now, apparently, a level 4 Software Engineer!
Hit Die: +4 HP
Abilities: +1 WIS
Meta: +1 Base Attack Bonus, +1 Will Save
Skills: +2 Knowledge (Software), +2 Use Arcane Device, +1 Concentration
New Spells: Djikstra’s Algorithmic Fireball, Summon the Primordial Design Pattern, Shield from Buffer Overruns, Power Word: Documentation
I’ve been on a tidying binge this evening, and having found a bunch of CDs lying around in cracked cases behind the sofa, I’ve decided to rip them. So that my poor long-suffering NAS drive doesn’t have to think about two things at once, I’m listening to streaming music from Last.fm while I’m at it.
And it’s dawned on me that that’s really weird.
Last.fm, Pandora et al will let one create a playlist on the fly for any artist, album or genre, regardless of whether or not you own the song or even whether it exists in your country. For specific tracks there’s pretty much nothing that one can’t find on YouTube, just a Crtl+K away. So why on Earth am I bothering to rip things?
There’s travel, I guess - every few weeks or so I change the music on my phone. But that has Last.fm too. By the time the LTE & 3G cell coverage is in the same situation that 3G & GPRS is now, I’ll hardly be able to go anywhere without sufficient coverage to stream music.
I’m quite liking this “future” lark.
We appear to have unintentionally produced the world’s rudest toddler. His favourite words at the moment seem to be:
- “a sí”, which he pronounces like “ass”,
- “cookie”, which he pronounces like “cock”,
- and “tete”, which alright is not exactly the dictionary word for “dummy”, but is almost certainly ruder in English than Spanish.
Quite what the general public make of his pornographic babbling, I’m not sure…
Mostly at Mark’s request, but possibly also of interest to others: A review of the HTC Magic. I’ve had mine for 6 days now.
What’s in the Box?
Pretty much the usual array - charger, USB cable, headset, and a 2GB MicroSD card. The latter comes with a few demo MP3s on it, one of which is even by I band I’ve heard of! Shocking, I know.
The one nice surprise in the box is the fake-leather case. It’s just a pocket-type affair, sewn up on three sides, so the phone’s not usable when it’s inside. Against all odds, though, I’m actually using it. It’s not too difficult to take the phone out, and as this is my first touch-screen phone I’m still kind of paranoid about damaging it.
It’s a lot curvier and thus IMHO prettier than its G1 cousin, and the lack of a physical keyboard makes it lighter and quite a lot thinner. The trackball’s not quite up to Blackberry standards, but it’s usable - and I’ve found the occasions on which I want to use it remarkably rare.
The addition of a dedicated search button is nice, and it does what you’d expect in most apps. The lack of a dedicated camera button is annoying though, leading to a slightly awkward hand position as you try to keep the camera steady while pressing an on-screen button.
The camera itself is pretty 2005-vintage, with 3.2 megapixel res, no flash, and producing pretty grainy pictures in low light. Android 1.5 “Cupcake”, which comes pre-installed, adds video capture support, though video quality is likewise uninspiring.
The most annoying hardware feature is that old HTC stalwart, the ExtUSB connector. There’s no 3.5mm jack, so your audio comes out of the same plug that you charge the phone with. There are adapters that split the port into 3.5mm jack and MicroUSB, but they’re chunky and ugly, not the kind of thing you want hanging off your phone 24/7. There are also inline ExtUSB to jack connectors for using your own headphones, but the shortest length they seem to be made in is about half a metre, leading to a ridiculous >1m length of cable between phone and ears overall.
However, the hype about an Android phone has never been about the hardware. So…
Using Android really is a pleasurable experience. The iPhone might have the usability edge due to Android’s lack of multi-touch, but besides that Android is at the top of the pile of mobile UIs.
Dragging the top drawer (where app notifications, incoming messages etc. sit) is a lot more intuitive on an actual device than on the emulator, and the kinetic scrolling - you can ‘throw’ menus - feels just right.
Cupcake, Android 1.5, adds an on-screen keyboard which is essential on the QWERTY-free Magic. After a few minutes of practice it’s very usable, and not significantly different than the iPhone’s. It also doesn’t feel any more difficult, despite the Magic’s smaller screen. Holding the phone in landscape mode will allow you to use a bigger keyboard, though the portrait-to-landscape transition can take around 1-2 seconds.
The back button removes the on-screen keyboard from view, and I have to keep reminding myself to use it. Pressing outside the keyboard area does the same job, but the press is passed through to the app underneath, resulting in frequent unintentional clicks on hyperlinks.
Besides video recording and the on-screen keyboard, Cupcake’s other major user feature is home-screen widgets. Android 1.1 provided a clock and a search box, while Cupcake provides the ability for programmers to create more. Unfortunately as Cupcake is relatively new, widgets are not widely available. The three new ones provided are disappointing - a picture frame (uses space, does nothing), a calendar (which only shows one upcoming appointment) and a music widget (for the default music app, which you will replace immediately).
The browsing experience is good, again probably second only to the iPhone. Scrolling is smooth, though large pages (such as Facebook’s non-mobile version) cause the browser and the phone to slow down considerably). Without multi-touch, zooming is a little annoying. The zoom icons appear when you touch the screen, so you need to locate a non-hyperlink non-button area of the page to touch. Major “I miss S60” moment: No Flash support.
As you might expect, the Google apps - GMail, Maps, GTalk - are all very good. One of the main selling-points of Android, sync with Google services, runs seamlessly and quickly. Push is available for GMail, but not for other mail services.
Photos can be geotagged and uploaded to the internet, though the default destinations include only Picasa for images and YouTube for video.
Android’s Bluetooth support currently only extends to headsets and car kits (and it does support A2DP) - but BT file transfer between handsets is not possible. WTF, Android? (I suppose I should be thankful that it has MMS and copy/paste?)
Android’s Market is as well-integrated into the phone as Apple’s App Store. The selection of apps is smaller, and there’s just as much dross, but the rating and comments system helps you pick out the best ones. Unfortunately you can’t sort by rating, and the search is a little dodgy - searching “compare”, for example, doesn’t bring up popular barcode-scanning app CompareEverywhere.
Though not on the scale of the App Store, there’s still plenty of redundancy in Android’s Market. After a week or so I’m largely settled on my choices of the best app for each job, but starting out was pretty daunting. Luckily, some of the major tech blogs have several articles’ worth of their picks, which is a good place to start.
Since Cupcake is so new, there are still a few app-related issues at this point - a fair few apps aren’t fully supported yet, and some apps are either confused by or rendered unusable by the lack of a hardware keyboard. Paid apps aren’t enabled for Cupcake yet, so my pick so far has only been from the free ones.
I’ve not started developing for Android yet, so I’ll leave that to a separate post. In terms of changing the firmware on the device, I’ve not investigated (and nor has anyone else that I can find on Google) how easy this is. All the existing firmware-flashing guides are for the G1, and make use of the hardware keyboard.
In particular, the only known method of gaining root access on the device involves reverting to the RC29 firmware version and typing in a command - but since RC29 didn’t have an on-screen keyboard, I’m not sure if anyone knows how or if this will be possible on the Magic.
Despite a few software irritations and an annoying lack of 3.5mm jack, I can see the possibilities of Android (particulaly the Market) meaning that it might take almost two thirds of my 18-month contract to get bored of this phone, compared to the usual one third!
The HTC Magic is currently only available in Europe, and is Vodafone-exclusive. It’s free on the £35/mo 18-month contract.
Probably worth mentioning that this is a really data-heavy phone, I’m a really data-heavy user, and Vodafone’s “unlimited” data plan has a 500MB/mo fair use policy. We’ll see how that one goes…
For the three of you who care, my Telegraph Fantasy Football team picker just got fiddled with.
I had gotten quite annoyed with having to find a machine with a Python interpreter and un-proxied internet access, then downloading the script, every time I wanted to run the damn thing. So I moved it all online!
The script itself now runs on a nightly cron job, so it should refresh its data every day. It generates a static HTML page which anyone can view, so several users can get one day’s results without running the script multiple times.
Also: This thing beat Alan Hansen and Jose Mourinho last week. Hah! Squishy famous football meatbags are no match for software!
Okay, how hard can it be to get a doctor’s appointment?
I called last Friday - admittedly quite late in the day - and was told “Sorry, you can’t book an appointment now. Call back on Monday if you still have the same symptoms.” Fair enough, I thought. Maybe the receptionist was just about to leave and had shut down her computer or something.
So on Monday morning, it gets to 8am and I start calling them. By the time I get something other than an engaged tone, it’s 11am.
“Sorry, we’re fully booked for today.”
ARGH. “Okay, can you make me an appointment for tomorrow?”
“Sorry, you’ll have to call back tomorrow, we can only make appointments on the day.”
So today is that tomorrow, and I figure rather than calling them and it being engaged for three hours, I’ll just go to the surgery. I show up at 8.30am.
“Sorry, we’re fully booked for today.”
“I’m afraid so. I can make you an appointment for tomorrow, though.”
“Okay, I- wait, you can?!”
So, five days after calling, and having had to take two bits-of-days off work, I may actually be able to see a doctor tomorrow.
Most annoying thing is, I’m getting better anyway, and not coughing nearly as much as I was at the weekend. What’s the betting I’ll have no symptoms at all by the time I get to see the doctor?