darkness

Tuesday, 15 October 2002

Fun with hardware

darkness @ 08:09:30

Got the new Internap T1 connected to a new Sangoma 514/FT1 (PCI T1 serial card with built-in CSU/DSU; in other words, straight from the demarc to the card). Working great, and though the firewall keeps locking up user space, I was able to power it off (no clean shutdown), stick the card in, boot it up, and basically it worked. I had a little oopsie where the card didn’t get an IRQ because I still had the BIOS — yes, the BIOS — configured to think there was a PCI IDE bus master controller in that slot. Another reboot, though, and we were off to the races.

After I got the Internap T1 up so they could test it (which I think means “ping your serial side IP really fast”) I started building a new firewall. I selected an Asus A7V266-E (IIRC; either A7V or A7M) and an Athlon which runs at 1600MHz. What really shocked me is that I was basically able to get this board to work on the first try. Usually I have to end up mucking with something, changing BIOS settings, fucking with jumpers, reseating processor, getting new memory, etc. The only thing I had to do on this board was download the manual so I could figure out where to plug in the LEDs and such. It’s still up and running, so I must not have screwed up too badly. Or so we hope; the real test will be when I stick the T1 cards in there and replace the old firewall with this new firewall tomorrow.

I did a Red Hat minimal install. It was something like 260 packages, 450MB. Included some things I felt were a bit questionable, like audiofile, but I presume it was used by some management/configuration tools they feel the need to include in a minimal configuration. I immediately put APT on the box and now I’m happily installing things as I come across them. All the Perl RPMs I built for pipt installed from my custom package repository, and their dependencies even worked. Seriously, if you need to package some Perl modules, use cpanflute2 (see yesterday’s entry).

Did some coding tonight. A last bit of refactoring on code created by my first engineering task, then went on to creating the test for my second task. The test code for the second task looks much nicer than the first test case I wrote. Indeed, they will likely end up sharing some code. I just realized, though, that this most recent test case assumes that the first (only other) test case I’ve written has already run and completely successfully. If the class that test case tests is not running correctly, this test will fail as well. Probably not bad. I could probably either use a method for specifying dependencies between tests (not likely) or maybe I should combine them into one TestCase class. XP leaves out a bit about how your test cases should actually be constructed. Somehow I got it in my head that every class has a corresponding TestCase class when using JUnit. Then I remember that I was reading about how ParallelInheritanceHierarchies are a code smell. Oops, just spotted ExpensiveSetUpSmell. Me thinks I have a bunch of refactoring ahead of me, not including what I think might be some broken interfaces I’ve based my Producer class on. Sigh.

Listening to “Romeo and Juliet” soundtrack. I love this album.

Powered by WordPress