Wednesday, June 28, 2006

Rant mode

A lot has been said of how programmers' time is more valuable than a few machine cycles they save by trying to make their software run faster. A convenient excuse, I think, for laziness. Which may be why you find slashdot etc. full of posts on how interpreted and bytecode languages/platforms (like Mono and Java) are going to swamp compiled languages into the dirt, and while they're at it, provide "safer" code. I think it's a thinly disguised ploy by the software companies to steal some of the hardware guys' lunch. "We write the bytecode interpreters, and are hence in control"

I believe this is one road that's best not taken. I use software that runs on Java all the time. It's slow, it's pokey and it crashes. Examples? Eclipse, Matlab, Azureus and an in-house radar display program called VCHILL. All of them share common characteristics: they start up fine, then slowly eat up memory until my workstation chokes and I kill the program. I lost track of how many collective hours have been wasted due to this.

But wait, it gets worse. We now have "Embedded Java", which Agilent have decided to incorporate into their N1996A Spectrum Analyzer. Now we have an instrument that takes about 3 minutes to start up... even if it's been plugged into the wall for days (older analyzers needed a warmup time for their frequency reference ovens, which you got around by leaving it plugged in). The software is so crummy that if you enable a cursor and move it around, THE ANALYZER STOPS SWEEPING! This is, simply put, the world's most poorly designed analyzer interface. Ever. If you're ever considering a budget spectrum analyzer, stay away from the N1996A until they've revised the software.

I was just telling Dave today, it used to be that the signal processor systems in a radar were the ones that needed expensive custom processor chips and supercomputers, while displays ran on workstations. Now, we run our processing on a workstation (and use barely 10% of CPU doing it), while the display needs a monster rig with tons of memory, and doesn't provide a single additional feature. Pathetic state of affairs.

I need a vacation...

Reeling under the pressure of 19 hour workdays is usually enough to make someone write off blogging. Yeah, things got so hectic at CHILL because of missed deadlines and the NCAR folks tapping their feet and wondering when they'll get their promised data. Finally, we're churning out about 3GB of moments (or 220GB of time-series) a day for them, let's hope it's what they wanted.

Anyway, I found some funnies recently:In other news, I'm moving by the end of the week! Woohoo, won't have to deal with as much crap for a while!

These days, I alternate between moping around, thinking about the crummy deck life dealt me and thinking about... well, shh. You may find out soon enough. I'm so excited that I sometimes remind myself to not think about it, in case I jinx it and nothing works out. Right, enough tittering like a pre-teen....

Of late, the following have seen regular rotation on my iPod:
Tori Amos - Little Earthquakes
Thermal and a Quarter - Plan B
U2 - Achtung Baby
Pearl Jam - Yield

Saturday, June 10, 2006

Just in case you missed the point...

Pump is Pumping

... we got a pardy goin' on here!

Classic case of "have display, will show crap". Something very "embedded"1 in human nature, it seems :-)

[1] 10 points for Gryffindor if you get the pun

Saturday, June 03, 2006

First Light!

As if I didn't already need a reason to be crowned "high-priest1 of nerd-dom", here I go again. This time, they're a pair of graphs that almost nobody in the world would care for.

Whatiteez? They're the receiver calibration curves for the new digital receivers I designed for CSU-CHILL :-) They saw first light (well, first microwave, anyway) today. The first order of the day for a radar receiver is a noise cal, and that's just what I did. It's not terribly impressive by radar standards, but -113 dBm minimum detectable signal is still pretty good. To put that into perspective, -113 dBm is 5.01 femtowatts of incident RF at the low-noise amplifier inputs. To put it into further perspective, the radar transmitter generates approximately 600 kilowatts (+88 dBm) of power during it's transmit pulse. The dynamic range here is an astounding 201 dB! Human hearing, by comparison, has a dynamic range of about 150 dB before you go deaf, that's still 105 times less than the power levels CHILL deals with. Considering this radar is rather run-of-the-mill by military standards, I wonder what sort of numbers they deal with.

Note that I ran out of power on my signal generator at the upper end, so the slight compression is due to the signal generator, not the receiver.

In other news, my laptop acted up a couple of days back. Quite funny, I took it out to the radar, plugged in the serial port to a test point on the radar, opened a terminal emulator. Punched keys, nothing happened. Then, quite mysteriously, the laptop powered off. "Strange", I thought, and pushed the power button. The LEDs all blinked and went off again. I thought it must be a dead battery, but as I was plugging in the charger, I noticed a burning smell! WHOOPS! Anyhow, after a while it started working again, so I'm still happy. Back up yer data, folks!

[1] I actually took some "test your nerdiness" quizzes. Most of them put me in the 95th percentile. Ugh, I need a life...