UPS Problems

Uninterruptable Power Supply, that is. My mom said it was making a screeching noise, so she turned it off and back on. Ironically, it only affected the machines that had been plugged into the battery backup side of the UPS, and not the surge protector side. Maybe it was that there was too much drain on the battery, so I moved everything but the modem, router, and server to the surge protector. I hope it doesn’t happen again. This problem ruined my 202-days-and-counting uptime on my BOINC zombie.

Interesting…

On Thursday after the choir concert I started losing my voice, so I stopped talking in an effort to not lose it completely. It worked, and was maybe even a bit fun. I still prefer talking in  the long run though. I also noticed something interesting that happened: I could hear better. I’m not sure if it was just because I wasn’t talking so it was quieter, but it seemed I could hear everything more sharply.  In somewhat related news, I’ve noticed that sometimes when there’s something artistically beautiful or significant, a single tear will roll out of my left eye. It’s weird, yeah, but maybe it has something to do with the creative right side of the brain controlling the left side of the body.

Coding

I recently started trying to set up zoneclient to update my DNS listings if my IP changed. I wanted to have it checked extremely often, yet not waste zoneedit’s bandwidth by checking up with them every 3 to 5 hours via cron. This problem was brought into new light when Irfan tried to pull up my site during Biology class and failed. Tandoc was nice enough to let me check what was wrong after class, (we finished a bit early) and my IP had changed, although I could do nothing to fix it from school.

I was having a problem with zoneedit. Although it claimed to support getting my external IP from my router, for some reason it was checking the wrong page. I have no formal or even really informal experience in Python, and my attempts at poking the code produced nothing helpful. I contacted Kal, the sole maintainer of the code. He replied in close to an hour, which was a pleasant suprise. I explained my problem and gave him my logs, and within 5 hours of email back and forth the problem was completely solved! I now have the script running every 5 minutes. Excessive? Yes.

I’m also writing a C++ fish tank simulation program as qualification for Camp CAEN‘s advanced C++  Game Development class. We’re supposed to draw a fish tank in text on the screen, then when space is pressed, randomize all the positions of the fish and draw again. Multiple fish in one position are shown as a * instead of their type letter. This program is also supposed to be able to read in the number of fish and tank dimensions from a file at runtime. When I started it had been quite a while since I had done any C++. The initial part went relatively quickly, (drawing the fish tank, having the fish randomize) but I was stumped with the memory errors I was getting when I started easing the thing into being dynamic and read its settings in at runtime. After spending quite a while troubleshooting with the help of those in ##C++ on freenode, I found that my problems were because I was accidentally declaring a local instance of the member variables I was attempting to initialize in my constructor. Whoops. Let’s see if I make that mistake again in a hurry.

EDIT: Alter Ego!

Server Reinstall

I’ve reinstalled Debian, I felt there was a buildup of bloat on my previous system. While I did this, I moved the site over temporarily to one of my BOINC zombies. I resized my initial partition into the smallest size possible near the end of my drive. I resized the swap partition from an extravagant 3.8GB to a more logical 2GB. I made the rest of the drive another ext3 partition. During all the pre-reinstall tweaking I did, I adjusted the BIOS. I turned off all the onboard stuff except ethernet. I noticed the SiS onboard video card was sharing 32MB of my RAM, so I disabled that. Oops, no video. I had to go get a spare video card and use that. Nothing fancy, just an ATI Radeon LT. All it needed to do was text anway.

I then installed the system, checking Basic System and Web Server as the packages to install, because it seemed to have frozen when I tried SQL server as well. I installed a few basic packages such as lynx and bzip2, copied over the server log and configuration files, and set up the static LAN IP. After making sure the password protection for some server resources were intact, (they were) I pointed the router at the server again. It seems faster, which is everything I was looking for.

Bush’s Decline

This is an interesting video. It compares Bush’s speaking skills 10 years ago to a more recent Bush. Link.

W3C Validation and Free Energy

I’ve tweaked the blog theme a bit. Nothing really that will affect you. I added alternate text to all the images, so now the blog validates as W3C compliant, so that’s good. I also fixed the path to an icon that was broken. The HTML pages I made in WordPad way back when are horribly mangled, unsurprisingly.

For some reason, when I pointed the validator at the test page of the theme, it said it was fine. However, when I looked in the code of the test page, it had the same omissions it was nagging me about, even though I had a fresh install of the latest version of the theme. Oh well, that’s over now. I also tried to maybe save W3C a bit of bandwidth like they asked, and hosted the standards definition file on my own server. I cron’d it to update every 3 months or so, as it would typically have a 90 day expiry time, using this line:

0 0 7 */3 0 rm /var/www/wp-content/themes/aqueous-lite/xhtml1-transitional.dtd wget -P /var/www/wp-content/themes/aqueous-lite/ http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd

The remove is to get rid of the previous version so wget can get a new version. If this was not done, a copy would be saved with a “.1” or “.2” ect on the end.

I can’t seem to change the <html xmlns=”http://www.w3.org/1999/xhtml”> without it becoming inavalid, as it would seem that setting is fixed. Anyone with tips on how I can cache this or something, please let me know. I also removed an outdated version number from the footer. Thanks to those who pointed out I was apparently using an outdated version of WordPress!

I’d also like to draw your attention to an interesting demo. As far as I can tell, it’s a way to increase efficiency in motors by piping electromagnetic radiation that would otherwise be lost back into it. There are also claims that the laws of physics have been broken with this thing, so a healthy dose of skepticism wouldn’t hurt.

Forum

I took down the forum. It was dead and just being used by link spam bots. I still have the MySQL, I’ll back that up in case resurrecting it ever becomes an attractive option.

YouTube

Three interesting YouTube videos:

Nintendo A Capella

Re: Harder Tetris on Piano

Capturing and Viewing Gigapixel Images

Edit: I’ve replaced the poorly-done Ask Steve and Movie pages with one Animations page. This one is text-only, so it is now possible to actually figure out what’s what. Also, Snow Day is back up, I hadn’t realized a link to it was missing until I got an email about it. … Why do I even keep the animations up? They’re just kinda embarrassing now…

Advice…

Never install a tool unless you’re certain what it will do. I just installed ez-ipupdate, and set it to look on eth0. I was trying to set it up so I wouldn’t have to call my Mom (when at Dad’s) or check ipchicken every time my IP changed, and just have my server update the DNS automatically. Unfortunately, the tool obediently checked the IP on eth0, and found it to be 192.168.1.100, the LAN IP of the server, which was different than what was listed. It changed it immediately. I had a hunch right after I hit OK that it might do that. Sure enough, the records flashed from the correct IP to that of 192.168.1.100, the LAN IP. I tried checking some DNS lookups, hoping that some delay in DNS updates would give me correct IP. It didn’t, and I turned to other sources. Mom didn’t answer the phone, so I tried checking my bash history. Luckily, I still had an ssh command logged with the numeric IP from when I was checking the IP earlier. I manually changed it back, and hastily uninstalled ez-ipupdate. Whew.

Passwords Fixed and Crunch Time

I fixed the passwords last Friday. It turned out I had the apache2.conf looking for /usr/local/apache/passwd/passwords when it should have been apache2. File transfer can now be accessed. Web stats are now accessible here for those interested.

In school news, I’m sure I’m not the only one starting to feel the finals squeeze. The year’s wrapping up and pressure is ramping up as we prepare for the tests… of DOOM. (Pat.) I’m watching my gaming time dwindle away, and it’s being replaced with time in which I’m putting off the studying I know I need to do. Writing that made me need to go study…