Sunday
Nov062005

influenza: exponential growth.

I've been reading The Great Influenza: The Epic Story of the Deadliest Plague in History by John M. Barry. It's shocking and terrifying. This is the biggest thing I'd never heard of, and learning about it makes me wash my hands a lot. I'm thinking of stocking up on gauze masks. Seriously.
The "spanish" flu of 1918 killed 30,000 people in New York City and more than half a million in the United States. It was most likely to be fatal in otherwise healthy adults aged 20-40. Healthy immune systems attacked the virus so powerfully that debris from the immune response clogged the lungs. People suffocated in their own blood. Overcrowded army barracks and troop movements facilitated the rapid spread of the virus. They were running out of coffins in New York City. Corpses literally piled up. The flu could kill within hours of exposure. The virus can stay viable in the air for an hour.

Here's the scenario that scares me:

  1. Alfred is exposed to the flu virus. (Let's not worry about how it mutates or crosses the species barrier right now.)

  2. The virus starts invading a few cells in Alfred's lungs.

  3. A few hours later, the first generation of invaded cells burst, releasing around 10,000 virii copies per cel.

  4. Alfred sits down for a meeting with Betty. They pass a whiteboard marker back and forth. Alfred is shedding virus; a few get onto the marker.

  5. After the meeting, Betty touches her nose. Now Betty's infected.

  6. Charles has a question for Alfred about how to use Microsoft Exchange. Alfred pulls up a chair to Charles' computer, and they work together for an hour. Alfred breathes out; Charles breathes in. Now Charles is infected.

  7. Betty goes to the gym after work and works out on a treadmill. Dave and Edward are working out on the treadmills on either side. Now they're infected.

  8. Alfred heads home for the day. He's standing in a crowded subway then he starts coughing. His immune system has mounted its first defense against the virus, sending a cascade of defender cells and antibodies to the lungs, where the virus is reproducing. Alfred is young and healthy, so his immune response is powerful. Infected epithelial cells are killed by the immune system; antibodies stick to virii and make clumps; the virus itself bursts and kills infected cells. So much debris accumulates that Alfred's alveoli can't exchange carbon dioxide for oxygen anymore. He is choking on his own immune response... and he's doing it on the subway, shedding thousands of virii. Alfred collapses and his lips start to turn blue. Alarmed, subway riders call 911; an ambulance comes and takes Alfred to the emergency room. His lungs are so clogged with virii and debris that he is put on a ventilator.

  9. After the gym, Betty goes home, goes to sleep, wakes up in the middle of the night coughing, and dies.

  10. Charles starts to feel ill the next morning. He stays home from work for a day, then another day, and another day. He has the flu, and he recovers without incident.

  11. Dave starts to feel ill. He stays home from work. He conquers the viral infection, but his immune system is so depleted by the effort that it can't defend itself against normal airborne bacteria. After a week of the flu, Dave gets pneumonia. His family takes him to the doctor, who recognizes bacterial pneumonia, and puts him on amoxycillin. Alas, Dave's bacteria is resistant to amoxycillin. He doesn't get better after a full course, so his doctor puts him on erithromycin. After weeks of illness, Dave recovers.

  12. Edward wakes up feeling ill the day after he was at the gym with Betty. He feels short of breath, and is scared, so he goes to the emergency room... but finds dozens of people in the waiting room, all as sick as him. Edward is admitted to an overcrowded hospital ward; not enough beds, doctors, nurses, or ventilators. Edward dies.

  13. The paramedics who took care of Alfred when he went to the emergency room become ill. So do the other healthcare workers who treated him. So many healthcare workers become ill that hospitals and doctors offices cannot be fully staffed. More deaths.

That's probably enough of that: easy transmission in close conditions, rapid virus replication and shedding while asymptomatic, viral infection raises susceptibility to bacterial infection. Breakdown of healthcare institutions, then breakdown of civil society. It's going to happen. I'm not worried about will I get sick and die? I'm worried about, will modern society survive the pandemic?

Saturday
Nov052005

on purchasing apple hardware. or not.

Yesterday I wandered into a Circuit City after a long day of pretty damn good programming. I had a few minutes to kill so I walked the retail circle... and I came upon the iPod Shuffle. So I'm thinking, "Well, I've been working hard, and my iPod is broken, and having an iPod is pretty crucial to going to the gym, and I'd really like a tiny one like the shuffle, and the nano is out of my price range..." Staring lovingly at the white sliver of plastic, part of that thought caught my attention. My iPod is broken. Wait. This is the third iPod I've had. This is the second iPod i've paid for. This is the third iPod that's broken, and the second iPod that's broken out of warranty. Why on earth would I buy another iPod? I walked out of the Circuit City with all the cash I had when I came in, pleased with myself that I hadn't bought another fragile, doomed gizmo.
I buy apple hardware because I love OS X, which I can only get on this hardware, and because I love the industrial design. I can have the fundamental experience of walking around listening to MP3's with a gadget from any manufacturer, and toughness matters more than looks. I'm not going to throw away another hundred dollars away on shininess.

Tuesday
Nov012005

quick & easy installation (4:47 remaining)

I'm in my "one week, no software configuration" blackout, but a Mandriva Linux 2006 install cd fell into my linux box's cd-rom drive a few days ago, and when I restarted, it booted from the cd and asked very nicely from which media I would like to install. My local linux guru told me that installation would be super and wonderful and good, so I hit install. Ah, apparently the whole install was not on the cd. The installer asks if it can go out to the web to get the rest of the pieces. I say, okay sure. A few clicks later, I was looking at delightful illustrations of penguins and promo text reading "Quick & Easy Installation!" At the bottom of the screen there's a long progress bar captioned, "Time Remaining 4:47." Yes, hours. Arg! Apparently it's got a whole lot of bits to download.
The question now is, do I cancel the installation so I can get work done tonight?
[later]
I tried to cancel the install both by hitting the "Cancel" button and the "Exit Installation" button. There's no indication that it got my click for a few minutes, and then a content-free large grey rectangle appears. A few more minutes go by, and it's replaced by a progress output list labeled "Installing" that lists all of the packages its installing. I told it to cancel!.
[later]
"Time Remaining 01:02"
[later]
"Time Remaining 01:04"
I am now rather pleased with my habit of daily backups to alternate media.

Saturday
Oct292005

the tools in my development environment

I've been in this job for four months, and I think I have the development environment I want. Things are fitting together more nicely than they have in a long, long time. Fundamentally, I'm using the mac for client side computing, and whatever I can find for a server.


  • mac g5 (dual-2, 1 gb ram). running Tiger. This is plenty fast so long as I don't try to run a server or a java VM. It's a client machine.

  • dell inspiron 8200 running OpenLaszlo, tomcat, mandrake 10.1. Just a 1.5 gigahertz processor and 512 mb of ram, but the java runtime outperforms the mac's by a factor of 5.

  • BBEdit, mostly just because it's a classic and the key commands are easier on my hands than emacs. I've been switching editors for so long that I don't really have a home, but Scott Evans pointed out that at some point playing with new tools just becomes a way to avoid doing real work... so I'm sticking with BBEdit for a while. Also because my employer bought a BBEdit license for me.

  • PathFinder by cocoatech. Industrial-strength, professional-grade Finder. I need massive speed and control when navigating the filesystem, and I need to do it all right from the keyboard. Macworld gave it 4.5 mice, which really made me take notice. Superb integration of the terminal, a graphical file browser, preview, info, shortcuts, keyboard commands. I'm just getting started with this but it is already a major productivity enhancer.

  • xScope by IconFactoryfor on-screen pixel measurement and color sampling

  • perforce, industrial-strength version control. Version control we pay money for. A set of related changes are a changeset, which can be treated as a unit. Nice graphical tools, but since I'm becoming keyboard-kid, I'm getting into the command line.
  • bash, find, grep, and terminal. Did I mention that I like the command line?

  • Safari. for a while I felt bad that I wasn't using firefox, but I'm over that now. Safari works for me, except when it crashes, and I know the keyboard commands.

  • Quicksilver. It took some work to get me and Quicksilver working together well, but now we're just in love. It's all about rapid keyboard navigation.

  • OmniGraffle 4. Now my diagrams can look like I'm a designer. Sort of.

What I'm not using:


  • Microsoft Office. I threaten to get out my machine gun whenever anyone sends me a word file; this technique has been surprisingly effective at reducing the number of doc attachments.

  • Macromedia Flash. LZX is my authoring tool for Flash. I write Flash via lzx. Every once in a while I think, hmm, could I do that in the Flash application? That thought passes more quickly than I can requisition a chunk of expensive software.

So, look at that: a few small-to-moderate tools, each focused on one goal. From the universe of software and methodologies, I'm picking the ones that work best for me... Tiny tools which work together. I wonder what government would look like if I could set it up just like my development machine.

Sunday
Oct232005

I will only buy wireless input devices from now on. Last week I tripped on a power cord for my laptop; the power jack was bent but the laptop was fine, despite crashing to the ground. (Good thing my host had a nice thick throw rug.) Then just now, I tripped over the cord to one of the weirder input devices I've owned, the Belkin Nostromo n52. Elementary physics indicates that when a cable connecting two items of unequal mass is tugged in the middle, the item with lesser mass will move. The heavier object (the laptop) will require more force to overcome static friction, especially if it has little sticky rubber feet.