Jul 2005
Jounrey
Today I leave for Portland Oregon to attend OSCON and I'm pretty
excited. I know I haven't been blogging lately but I've been very busy at home and at work preparing for this trip. I
leave from BWI today around 2 and I'll be arriving in Portland at 8 local time. I managed to shift my sleep schedule very
well and I'll be alert for the convention which is critical. I don't just want to be awake for the convention I want to be
able to soak up everything I can. This morning I'm going to make sure I have everything packed so I can spend the remainder
of the morning with Melissa before I have to leave. Another good thing that's going on is I'm finally getting
SpeakEasy DSL and VOIP the week I come back. This is my second attempt at getting
service from them but it looks like this time it will actually go through. I may setup an asterix box once I have the VOIP
just so I can play around with it. I will definatly be blogging about what I did each day at the con so if you're interested
in nearly-live reporting of OSCON2005 stay tuned.
|
Stuff
I upgraded my server; everything is running ok so far. I've also reinitiated the ticket with Speakeasy.net to try and get their service. I have not been getting to the gym
as often as I was but I'm working on that. I went to dinner last night with my wife and
her co-workers to "Sunflower" which is the same veggie place we ate, on her birthday.
Life is busy, so I'm being very brief. Goats.
|
Busy Weekend
I have had one busy Sunday night (which is the first day of my weekend). Last night I had to go into the office briefly to fix a problem with the backup server, I did 2 full loads of dishes, 1 full load of laundry, read 7 chapters in the Learning Python Second Edition from Oreilly Press, and worked on my current computer situation with my new file server. Because I skipped the gym last night I plan on leaving shortly to do what will be the first full body weight lifting session I've done since I was a teenager. I fully expect to fail to do everything I want to do at the gym tonight just because I'll run out of steam. I have been reading the Python book and salivating at some of the things Python lets you do. I really am starting to think that the main reason Perl people hold so tightly to the idea that Perl should be used for everything is because of CPAN. The fact that Perl can do nearly everything doesn't make it the best tool for the job. I can't wait to start doing some benchmarks on large file processing and see which is faster. Because of the way that Python works I was thinking I may use it to my my fractal generator instead of Perl. Python seems to handle math better which would make it better suited. I haven't decided what reading material I'm going to take with me to the gym but I find myself wishing I had the hard copy of the Python book so I could bring that. The RHCE book is very dry and something I need to concentrate on more than I can when I'm peddling like a madman on the bike. One of my co-workers let me try out his iSight camera on my iBook and I don't know if it was the lighting as I suspect but the video looked much clearer recording on his PowerBook than it did on my iBook. There was an article on NewsForge about RSS vs ATOM for news feeds and I haven't read the article yet but I wanted to record my view on it before I did. After working on a program to parse RSS feeds and put them into emails (a similar idea to RSS2email by Aaron Swartz) and I started to realize that RSS and its many versions make for some really ugly hacks to parse them correctly. ATOM seems to have a better initial design so it hasn't had to grow and mutate like RSS did. I feel so strongly that ATOM has done things right that I've considered pulling the RSS feed off my website and just allowing ATOM. I haven't done that and may never because i believe in supporting as many different interfaces to my weblog as possible but it is a debate that should be happening.
|
Qemu Meet Whax
Ok so earlier I blogged about Whax which is very, very cool. I also wanted to mention I sent an email to Muts about his collection methods for the vulnerability databases and not only did he respond,but it was damn fast too. Last night I checked on qemu to see if they've fixed the bugs in the Mac version yet and they say they have. This is great news because now I can emulate a PC to run Whax inside my Mac Laugh. I did run into a crashing problem which I'm going to submit a bug report on when I tried to startx but even getting the console to run is a huge benfit.
|
A Me Day
I have had one of those days where you just want to rip of your shirt and yell like Hulk Hogan used to do before he turned
103. I have taken the day off work to resolve some of the many issues that came up today and so far everything is going
better than I had hoped, so there's that.
|
Feeling Uninspired
I'm still learning Python and there are many many things that I like and a couple that are painful. Like for instance
storing a function in a "dictionary" (I still think hash when I read that) as an element is strange. I can see it
being useful but it seems like an ability that isn't entirely necessary. I do like how the "Learning Python, 2nd
Edition" and nearly every other python tutorial I've read plays with the fact that the language was named for Monty
Python. I like Monty Pyton so that's OK with me. I don't really understand why they structured the language the way
they did and I'd be curious at some point to do some research or maybe write Guido and ask. My impression so far is
that Python is deceptively complex; because it was being designed in such a way as to keep code "clean" and easy to
read it does things in its own unique way. A very strange way like your cousin Norman who eats glue and is 25 but a
unique way none the less. One of the things I like is the "in" function you can do some very simple pattern matching
in strings with it and to do the same thing in Perl would involve more typing.
|
Tricky Snake
I've been teaching myself Python the past few days and while it is VERY different from Perl, I like some of the
differences. The way variables, arrays, and hashes are implemented is somewhat alien but I can see some of the
benefits and ideology already that make it appealing. I do like that I can program in a shell (which I'm sure Perl can
do too but I never tried before) and this would be a great language for "Firing Tracer Bullets". I can't wait to get a good understanding of the basics so I can take this language out for a test drive. I already have a project in mind to use as a feeler.
|
and the Holy Grail
I've decided to augment my Perl skills with some Python. After reading some convincing
arguments in the Perl vs Python debate I decided in order to have an informed opinion I would
have to learn Python. This isn't a bad idea due to the fact that many of the
Red Hat tools/scripts are written in Python and I'm beginning to see they had some very good
reasons for choosing that over Perl, Ruby, or anything else. For one Python was designed to
be "cleaner" and easier to read. This promotes good coding and security. That's not to say that Perl can't be written in a clean way that's easy to maintain but with a motto such as "There's more than one way to do it" they have some problems that will be exaggerate by bad coding. I'm very impressed with how Python handles somethings and I can see why it would appeal to people. I've also been reading the RHCE exam study guide I purchased a couple months ago and I hope to take the exam in sometime in August.
|
Things That Suck
Yesterday I went into my office at home and I was getting something out of the great "closet-o-computer-misc" and I haapened to look at
the monitor connected to my file server. As much as I would come to hate this moment in my day later on I saw a message about "hdd interrupt lost" and said some colorful phrase then continued to get ready to go out to dinner with my wife (We had setup a "date night" thing). I
pushed the concern out of my mind and continued on with the night. Then when I got to work I connected to my server at home and began an
fsck on the drive in question (which coincidentally is the one I store all my data). fsck is the program *nix machines use to check hard
drives and partitions to make sure everything is OK; it is the windows equivelant of scandisk. Now when you invoke fsck you can tell it to
do lots of things and I elected to ask it to give me verbose output and automatically fix anyhting it came across. I hit enter waited about
30 minutes and began to cry. fsck did nothing, I mean nothing I hit enter and nothing. With verbose turned on that's the equivelant of
feeding a dollar bill into a vending machine and the machine disappearing. I have backups, of course but I HATE ever having to use them. So
after I told my wife this morning about everything that happened we went to check and make sure the backup of our financial data was current.
This would have gone without incident if the date had not been wrong on the server so instead of us thinking we had the latest money file we
thought we had the file from March. It all worked out in the end. I rebooted the machine and was able to run one last backup before he hard
drive started the click of death. I had seen a deal on www.digg.com for some cheap EIDE hard drives so I
beat-feet on over to tigerdirect (I'm not linking them because I hate them) and purchased a 160GB hard drive that is about 40 dollars after
a mail-in rebate.
|
24 Hours
Working the night shift changes your perspective on a lot of things and one that really screwed me over good tonight
was a 24-hour McDonald's. Now I have to admit before I do any of my complaining that this is the first night I ever
tried to patron this particular McDonald's at 2:45am. When I pulled up I was a bit concerned because there were 3 cars
sitting in line in front of me and at this time of night that can only mean that the people inside are slow or are
oblivious to the fact that people are outside waiting. The people currently stopped in front of the ordering device
lay on their horn. The question as to which case this is, had been answered. Finally they place their order and then
car in front of me gets to go. They ask for a #1 clear as day and are told that the #1, #2, #3, #4, #6, #7, and #8
aren't available. Which leaves gold ole #5. I didn't want any of the combo meals so I was hopeful that I could still
the vanilla milk shake I'd been thinking of since I left the gym. So I pull up and it's my turn. "I'll have a medium
vanilla milk shake please." "I'm sorry sir we don't run the milk shake machine at this time of night". Hmmmm, I
decide to parry with something else easy. "How about a Ceaser Salad." "Ok sir, please drive to the 2nd window." When I reach the window she sees my credit card in hand and she says, "I'm sorry sir we just closed the charge machine." The
question is obvious and I just have to ask it (keep in mind I've always claimed to be an asshole). "You're not really
24 hours are you? I mean you aren't serving 7 out of 8 of your combos, the milk shake machine is apparently off and
just turned off the easiest method of payment for your services." Blank stare. "Well I don't have any cash thanks for wasting 20 minutes." See I think the problem here is that they advertise 24-hours to give the people who come during
the day a warm fuzzy, they don't expect anyone to actually come. If they truly did then they would be sure to explain
the special diminished services schedule so that I wouldn't even bother hoping for a vanilla shake at 3am. I was
annoyed and with all rights. I work nights for many reasons and I hate how places say 24 hours a day yet when you get
to the grocery story they have nearly every isle blocked with palettes of Wheaties so you can't even squeeze a cart
down them anymore. I understand shelves need to be restocked. Just try to be considerate of the people who DO try to
use your advertised service.
|
Ink
For a long time now I've thought about getting a tattoo of the cheshire cat on my arm because of a nickname I had.
I've decided that once I get down to the weight I want to be I'm going to reward myself with a nice tattoo but I don't
think I'm going to get the cat. Now the question is what will it be. I'm going to have to hunt around to find the
right image and I imagine it will be something small say the size of a half dollar, maybe a little bigger. I did
consider getting one of my fractals but I think even the most experienced tattoo artist would cry when he saw how
detailed the images are.
|
The Birthday Girl
Yesterday my beautiful wife turned 27. I know she was a little down about this but I personally was very happy.
We're starting to get near middle aged and I welcome the prospect of the two of us growing old together. She never
stops surprising me with her strength and courage. We took her out to her favorite vegetarian dive called "Sunflower" in Vienna. I had the General Tso's Surprise which is usually great and didn't disappoint last night. She shared the
same dish and Popeye's Favorite with my Mother. If you looked at the history between my wife and my family it really
has been a beautiful story. We were kids with problems who found each other and fell in love. My parents were afraid
we were too young and they were probably right but it didn't change the fact that we were meant to be together for
the rest of our lives. It just meant we got started too early. Now they love her as much as I do they really do
consider her as a daughter. She has also warmed to them and cares for both my parents very deeply. Family is a great
thing and when it grows it's even better. I think my wife loved all her gifts but she seemed to really enjoy the
necklace my aunt gave her from Denmark.
|
Viva La Whax!
So I went to the whoppix website to check out what's doing with those guys and found out that they've changed the name. Whoppix has become Whax (I like Whax much better) which is based on Slax. I think is an interesting move. I'm currently downloading their beta 2 ISO and I can't wait to see what this badboy can do. This has become my default Live CD to tote around with me since it has many of the tools that I use on a day to day basis for work. Of course I keep my Mac in the same backpack so I don't usually need it.
|
Gym Routine
I'm going to try out my plan for taking a break from work each night and hitting the gym around 2AM or so. I think it should be pretty quiet by then and I'll be able to do some cardio as a way to break up my day. I'm hoping to practice Japanese while I'm doing it in preparation for the trip to Japan in October 2006. Ouisa has said she liked some of the fractals which is good because I was really worried I'd make a bunch and they wouldn't fit in to her project so after the smaller ones are done rendering tonight I'll set the ones she liked up to render at higher resolutions. Didn't get much coding done today before work but I did decide I'm going to fix my RSS project by s///'ing the characters that are giving me grief with the file names. I still haven't tackled the UTF-8 thing but I'll get it done sometime this week. Tonight what I hope to accomplish when I get back from the Gym is to finish writing the SSL doc so I can turn that in for tomorrow's meeting.
|
Fractals and UTF-8
Big things brewing lately which is why I haven't posted in a couple days. Obviously things were busy with the 4th of July but also I am working a 6 day week so I didn't have as much time to do my weekly things as I normally do. Did manage to make some progress on my RSS aggregator. But I've run into a major snag with a UTF-8 problem that I'm going to research the proper way to fix. Originally I was just going to ask for help on PerlMonks but I know the answer I'm going to get. I have also made the fractals for my friend for her project and I'm currently still rendering some of the ones that I liked. The AWStats thing is on hold until further notice else I might get screwdriver-tossy.
|
AWStats Project

I've been working on a web stats solution for my company using awstats to process the web logs of our customers.
Today I was working on the script which will setup configs/directories for new clients, servers, or websites and ran
in to a problem that I haven't decided how I'm going to tackle yet. My original plan was to take the stats from any
one box and dice the log files so that each line was examined to determine which website that line in the log file pertained to. Then have the script shunt that to another file (using something like SEC) for processing for that specific site, on that specific server. The problem I ran into had to do with how
to determine the website that was being hit. Since a typical line in a log file might look like this:



66.249.65.77 - - [28/Jun/2005:13:26:14 -0400] "GET /galleries/ HTTP/1.1" 404 346 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"



I have no way to determine which website the person was hitting only that they tried to "GET" /galleries/ so I'm
trying to decide if I want it to be setup so that each customer will have a different directory for each website to
dump stats. It's causing me a brain cramp so I thought I'd take a break and whine about it.


|