Thursday, June 30, 2005

Hawking's Broadband Booster

4979865886575276Yesterday, I saw this post on Engadget about Hawking Technologies' HBB1 Broadband Booster.  This is a device that is supposed to sit in-between your cable/dsl modem and your router.  It is supposed to make sure that high priority traffic gets prioritized over low priority traffic.

I have a few of problems with this device:

  1. There is only one lan port on it.  This means that it will not be able to prioritize traffic within your local network.

  2. This device is connected to the "Internet".  This means that it probably does some NAT translation for all incoming traffic.  This also means that this could block some incoming connections.  This could be a problem if you run any servers.

  3. You are not able to configure the QoS on this device.  Without this, you are not able to say that your VoIP adapter has a higher priority than your PS@, for example.  Also, I would think that since it has a table of different protocols that it has to go through for every packet, this could slow things down.  If you were able to specify a select few protocols that you were interested in, less processing would need to be done.

How Satellite Radio Works

HowStuffWorks has an article on how satellite radio works.  This is a good article that describes how XM, Sirius and WorldSpace satellite radios work.

The one thing that I want to know is how they transmit their data.  For example, in my cars with XM, when I drive under an overpass, I don't hear a pause in the music.  But if I sit long enough under the overpass, the music cuts off.  So it appears that XM is transmitting the data at a higher bit-rate than the music requires.  Then there must be a carousel system so that if the radio loses the signal it can get the data about to be played from the buffer.

[via Droxy]

Wednesday, June 29, 2005


I am always open to finding a open source solution to commercial software.  Tonight, I just tried NeoOffice/J 1.1, and I have to say that I am impressed.

NeoOffice/J is based on the suite, but the main reason that I like NeoOffice is because it is a true Mac OS X application, and not a X11 application.  This means that it uses Mac OS X's printing architecture, clipboard and drag-and-drop support, and native support for Mac fonts.

Several years ago, I paid for Microsoft Office X, but now that there is a good quality open source alternative, I don't think I will pay for an upgrade.

Technorati Tags:

HTTP POST with curl

I keep forgetting how to perform a HTTP POST with curl, so I want to write this down so I don't forget.

Posting a string:

curl -d "String to post" ""

Posting the contents of a file

curl -d @file_to_post.txt ""

Monday, June 27, 2005

I love 10 months

Our daughter is almost 10 months old, and I love this age.  She is at a age where she is happy to fall asleep in my arms.  Before this age, she would only go to sleep after nursing.  I remember when our son reached the same age and was able to fall asleep with me.

Using ecto

Adriaan, the author of ecto, has written a good article about all of the things that you can do with ecto. I really like using ecto as desktop blogging client, instead of using the web interface to post.

[via ecto blog]

Technorati Tags:

DVD jammed in changer

B00008A5Ww.01. Sclzzzzzzz This weekend, I put some DVDs that I got for Father's Day into our Sony DVP-CX875P DVD changer, and then I pressed the Load button.  While it was going through the DVDs, loading the information off the discs two DVDs got stuck in the center where the discs are read.  After this happened, when the carousel rotated, they rubbed on the stuck DVDs, and they were pushed off the carousel.

I decided to take the top of the changer, and remove all of the DVDs that had been knocked off of the carousel, and remove the two jammed discs.  This seem worked, and now it is working again.  But this made me think that if this dies, I may want to get one of the hard disk based video players.

Smart random playlist in iTunes

I just found this blog entry that describes a way to generate a smart playlist that will contain music that you like, but mix in music that you haven't heard in a while.  Also this playlist prioritizes music that was just added to your library.

I actually like the results that the playlist returns.  The only problem that I have is that my "Expert Playlist" only has about 170 tracks.  But, that is probably caused because I haven't rated enough tracks.

Standalone iPod adapter

3127802823501102I haven't been impressed with most of the current iPod adapters that are out there.  I don't like the fact that with most of these you can't see the track names on the head unit, and that you can't control the unit from the head unit.

Harman Kardon is coming out with a standalone auto iPod adapter.  You plug your ipod into this unit, and the display will show your iPod's controls.  To control the iPod you will use this unit's control, so you can put your iPod in your glove box.

This looks like the best solution for people who don't have a head unit that can control an iPod directly, like the Alpine units.

[via Engadget]

Friday, June 24, 2005

Fixed sitemap plugin problem

I fixed the problem that I was having with Google Sitemap.  I added a rewrite rule to the base .htaccess file that makes these files appear to be in the root directory

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# Point to the sitemap file that is local to the blog
RewriteRule ^sitemap([0-9]+).gz$ tmp/sitemap/$1/sitemap.gz [L,NC]

Technorati Tags:

Thursday, June 23, 2005

Problem with Sitemap plugin

I just noticed a problem with the Sitemap plugin that I wrote.  It looks like Google uses the location of the sitemap file to determine what urls are valid to index.

This causes a problem because pLog is a multi-user blogs software, where all of the urls are generated on the fly. For example all views of the blogs go through index.php.  So if you only multiple blogs to use the sitemap plugin, they will have to be kept at the root of the web directory.

Wednesday, June 22, 2005

Plugin for Google Sitemaps

In this post, I mentioned Google Sitemaps.  I have created a plugin for pLog that can automatically create the sitemap file, and optionally send the url directly to Google.

You can download the plugin here.

Technorati Tags:

Updated Post Trackbacks

I have updated the Post Trackbacks AppleScript.  It now handles https urls.

You can download it here.

Technorati Tags:

Generating xml in php

I was looking for a way to generate xml from php, and I found three different ways.

  1. XmlWriter class.  It looks like Simon Willison re-implemented the python version of this class in php.

  2. Simple output functions. This looks like the simplest way, without any external dependancies.

  3. DOM XML extension of php.  I am not sure how robust these are.

Google Sitemaps

I had this article from Geek News Central bookmarked for a while, but I haven't had a chance to read it until now.  Google Sitemaps looks like a great way to tell Google or any search engine about the most relevent links on a web page.

I am thinking about writing a plugin for pLog that will automatically generate a sitemap file that contains all of the permalinks for the blog.

Saturday, June 18, 2005

SpamAssassin DoS vulnerability fixed

I just saw this announcement.  It looks like there was a DoS vulnerability in SpamAssassin 3.0.1-3.0.3.  This has been fixed in SpamAssassin 3.0.4

Friday, June 17, 2005

Yet another great dialog

Great Error Dialog

This one is from Apple's Backup

IP addressable devices

I don't know what is it about them, but I like the concept of ip addressable devices.  The June 2005 issue of Sound & Vision, has an interesting article on these devices.  It actually mentions some great sounding devices.

NetStreams has IP-Based audio streaming technology.  This allows you to have an audio system that has unlimited amount of zones.  In fact, Polk has a speaker line that uses NetStreams' technology.  Their LCi-p line will play the streams that are broadcast in the NetStreams format.  The speakers also include a DSP to make music sound better for their location.  These speakers will not be inexpensive.  The will run for $2000 - $3500 per pair.

I really like the concept of ip addressable devices for mainly two reasons:

  1. Allow data to be shared among the different devices.

  2. Get more use out of my broadband connection.

Thursday, June 16, 2005


MyBlogLog is an interesting take on a web stats tracker. Instead of tracking how many people look at pages in your web site, it tracks the links that people go to when they leave your web site.

It is a free service, and it looks interesting to me.

 Sign up for

hijacking smtp traffic

This week, I have been using the free WiFi service offered by the hotel I have been staying at.  I noticed that they do something that T-Mobile does.  Any time that you attempt to send mail, they redirect that connection to their server.  Since I have my mail client configured to use authentication, I get a message stating that the server does not allow authentication.

If I was not setup to authenticate my outgoing mail, it would silently go to their servers.  I have a few problems with this:

  1. They didn't inform me that they were going to do this.

  2. They could potentially store my message on their server

  3. They could also get my username, password and mail server that I use for sending mail.  So now someone could send spam using my authentication information.

I understand their desire to not allow spam to be sent through their access point, but I think that a better solution would be to block all access to this port.  If they were to do this, people would be required to use a webmail service, smtps (smtp over ssl), or tunneling though ssh or vpn.

Wednesday, June 15, 2005


I saw Witch mentioned in the June 2005 issue of MacWorld.  This is a cool little program, that lets you switch to any window that is open, even if it is minimized in the Dock.  It is very similar to Exposé, but it lets you use your keyboard to select the window that you want.

Tuesday, June 14, 2005

Definition of "Data Port"

I am out of town on business this week, and when I looked at the description of the Millennium Harvest House Boulder hotel.  In the description of the room it said that they have data ports.  What they don't clarify is that their data ports are phone jacks.  It has been such a long time since I had to use dial-up.

To be fair, the hotel does have an 802.11b network in the lobby, that is available for free.

New version of Shrook

A new version of Shrook was just released.  This version adds the ability to have the Genre and/or the Album of the tracks as they are added to iTunes.  This means that it will not be necessary to use any of the AppleScripts that I was attempting to write.

Sunday, June 12, 2005

Google not crawling urls

In the beginning of May, I wrote about how I bought a new smoke alarm, and the problems that I had with it.  Shortly after that, Google change the ads in my AdSense section to be related to smoke alarms, which I think is appropriate.  But then after I posted a number of other articles, that post was no longer visible on the home page, but the ads for the smoke alarms still are visible.

It appears that Google is not crawling all of the possible urls for determining which ads should be shown.  For example, still shows the smoke alarm ads, while (which is a link to the same page) does not.

Periodically, after I see an access to one of these pages, I see an access from a Google server with the http client string "Mediapartners-Google/2.1", but only from  and not  It seems that they changed something in the past month.

802.11 baby monitor

Our next door neighbors just had a baby.  Since they brought him home, we have been noticing interference on our baby monitor.  We either here static or sound from their baby monitor transmitter.  It seems that they have either the same model baby monitor, or one that transmits over the same frequencies.

It got me thinking, that we have a relatively robust wireless signals going around our house.  Our 802.11g network is very robust, even though there are several other networks nearby.  Since 802.11 chips are pretty cheap, it would be great if someone would come out with baby monitors that use 802.11 as the transmission protocol.  All that it would have to do is broadcast the audio stream on the subnet. 

Saturday, June 11, 2005

Climatouch C3

C3-500 One of my friends just bought one of these thermostats, and they look very cool.  The Climatouch C3 is a touch-screen thermostat, that is supposed to work with any heating an cooling system.  It looks like it has some interesting features that allow you to same money.

One cool thing that this does is allows you to connect a remote sensor, so you can see outside temperature.  Unfortunately, it doesn't look like you can use can use it to monitor the indoor temperature of a different room.  Ideally you would be able to configure it so that the air conditioner would come on if either the upstairs or downstairs gets warmer than a certain temperature.

Thursday, June 9, 2005

AppleScript frustrations (cont.)

Since the code that I wanted to write to determine if a track has been added to iTunes was not working, this is the code that I have found that works the best.  It seems that the only way to determine if a track is already added to iTunes is to add it, and then if iTunes throws an exception, then the track was already added.

tell application "iTunes"

with timeout of 300 seconds

The easiest way to figure out if this track is already in the library is to

-- add it.  If the number of tracks increases, then the track was not in there


-- Ideally this would be able to call something like:

(exists (get some track of library playlist 1 whose location is theFile))

set this_track to {}

set fAddedFile to false

set gotException to false


set initialCount to get count of every file track of library playlist 1

set this_track to (add theFile)

set countAfter to get count of every file track of library playlist 1

if countAfter > initialCount then

set fAddedFile to true

end if

on error

This is where we catch the error if the track has already been added to the library:

end try

end timeout

end tell

It is pretty bad that iTune's AppleScript dictionary is not better.

Technorati Tags:

Monday, June 6, 2005

Reprogramming X10 light switch

12073WbigFor some reason, our KeypadLinc X-10 light switch got reset to the default settings, so I decided to reprogram it with some buttons that would be easier to use.  Since it has 6 buttons on it, and I only need to control 3 lights, I decided to configure it so that each light would have two buttons to control it, one to dim and one to brighten. 

This works fine for the light that is directly connected to the switch, but it doesn't work as I expect for the remote lights.  I wanted to program the buttons so that pressing and holding the buttons would continue to send the dim/brighten commands.  But it looks like for remote lights, if you use the non-toggle mode to send a bright or dim, the commands do not repeat.

AppleScript frustrations

I spent a lot of time this past weekend trying to improve the AppleScript that I mentioned before.  I want to uses this script to automatically move all tracks that were added to iTunes, from Shrook, into a single playlist.

Since Shrook downloads all of the podcast tracks to ~/Library/Application Support/Shrook2/Attachments, all that would been needed to is to find all of the tracks in the iTunes library that are in that directory, and then make sure they were in the playlist.

The AppleScript that I wrote before does this job, but it takes a long time if the iTunes Library has a lot of tracks, as it had to iterate over each of them.  So I wanted too change the script to iterate over the files that Shrook had downloaded, and then check each one to see if it has been added.

This script sample should work:

tell application "iTunes"

if (exists (get some file track of library playlist 1 whose location is theFile)) then

set this_track to (get some file track of library playlist 1 whose location is (theFile as alias))

set dbid to this_track's database ID

if not (exists (some track of playlist podcastPlaylist whose database ID is dbid)) then

duplicate this_track to playlist podcastPlaylist

end if

end if

end tell

Thursday, June 2, 2005

Applescript to create Shrook podcast playlist

I have been getting frustrated that the podcasts that were being put into iTunes from Shrook were not being put into a single playlist.  So I have been looking for some solutions.  I first tried to create a smart playlist, but you can not create rules based upon the location of the files.

I have been working on an AppleScript that would automatically copy the tracks from Shrook into a playlist.  Below is what I have come up with so far.

The problem with this implementation is that it iterates over every item in the iTunes Library, so it takes a long time.  I am going to change it so it only iterates over the files that have been downloaded by Shrook

What happens with old car designs?

What do car companies do with the designs of older model cars. I imagne that a car company could get extra money for licensing a design for a popular older car. I also imagine that for a car company that doesn't have a large R&D budget this would be a cheap way to get a good design for a car.

I actually think that this is happening already. Take a look at the 1999 Isuzu Oasis and the 1995 Honda Odyssey.

Isuzu Oasis Honda Odyssey

These look almost identical. If Honda did license the plans, I think that is is a great move on their part.