chrisdaniel.net

  • About
  • Photos
  • Sunday, July 20 @ 23:18 -0500

    Portland, Oregon

    Filed under: Uncategorized ::

    As many of my friends already know, I will soon be relocating from Tulsa, Oklahoma, to Portland, Oregon. Where “soon” == next week

    This has been a long time in coming; I have sold pretty much everything I own, except for those essentials that will fit into my car. I’ve allocated four days to drive there (Google Maps says it is 28 hours worth of driving). Any suggestions for things to see along the way are welcome!

    Tuesday, June 03 @ 13:28 -0500

    ntpd can’t deal with crappy clocks

    Filed under: Uncategorized ::
    Jun  3 11:11:45 ntpd[4292]: adjusting local clock by -0.163852s
    Jun  3 11:55:57 ntpd[4292]: adjusting local clock by -0.182279s
    Jun  3 13:02:25 ntpd[4292]: adjusting local clock by -0.184841s
    Jun  3 13:08:11 ntpd[4292]: adjusting local clock by -0.244856s
    Jun  3 18:08:11 ntpd[4293]: clock is now unsynced
    Jun  3 13:14:24 ntpd[4292]: adjusting local clock by -0.226083s

    If you’re seeing messages like the above in your logs, your clock might be drifting too much. Try turning off ntpd for a day, and just running ntpdate (or ntpd -q) every hour from a cron job. Check the log of the cron job output to see about how much your clock drifts per hour.

    Mine ended up being about a half second per hour, according to the adjustments ntpdate made. Apparently, ntpd couldn’t compensate for the drift; it seems like that much shouldn’t be a problem, but oh well. I’m currently running ntpdate in a cron job every hour to sync my time, and so far, everything seems to stay within a second of the real time, which is good enough for me. If you have the demand for better accuracy, get a clock that doesn’t suck.

    Tuesday, May 20 @ 15:19 -0500

    ATI sucks

    Filed under: Rants ::

    Since I started using Linux, I’ve always avoided ATI graphics cards, simply because they have historically withheld Linux drivers for certain graphics cards, waiting until the cards were near obsoletion to release compatible drivers — even binary ones. Nvidia, on the other hand, has had a relatively good track record for keeping their binary Linux drivers current. This was really my only reason for staying away from ATI.

    Recently, however, I have had some very bad experiences with ATI graphics cards on Linux. My employer recently purchased a couple of LCD monitors for my use; strangely, when using the VGA inputs, the picture on these monitors had too much red and blue (tried different cables, different cards with same results). My main card (AGP, Nvidia Geforce FX 5200) had a DVI output, so that was no problem; but I needed to replace my second PCI Nvidia card. The only cards we had available with DVI outputs were ATI. I grudgingly popped one of these in (a Radeon 7000 64MB).

    ATI cards in trash

    The very cards — where they belong.

    Right out of the gate, everything seemed to be okay. I powered on my machine, added the new device in xorg.conf with the “radeon” driver (I think this is the open source one; I didn’t care about 3D acceleration on the secondary screen anyway), and up came X as I expected. Then I moved a window on the second screen, and the display flickered off for about two seconds and then came back on. Wtf? I looked to make sure everything was on separate IRQ channels and whatnot; yep, no problems there. I tried moving it to a different slot to take up a different IRQ — same problems. I tried another identical card, and saw the same problem.

    Oh well, I had another ATI PCI card to try. I replaced the problematic card with the new one (this one a Radeon 9250 128MB), and powered on my computer. It worked okay at first, same as the other one, with the same driver. I moved a window around on the second screen — yay, no more flickering! At this point I just chalked the previous problem up to the Radeon 7000 being too slow, or something.

    Time to get down to work on my pretty new LCDs. I put on my headphones, and turned on some music — and nearly went deaf from the horrible static noises produced. Well … something’s broken there. Checked interrupts — everything was on its own IRQ. I tried a few things here: moving the graphics card to a different slot, moving the sound card to a different slot, trying different IRQ schemes in Linux to assign the sound card a higher priority IRQ, etc. The only action that solved my problem was to use the motherboard-integrated sound card, which I had stopped using because of audible interference.

    I went back to the first PCI card I tried, since I’d much rather deal with flickering (I rarely moved things on the second screen, anyway) — it no longer exhibited the flickering problem. I must have changed something, but I don’t know what. Over the couple weeks that I used this card, I began noticing a new interference problem on the sound car, when I listened on my headphones. Also, very rarely, and seemingly randomly (except when scrolling in OpenOffice — I could consistently reproduce this), it would flicker a bit just as before. Sigh.

    Finally, I asked my employers to buy a cheap ($35) Nvidia Geforce FX 5200 PCI card from Newegg. I just put it in today, and the new card works perfectly. No more flickering (tried OpenOffice on both monitors, flung windows about the screens at lightning speed, resized windows, etc.), and no more interference with sound (I listened intently for several minutes to some quiet music).

    Why do these ATI cards cause so many intermittent issues with my hardware? It could possibly be just a bad combination of hardware, and I’m not truly sure where the fault belongs, but given that I consistently experienced problems only when ATI cards were in my system, I place it with them. Take what you will from this post, but I will continue avoiding ATI.

    Monday, May 12 @ 15:24 -0500

    McCain is old

    Filed under: Uncategorized ::

    lulz. The AARP is younger than John McCain!

    Thursday, April 10 @ 10:30 -0500

    You Will Submit (poster) (buy it) (now!)

    Filed under: Uncategorized ::

    From Questionable Content #141:

    You Will Submit

    I made the poster!

    Monday, April 07 @ 00:39 -0500

    Runners Anonymous

    Filed under: Uncategorized ::

    I’m 22, and I’ve heard all the normal rhetoric about exercising — not least among the advice, the daily run. You have probably heard exactly the same; but did you know running can be addictive?

    Bunch of addicts

    [Running-addicts seen in their natural environment — marathon photo courtesy Steve Gregory; marijuana photo courtesy US government]

    Last night at the coffee shop, a less-fit friend was experiencing a mild euphoric high after a long, fast walk involving a bit of climbing; another friend mentioned that it might be similar to the “runner’s high“. He added that “everyone runs to get it — otherwise only masochists would run”. Incredulous, I asked the barista, who runs regularly, why she ran. “For that feeling you get sometimes … it’s like having sex — except you’re running!” She also mentioned that sometimes her “head feels one with the sky”. Sounds similar to what is described by this trail runner.

    Why hadn’t I heard this before? Maybe mine is an aberrant experience, but if not, maybe it’s because of the “anti-drug” societal pressure here in the United States, thanks to the “War on Drugs”. Anything using the prospect of addictive highs to promote even beneficial behaviour might be seen as encouraging “deviancy”. What a crock of shit. Well, now that I’ve heard about this runner’s high, I think I’ll follow through on my intention to start running regularly — yes, for the high, dammit!

    Friday, March 14 @ 23:07 -0500

    Remington Quiet-Riter

    Filed under: Uncategorized ::

    This week, I drove out to my parents’ house to retrieve this:

    Remington Quiet-Riter

    It’s a Remington Quiet-Riter from around 1957. My grandmother gave it to me when I was twelve or thirteen, and I wrote some short Star Trek (TOS) parodies on it. It’s in great condition for the use it’s endured.

    I’m considering taking it to the coffee shop to write some things, for old times’ sake, and to attract some attention.

    Full set here.

    Tuesday, March 11 @ 15:39 -0500

    Oh, is this about Iraq?

    Filed under: Uncategorized ::

     Typical Oklahoma bumper sticker

    Also note US ARMY sticker.

    Friday, February 15 @ 10:50 -0600

    Windows Server 2000 “just works” … no matter what you do

    Filed under: Rants ::

    You’ve heard of layer eight problems? Well, here’s what I call a “split layer eight” issue.

    A couple of weeks ago, the company I work for finished up moving servers to a new data center; part of this move involved changing some servers’ IP addresses. Since the move, one of our servers had been behaving slightly erratically. It was running SQL Server on Windows Server 2000, and had one linked server (the main database server, which was local, even connected to the same switch) so stored procedures could query the other server’s databas, and whathaveyou. Small queries (short connections) would work just fine, but anything that took longer than a few seconds broke with “General network error”; the connections appeared to get interrupted.

    I tried testing the connection between servers using iperf; the connection for that initially worked, but then got interrupted after a few seconds, too! The same test was okay between the main database server and a different server, so that narrowed the issue down to our strangely-behaving server or its switch port.

    Hardware? Switch port reports no errors, so it’s probably not that …

    Duplex mismatch? Both switch and server report autonegotiated 100Mbps/full-duplex, so that’s not the problem …

    Network configuration? Well, let’s check just for the hell of it.

    /26 subnet mask?

    Let me explain something to everyone before I go any further. IP addresses are 32-bit numbers, and they’re divided up into sections using bit masks, called “subnet masks”. For example, I have 192.168.1.0/24 (24-bit subnet mask, which means I can use any number in the last octet, the .0 in the address), and I want to divide it up into four segments. I would use a /26 subnet mask to divide the address space (the last octet) up like this:

    Block 1: 0-63 | Block 2: 64-127 | Block 3: 128-191 | Block 4: 192-255

    Essentially, this means, for example, that 192.168.1.1 cannot directly talk to 192.168.1.152, because they each know they are in different blocks (.1 is in block 1, .152 is in block 3), and have to talk to an intermediary (a router) in order to reach the other.

    Now, back to my server’s network configuration. My server was .152, and it had a /26 subnet mask, so the router, the central database server, and almost everything else it needed to talk to were not in that network block. Certainly, everything I had tested from was outside of that block.

    Why was I even able to connect!? Instead of doing what network standards suggest, and simply returning a “no route to host” error, Microsoft’s networking stack was apparently ignoring the subnet mask, allowing the connection, and then later realising what the subnet mask was and dropping the connection … (?!)

    Even if the above was not the case, and something very weird was going on, and Microsoft’s networking stack is flawless, I should have been presented with an error when I input a default router address that was not in the same subnet as the server. By definition, one’s default gateway must be in the same subnet!

    This very simple problem should have never happened, obviously, but all three links in the chain failed:

    1. I, the user, failed to input the correct information.
    2. Microsoft failed to recognise that the information I input was inherently incorrect and could not possibly work under any circumstances.
    3. Microsoft’s networking stack failed by happily taking the horribly wrong information and somehow worked anyway … marginally. Guys, guys — you’ve got entirely the wrong idea of “just works”.

    This is a split layer eight issue, because the fault is split between the user and the developer. I am the first to apologise to users for failures to do proper input validation, or failures to work as expected. Developers can do wrong, and frequently fuck their users by failing in this manner; most users only recognise the “user error” portion of it, unfortunately, and continue using the software.

    Microsoft have touted their commercial software as “best in the business” because they have spent billions on development; they have said that their billions spent make their expensive products cost-saving. I ask you, where have those billions gone when such a simple error can be made by the user? Aren’t they supposed to be making the experience easier and more efficient? Think about how many times similar situations have probably happened around the world; either extra time was spent, or extra money was thrown at an outside consultant to come in to identify the issue. Forget how much they’ve “saved” us; how many billions of dollars have Microsoft cost the IT industry?

    My Linux and FreeBSD boxes don’t do this shit. If I change my subnet mask to something that puts my default gateway in another subnet, my default route gets deleted. If I try to connect to something outside of my subnet, I get a “no route to host” error; the connection doesn’t go through and then get interrupted. THIS IS FREE SOFTWARE — DEVELOPED BY “AMATEURS”. WHAT THE FUCK ARE YOU DOING, MICROSOFT?

    Somehow, I don’t think Microsoft includes “simple errors caused by developer fuckups” in their estimates of total cost of ownership.

    Monday, February 11 @ 17:49 -0600

    Sticky Stuck

    Filed under: Uncategorized ::

    I made a new Halo 3 custom game yesterday, and tested it at work … it is called Sticky Stuck, and the objective is to kill opponents by sticking them with grenades. The idea was originally conceived by Steev, who is just awesome at sticking people.

    Points can only be earned by sticking grenades; pure kills are not counted, only sticks. All weapons are unavailable except for the Magnum (pistol), with which everyone spawns. Grenade regeneration is on, so players don’t have to worry about running out of grenades — inventory regenerates automatically. Vehicles are off, except for Mongooses. This game works better on maps with fewer open spaces, like Guardian.

    We tested it at work this afternoon with three people on Guardian; everyone seemed to have a lot of fun, and there were some intense moments.

    Next Page »