Welcome ! This is the personal site / blog of Graham King. Most people come for the credit card generator, but I think the Categories (top right) are more interesting.

January 27, 2010

Treating the common cold

Posted in Misc at 07:59 by Graham King

Will Vitamin C really prevent or cure your cold?

What about Echinacea?

The best way to find out is to follow these simple steps:

  1. Gather 2000 people who have the common cold

  2. Split them randomly into two groups of 1000

  3. Give vitamin C to one group, and a sugar pill (the placebo) to the other

  4. Make sure the people receiving the pills and those dispensing the pills don’t know which is which (to make your trial double-blind)

  5. Wait a bit

  6. See if the Vitamin C group gets over their colder faster than the other group

You will of conducted a double-blind placebo controlled scientific trial.

Luckily for us, we don’t have to do it ourselves. Several of these trials have already been done. Enough trials, in fact, that one can do a Meta analysis, a statistical review and summary of all the trials.

A comprehensive meta analysis, by an unbiased organization, is the gold standard of scientific inquiry; it is our best chance of knowing the truth.

The Cochrane Collaboration is an international not for profit organisation set up 15 years ago to create transparent, systematic, unbiased reviews of the medical literature on everything from drugs, through surgery, to community interventions. And I have a cold. I read their review to find out whether Vitamin C or Echinacea would be effective in treating it.

Vitamin C

Here is the review of research on Vitamin C for preventing and treating the common cold.


Thirty trials involving 11,350 participants suggest that regular ingestion of vitamin C has no effect on common cold incidence in the ordinary population.

It reduced the duration and severity of common cold symptoms slightly, although the magnitude of the effect was so small its clinical usefulness is doubtful.

Nevertheless, in six trials with participants exposed to short periods of extreme physical or cold stress or both (including marathon runners and skiers) vitamin C reduced the common cold risk by half.

The failure of vitamin C supplementation to reduce the incidence of colds in the normal population indicates that routine mega-dose prophylaxis is not rationally justified for community use. But evidence suggests that it could be justified in people exposed to brief periods of severe physical exercise or cold environments.

Echinacea

Here is their review of research on Echinacea for preventing and treating the common cold.


Echinacea preparations tested in clinical trials differ greatly. There is some evidence that preparations based on the aerial parts of E. purpurea might be effective for the early treatment of colds in adults but the results are not fully consistent.

Beneficial effects of other Echinacea preparations, and Echinacea used for preventative purposes might exist but have not been shown in independently replicated, rigorous RCTs.

Get well soon!

January 16, 2010

Predictably Irrational, by Dan Ariely

Posted in Behaviour at 08:12 by Graham King

My short notes on Predictably Irrational, by Dan Ariely. An excellent book. Entertaining, and covers much fascinating ground from social psychology and behavioral economics. Some of the experiments Dan and his team designed are fiendish!


Value is relative

We only know what we want when we see it in context. The bike the Tour de France winner rides. A set of speakers compared to another.

We only know what something is worth, or how much we like it, when comparing to other similar things (purchases, partners, jobs, etc..

We tend to choose the middle option. A high price option on a restaurant menu increases average order price, because it makes the rest seem cheap in comparison.

Read the rest of this entry »

December 16, 2009

Influence, by Robert Cialdini

Posted in Behaviour at 07:42 by Graham King

As an Amazon reviews says, “arguably the best book ever on what is increasingly becoming the science of persuasion.”

If you want to understand why you felt compelled to give money to a Hare Krishna devotee, how car salesman or realtor’s work, and much more, you should read this.

It’s also a very easy and enjoyable read. These are my notes. They cover all the content in the book, but don’t link to research. In the book, most of the statements have links to research papers to back them up.

Get Influence: The Psychology of Persuasion from your local library, this has sold so many copies they are bound to have some.


Heuristics

We can process incoming information cognitively in one of two ways:

  • Controlled responding, which is subjecting information to a thorough analysis. This is when we think a problem through, research it, etc. We only do this if we have the desire and the ability. It is intellectually taxing and time consuming.
  • Use judgmental heuristics such as:

    • Price as surrogate for value. Applies particularly to items which are hard to value: Wine, jewelry, art, employee salaries, etc.
    • Trust experts. This is why pseudo-science books always have ‘PhD’ or ‘MD’ after the author’s name.
    • Because – we want reasons to do something, even bogus ones.

    Read the rest of this entry »

November 27, 2009

How we know what isn’t so, by Thomas Gilovich

Posted in Behaviour at 07:27 by Graham King

By Thomas Gilovich, social psychologist and CSI Fellow, this well written book explains some of the reasoning and deduction errors we make when trying to understand the world, and ways to avoid making those errors.

This is an easy and engaging read, and offers several straightforward techniques to avoid making common reasoning errors. I recommend you look up How We Know What Isn’t So: The Fallibility of Human Reason in Everyday Life in your local library, or get it second-hand from Amazon for less than a posh cup of coffee.

These are my notes / summary of the book.


I. Cognitive determinants of belief

2. Something out of nothing: The mis-perception and misinterpretation of random data

We are predisposed to see order, pattern, and meaning in the world, and we find randomness, chaos, and meaninglessness unsatisfying.
As a consequence we tend to ’see’ order where there is none, and we spot meaningful patterns where only the vagrancies of chance are operating.

Read the rest of this entry »

October 20, 2009

Memcached: List all keys

Posted in Software at 17:50 by Graham King

In the general case, there is no way to list all the keys that a memcached instance is storing. You can, however, list something like the first 1Meg of keys, which is usually enough during development. Here’s how:

Telnet to your server:

telnet 127.0.0.1 11211

Read the rest of this entry »

October 1, 2009

Guy Kawasaki’s 10-20-30 presentation rule

Posted in Misc at 18:41 by Graham King

Funny, practical, and well worth 1 minute 50 seconds of your life:

via the BootUp Labs Blog.

September 17, 2009

I’m on identi.ca and Twitter

Posted in Misc at 17:08 by Graham King

I am sharing my thoughts, mainly about web technologies, on identi.ca and twitter.

The nature of the medium means those thoughts will be generally raw and truncated, but timely.

August 26, 2009

Social psychology in sales copy: Good copy writing

Posted in Behaviour at 19:03 by Graham King

I recently received an advert for an investment fund in which, as the amateur social psychologist that I am, I noticed illustrated a couple of psychological principles. The are both covered in the email title:

Last chance to invest in a firm favourite

They are covered again in more detail in this paragraph:

The x y z Fund only launched six months ago, but has already attracted considerable interest. To keep it small and flexible the number of units has been capped at 200 million. Last week they had reached two-thirds of that total and interest is intensifying. In the last two days alone they sold over 6 million units, so it is likely to close very soon.

Read the rest of this entry »

August 10, 2009

Choosing a message queue for Python on Ubuntu on a VPS

Posted in Software at 06:05 by Graham King

More and more, my web apps need to run things in the background: Sending email, re-calculating values, fetching website thumbnails, etc. In short, I need a message queue in my toolbox.

Luckily for me, message queues are this years Hot New Thing, so there’s some good options. I looked at RabbitMQ, Gearman, Beanstalkd and StompServer.

Read the rest of this entry »

July 30, 2009

Quote of the day – monkeys

Posted in Misc at 20:09 by Graham King

In response to monkeys stealing his coffee beans, an Indian farmer observes: If you start shooting monkeys, you’ll spend the rest of your life shooting monkeys.

via Bruce Eckel

July 20, 2009

On cellphone use in cars

Posted in Behaviour, Society at 18:11 by Graham King

A very interesting article in the New-York Times on the research behind the risks of being distracted by a cellphone whilst driving:

http://www.nytimes.com/2009/07/19/technology/19distracted.html

Here’s some excerpts:

in a survey of 1,506 people last year by Nationwide Mutual Insurance, 81 percent of cellphone owners acknowledged that they talk on phones while driving, and 98 percent considered themselves safe drivers. But 45 percent said they had been hit or nearly hit by a driver talking on a phone.

That’s the Lake Wobegon effect, the tendency for overestimate their capabilities in relation to others.

Read the rest of this entry »

June 16, 2009

Django dynamic forms and formsets

Posted in Software at 02:08 by Graham King

A couple of great posts which explain Django dynamic forms and advanced formset usage very clearly:

June 11, 2009

How and Why to extend Firefox in Javascript

Posted in Software at 04:29 by Graham King

I will be giving this talk on Friday 12th June, at Open Web Vancouver 2009.

June 10, 2009

Unix shared directory permissions: GUID and umask

Posted in Software at 20:11 by Graham King

I setup my Mercurial repository in the same way we used to do CVS, then SVN: A directory owned by a group, with the GUID bit, and all users who need to commit are in that group.

The steps are, create the group and add relevant users to it: :noclick


    sudo groupadd topsecretgroup
    sudo usermod -a -G topsecretgroup graham

Read the rest of this entry »

May 27, 2009

Legal 1 Usability 0

Posted in Misc at 19:55 by Graham King

The cooking instructions for my Tandoori Chicken Breast microwave lunch, are to cook…

…until internal temperature reaches 74C (165F).

How many office kitchens have a cook’s thermometer? Score nothing for usability.

Should you for any reason attempt to sue the manufacturer, it will rapidly become apparent that you didn’t follow the cooking instructions. Score one for legal.

May 21, 2009

OpenTTD: Trains and signals for beginners – a tutorial

Posted in Misc at 08:22 by Graham King

I have been playing Open Transport Tycoon Deluxe, or OpenTTD on and off for a while, but I confess I only understood train signals very recently. The game gets a lot more fun once you can have complex track layouts, so here’s a tutorial on train track layout and signaling for complete beginners.

Building tracks the wrong way

If you’re anything like I was, all your train layouts probably look like this:

one-to-one

Read the rest of this entry »

May 20, 2009

Quote of the day: Why racists have bad graphic design

Posted in Society at 17:34 by Graham King

Charlie Brooker on a television advert by the British National Party, England’s (very small) right-wing political party:


Extremist material of any kind always looks gaudy and cheap, like a bad pizza menu. Not because they can’t afford decent computers – these days you can knock up a professional CD cover on a pay-as-you-go mobile – but because anyone who’s good at graphic design is likely to be a thoughtful, inquisitive sort by nature. And thoughtful, inquisitive sorts tend to think fascism is a bit shit, to be honest. If the BNP really were the greatest British party, they’d have the greatest British designer working for them – Jonathan Ive, perhaps, the man who designed the iPod. But they don’t. They’ve got someone who tries to stab your eyes out with primary colours.

Read the article: Charlie Brooker on the BNP and their political broadcast.

May 17, 2009

Speaking at Open Web Vancouver 2009 in June

Posted in Future of Web Apps, Software at 22:30 by Graham King

I will be speaking at Open Web Vancouver on Thursday, June 11, 2009 and Friday, June 12, 2009.
That’s in Vancouver, B.C., Canada. There’s a very interesting speaker lineup, and the whole conference is reasonably priced, so come along, learn, interact, and enjoy Vancouver in the summertime.

My talk will be entitled How and Why to Extend Firefox in Javascript (and Thunderbird, Komodo, and Songbird). I will post the slides here in June.

See you there!

May 10, 2009

Micro-Zooids: A story

Posted in Ideas, Misc, Software, Strategy at 23:23 by Graham King

When I was 16, I wrote a computer game, called Micro Zooides. It was called that partly because on Windows .EXE files all start with the two characters MZ, and partly because it was about small creatures. Micro-Zooides was going to be about humanity’s progress, it was going to be Civilization, which didn’t exist yet.

The game had a splash screen of a Far Side comic, then a short video of me tromping through the woods like a Neanderthal, which my Dad filmed and which I digitized with a very early video capture card.

In Borland’s Turbo C++ 3.0 I wrote a basic graphics engine to display the tiles of the world, and an event loop so I could move the main character around the world. I drew sprites for a proto-human (the micro zooid), dirt, rocks and sticks. He could walk around the world, and pick up and put down rocks or sticks.

Then I took a break to plan. I have a proto-human, rocks, and sticks. How do I get to civilization?

May 8, 2009

Turn on debug output in SVN

Posted in Software at 00:02 by Graham King

After a desktop and server upgrade, my subversion client stopped working. I am using Digest authentication, and it kept asking me for the username and password. Wireshark showed me that the SVN client wasn’t sending the Authentication header. To find out more, I turned on Subversion’s debug output. Here’s how you do it:

Edit /etc/subversion/servers
Add this line at the end: neon-debug-mask = 511

That showed me this error: auth: '/' is inside auth domain: 0.

This means that the path I was requesting (the root of the repo) was not considered inside the AuthDigestDomain I had set in Apache.

It turns out that at some point in the upgrade of Apache, Subversion, or a library, the AuthDigestDomain requires a scheme. I had
AuthDigestDomain svn.myserver.com
whereas it should of been
AuthDigestDomain http://svn.gkgk.org.

So now you know.

« Previous entries Next Page » Next Page »