Tuesday, October 31, 2006


Made really good progress on the Solaris port today. Unified the makefile so that we now use autoconf to do all the platform specific stuff.

Dinner at Broadway Station with Dan after work.

Came home and found Tivo dead. It's stuck at the "Starting up..." page. Been thinking about building a MythTV setup for a while now, but it looks like now I don't have much choice (other than I guess watching TV in real time, but who wants to do that?).

Friday, October 27, 2006


Ok, read the docs. In fact ACE does support "make -j", so now my build is screaming along on all ten CPUs and my load average is 13.2. Not bad.

Solaris and ACE

Started work on Solaris codebase cleanup. Still at the office. Made a few fun discoveries:

  • ACE 5.5.3 (the latest beta) doesn't compile on Solaris 9
  • ACE 5.5.2 doesn't compile on Solaris 9
  • ACE 5.5 (stable) doesn't compile on Solaris 9
  • ACE 5.4.7 (the version we use on Linux/Win32) doesn't compile on Solaris 9
  • Ran across the ACE scoreboard, and found out that their quality seems to suck and nobody is maintaining what look like critical errors
  • A ten-way Sun server isn't very useful if the CPUs are only 300 MHz each and you're not willing to trust that parallel make works on the ACE codebase

It looks like perhaps it is because we are compiling with inlining disabled, so I'm now trying to compile with it enabled (which I believe is the default). This might explain why their scoreboard indicates that it compiles without errors on Solaris 9.

On one hand, it might be useful if the company allocated hardware to contribute to the ACE community's nightly build regression test. On the other hand, it doesn't look like anybody actually fixes the critical failures reported so why bother?

It looks like the leaks I fixed yesterday with BoundsChecker for Win32 uncovered some nasty bugs in the Linux build, which is generally a good thing. Go daily regression test!

Tuesday, October 24, 2006

Perl on Win32

Rebuilt my desktop PC at work. Moved the codebase over to Visual Studio 2005 so I can take advantage of the vastly improved debugger (for example, you can now see the contents of STL containers). Found out the hard way that you can't compile Perl with VS 2005. Grabbed the HEAD from dev.perl.org and found that it isn't supported there either. The debugger shows miniperl.exe is crashing when building the B module. Looks like a double fclose() condition. Will email a developer who appears to be doing some other work on getting VS 2005 working, and see if he has any information about where things are at. The problem seems pretty reproducible, but digging into the reference counting on the file handle is going to be a pain. Also dealing with filehandle problems is not necessarily the best case for using printf() to create logs either.

Worked until 10pm trying to isolate the problem. On one hand the company clearly can't afford to be responsible for porting Perl to Visual Studio 2005, but on the other hand if I can get it working without too much trouble the general benefits of VS 2005 would be a significant help in debugging other parts of the codebase.

Tomorrow will debug the heap corruption problem we are having with VS 2003 and Embedded Perl. My hope is that with the help of BoundsChecker I should be able to isolate the problem without too much hassle. Of course, since I just got BoundChecker yesterday who knows what else it will turn up before I can even get far enough to debug the Embedded Perl problem. When I did the same exercise on the Linux platform last year using Valgrind, the memory corruption problems I found kept me busy for a week.

Vikki left today. Was great to have her out here for the weekend during her break.

Thursday, October 19, 2006

Night out

The company went out tonight to a bar on 19th and 3rd to celebrate (mourn?) Jim's last day tomorrow. Also Morris and Matt's birthdays tomorrow. Was good to go out but the noise level in place like that really bothers me and I can't make out a word anyone is saying.

Got home around 9:30. Watched CSI. Got caught up on some email.

Broke out my Macromedia Flash compiler and started looking into making "Vegetarian or Not Vegetarian". Vikki and I came up with the idea after she showed me "Programming Language Inventor or Serial Killer"


Very entertaining.

Wednesday, October 18, 2006

I miss embedded

So I picked up a Olimex PIC-MINI-WEB standalone ethernet PIC. It's basically a Microchip PIC controller bolted to an ENC28J60 Ethernet interface. It's preloaded with Microchip's TCP/IP stack and their embedded webserver.

It's very tiny and only cost me $39.00 without the power adapter.

It includes full source code for the whole thing (TCP/IP, UDP, SNMP, DHCP, HTTP, FTP, TFTP, ARP, Ethernet, boot code). Looking through it takes me back to my days at 3Com working on the OCLM. It always amazed me we could fit so much into so little space. This device has 32KB of onchip flash, 1024 bytes of RAM, and 1Mbit in a serial EEPROM (yeah, that's 128KB).

My original plan was to hook it to a Dallas 1-wire digital temperature sensor so I can monitor the computer room temperature at work (and generate SNMP traps, alarms, email, etc). Also want to rig it up to send the data to my website on a periodic interval, so I can compute graphs over time. Had a few other ideas now that I started playing with it:

* promiscuous monitor for packets on TCP port 143 or 110 that include the byte sequence PASS
* IR to Ethernet bridge for controlling my cable box (or other remote control devices)

Probably the biggest annoyance is that it needs a 6V DC power supply to keep it going, so I have this tiny little microcontroller connected to a big honkin' AC adapter. Will have to measure the current draw and see if battery power is viable. On the other hand, this month's Circuit Cellar had an article on Power over Ethernet solutions. Maybe I can see if Eric has any samples kicking around from his days at Enikia...

The other annoyance is that unlike the OCLM, the device is not field programmable, so I need a PIC programmer. Unfortunately the cable advertised by the website was the wrong one, so I have to wait a few more days for a $3.95 adapter before I can get started. Doh!

I miss embedded work. Feeling kind of annoyed about the situation at my job. Feeling undervalued. Stuck doing something I'm not really enjoying and not feeling fairly compensated for being stuck doing something I'm not really enjoying. Maybe it's time to move on.

Note to self: block source IP

Wednesday, October 11, 2006

Not dead

Hello family members.

No I'm not dead. The crash was 50 blocks uptown.


Friday, October 6, 2006


So it was somebody's great idea to start operating a jackhammer on the street outside my apartment at 7am this morning. Very annoying.

Met up with Carter last night after work. Played some Magic. Pasta for dinner.

Wrapping up my work on embedding Perl on Win32. Did the packaging last night.

Mrs. Burkhardt sent me this article this morning. Looks like I don't have any excuses now.

Cat Lovers Lining Up for No-Sneeze Kitties

(except maybe the notion of spending four grand on a cat).

I'm getting a headache from the noise. Might as well go to work early than continue to listen to this.

Tuesday, October 3, 2006


I want to dedicate this post to those of you at work who don't have anything better to do than read my blog. Jae, is your RSS feed working?

Another long day. Made good progress on my embedding of Perl under Win32. The test harness I originally wrote for the Linux build has been ported and is now working, which is a good sign.

Been reading Fast Food Nation. Speaking of McDonald's, here's a sad tale my brother-in-law tells of how clueless they can be.


Monday, October 2, 2006

So Tired

Falling down tired. Literally.

Went to Grandma Katzer's viewing on Friday, funeral on Saturday morning. Drove to Philadelphia and spent the weekend with Vikki. Caught a 6:00am bus this morning and got to work at 8:30am. Got home from work at 9pm.

I'm so tired.

Watched Grey's Anatomy. I'm going to bed now.