Saturday, February 04, 2012

Bugs in the Human Software


Humans are amazing machines but I think evolution QA team actually missed a few minor software bugs (as apposed to hardware bugs).

Here is what I've noticed so far

Hiccups
A single or a series of breathing diaphragm spasms, of variable spacing and duration.
Most people have no control over hiccups. They eventually stop on their own, but why? ... does something reboot? (Alert blogger Greg P also noticed this too).

Hypnic jerk
Involuntary muscle twitch which occurs during just as a person is beginning to fall asleep
This is a slightly more serious bug that most people have experienced. Just as we are about to enter sleep-mode, some neural signals are misinterpreted by the brain as "falling, oh no!" The resulting muscle twitch awakens the person. Stress and other conditions can cause an infinite loop of consciousness. More info on Hypnic jerk.

Pee shiver
A phenomenon in which one feels a shiver running down the spine following urination
Formally known as Post-micturition convulsion syndrome, it confused me a lot growing up. It seemed to happen completely at random; I tried without success to replicate it, or predict when it would happen. It happens mostly in males. I didn't know it was a whole phenomenon until I Googled it this year.

Any more bugs you can think of?
Comment away.

3 comments:

  1. Any of a number of different involuntary muscle spasms.

    One thing I would suggest, though, is rather than calling them "bugs" because you're not sure what evolutionary purpose they serve, it might be best to label 'em "undocumented features."

    ReplyDelete
  2. Eli may be right. I saw a study that non-functioning eyes are actually selected for in cave fish, rather than just the result of being an evolutionary neutral residual trait. What function broken eyes serve is anyone's guess, but natural selection apparently found something.

    ReplyDelete
  3. lol, I guess I could call it that ...
    But the sleep jerk thing is actually bad though ...

    ReplyDelete