What a successful release looks like

I thought I’d share a little moment I had recently. We rolled out a new version of Feedjit a few days ago. Nothing changed on the user interface – so no new user features. It was mostly performance enhancements on the back-end servers.

The new code was the results of many weeks of research and testing and several weeks of implementation. When we launched this weekend I was cautiously optimistic when I saw the load drop on the servers. And now that it’s a few days later I’m staring at our monitoring graphs with a huge smile on my face.

The reason this is a big win for us is because if we double performance then the number of servers we have to buy halves. And for a small company supporting a huge number of users that’s a very good thing.

Here’s the data from one of our busiest servers. The server has a quad core CPU in it so a load average of 4 is 100% busy. As you can see we were pushing things a little on this particular box. It’s fairly obvious where we rolled out the new code…

Most of the performance gain is from faster disk access code which means that the CPU spends almost no time waiting for the disk to do something. As you can see below the IO wait time has dropped to virtually zero. Disk is the slowest component in a server and is usually the bottleneck for any applications that store and retrieve data, so this is a really big win for us.

I wish I could go into more detail about our application and some specific numbers. In a few weeks I’ll hopefully be able to share more.


Further observations WRT the Chinese Earthquake in Colorado

With regard to my previous post, another observation was that yesterday morning my dog didn’t eat his breakfast. He spent most of the day cowering. We thought he had injured himself somehow but there were no visible signs. I checked his joints and pressed his gums to watch the circulation return and everything was normal. We agreed to keep him indoors today. A few minutes ago it occured to me that he may have been sensing the 6.0 magnitude aftershocks that they were experiencing in SW China all day yesterday. Today he’s fine – and he enjoyed his breakfast very much. 😉
I also have an improved theory on why the house we’re staying in in Elizabeth, Colorado is sensitized to these vibrations…

The basement is underground and the floor above the basement is at ground level. The entire basement is closed up i.e. all doors are closed and there’s a single exit via some stairs to get up to ground level.

So the basement acts as a giant resonance chamber much like the boxes they use to mount sub-woofers. The chamber is tuned to very low frequencies because of its size. As a wave form enters it starts bouncing within the chamber with very little loss. As additional waves enter the chamber they reinforce the first wave and eventually you have a standing wave that is of a great enough amplitude to set the floor above the basement vibrating.

Viola! Instant long-range seismometer.

So this household (forgive the pun) seismometer detects what’s known as teleseismic events. These are Earthquakes that are detected more than 1000km’s from the source. And there is in fact an amateur teleseismic network that has a ton of info about Earthquakes in general and these sorts of Earthquakes. Here’s a quote:


The dynamic, transient seismic waves from any substantial earthquake will propagate all around and entirely through the Earth. Given a sensitive enough detector, it is possible to record the seismic waves from even minor events occurring anywhere in the world an any other location on the globe. Nuclear test-ban treaties in effect today rely on our ability to detect a nuclear explosion anywhere equivalent to an earthquake as small as Richter Magnitude 3.5.


Rest of the source article is here.

I think I felt the Chinese earthquake

Update: I have since confirmed that the time of the Chinese quake was 2:28pm (CST – Central China Time) and I felt the vibrations between 12:20am and 1:00am. Also since this writing the quake’s magnitude has been upgraded from 7.8 to 7.9 which is 1.41 times more powerful (Richter scale calculator available here). After the quake they immediately had a magnitude 6.0 aftershock and have had aftershocks ranging from 4.7 to 5.8 for a full 24 hours after the quake at intervals of 15 to 30 minutes. This quake released 31 times more energy than the 1989 San Francisco Earthquake which was a 6.9. Our thoughts are with Sichuan today.

Last night some time between 10pm and 12:30am I was lying in my parents in law’s living room in Elizabeth, Colorado flat on my back on the carpet. I had my head on the floor with my skull firmly on the ground – I had cycled hard that morning and was stretching my back out.

The living room floor is above the basement, so it’s a floor suspended above a TV room below it.

I felt a vibration as though some deep force shook the floor. It lasted about 0.5 to 1 seconds. It felt very clearly like something that had an external source – not someone jumping on the floor. It wasn’t a very strong vibration – it was slight but with a very very low frequency. You wouldn’t be able to hear it – I just felt it through the base of my skull that was resting on the floor.

Everyone in the house was downstairs watching TV and all were sitting down at the time on furniture on a concrete floor. So it couldn’t have been anyone in the house. The properties out here are each on 5 to 10 acres, so the houses are at least 1000 ft apart – so it couldn’t have been any neighbors. It’s also very rural and there weren’t any cars or trucks outside at that time of night.

The vibration was such a strange occurrence that when my wife walked upstairs a few minutes later I told her about it and mentioned that I wondered if we might have an earthquake.

This morning I read about the 7.8 magnitude quake in South Western China during the middle of their day. It occurred at the same time as my little skull vibration incident.

In 1996 a Northwestern University seismologist and a colleague working for the French Atomic Energy Commission proved that the Earth has a solid core. They did this using an earthquake in the Flores Sea in the South Pacific and analyzing the vibrations using a seismic array in France after they had traveled through the Earth.

The magnitude of the quake in the Flores Sea was 7.8 – exactly the same magnitude as the Chinese quake.

My guess is that I did feel the quake and that my parents suspended living room floor has a resonant frequency the same or similar to the quake vibrations when they arrived.

Apple Basic emulator in Javascript

I started programming on an Apple IIe at around age 11 and if you too enjoy reminiscing, check out Joshua Bell’s Apple Basic emulator implemented in Javascript.

Since my move (back) to using Apple I think my code has improved – if nothing else then from a feeling of happy nostalgia.

…And I couldn’t help myself. I wrote a similar program as a kid – except back then we had a green monochrome screen.

20 W = 279 : H = 159
25 C = 1
30 FOR I = 0 TO 1 STEP 0.005
40 HCOLOR= C / 10
45 C = C + 1
46 IF C > 160 THEN C = 1
50 HPLOT W / 2,H TO W * I,0