<?xml version="1.0"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
	<title>Planet SeattleWireless</title>
	<link>http://planet.seattlewireless.net/</link>
	<language>en</language>
	<description>Planet SeattleWireless - http://planet.seattlewireless.net/</description>

<item>
	<title>Bryan McLellan: more linux memory debugging</title>
	<guid>http://blog.loftninjas.org/?p=191</guid>
	<link>http://blog.loftninjas.org/?p=191</link>
	<description>&lt;p&gt;I downgraded to an earlier version of raidiator on friday and saw no improvement in the memory black hole over the weekend. The frustrating part is being unable to tell where it is going, rather than trying to fix the problem with a particular daemon that I may not have the customized source for. My earlier blog entry about this is &lt;a href=&quot;http://blog.loftninjas.org/?p=190&quot;&gt;here&lt;/a&gt;. There&amp;#8217;s more data from today in the netgear forum &lt;a href=&quot;http://www.readynas.com/forum/viewtopic.php?f=24&amp;amp;t=18198&quot;&gt;thread&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I did find this &lt;a href=&quot;http://lkml.org/lkml/2003/12/8/241&quot;&gt;LKML thread&lt;/a&gt; by Mike Fedyk who did most of the upgrades to the munin memory script for 2.6. I can see in the thread that he decided to use the Total-Free-everythingelse=AppsUsed calculation, and I don&amp;#8217;t see any big light bulbs in that thread to help solve my problem. I see on the net that someone that used to idle in #swn on irc is connected to a Mike Fedyk, so I&amp;#8217;ve emailed him asking for an introduction before I try to harass him directly with the problem. I&amp;#8217;m going to assume this is his LJ with a &lt;a href=&quot;http://mfedyk.livejournal.com/10714.html&quot;&gt;post&lt;/a&gt; about performance tuning.&lt;/p&gt;
&lt;p&gt;My munin-users thread can be found &lt;a href=&quot;http://sourceforge.net/mailarchive/forum.php?thread_name=C3433F134070804BBCDFE9EDD2DB2DB11BE40FF08A%40wmmail.corp.widemile.com&amp;amp;forum_name=munin-users&quot;&gt;here&lt;/a&gt;, for the record. I&amp;#8217;m going to look around for more utilities to track down memory usage, although the lkml thread makes me feel like that may not be happening. I posted in the netgear thread asking for a kernel upgrade but the best advice I&amp;#8217;ve gotten there so far is &amp;#8220;our perl may be broken. stop running munin&amp;#8221; so I&amp;#8217;m not sure anyone technical is listening.&lt;/p&gt;</description>
	<pubDate>Mon, 12 May 2008 19:46:14 +0000</pubDate>
</item>
<item>
	<title>Matthew Wilson</title>
	<guid>http://matthew.livejournal.com/85557.html</guid>
	<link>http://matthew.livejournal.com/85557.html</link>
	<description>&lt;img src="http://planet.seattlewireless.net/heads/mwilson.jpg" align="right" alt=""&gt;Today I went scuba diving.  It was tons of fun.  We saw tons of different fish, 4 turtles, eels, lots of puffers of all different colors, and an octopus (though he was pretty shy.)  I also learned exactly how nice having a wetsuit is.  I may have to get my own before venturing into the water again.  It's probably a good thing that we don't have much time left on Maui or else I might be tempted to get my open water certification.&lt;br /&gt;&lt;br /&gt;Also, I was looking in my spam folder and found the subject line: &quot;erotic r Porn trousers washer&quot;  What exactly is erotic about a trousers washer?  No, don't tell me.  I don't think that I want to know.</description>
	<pubDate>Sat, 10 May 2008 22:26:24 +0000</pubDate>
</item>
<item>
	<title>Matt Westervelt: HackNight Details</title>
	<guid>http://seattlewireless.net/~mattw/?p=440</guid>
	<link>http://feeds.feedburner.com/~r/mattw/~3/286689949/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://seattlewireless.net/~mattw/wp-content/plugins/falbum/wp/album.php?tags=hacknight&amp;amp;page=1&amp;amp;photo=2477969824&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3111/2477969824_08326f966a.jpg&quot; alt=&quot;&quot; width=&quot;500&quot; height=&quot;334&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I don&amp;#8217;t know if it&amp;#8217;s the lack of blogging, the fridge full of beer, or the fact that it&amp;#8217;s spring, but &lt;a href=&quot;http://seattlewireless.net/HackNight&quot;&gt;HackNight&lt;/a&gt; has been pretty populated for the past few months,  and we&amp;#8217;ve even been getting a few out-of-towners.  This week, Shaddi Hasan from the &lt;a href=&quot;http://www.blogin.it/&quot;&gt;RO.B.IN&lt;/a&gt; project popped in and got to see the kind of silliness that occurs when the beer gets low and the days get longer (That&amp;#8217;s &lt;span class=&quot;post-author vcard&quot;&gt;&lt;span class=&quot;fn&quot;&gt;Ben Schiendelman, the &lt;a href=&quot;http://seatrans.blogspot.com/&quot;&gt;Seattle Transit blogger&lt;/a&gt; behind Shaddi disguised as a table sitting on a couch checking it&amp;#8217;s mail&lt;/span&gt;&lt;/span&gt;).   Last week, we got to hang out with Russell Senior from &lt;a href=&quot;http://www.personaltelco.net/&quot;&gt;PTP&lt;/a&gt;, and a  bit further back, we got a presentation from Veljo of &lt;a href=&quot;http://wifi.ee&quot;&gt;wifi.ee&lt;/a&gt; before we hit the Stumbling Monk for a little Belgian beerfest.    I&amp;#8217;ve been getting this feeling that with the doom and gloom in the  getting me psyched for the &lt;a href=&quot;http://www.wirelesssummit.org/&quot;&gt;International Summit for Community Wireless Networking&lt;/a&gt; at the end of the month in DC.    I only hope DC has an analogue to &lt;a href=&quot;http://www.8blockwalk.com/2008/01/late-night-eats-taco-gringos.html&quot;&gt;Taco Gringos&lt;/a&gt; because I&amp;#8217;m pretty sure we can&amp;#8217;t get away with some of the late night shenanigans of the last IS4CWN in the nation&amp;#8217;s Capitol.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://seattlewireless.net/~mattw/wp-content/plugins/falbum/wp/album.php?tags=hacknight&amp;amp;page=1&amp;amp;photo=2457939358&quot;&gt;&lt;img class=&quot;alignright&quot; src=&quot;http://farm4.static.flickr.com/3106/2457939358_9a75e859bd_m.jpg&quot; alt=&quot;&quot; width=&quot;240&quot; height=&quot;161&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Last week we started playing with the &lt;a href=&quot;http://wiligear.com/&quot;&gt;Wiligear WBD-111&lt;/a&gt;.  It&amp;#8217;s a nifty new board we &lt;a href=&quot;http://metrix.net/wiligear-wbd111-p-113.html&quot;&gt;just started carrying at Metrix&lt;/a&gt;.    Cheap, powerful, and supports the UBNT &lt;a href=&quot;http://metrix.net/ubiquiti-extreme-range-9-900mhz-700mw-mini-pci-p-101.html&quot;&gt;900Mhz XR9&lt;/a&gt;.   The shipped-with-it linux from the Firmware Factory at Wilibox is pretty cool, and if you don&amp;#8217;t want the complexity of a fully populated web interface, you can streamline your web interface with skins.   I haven&amp;#8217;t dived into their layer 2 meshing stuff yet, but they do claim some 802.11s compat.     I guess we&amp;#8217;ll have to check out interoperability with um&amp;#8230; OLPC or something?&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://seattlewireless.net/~mattw/wp-content/plugins/falbum/wp/album.php?tags=seattlewireless&amp;amp;page=1&amp;amp;photo=2477044183&quot;&gt;&lt;img class=&quot;alignleft&quot; src=&quot;http://farm3.static.flickr.com/2179/2477044183_7ea1a31c07_m.jpg&quot; alt=&quot;&quot; width=&quot;161&quot; height=&quot;240&quot; /&gt;&lt;/a&gt;Regardless, it&amp;#8217;s pretty cool stuff.  If you don&amp;#8217;t have any hardware yet,  it seems like the cheapest and fastest way to get on the &lt;a href=&quot;http://seattlewireless.net/NodeSeaCCP&quot;&gt;NodeSeaCCP&lt;/a&gt; 900Mhz tubes, which are finally up and running and pointed up the Pike/Pine corridor.     I&amp;#8217;m really interested in finding out what NLOS really means around here, so I guess we&amp;#8217;ll have to slap together a mobile rig and start channelling &lt;a href=&quot;http://www.free2air.org/?op=displaystory;sid=2001/8/28/183316/163&quot;&gt;war peddlaz&lt;/a&gt; on 900.   If we can crest the hill, it opens up a world of possibilities.    I&amp;#8217;ve heard good reports from rural areas, but wow, cities sure are a different beastie.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://seattlewireless.net/~mattw/wp-content/plugins/falbum/wp/album.php?tags=hacknight&amp;amp;page=1&amp;amp;photo=2477161665&quot;&gt;&lt;img class=&quot;alignright&quot; src=&quot;http://farm3.static.flickr.com/2032/2477161665_fd3c0264c1_m.jpg&quot; alt=&quot;&quot; width=&quot;161&quot; height=&quot;240&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://seattlewireless.net/~mattw/wp-content/plugins/falbum/wp/album.php?tags=hacknight&amp;amp;page=1&amp;amp;photo=2477967844&quot;&gt;&lt;img class=&quot;alignleft&quot; src=&quot;http://farm4.static.flickr.com/3123/2477967844_4a92eb20c2_m.jpg&quot; alt=&quot;&quot; width=&quot;161&quot; height=&quot;240&quot; /&gt;&lt;/a&gt; For the past month or so, Schuyler has been all about showing up with Clearwire stuff.    Last week, we ripped one of em apart with the goal of replacing its built-in panel.&lt;/p&gt;
&lt;p&gt;Clearwire modems don&amp;#8217;t have external antenna connectors (not much of a surprise),  but if you have a little bit of patience (and some desoldering braid), you can solder on your own fairly easily.   If you don&amp;#8217;t have braid, it&amp;#8217;ll take 5x as long, 3 or 4 soldering irons and torches, a dremel or two, and maybe a half rack of beer.   If you&amp;#8217;re tossing on an out of band antenna and you want any gain, the rule is &amp;#8220;Go big or go home&amp;#8221;.   Schuyler attached the Lanster Lance to the Clearwire SMA and was good to go.&lt;/p&gt;
&lt;p&gt;I heard a rumor that you could do some fairly pokey stuff on the Clearwire network even if your modem isn&amp;#8217;t activated.    We&amp;#8217;ve determined that you can&amp;#8217;t do much beyond pinging other hosts with a de-authed one, but honestly,  &lt;a href=&quot;http://www.cs.uit.no/~daniels/PingTunnel/&quot;&gt;that sure is a lot.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/~a/mattw?a=YZe2Nj&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~a/mattw?i=YZe2Nj&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/mattw?a=nAgEjh&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/mattw?i=nAgEjh&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/mattw/~4/286689949&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 09 May 2008 08:54:23 +0000</pubDate>
</item>
<item>
	<title>Matt Westervelt: gain [Flickr]</title>
	<guid>tag:flickr.com,2005:/photo/2477161665</guid>
	<link>http://feeds.feedburner.com/~r/mattw/~3/286632533/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/people/mattw/&quot;&gt;Matt Westervelt&lt;/a&gt; posted a photo:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/mattw/2477161665/&quot; title=&quot;gain&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2032/2477161665_fd3c0264c1_m.jpg&quot; width=&quot;161&quot; height=&quot;240&quot; alt=&quot;gain&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/mattw/~4/286632533&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 09 May 2008 06:51:10 +0000</pubDate>
</item>
<item>
	<title>Matt Westervelt: clearwire+sma [Flickr]</title>
	<guid>tag:flickr.com,2005:/photo/2477971842</guid>
	<link>http://feeds.feedburner.com/~r/mattw/~3/286632534/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/people/mattw/&quot;&gt;Matt Westervelt&lt;/a&gt; posted a photo:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/mattw/2477971842/&quot; title=&quot;clearwire+sma&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2028/2477971842_e0ed0bc0c8_m.jpg&quot; width=&quot;240&quot; height=&quot;161&quot; alt=&quot;clearwire+sma&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/mattw/~4/286632534&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 09 May 2008 06:49:49 +0000</pubDate>
</item>
<item>
	<title>Matt Westervelt: shaddi [Flickr]</title>
	<guid>tag:flickr.com,2005:/photo/2477969824</guid>
	<link>http://feeds.feedburner.com/~r/mattw/~3/286632535/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/people/mattw/&quot;&gt;Matt Westervelt&lt;/a&gt; posted a photo:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/mattw/2477969824/&quot; title=&quot;shaddi&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3111/2477969824_08326f966a_m.jpg&quot; width=&quot;240&quot; height=&quot;161&quot; alt=&quot;shaddi&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/mattw/~4/286632535&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 09 May 2008 06:48:06 +0000</pubDate>
</item>
<item>
	<title>Matt Westervelt: h4x [Flickr]</title>
	<guid>tag:flickr.com,2005:/photo/2477967844</guid>
	<link>http://feeds.feedburner.com/~r/mattw/~3/286632536/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/people/mattw/&quot;&gt;Matt Westervelt&lt;/a&gt; posted a photo:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/mattw/2477967844/&quot; title=&quot;h4x&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3123/2477967844_4a92eb20c2_m.jpg&quot; width=&quot;161&quot; height=&quot;240&quot; alt=&quot;h4x&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/mattw/~4/286632536&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 09 May 2008 06:46:15 +0000</pubDate>
</item>
<item>
	<title>Matt Westervelt: node seaccp [Flickr]</title>
	<guid>tag:flickr.com,2005:/photo/2477044183</guid>
	<link>http://feeds.feedburner.com/~r/mattw/~3/286592368/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/people/mattw/&quot;&gt;Matt Westervelt&lt;/a&gt; posted a photo:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/mattw/2477044183/&quot; title=&quot;node seaccp&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2179/2477044183_7ea1a31c07_m.jpg&quot; width=&quot;161&quot; height=&quot;240&quot; alt=&quot;node seaccp&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/mattw/~4/286592368&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 09 May 2008 05:19:19 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Linux Memory Usage</title>
	<guid>http://blog.loftninjas.org/?p=190</guid>
	<link>http://blog.loftninjas.org/?p=190</link>
	<description>&lt;p&gt;I&amp;#8217;ve been trying to &lt;a href=&quot;http://www.readynas.com/forum/viewtopic.php?t=18198&quot;&gt;debug&lt;/a&gt; some memory problems on a ReadyNAS 1100. It has munin-node running, and I see the &amp;#8216;app&amp;#8217; memory slowly raise something like 50-100MB a day. What&amp;#8217;s odd is that Munin reports that it&amp;#8217;s using 230MB of ram for &amp;#8216;apps&amp;#8217; while memstat only reports 118224k (118MB or so), making it difficult to track down where the memory is going.&lt;/p&gt;
&lt;p&gt;&amp;#8216;free&amp;#8217; and &amp;#8216;/proc/meminfo&amp;#8217; only report the amount of free memory, and the amount of memory in buffers and cache other other little kernel bits. There&amp;#8217;s no clear value for memory used. Munin &lt;a href=&quot;http://munin.projects.linpro.no/browser/trunk/node/node.d.linux/memory.in#L184&quot;&gt;calculates&lt;/a&gt; the used memory by subtracting other bits from memory total. I can&amp;#8217;t find a lot of information about meminfo beyond &lt;a href=&quot;http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/en-US/Reference_Guide/s2-proc-meminfo.html&quot;&gt;this sort&lt;/a&gt; of descriptive bits about what each value means. It seems to be that if the memory is allocated, but not to buffers or cache or other small things, we assume it&amp;#8217;s used by applications but that doesn&amp;#8217;t pan out with tools that I can find to tell me how much memory an application is using.&lt;/p&gt;
&lt;p&gt;The description &lt;a href=&quot;http://linux-mm.org/ActualMemoryFootprint&quot;&gt;here&lt;/a&gt; of the difference between VSZ (virtual size) and RSS (resident set size) is useful for looking at &amp;#8216;ps aux&amp;#8217; output, but there&amp;#8217;s nothing there that is using a ton of memory and feels like it&amp;#8217;s count is pretty close to that generated by &amp;#8216;memstat&amp;#8217;.&lt;/p&gt;
&lt;p&gt;The &lt;a href=&quot;http://blogs.smugmug.com/don/2008/05/01/mysql-and-the-linux-swap-problem/&quot;&gt;smugmug&lt;/a&gt; discussion about swappiness is interesting, as that was originally my problem because running out of memory with vm.swappiness set to 0 got the OOM killer going buck wild.  This discussion has recently made it to the &lt;a href=&quot;http://www.ussg.iu.edu/hypermail/linux/kernel/0805.0/2261.html&quot;&gt;lkml&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ll probably post to the lkml if I don&amp;#8217;t figure something out this afternoon, as I&amp;#8217;ve been staring at a lot of numbers lately.&lt;/p&gt;</description>
	<pubDate>Thu, 08 May 2008 21:54:15 +0000</pubDate>
</item>
<item>
	<title>Matthew Wilson: Pork!</title>
	<guid>http://matthew.livejournal.com/85406.html</guid>
	<link>http://matthew.livejournal.com/85406.html</link>
	<description>&lt;img src="http://planet.seattlewireless.net/heads/mwilson.jpg" align="right" alt=""&gt;it's what was for dinner.</description>
	<pubDate>Thu, 08 May 2008 05:20:56 +0000</pubDate>
</item>
<item>
	<title>Casey Halverson: &amp;lt;b&amp;gt;Electric Floors&amp;lt;/b&amp;gt;</title>
	<guid>http://seattlewireless.net/~casey/home/may52008.html</guid>
	<link>http://seattlewireless.net/~casey/home/may52008.html</link>
	<description>&lt;img src="http://www.seattlewireless.net/~casey/casey.png" align="right" alt=""&gt;&lt;p&gt;
Whats better than a series of tubes under your floor keeping it warm?  WiFi?  Maybe...but...how about normal, electrically heated floors? (Girl not included).
&lt;p&gt;
&lt;img src=&quot;http://seattlewireless.net/~casey/images/suntouch3.jpg&quot; /&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font size=&quot;-1&quot;&gt;SunTouch marketing photo&lt;/font&gt;
&lt;p&gt;
I recently completed the installation of a SunTouch heated floor mat and programmable thermostat into the &quot;master&quot; bath.  Its recommended application is under tile.
&lt;p&gt;
&lt;img src=&quot;http://seattlewireless.net/~casey/images/suntouch1.jpg&quot; /&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font size=&quot;-1&quot;&gt;Glob on thinset over mesh thingy,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;plop tiles like normal on top of thinset&lt;/font&gt;
&lt;p&gt;
Installation was probably the easiest part of the entire tiling job.  So much that it was the only part i finished (I had a contractor finish the rest of the tile cutting and
placement).  The idea is to take the mat, lay it on top of the cement backerboard, put your thinset over it, and put your tiles on top.  Oh, and there is a little sensor you
put into the thinset that measures the temperature.  Wire up the GFCI themrostat, and you are good to go.  An installation video (VHS) comes with the mat.
&lt;p&gt;
The website touts specialized contractors for this type of installation.  I do not think its required.  All you need is A) a tile flooring guy who isn't afraid to smear thinset on a 
flat, plastic woven mat -- that ain't hard B) someone willing to hook up the magic thermostat box to electricity.
&lt;p&gt;
&lt;img src=&quot;http://seattlewireless.net/~casey/images/suntouch2.jpg&quot; /&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font size=&quot;-1&quot;&gt;GFCI thermostat can&lt;br /&gt; keep the &quot;shock&quot; away&lt;/font&gt;
&lt;p&gt;
Out of morbid curiosity, I cranked this thing to 104F (maximum setting), but it becomes plenty toasty by 80F.  80F only took it 15-20 minutes.  I am sure it will take a while to get 
to 104F though.
&lt;p&gt;
Total current draw is about 2A with my mat, or about 200ish watts.  As with any radiant heat technology, that heat generated will just reduce the time my furnace runs.  
&lt;p&gt;
Electric is great for small, directed applications (ie: walk areas, bathrooms, kitchens, etc) where you want heat, but I think a hydronic system is better suited for whole-house 
applications.  Another benefit to electric is how cheaply it can be done.  Just remember, if you decide to lay down this mat in your next flooring project, The cut-off between the 
mat and non-mat under the tile is a considerable drop off!  Its down right chilling!
&lt;p&gt;
I have another bathroom remodel coming up.  You can bet I will be putting in some more of this.&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 05 May 2008 23:01:00 +0000</pubDate>
</item>
<item>
	<title>Matthew Wilson</title>
	<guid>http://matthew.livejournal.com/85161.html</guid>
	<link>http://matthew.livejournal.com/85161.html</link>
	<description>&lt;img src="http://planet.seattlewireless.net/heads/mwilson.jpg" align="right" alt=""&gt;I went surfing this morning.  Click the image below to see me trying to stay up on a board.  Unfortunately the photographer didn't get my totally awesome wipeout.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://pics.livejournal.com/matthew/gallery/00008yb7&quot;&gt;&lt;img src=&quot;http://pics.livejournal.com/matthew/pic/00011k26/s320x240&quot; width=&quot;320&quot; height=&quot;213&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;</description>
	<pubDate>Sat, 03 May 2008 22:04:43 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Vista says you need permission to perform this action</title>
	<guid>http://blog.loftninjas.org/?p=189</guid>
	<link>http://blog.loftninjas.org/?p=189</link>
	<description>&lt;p&gt;Man this is annoying. A file tree ended up with a .svn folder which contains files marked read-only. When copied with Vista all is fine until you try to delete the folder, when you&amp;#8217;re told &amp;#8220;you need permission to perform this action&amp;#8221; with &amp;#8220;try again&amp;#8221; and &amp;#8220;cancel&amp;#8221; with options, trying again many times didn&amp;#8217;t do as much as I would have hoped. Eventually we found the files with the read-only attributes. These files are stored on a samba server so I suppose I&amp;#8217;ll see if I can get get samba or a cron script to strip those attributes. Removing the read only attribute allows you to delete the file, but I can&amp;#8217;t find any way to enable the old XP style dialog that tells you it is marked read only but allows you to delete it anyways if you have permissions. UAC is off, by the way.&lt;/p&gt;
&lt;p&gt;update:&lt;/p&gt;
&lt;p&gt;Raidiator, the debian based distro that runs on infrant (i always say infarant) / netgear readynas products has &amp;#8217;store dos attributes = 1&amp;#8242; in the global section of /etc/samba/smb.conf. This stores the read-only / hidden / archive / system attributes in an extended attribute called user.DOSATTRIB:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;getfattr -d entries&lt;br /&gt;
# file: entries&lt;br /&gt;
user.DOSATTRIB=&amp;#8221;0&amp;#215;21&amp;#8243;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Normally this is off and newer versions of samba use &amp;#8216;map read only&amp;#8217; to determine what read only should be set to, based on the user write bit (default) (yes), the effective permissions of the user (permissions), or ignoring permissions and only using &amp;#8217;store dos attributes&amp;#8217; (no).&lt;/p&gt;
&lt;p&gt;I put &amp;#8217;store dos attributes = 0&amp;#8242; in the share definition to override the global (/etc/frontview/samba/Shares.conf in raidiator) and reloaded samba (/etc/init.d/samba reload) and then the files properties showed that the file was not read only any longer, thus working around the problem of Vista not letting me delete read-only files.&lt;/p&gt;</description>
	<pubDate>Fri, 02 May 2008 22:25:52 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Putting munin on your infarant / netgear readynas</title>
	<guid>http://blog.loftninjas.org/?p=188</guid>
	<link>http://blog.loftninjas.org/?p=188</link>
	<description>&lt;p&gt;How slick is this. Start with &lt;a href=&quot;http://blog.loftninjas.org/?p=135&quot;&gt;root access&lt;/a&gt;.&lt;/p&gt;
&lt;pre&gt;
wget http://www.infrant.com/beta/raidiator/4.0/dpkg/apt_0.5.28.6_sparc.deb
dpkg -i apt_0.5.28.6_sparc.deb
rm apt_0.5.28.6_sparc.deb
apt-get update
apt-get install munin-node
cd /etc/munin
vi munin-node.conf
 # update host_name
 # update allow
/etc/init.d/munin-node restart
&lt;/pre&gt;</description>
	<pubDate>Fri, 02 May 2008 00:30:47 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Sharepoint 2007 - Excel locked for editing</title>
	<guid>http://blog.loftninjas.org/?p=187</guid>
	<link>http://blog.loftninjas.org/?p=187</link>
	<description>&lt;p&gt;Excel crashed the other day and the document from the sharepoint server could not be opened read/write due to it being &amp;#8216;locked for editing&amp;#8217;. Choosing &amp;#8216;Check out&amp;#8217; in Sharepoint, then editing the document resolved the issue. Lots of Sharepoint 2003 discussion &lt;a href=&quot;http://www.experts-exchange.com/OS/Microsoft_Operating_Systems/Server/MS-SharePoint/Q_22455350.html&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Thu, 01 May 2008 17:01:44 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Exchange 2007 Public Folder Security Groups</title>
	<guid>http://blog.loftninjas.org/?p=186</guid>
	<link>http://blog.loftninjas.org/?p=186</link>
	<description>&lt;p&gt;Tried to add an Exchange 2007 Global Security Group to a tree of public folders today. Exchange wouldn&amp;#8217;t see the group unless it was mail enabled, but trying to switch it to a distribution group would break the NTFS ACLs that use it. Changing the group to be a universal security group however allowed me to mail enable it under recipient configuration, distribution groups, new distribution group in the exchange management console (EMC).&lt;/p&gt;
&lt;p&gt;Then in the exchange management shell (EMS) I ran:&lt;/p&gt;
&lt;pre&gt;
get-publicfolder -identity &quot;publicfolder&quot; -recurse |
add-publicfolderclientpermission -user &quot;Some Kind of Managers&quot; -accessright publishingeditor
&lt;/pre&gt;
&lt;p&gt;It&amp;#8217;s perplexing how pipes work in powershell. That &amp;#8216;get-publicfolder -identity &amp;#8220;\foo&amp;#8221;&amp;#8216; produces very little information while &amp;#8216;get-publicfolder -identity &amp;#8220;\foo&amp;#8221; | format-list&amp;#8221; produces extended information is confusing to say the least, coming from a DOS/UNIX background, made worse by the command being named FORMAT rather than GETMEMOREINFORMATION. Oh well. Note that in the past I&amp;#8217;ve seen that add-publicfolderclientpermission breaks if the user has some degree of permissions already, and you have to run a get command into a pipe to a remove command to clean up first.&lt;/p&gt;</description>
	<pubDate>Wed, 30 Apr 2008 23:22:19 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: git commit email notification on debian etch</title>
	<guid>http://blog.loftninjas.org/?p=185</guid>
	<link>http://blog.loftninjas.org/?p=185</link>
	<description>&lt;p&gt;We use git with a single bare repository for our puppet configuration, and each systems administrator has a local git repository clone which they push back to the origin. I wanted to set up email notification on this main repository which lives on a debian etch server.&lt;/p&gt;
&lt;p&gt;I found &lt;a href=&quot;http://git.kernel.org/?p=git/git.git;a=blob_plain;f=contrib/hooks/post-receive-email;h=41368950d6b29121089ee9239b8e07ece209a31e&quot;&gt;post-receive-email&lt;/a&gt; in the git gitweb repository and assumed that it was not included in the debian package because it has a copyright with no OSS license included. It pulls its configuration from the git config, which is repository specific and kind of neat, but I had to modify it to call &amp;#8216;git-repo-config&amp;#8217; instead of &amp;#8216;git config&amp;#8217; because that&amp;#8217;s all etch had. Again, assuming some weird debian problem, but I didn&amp;#8217;t bother looking.&lt;/p&gt;
&lt;p&gt;Then when I had trouble with it not working I noticed my ubuntu hardy box had a newer major revision of git-core than the debian etch box. That is 1.5.4.3-1ubuntu2 and 1.4.4.4-2 respectively. I poked around the git documentation a little bit and found that the post-receive hooks weren&amp;#8217;t added until &lt;a href=&quot;http://www.kernel.org/pub/software/scm/git-core/docs/RelNotes-1.5.1.txt&quot;&gt;1.5.1&lt;/a&gt;. But there is a 1.5.4 git-core deb in &lt;a href=&quot;http://packages.debian.org/etch-backports/git-core&quot;&gt;etch-backports&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you want to upgrade multiple boxes with a local repository, you&amp;#8217;ll need a copy more than git-core to meet the dependences. otherwise you can just use apt-get install after adding the backports repo.&lt;/p&gt;
&lt;p&gt;add &amp;#8216;deb http://www.backports.org/debian etch-backports main&amp;#8217; to /etc/apt/sources.list&lt;/p&gt;
&lt;pre&gt;sudo apt-get update
sudo apt-get install debian-backports-keyring
sudo apt-get update
sudo apt-get install apt-move
sudo rm /var/cache/apt/archives/git*
for package in gitk gitweb `apt-cache search '^git-*' --names-only | awk '{ print $1 }'` ; do sudo /usr/lib/apt-move/fetch $package ; done&lt;/pre&gt;
&lt;p&gt;latest debs are in /var/cache/apt/archives, for copying to a local repository.&lt;/p&gt;
&lt;p&gt;git-core 1.5.4.2-1~bpo40+2 includes git-config and &amp;#8216;post-receive-email&amp;#8217;.&lt;/p&gt;
&lt;pre&gt;cd /path-to-bare-git-repo/.git/hooks
ln -sf /usr/share/doc/git-core/contrib/hooks/post-receive-email post-receive
sudo chmod a+x /usr/share/doc/git-core/contrib/hooks/post-receive-email
git-config hooks.mailinglist &quot;to@example.org&quot;

git-config --global user.name &quot;Your Name&quot;
git-config --global user.email &quot;Your Email&quot;&lt;/pre&gt;</description>
	<pubDate>Wed, 30 Apr 2008 18:44:49 +0000</pubDate>
</item>
<item>
	<title>Matthew Wilson</title>
	<guid>http://matthew.livejournal.com/84970.html</guid>
	<link>http://matthew.livejournal.com/84970.html</link>
	<description>&lt;img src="http://planet.seattlewireless.net/heads/mwilson.jpg" align="right" alt=""&gt;&lt;div&gt;&lt;a href=&quot;http://www.livejournal.com/poll/?id=1178248&quot;&gt;View Poll: #1178248&lt;/a&gt;&lt;/div&gt;</description>
	<pubDate>Sun, 27 Apr 2008 03:13:02 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: tinkering with ruby, activeldap and active directory, part 2</title>
	<guid>http://blog.loftninjas.org/?p=184</guid>
	<link>http://blog.loftninjas.org/?p=184</link>
	<description>&lt;p&gt;These are my notes from tonights reading after &lt;a href=&quot;http://blog.loftninjas.org/?p=183&quot;&gt;trying&lt;/a&gt; to get activeldap working with active directory today at work. &lt;a href=&quot;http://rubyforge.org/pipermail/ruby-activeldap-discuss/2006-November/000000.html&quot;&gt;Here&lt;/a&gt; is when they renamed ActiveLDAP to ActiveLdap, around 0.8.0, so if you&amp;#8217;re looking at examples using the capital case, they&amp;#8217;re fairly old and really should probably ignore them. v0.8.0 and later is also &lt;a href=&quot;http://rubyforge.org/pipermail/ruby-activeldap-discuss/2006-November/000001.html&quot;&gt;when&lt;/a&gt; Base.connect went away and we got &lt;a href=&quot;http://ruby-activeldap.rubyforge.org/doc/classes/ActiveLdap/Base.html#M000311&quot;&gt;Base.establish_connection&lt;/a&gt;, and dnattr became dn_attribute. The most sane examples live in the rdoc in &lt;a href=&quot;http://ruby-activeldap.rubyforge.org/doc/files/lib/active_ldap_rb.html&quot;&gt;active_ldap.rb&lt;/a&gt;. Still not 100% there though.&lt;/p&gt;</description>
	<pubDate>Fri, 25 Apr 2008 05:48:11 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Connecting to Active Directory using ruby and Activeldap</title>
	<guid>http://blog.loftninjas.org/?p=183</guid>
	<link>http://blog.loftninjas.org/?p=183</link>
	<description>&lt;p&gt;ruby-activeldap requires ruby-ldap and ruby-log4r (hah @ log4r). On Activeldap 0.7.4 via debian etch packages:&lt;/p&gt;
&lt;p&gt;Remember that AD doesn&amp;#8217;t like anonymous binds:&lt;/p&gt;
&lt;pre&gt;require 'activeldap'

ActiveLDAP::Base.connect(
  :host =&gt; &quot;ad.example.org&quot;,
  :base =&gt; &quot;dc=ad,dc=example,dc=org&quot;,
  :bind_dn =&gt; &quot;cn=ldapbind,ou=service,dc=ad,dc=example,dc=org&quot;,
  :password =&gt; &quot;password&quot;,
)&lt;/pre&gt;
&lt;pre&gt;/usr/lib/ruby/1.8/activeldap/base.rb:312:in `connection': Unable to retrieve schema from server (plain) (ActiveLDAP::ConnectionError)&lt;/pre&gt;
&lt;p&gt;This error is deceiving though. I noticed via wireshark that it was trying to bind as &amp;#8216;cn=username,dc=localdomain&amp;#8217;, failing, and trying an anonymous bind, at which point AD was letting it search that weird referral land that typically breaks other ldap searches. After adding:&lt;/p&gt;
&lt;pre&gt;  :allow_anonymous =&amp;gt; false&lt;/pre&gt;
&lt;p&gt;I got:&lt;/p&gt;
&lt;pre&gt;/usr/lib/ruby/1.8/activeldap/base.rb:1225:in `do_bind': Invalid credentials (LDAP::InvalidCredentials)&lt;/pre&gt;
&lt;p&gt;Using this worked:&lt;/p&gt;
&lt;pre&gt;ActiveLDAP::Base.connect(
  :host =&gt; &quot;ad.example.org&quot;,
  :base =&gt; &quot;dc=ad,dc=example,dc=org&quot;,
  :bind_format =&gt; &quot;cn=%s,ou=service,dc=ad,dc=example,dc=org&quot;,
  :user =&gt; &quot;ldapbind&quot;,
  :password =&gt; &quot;password&quot;,
  :allow_anonymous =&gt; false
)&lt;/pre&gt;
&lt;p&gt;I&amp;#8217;ve lost the class block using ldap_mapping I was using, but you could do things like:&lt;/p&gt;
&lt;pre&gt;class User  ActiveLdap::Base
  ldap_mapping :dn_attribute =&gt; &amp;#8216;uid&amp;#8217;, :prefix =&gt; &amp;#8220;&amp;#8221;
end

user = User.new(&amp;#8221;myusername&amp;#8221;)
puts user.mail&lt;/pre&gt;
&lt;p&gt;Awesomely enough you have to pay strict attention to what version of Activeldap you&amp;#8217;re using. in Later versions ActiveLDAP becomes ActiveLdap and the Base.connect method becomes Base.establish_connection and works a little differently (using Activeldap 0.10.0 via gem). dnattr used with ldap_mapping becomes dn_attribute. &lt;i&gt;ri is your friend here&lt;/i&gt;. Something like this works:&lt;/p&gt;
&lt;pre&gt;#!/usr/bin/ruby
# requires ruby-activeldap (libactiveldap-ruby1.8)
#     ruby-ldap (libldap-ruby1.8) ruby-log4r (liblog4r-ruby1.8)
# this particular syntax requires ruby-activeldap 0.10.0
# rubygems is required because I installed via gem. I don't know why.
# Bryan McLellan 

require &amp;#8216;rubygems&amp;#8217;
require &amp;#8216;active_ldap&amp;#8217;

ActiveLdap::Base.establish_connection(
  :host =&gt; &amp;#8220;ad.example.org&amp;#8221;,
  :base =&gt; &amp;#8220;dc=ad,dc=example,dc=org&amp;#8221;,
  :bind_dn =&gt; &amp;#8220;cn=ldapbind,ou=service,dc=ad,dc=example,dc=org&amp;#8221;,
  :password =&gt; &amp;#8220;password&amp;#8221;,
)

class User  ActiveLdap::Base
  ldap_mapping :dn_attribute =&gt; &amp;#8216;uid&amp;#8217;, :prefix =&gt; &amp;#8216;ou=MyUsers, :classes =&gt; [&amp;#8221;user&amp;#8221;]
end

user = User.find(&amp;#8221;myusername&amp;#8221;)
puts user.mail
&lt;/pre&gt;
&lt;p&gt;You need classes to tell activeldap what schema to load. Standard classes are things like [&amp;#8217;top&amp;#8217;, &amp;#8216;account&amp;#8217;, &amp;#8216;posixAccount&amp;#8217;]. You can list multiple schema&amp;#8217;s in an array like I just did. I found user by &amp;#8216;puts user.attribute_names&amp;#8217; and looking for the attribute I wanted. Note also that we&amp;#8217;re using User.find instead of User.new. Previously User.find didn&amp;#8217;t contain any attributes, now it does, whereas User.new will have empty attributes because it is in fact creating a new user class as one would expect (albeit in memory).&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m going to post this as WP like to destroy my PRE blocks, and I haven&amp;#8217;t looked for a solution yet.&lt;/p&gt;</description>
	<pubDate>Fri, 25 Apr 2008 01:25:16 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: moving mysql databases with innodb tables with foriegn keys</title>
	<guid>http://blog.loftninjas.org/?p=182</guid>
	<link>http://blog.loftninjas.org/?p=182</link>
	<description>&lt;p&gt;I was trying to move an old IRM database from a mysql 4 to a mysql 5 install. I dumped the usual way and had issues, and ended up using &amp;#8216;mysqldump &amp;#8211;opt database &amp;gt; date.file&amp;#8217; then instead of the usual &amp;#8216;mysql database &amp;lt; date.file&amp;#8217; to import I ran &amp;#8216;mysql database&amp;#8217; then the mysql command &amp;#8216;SET FOREIGN_KEY_CHECKS = 0;&amp;#8217; followed by &amp;#8217;source date.file&amp;#8217; then &amp;#8216;SET FOREIGN_KEY_CHECKS = 1;&amp;#8217;&lt;/p&gt;
&lt;pre&gt;ERROR 1217 (23000) at line 927: Cannot delete or update a parent row: a foreign key constraint fails&lt;/pre&gt;</description>
	<pubDate>Thu, 24 Apr 2008 02:36:18 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: ERROR 1044 (42000) at line 2: Access denied for user ‘root’@'%’ to database ‘db’</title>
	<guid>http://blog.loftninjas.org/?p=181</guid>
	<link>http://blog.loftninjas.org/?p=181</link>
	<description>&lt;pre&gt;ERROR 1044 (42000) at line 2: Access denied for user 'root'@'%' to database 'irm'&lt;/pre&gt;
&lt;p&gt;When I create the &amp;#8216;root&amp;#8217;@'%&amp;#8217; user via mysql, I forgot the grant option:&lt;/p&gt;
&lt;pre&gt;grant all on *.* to 'root'@'%' identified by 'password' with grant option;&lt;/pre&gt;</description>
	<pubDate>Tue, 22 Apr 2008 23:17:28 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Proxying Alfresco with mod_proxy and mod_rewrite</title>
	<guid>http://blog.loftninjas.org/?p=180</guid>
	<link>http://blog.loftninjas.org/?p=180</link>
	<description>&lt;pre&gt;

Order allow,deny
Allow from all

ProxyRequests Off
RewriteEngine On
RewriteRule ^/alfresco/(.*) /$1 [PT]
ProxyPass / http://127.0.0.1:8080/alfresco/
ProxyPassReverse / http://127.0.0.1:8080/alfresco/
&lt;/pre&gt;
&lt;p&gt;The wordpress visual editor has a frustrating desire to mess with text inside pre tags, but above is my alfresco redirect apache configuration, for the record.&lt;/p&gt;</description>
	<pubDate>Tue, 22 Apr 2008 21:18:12 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: copying a disk with lvm</title>
	<guid>http://blog.loftninjas.org/?p=178</guid>
	<link>http://blog.loftninjas.org/?p=178</link>
	<description>&lt;p&gt;I dug this out of the LVM &lt;a href=&quot;http://www.faqs.org/docs/Linux-HOWTO/LVM-HOWTO.html&quot;&gt;HOWTO&lt;/a&gt;. I had an Ubuntu linux install on an IDE disk and I was moving this install to a newer SATA only box. I got both the disks running in the old computer and booted up on &lt;a href=&quot;http://www.sysresccd.org/&quot;&gt;System Rescue CD&lt;/a&gt;. I copied my boot partition using gparted, then ran:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;pvcreate /dev/newdiskpartition&lt;br /&gt;
vgextend oldvolumegroup /dev/newdiskpartition&lt;br /&gt;
pvmove /dev/olddiskpartition /dev/newdiskpartition&lt;br /&gt;
vgreduce oldvolumegroup /dev/olddiskpartition&lt;br /&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#8217;d recommend thinking about all of this carefully before hitting enter. It took an hour or two to move 80GB of physical extents from IDE to SATA. Since I&amp;#8217;m running ubuntu, I also mounted the new partition as /mnt, and ran &amp;#8216;chroot /mnt /bin/bash&amp;#8217; then mounted the boot partition in /boot. I ran grub-install, updated /boot/menu.lst, and updated the UUID&amp;#8217;s in /etc/fstab.&lt;/p&gt;</description>
	<pubDate>Mon, 21 Apr 2008 23:27:18 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Short ATI Config for Ubuntu Gutsy (7.10)</title>
	<guid>http://blog.loftninjas.org/?p=179</guid>
	<link>http://blog.loftninjas.org/?p=179</link>
	<description>&lt;p&gt;I don&amp;#8217;t know why this was so hard. Lots of hacks out there for getting dual head working on an ATI Radeon. This is an X1300.&lt;/p&gt;
&lt;p&gt;I started up and Ubuntu detected that there was a Radeon installed and the restricted drivers manager wanted to install the fglrx (ati) drivers. I did this and rebooted, then ran this command with a fairly clean xorg.conf:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;aticonfig &amp;#8211;initial=dual-head &amp;#8211;dtop=horizontal&lt;/p&gt;&lt;/blockquote&gt;</description>
	<pubDate>Mon, 21 Apr 2008 22:00:52 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: resizing the text box in pidgin 2.4</title>
	<guid>http://blog.loftninjas.org/?p=177</guid>
	<link>http://blog.loftninjas.org/?p=177</link>
	<description>&lt;p&gt;I downloaded Pidgin (formerly gaim) on a new machine, like I normally do. I quickly noticed that I could no longer change the size of the text input area. I subscribed to &lt;a href=&quot;http://developer.pidgin.im/ticket/4986&quot;&gt;ticket #4986&lt;/a&gt; and watched the arguments roll until eventually the developers simply closed the ticket as wontfix. I&amp;#8217;ve heard rumors there is some turmoil within development, but really only the developer to user turmoil is externally visible. I&amp;#8217;ve just been using &lt;a href=&quot;http://sourceforge.net/project/showfiles.php?group_id=235&amp;amp;package_id=230234&amp;amp;release_id=559922&quot;&gt;pidgin 2.3&lt;/a&gt; while this was all being discussed but I&amp;#8217;m switching to the &lt;a href=&quot;http://sourceforge.net/project/showfiles.php?group_id=221084&amp;amp;package_id=266980&amp;amp;release_id=590071&quot;&gt;funpidgin&lt;/a&gt; fork now that the developers have expressed that pidgin will not have an option to manually resize the text input area.&lt;/p&gt;
&lt;p&gt;While it seems like a lame fork, it&amp;#8217;s up to the pidgin developers I suppose as to see where things go from here. Hopefully if the pidgin developers keep contributing new code that doesn&amp;#8217;t suck, the funpidgin developers will keep integrating it and keep up with releases. Of course, what would just be best is a damn option in pidgin to enable manual resizing again. Looks like that&amp;#8217;s not happening with the current developer hierarchy though.&lt;/p&gt;
&lt;p&gt;Getting manual input sizing back is a matter of  Tools -&amp;gt; Plugins, then Enable Entry Area Manual Size. You will likely need to close the conversation window and re-open it.&lt;/p&gt;</description>
	<pubDate>Thu, 17 Apr 2008 18:58:37 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: dell suu on debian linux</title>
	<guid>http://blog.loftninjas.org/?p=175</guid>
	<link>http://blog.loftninjas.org/?p=175</link>
	<description>&lt;p&gt;I mounted an SUU (Server Update Utility) dvd on a debian etch blade today and poked around it. &amp;#8216;autorun.sh&amp;#8217; started X (over ssh to my ubuntu desktop) but the window was all white, although I did get a normal looking exit yes/no prompt when I closed it.&lt;/p&gt;
&lt;p&gt;running &amp;#8217;suu -u&amp;#8217; from the command prompt worked fine (mount the cd with a full mount /dev/device /mnt otherwise you risk inheriting &amp;#8216;user&amp;#8217; from fstab which can muck with permissions).&lt;/p&gt;
&lt;p&gt;It ran three times and each time wanting to reboot. After the third time I checked the log and found:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;/var/log/dell/suu# cat update.log&lt;br /&gt;
Wed Apr 16 16:55:36 PDT 2008  PE1955_BIOS_LX_1.4.2_1.BIN - reboot required to complete update&lt;br /&gt;
Wed Apr 16 16:55:37 PDT 2008  PE1955_FRMW_LX_R168472.BIN - reboot required to complete update&lt;br /&gt;
Wed Apr 16 16:55:37 PDT 2008  PE1955_ESM_FRMW_LX_R158506.BIN - update successful&lt;br /&gt;
Wed Apr 16 17:04:51 PDT 2008  PE1955_BIOS_LX_1.4.2_1.BIN - reboot required to complete update&lt;br /&gt;
Wed Apr 16 17:13:29 PDT 2008  PE1955_BIOS_LX_1.4.2_1.BIN - reboot required to complete update&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;OMSA confirmed that the BIOS is v1.0.0. Apparently the BIOS upgrade isn&amp;#8217;t taking but &amp;#8216;omreport storage controller&amp;#8217; confirmed that the PERC firmware took, which is what I cared about the most. I assume if the BIOS update took it&amp;#8217;d stop asking me to reboot.&lt;/p&gt;
&lt;p&gt;That was all more painless than I expected.&lt;/p&gt;</description>
	<pubDate>Thu, 17 Apr 2008 00:37:07 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: bugzilla and subversion integration with scmbug</title>
	<guid>http://blog.loftninjas.org/?p=174</guid>
	<link>http://blog.loftninjas.org/?p=174</link>
	<description>&lt;p&gt;We recently switched to subversion from cvs and after patching together a Bugzilla 3.0.3 install since the debian buzgilla package is &lt;a href=&quot;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=465426&quot;&gt;currently orphaned&lt;/a&gt;, the dev lead stepped into the IT office and informed me that we needed svn + bugzilla integration for checkins. Meh. There&amp;#8217;s  a nice long &lt;a href=&quot;http://oss.segetech.com/bugzilla-svn-wiki.html&quot;&gt;howto here&lt;/a&gt; that covers everything, almost step by step, but most of it&amp;#8217;s manual. If you ignore that it explains how to install everything, the configuration is somewhat short but still involved hacks with email due to the lack of an API in bugzilla that&amp;#8217;s widely used.&lt;/p&gt;
&lt;p&gt;SCMBug &lt;a href=&quot;http://files.mkgnu.net/files/scmbug/&quot;&gt;releases&lt;/a&gt; however, have debs, the latest being &lt;a href=&quot;http://files.mkgnu.net/files/scmbug/SCMBUG_RELEASE_0-23-4/debs/&quot;&gt;0.23.4&lt;/a&gt;. you can download these and run:&lt;/p&gt;
&lt;pre&gt;dpkg -i scmbug-server_0.23.4_all.deb scmbug-common_0.23.4_all.deb ; apt-get install -f&lt;/pre&gt;
&lt;p&gt;I&amp;#8217;m sure there&amp;#8217;s a cleaner way to do that, but I haven&amp;#8217;t stumbled across it yet and that works.&lt;/p&gt;
&lt;p&gt;Installation documentation is nested deep in &lt;a href=&quot;http://files.mkgnu.net/files/scmbug/doc/latest_manual/html-single/manual.html#INSTALLATION&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Upon scmbug_daemon starting I saw:&lt;/p&gt;
&lt;pre&gt;** Scmbug error 77: The userlist mappings are enabled, but no mappings are configured.&lt;/pre&gt;
&lt;p&gt;My bugzilla install is currently in /usr/local/bugzilla due to the lack of a package, so I went in there and grabbed the corresponding information from localconfig to update /etc/scmbug/daemon.conf including database information (I keep my mysql databases consolidated in production), and made a point to update installation_directory to &amp;#8216;/usr/local/bugzilla&amp;#8217;.&lt;/p&gt;
&lt;p&gt;I also enabled the mapping_regexes section (enabled =&amp;gt;1) and modified the &amp;#8220;unix user mapping&amp;#8221; to email addresses, since that&amp;#8217;s what bugzilla uses.&lt;/p&gt;
&lt;p&gt;I then installed scmbug-common and scmbug-tools on the subversion server and configured it like:&lt;/p&gt;
&lt;pre&gt;scmbug_install_glue --scm=Subversion --product=myproduct --repository=file:///srv/code/svn --daemon=10.0.0.19 --binary-paths=/bin,/usr/bin --bug 845&lt;/pre&gt;
&lt;p&gt;I made up the bug number, used the first one that didn&amp;#8217;t exist in bugzilla yet. It requires all of those options. the &amp;#8216;file://&amp;#8217; part of the svn url  is required or you get the error &amp;#8220;** Scmbug error 25: file:// prefix not specified for Subversion repository path.&amp;#8221;&lt;/p&gt;
&lt;p&gt;I was a little iffy about the product, because we separate out our repository by product but it&amp;#8217;s all in one svn repository. There is chat about it all matching up &lt;a href=&quot;http://files.mkgnu.net/files/scmbug/doc/latest_manual/html-single/manual.html#FIG-POLICY-VALID-PRODUCT-NAME&quot;&gt;here&lt;/a&gt; and having product be required in the scmbug_install_glue script was a little disconcerting in the way that I expect things to not work.&lt;/p&gt;
&lt;p&gt;I used TortoiseSVN on a windows box to quickly make a new directory and tag it with a bug I made (845, after the fact of running the install script). I hit a couple default policy problems like that the bug wasn&amp;#8217;t open yet, then that my commit message wasn&amp;#8217;t over 50 characters. All this can be tuned in &amp;#8216;/srv/code/svn/hooks/etc/scmbug/glue.conf&amp;#8217; after you&amp;#8217;ve installed the glue.&lt;/p&gt;
&lt;p&gt;Low and behold though, the install worked. Props to the &lt;a href=&quot;http://www.mkgnu.net/?q=scmbug&quot;&gt;scmbug&lt;/a&gt; folks, that was much cleaner than the alternatives.&lt;/p&gt;
&lt;p&gt;update: checkin linkification&lt;/p&gt;
&lt;p&gt;I modified some older diffs against bugzilla to linkify the file list on checkin. The were on &lt;a href=&quot;http://bugzilla.mkgnu.net/show_bug.cgi?id=266&quot;&gt;bug #266&lt;/a&gt; in bugzilla for scmbug, but I can&amp;#8217;t create a login right now for whatever reason. hopefully people find it here, since I&amp;#8217;m using this on 3.0.3 and viewsvn, which is different than what&amp;#8217;s on the bug right now.&lt;/p&gt;
&lt;p&gt;WP doesn&amp;#8217;t like me pasting the diff, wrapping in pre or code tags, so it is &lt;a href=&quot;http://git.ninjr.org/?p=code.git;a=blob;f=debian/bugzilla/svn/Template.pm.diff&quot;&gt;here&lt;/a&gt; in my git repo.&lt;/p&gt;</description>
	<pubDate>Tue, 15 Apr 2008 17:27:06 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: wordpress</title>
	<guid>http://blog.loftninjas.org/?p=173</guid>
	<link>http://blog.loftninjas.org/?p=173</link>
	<description>&lt;p&gt;Moved this over to wordpress 2.2 from blogger. Easy enough to to do except for two things.&lt;/p&gt;
&lt;p&gt; 1) &amp;#8220;We were not able to gain access to your account. Try starting over.&amp;#8221; after authorizing blogger, required an &lt;a href=&quot;http://wordpress.org/support/topic/131952&quot;&gt;update&lt;/a&gt; to blogger.php locally for 2.2. Note I &amp;#8217;switched&amp;#8217; from ftp to blogspot hosting in the process of debugging this too, which was seamless and immediate.&lt;/p&gt;
&lt;p&gt;2) The default way that wordpress allows multiple sites on debian (which is much nicer than that of gentoo btw) uses the hostname to determine which site you&amp;#8217;re connecting to, so I moved the blog to &lt;a href=&quot;http://blog.loftninjas.org/&quot;&gt;http://blog.loftninjas.org&lt;/a&gt; from &lt;a href=&quot;http://loftninjas.org/blog&quot;&gt;http://loftninjas.org/blog&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;flame) And the text window is resizable, unlike &lt;a href=&quot;http://developer.pidgin.im/ticket/4986&quot;&gt;pidgin&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Why the switch? I was hosting this on my server using blogger&amp;#8217;s &amp;#8220;SFTP&amp;#8221; interface and about 50% of the time I used it I&amp;#8217;d get a &amp;#8220;Your publish is taking longer than expected. To continue waiting for it to finish, click here.&amp;#8221; error when trying to publish.&lt;/p&gt;</description>
	<pubDate>Tue, 15 Apr 2008 01:55:45 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: vmware timekeeping part 3</title>
	<guid>http://blog.loftninjas.org/?p=172</guid>
	<link>http://blog.loftninjas.org/?p=172</link>
	<description>&lt;p&gt;earlier posts &lt;a href=&quot;http://loftninjas.org/blog/2008/02/configuring-vmware-guest-time.html&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://loftninjas.org/blog/2008/03/further-vmware-timekeeping.html&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A review: &lt;br /&gt;1) We removed ntp from the linux guests and left it running on the vmware hosts.&lt;br /&gt;2) We installed open-vm-tools on the guest and live enabled timesync using vmware-guestd&lt;/p&gt;
&lt;p&gt;Notes revealed we were gaining about 40s a day.&lt;/p&gt;
&lt;p&gt;3) set clock=pit (use clocksource=pit now) in the grub config as a kernel option and restarted a guest&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/btmspox/2415082126/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2225/2415082126_1c531270d5.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;That looks like about 40s over three weeks.&lt;/p&gt;
&lt;p&gt;4) today I noticed a lot of &amp;#8220;/dev/vmmon[3685]: host clock rate change request 500 -&gt; 998&amp;#8243; messages on the vmware hosts (linux) and I set up the recommendations &lt;a href=&quot;http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;#038;cmd=displayKC&amp;#038;externalId=1591&quot;&gt;here&lt;/a&gt; which is &amp;#8216;host.cpukHz = cpuspeedinkhz&amp;#8217;, &amp;#8216;host.noTSC = TRUE&amp;#8217;, and &amp;#8216;ptsc.noTSC = TRUE&amp;#8217; to work around possible speed step issues.&lt;/p&gt;
&lt;p&gt;I accidentally used khz = mhz * 100 instead of khz = mhz * 1000 which made the time get way off when I stopped and then started the vm I testing was on. This was interesting though because I was afraid I&amp;#8217;d have to stop vmware-server, not just an individual vmware-vmx process to get it to re-read /etc/vmware/config.&lt;/p&gt;
&lt;p&gt;Looping ntpdate shows about 8/10th of a second gain over 20 minutes. Still more gain than I&amp;#8217;d like to see. Will watch the graph and then try again in a week or two.&lt;/p&gt;</description>
	<pubDate>Tue, 15 Apr 2008 00:27:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Avocent KVMoIP LDAP Configuration</title>
	<guid>http://blog.loftninjas.org/?p=171</guid>
	<link>http://blog.loftninjas.org/?p=171</link>
	<description>&lt;p&gt;The manual is way too confusing about this:&lt;/p&gt;
&lt;p&gt;It works like this:&lt;br /&gt;LDAP Overview:&lt;br /&gt;LDAPS works fine with Server 2003 R2 AD, and is preferred (leave it on port 636). If you&amp;#8217;re using fqdn&amp;#8217;s, make sure you have DNS servers set in the network section.&lt;/p&gt;
&lt;p&gt;On the Search page:&lt;br /&gt;&amp;#8216;Search DN/Password&amp;#8217; is the Bind DN/Password.&lt;br /&gt;&amp;#8216;Search Base&amp;#8217; is similarly the &amp;#8216;Base DN&amp;#8217;.&lt;br /&gt;&amp;#8216;UID Mask&amp;#8217; should be &amp;#8216;attribute=%1&amp;#8242;, replace attribute with the name of the attribute storing the username, so generally with AD this is &amp;#8217;sAMAccountName=%1&amp;#8242;&lt;/p&gt;
&lt;p&gt;Query page:&lt;br /&gt;If &amp;#8216;Group Container Mask&amp;#8217; = &amp;#8216;ou=%1&amp;#8242; and Group Container = &amp;#8216;KVM&amp;#8217; then we&amp;#8217;re looking for ou=KVM in the above configured BaseDN. This is where we&amp;#8217;ll set everything up. I recommend staying at the top of the tree for simplicity.&lt;/p&gt;
&lt;p&gt;Target mask should be &amp;#8216;cn=%1&amp;#8242; because we&amp;#8217;re looking for objects and   *  Access Control Attribute will be &amp;#8216;info&amp;#8217; because that corressponds to &amp;#8216;notes&amp;#8217; in the ADUC UI.&lt;/p&gt;
&lt;p&gt;In this OU container:&lt;/p&gt;
&lt;p&gt;1) Create a computer object with the same name as the KVM name under  &amp;#8216;Appliance -&gt; Overview&amp;#8217;. I renamed this to KVM01. I had to do this on a DC as MMC was crashing on my terminal server when creating a computer object, probably unrelated.&lt;/p&gt;
&lt;p&gt;2) Now create a group, call it whatever. In the notes section put &amp;#8216;KVM Appliance Admin&amp;#8217;. This is how we define what you can do. Add the KVM computer object to this group, and any users (or groups, ie domain admins) you want.&lt;/p&gt;
&lt;p&gt;3) These people will have full access to the kvm and all objects. It sounds like adding access into individual objects requires being in a group with info of &amp;#8216;KVM User&amp;#8217; and the computer objects for the actual server names in the group as well. Bah.&lt;/p&gt;</description>
	<pubDate>Sat, 12 Apr 2008 00:15:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Vista trust relationship login failures</title>
	<guid>http://blog.loftninjas.org/?p=170</guid>
	<link>http://blog.loftninjas.org/?p=170</link>
	<description>&lt;p&gt;A local Vista computer started having intermittent login failures when a domain user tried to log in about a trust problem with the account database.&lt;/p&gt;
&lt;p&gt;Since Vista &lt;a href=&quot;http://technet2.microsoft.com/WindowsVista/en/library/9fe3a3eb-01ec-47d4-abac-227bd6d8490f1033.mspx?mfr=true&quot;&gt;disables&lt;/a&gt; the local administrator account even though it had a password. I used Nordahl&amp;#8217;s &lt;a href=&quot;http://home.eunet.no/pnordahl/ntpasswd/bootdisk.html&quot;&gt;ntpasswd&lt;/a&gt; linux boot cd to enable the local administrator account (if I hadn&amp;#8217;t known the password I could have changed it as well). Of course the CD requires access to the &lt;a href=&quot;http://support.microsoft.com/kb/143475&quot;&gt;syskey&lt;/a&gt; as the SAM is encrypted, but it always finds it automatically since nobody puts the syskey on floppy.&lt;/p&gt;
&lt;p&gt;Then I logged in and removed the computer to the domain, changed it&amp;#8217;s name, and rejoined it and things were fine.&lt;/p&gt;
&lt;p&gt;Domain profiles were kept intact &lt;a href=&quot;http://http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=539503&amp;#038;SiteID=17&quot;&gt;by the way&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Thu, 10 Apr 2008 16:57:00 +0000</pubDate>
</item>
<item>
	<title>Metrix: A look inside the Nanostation 2</title>
	<guid>http://metrix.net/blog/?p=10</guid>
	<link>http://feeds.feedburner.com/~r/WiresAreEvil/~3/267405525/</link>
	<description>&lt;p&gt;&lt;a title=&quot;nanostation2 by Matt Westervelt, on Flickr&quot; href=&quot;http://www.flickr.com/photos/mattw/2402279668/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2383/2402279668_814e9a7d2a.jpg&quot; alt=&quot;nanostation2&quot; width=&quot;500&quot; height=&quot;334&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The &lt;a href=&quot;http://metrix.net/ubiquiti-nanostation-2-p-110.html&quot;&gt;Ubiquiti Nanostation 2 (NS2) &lt;/a&gt;has been a fast mover since it was introduced.  We order a bunch, they all go out the door, we order more.   Rinse, repeat.   For us as a store, it&amp;#8217;s a great product.  We don&amp;#8217;t have to do any custom work on them, and though the margins are thin, they don&amp;#8217;t sit in our inventory long.  For you, the customer, it&amp;#8217;s a powerful piece of hardware at a rock bottom price.&lt;/p&gt;
&lt;p&gt;&lt;a title=&quot;signal strength meter on nanostation 2 by Matt Westervelt, on Flickr&quot; href=&quot;http://www.flickr.com/photos/mattw/2402294188/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2291/2402294188_d0b197bfb4_t.jpg&quot; alt=&quot;signal strength meter on nanostation 2&quot; width=&quot;100&quot; height=&quot;67&quot; align=&quot;right&quot; /&gt;&lt;/a&gt;By the specs alone, it&amp;#8217;s a very impressive device.  The Nano Station 2 is a small, waterproof CPE with a 400mw 802.11b/g radio and a dual polarity 10dbi antenna.   It does POE (with included adapter), mounts to a pole, and has an external SMA (regular, not reverse polarity) connector.  Added bonus, LEDs for RSSI while you set it up.  It runs AirOS, which is Ubiquiti&amp;#8217;s linux variant, and it&amp;#8217;s only a matter of time before they&amp;#8217;re running OpenWRT (&lt;a href=&quot;http://www.ubnt.com/support/ns2.php&quot;&gt;check the support page for updates on firmware&lt;/a&gt;).    As far as price goes, nothing out there beats it.  It even comes with an offer for a free shirt!&lt;/p&gt;
&lt;p&gt;&lt;a title=&quot;hidden screws by Matt Westervelt, on Flickr&quot; href=&quot;http://www.flickr.com/photos/mattw/2401470901/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2083/2401470901_c431251700_t.jpg&quot; alt=&quot;hidden screws&quot; width=&quot;100&quot; height=&quot;67&quot; align=&quot;right&quot; /&gt;&lt;/a&gt;Today I decided it was time to open one up and see what it was made of.   The nanostation is very smooth, and it took me a minute or two to figure out how to get it open. Of course, rule #1 of taking apart stuff is to find out what the stickers are hiding.  Underneath this little guy&amp;#8217;s mac address are two small screws.  Unscrew, and the board just slides right out.   You really can&amp;#8217;t get any easier than that.  I was pretty happy I didn&amp;#8217;t have to squeeze, twist or bust a fingernail trying to crack open the case.&lt;/p&gt;
&lt;p&gt;&lt;a title=&quot;_DSC3956.JPG by Matt Westervelt, on Flickr&quot; href=&quot;http://www.flickr.com/photos/mattw/2402299466/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2415/2402299466_f90709c8b3_t.jpg&quot; alt=&quot;_DSC3956.JPG&quot; width=&quot;100&quot; height=&quot;67&quot; align=&quot;right&quot; /&gt;&lt;/a&gt;The board is a bit longer (a little over 8 inches) than I had imagined, especially after seeing the &lt;a href=&quot;http://www.ubnt.com/products/pico.php&quot;&gt;pictures of the upcoming picostation&lt;/a&gt;, but it makes sense that it&amp;#8217;d be the length of the device (just over 10 inches). The antenna is actually mounted right to the back (front?).&lt;br /&gt;
&lt;a title=&quot;serial on nanostation 2 by Matt Westervelt, on Flickr&quot; href=&quot;http://www.flickr.com/photos/mattw/2402482414/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3258/2402482414_dc73d160ab_t.jpg&quot; alt=&quot;serial on nanostation 2&quot; width=&quot;100&quot; height=&quot;67&quot; align=&quot;right&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
One nice surprise for the hardware hackers is the serial port, which is already pinned out.   No need for solder!   If you want to JTAG, the pads are exposed and ready, but I imagine the serial will fit most people&amp;#8217;s needs.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s the front (back?) of the board.&lt;br /&gt;
&lt;a title=&quot;nanostation 2 board by Matt Westervelt, on Flickr&quot; href=&quot;http://www.flickr.com/photos/mattw/2402485496/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3060/2402485496_d609deceb4.jpg&quot; alt=&quot;nanostation 2 board&quot; width=&quot;500&quot; height=&quot;334&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s the back (front?) with the antenna.&lt;br /&gt;
&lt;a title=&quot;nanostation 2 antenna by Matt Westervelt, on Flickr&quot; href=&quot;http://www.flickr.com/photos/mattw/2401655807/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3255/2401655807_13b3a52658.jpg&quot; alt=&quot;nanostation 2 antenna&quot; width=&quot;500&quot; height=&quot;334&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?a=Djmf4Yg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?i=Djmf4Yg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/WiresAreEvil/~4/267405525&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 10 Apr 2008 02:36:01 +0000</pubDate>
</item>
<item>
	<title>Metrix: Wires are Evil!</title>
	<guid>http://metrix.net/blog/?p=9</guid>
	<link>http://feeds.feedburner.com/~r/WiresAreEvil/~3/267265802/</link>
	<description>&lt;p&gt;
After much discussion and musing we have finally launched &amp;#8220;Wires are Evil&amp;#8221;, the official Metrix blog. The name &amp;#8220;Wires are Evil&amp;#8221; came up last year while thinking of a tag line for the new version of our online store. I wanted something that illustrates the excitement we have for wireless and also the excitement we experience from peers, customers and other folk in the wireless industry. At the same time I wanted something sticky and funny. When it came time to setup our blog it the name seemed to carry over well.&lt;/p&gt;
&lt;p&gt;
Why a company blog? Customers like talking to us because we are able to provide them with good information that has technical merit rather than a canned sales pitch. Wires are Evil is a vehicle for us to provide more of that to everyone who reads the site, not just people we talk too or exchange email with. Additionally through comments and track backs it opens up a two way communication channel so we can hear more for our customers and visitors.  &lt;/p&gt;
&lt;p&gt;
As for me, I bought my first piece of wireless networking hardware in 1999 around the same time I met Matt and got invovled with &lt;a href=&quot;http://seattlewireless.net&quot;&gt;Seattlewireless&lt;/a&gt;. Over the past 13 years I have run the guantlet of the tech industry, from broke startups to fortune 500 companies, Systems Adminsration, Network Engineering and Information Security, I have left very few stones unturned and keep looking for new ones to peak under. A couple of years ago I decided to become a partner at Metrix and haven&amp;#8217;t looked back since. &lt;/p&gt;
&lt;p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?a=GwjuKnG&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?i=GwjuKnG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?a=JMSQ0qg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?i=JMSQ0qg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/WiresAreEvil/~4/267265802&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 09 Apr 2008 21:19:12 +0000</pubDate>
</item>
<item>
	<title>Matthew Wilson: sharp pointy metal objects</title>
	<guid>http://matthew.livejournal.com/84531.html</guid>
	<link>http://matthew.livejournal.com/84531.html</link>
	<description>&lt;img src="http://planet.seattlewireless.net/heads/mwilson.jpg" align="right" alt=""&gt;Since I stumbled upon it and kinda sorta halfway opened it myself already &lt;span class=&quot;ljuser&quot;&gt;&lt;a href=&quot;http://crankygirlie.livejournal.com/profile&quot;&gt;&lt;img src=&quot;http://p-stat.livejournal.com/img/userinfo.gif&quot; alt=&quot;[info]&quot; width=&quot;17&quot; height=&quot;17&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://crankygirlie.livejournal.com/&quot;&gt;&lt;b&gt;crankygirlie&lt;/b&gt;&lt;/a&gt;&lt;/span&gt; gave me my birthday present early!  It's a set of &lt;a href=&quot;http://www.kershawknives.com/products.php?brand=shun&quot;&gt;Shun&lt;/a&gt; knives.  They are scary sharp.  There's one carrot already that won't be causing any more trouble.</description>
	<pubDate>Fri, 04 Apr 2008 04:17:18 +0000</pubDate>
</item>
<item>
	<title>Matt Westervelt: EyeFi on Linux</title>
	<guid>http://seattlewireless.net/~mattw/?p=431</guid>
	<link>http://feeds.feedburner.com/~r/mattw/~3/263737222/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://seattlewireless.net/~mattw/wp-content/plugins/falbum/wp/album.php?tags=80200f28af&amp;amp;page=1&amp;amp;photo=2231621256&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2315/2231621256_bda53967a6.jpg&quot; alt=&quot;d200 and EEEPC&quot; width=&quot;500&quot; height=&quot;333&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
Now that I&amp;#8217;ve got an &lt;a href=&quot;http://eeepc.asus.com/global/&quot;&gt;eeepc&lt;/a&gt;, I&amp;#8217;ve been able to cut down the weight I carry every day without losing much functionality.  One thing that I have been missing however, is the ability to configure my &lt;a href=&quot;http://www.eye.fi/&quot;&gt;Eye-Fi card&lt;/a&gt; for random networks that I come across.     I&amp;#8217;m running the stock Linux, Xandros, and Eye-Fi doesn&amp;#8217;t officially support anything other than Windows and OSX.   Fortunately,  Dave Hansen has released &lt;a href=&quot;http://sr71.net/projects/eyefi/&quot;&gt;Eye-Fi Config&lt;/a&gt; on his &lt;a href=&quot;http://dave-hansen.blogspot.com/&quot;&gt;EyeFi Linux Hacking&lt;/a&gt; blog.   It&amp;#8217;s a simple command line tool that doesn&amp;#8217;t help you with online service configs or local copy, but allows you to search for, add and delete WiFi networks from your linux machine.   It&amp;#8217;s exactly what I needed.  Thanks Dave!&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/~a/mattw?a=23ov23&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~a/mattw?i=23ov23&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/mattw/~4/263737222&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 04 Apr 2008 03:58:23 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: FHS Compliance for NFS mounts</title>
	<guid>http://blog.loftninjas.org/?p=169</guid>
	<link>http://blog.loftninjas.org/?p=169</link>
	<description>&lt;p&gt;Where should one mount shared NFS data?&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.pathname.com/fhs/pub/fhs-2.3.html&quot;&gt;FHS 2.3&lt;/a&gt; has no advice. All the NFS talk is about how you might NFS mount /usr and the likes.&lt;/p&gt;
&lt;p&gt;Options: /opt, /mnt, /srv. mnt is the old school way, but FHS uses the key word &amp;#8216;temporary&amp;#8217; which makes sense these days, even though we&amp;#8217;ve started using /media for most things temporary. opt? I stay away from opt since I touched oracle.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;/srv : Data for services provided by this system&lt;/span&gt;&lt;br /&gt;Sounds good to me. nfs mounts will go in /srv, since it&amp;#8217;s all data for services provided by this system.&lt;/p&gt;</description>
	<pubDate>Thu, 03 Apr 2008 22:33:00 +0000</pubDate>
</item>
<item>
	<title>Metrix: Welcome to the Wires are Evil Blog!</title>
	<guid>http://metrix.net/blog/?p=4</guid>
	<link>http://feeds.feedburner.com/~r/WiresAreEvil/~3/266589648/</link>
	<description>&lt;p&gt;Hello, and welcome to Metrix Communication&amp;#8217;s new blog.    We decided that even after four years of adding to wikis, and maintaining relationships through email and phone calls that we really haven&amp;#8217;t been doing a good job at keeping people informed of what&amp;#8217;s going on around here.    We&amp;#8217;ve had the capability for sending out a blanket newsletter for a couple of years (since we upgraded the store software), but in total, I think we&amp;#8217;ve sent out one.  Partially, it&amp;#8217;s because we hate spam and unwanted marketing,  but also because we&amp;#8217;re around this stuff every day, and it&amp;#8217;s easy to forget that what is old to us may be new to you.  We&amp;#8217;ve been thinking a bit more about our position on opt-in newsletters, how they affect us and even remind us of things that we&amp;#8217;ve put off, and will probably start sending them out in the coming months.&lt;/p&gt;
&lt;p&gt;On reflection, for a company that sells networking equipment,  we&amp;#8217;ve done a poor job of communicating to our customers as a whole.  We hope this blog and our newsletters will change that.  If you want to subscribe, just use the RSS feed in your favorite online or offline reader.  If you want to unsubscribe from the newsletter, just log into your account, or click the link that comes in every mail.&lt;/p&gt;
&lt;p&gt;For those of you that don&amp;#8217;t know me, I&amp;#8217;m Matt Westervelt,  I started the &lt;a href=&quot;http://seattlewireless.net/&quot;&gt;Seattle Wireless&lt;/a&gt; project back in 2000, and helped kick off what has become an international movement of &lt;a href=&quot;http://freenetworks.org/&quot;&gt;FreeNetworkers&lt;/a&gt;.    I live in Seattle, Washington in the Capitol Hill neighborhood, one of the most densely populated neighborhoods in the northwestern United States.   I have been working in Internet software and hardware companies since the early 1990s and believe that communications technology not only provides better communications between people, governments and business, but it creates new marketplaces as well.  Although this blog is new, I have maintained a &lt;a href=&quot;http://seattlewireless.net/~mattw/&quot;&gt;Seattle Wireless Blog&lt;/a&gt; for several years, and have recently started writing about &lt;a href=&quot;http://www.8blockwalk.com/&quot;&gt;the neighborhood I live and work in&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://flickr.com/photos/mattw/353994291/&quot;&gt;&lt;img class=&quot;alignright size-thumbnail wp-image-7&quot; title=&quot;looking down in sisterdale&quot; src=&quot;http://metrix.net/blog/wp-content/uploads/2008/04/353994291_f1edc247c5_m-150x150.jpg&quot; alt=&quot;&quot; width=&quot;107&quot; height=&quot;107&quot; /&gt;&lt;/a&gt;I started Metrix four years ago because what I needed in my networking hardware (an open and extensible platform to develop new networks and applications on), just wasn&amp;#8217;t available, or required buying parts piecemeal from a multitude of sources, some of which were very hard to get to.   Products were either pushed through consumer channels (Linksys, Netgear) or business/government channels (Cisco, Tropos, BelAir), but there was nothing for the individual enthusiast, researcher or wireless ISP who wanted quality networking hardware that was also free from a locked in feature set, was upgradeable, and easy to work on.  And there was certainly nothing out there that was affordable.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://wcn.cnt.org/&quot;&gt;&lt;img class=&quot;alignnone size-medium wp-image-8 alignright&quot; title=&quot;Unwiring Pilsen, Chicago&quot; src=&quot;http://metrix.net/blog/wp-content/uploads/2008/04/img_2941-264x300.jpg&quot; alt=&quot;&quot; width=&quot;106&quot; height=&quot;120&quot; /&gt;&lt;/a&gt;Our first product was the &lt;a href=&quot;http://metrix.net/metrix-mark-i-kit-p-1.html&quot;&gt;Metrix Mark I kit&lt;/a&gt;, a product that has been used to jump start &lt;a href=&quot;http://pdos.csail.mit.edu/roofnet/doku.php&quot;&gt;mesh networks&lt;/a&gt;, wireless ISPs, and &lt;a href=&quot;http://cuwireless.net/&quot;&gt;community wireless networks&lt;/a&gt;.  The Mark I kit has been used all over the world as a teaching tool and a communications device,  in far off places like Malawi, Ghana, Mumbai and Peru, or closer to home in big cities like &lt;a href=&quot;http://www.nycwireless.net/&quot;&gt;New York&lt;/a&gt; and &lt;a href=&quot;http://wcn.cnt.org/&quot;&gt;Chicago&lt;/a&gt;,  smaller cities like &lt;a href=&quot;http://cuwireless.net/&quot;&gt;Champaign-Urbana&lt;/a&gt;, Cambridge Mass and Sisterdale Texas.     A simple embedded computer in a waterproof box, It can be used as an access point, a client device, a network sniffer/analyzer, a node in a mesh network, or as a component in a networkable sensor device.  Originally shipped with Pebble, a linux distribution by fellow FreeNetworker Terry Schmidt of &lt;a href=&quot;http://www.nycwireless.net/&quot;&gt;NYCWireless&lt;/a&gt;, then Metrix Pebble&lt;a href=&quot;http://flickr.com/photos/cfonda/399637665/&quot;&gt;&lt;img class=&quot;alignnone size-thumbnail wp-image-6 alignright&quot; title=&quot;building kits in Malawi&quot; src=&quot;http://metrix.net/blog/wp-content/uploads/2008/04/399637665_dc9f050199-150x150.jpg&quot; alt=&quot;&quot; width=&quot;107&quot; height=&quot;107&quot; /&gt;&lt;/a&gt;, an updated version with a web interface, and now Pyramid Linux, a completely revamped Operating System based on Ubuntu, the Mark I is probably the most flexible access point on the market.    I am constantly amazed at the things our customers have told us they&amp;#8217;re using our products for, and I know that although it is possible to repurpose channel marketed devices for these tasks, it&amp;#8217;s a much easier path when you&amp;#8217;re buying something that starts out with open access in mind.&lt;/p&gt;
&lt;p&gt;One of the things that you may notice when looking around the store, is that all of our products are picked for their power, flexibility, and extensibility.    When we first started out, we had a very limited catalog, because few manufacturers believed in the idea that the customer should know what&amp;#8217;s going on under the hood.   Fortunately, the winds have changed, and more and more manufacturers are hopping on the open source bandwagon.  We are going to start taking &lt;span&gt;an unbiased&lt;/span&gt; a candid look at these products, talking about what makes them interesting, and starting the conversation.   We hope you will participate.&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?a=NU3h01G&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?i=NU3h01G&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?a=5aDSTGg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/WiresAreEvil?i=5aDSTGg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/WiresAreEvil/~4/266589648&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 03 Apr 2008 00:30:41 +0000</pubDate>
</item>
<item>
	<title>Matt Westervelt: Cheap Links</title>
	<guid>http://seattlewireless.net/~mattw/?p=430</guid>
	<link>http://feeds.feedburner.com/~r/mattw/~3/261536513/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://seattlewireless.net/~mattw/wp-content/plugins/falbum/wp/album.php?show=recent&amp;amp;page=2&amp;amp;photo=2366880725&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2108/2366880725_fbb88986ea.jpg&quot; alt=&quot;&quot; width=&quot;500&quot; height=&quot;334&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
We&amp;#8217;ve been playing with &lt;a href=&quot;http://metrix.net/ubiquiti-powerstation-2-ps218v-p-109.html&quot;&gt;PowerStations &lt;/a&gt;for a couple of months over at &lt;a href=&quot;http://metrix.net/&quot;&gt;Metrix&lt;/a&gt;, and have found them to be pretty cool, but the &lt;a href=&quot;http://www.ubnt.com/products/ns2.php&quot;&gt;new NanoStation2&lt;/a&gt; (which we just got in stock) is just awesome.   A little bigger than a beer bottle, and &lt;a href=&quot;http://metrix.net/ubiquiti-nanostation-2-p-110.html&quot;&gt;under the cost of a good bender&lt;/a&gt;, the NS2 is a community wireless networkers best new friend.   Waterproof, pole mountable (with zip tie mounting!), 400mW atheros radio, 10dBi built in antenna,  External SMA, POE, Linux based OS, and a spiffy LED display.&lt;/p&gt;
&lt;p&gt;Fresh out of the box, AirOS is pretty good.  I wish it had SSH and iperf,  OLSR, and a kitchen sink, but these things will come in time and by other people.  You can set the NS2 as an AP or a Client, do WDS, encryption, MAC Clone, bridge, route, and a slew of other things in the simple but AJAX&amp;#8217;d web configurator.  AirOS is linux under the hood, so you can enable telnet in case you need to set some routes or do something outside of the capabilities of the standard stuff.    It shouldn&amp;#8217;t take long for an OpenWRT build, so just keep your eyes on the &lt;a href=&quot;http://www.ubnt.com/support/ns2.php&quot;&gt;NS2 Support Page&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;These should make for an Interesting HackNight next week, and if you&amp;#8217;re local and interested in picking one up,  just let me know.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/~a/mattw?a=ppQ4fZ&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~a/mattw?i=ppQ4fZ&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/mattw/~4/261536513&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Sun, 30 Mar 2008 06:14:01 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: further vmware timekeeping</title>
	<guid>http://blog.loftninjas.org/?p=168</guid>
	<link>http://blog.loftninjas.org/?p=168</link>
	<description>&lt;p&gt;I&amp;#8217;ve talked about this in &lt;a href=&quot;http://loftninjas.org/blog/2008/02/configuring-vmware-guest-time.html&quot;&gt;other posts&lt;/a&gt;. I&amp;#8217;ve been automating vmware guest &lt;a href=&quot;http://loftninjas.org/blog/2008/03/automating-vmware-guest-deployment-with.html&quot;&gt;creation&lt;/a&gt; and configuration. Time has been one of the bigger hassles. The best reading about it is &lt;a href=&quot;http://www.vmware.com/pdf/vmware_timekeeping.pdf&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I automated vmware tools install using the open-vm-tools deb (backport to etch). Then used puppet to run vmware-cmd to enable timesync on all of the guests. See &lt;a href=&quot;http://loftninjas.org/blog/2008/02/configuring-vmware-guest-time.html&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This keeps time from falling behind, but we set up some munin graphs and saw time was gaining about 40s a day. so I just wrote another puppet exec to add &amp;#8216;clock=pit&amp;#8217; to the end of the kernel lines. Newer kernels use time algorithms that try to correct time for lost cycles. Lost cycles are common in virtualized environments. I&amp;#8217;ll note how this works out after a week or so.&lt;/p&gt;</description>
	<pubDate>Thu, 27 Mar 2008 19:45:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Anti-spam gateway design notes</title>
	<guid>http://blog.loftninjas.org/?p=167</guid>
	<link>http://blog.loftninjas.org/?p=167</link>
	<description>&lt;p&gt;Once again I&amp;#8217;m rebuilding an anti-spam gateway. This time I&amp;#8217;m puppetizing it as I go, so I wanted to take some time today to think about the design.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;MTA&lt;/span&gt; (flame war #1)&lt;br /&gt;About four years ago I built a personal mail server and used qmail. Before that I don&amp;#8217;t remember what I used, probably sendmail. Qmail&amp;#8217;s nice because it&amp;#8217;s small and well designed, but the author had some RFC fixation and support for things like TLS had to be patched in. This qmail install was on gentoo though, and the emerge auto-patched about over 20 features in as it built it. I believe the idea was that these features wouldn&amp;#8217;t make it into the official source, so they wouldn&amp;#8217;t be in a binary build either. Pain in the ass really.&lt;/p&gt;
&lt;p&gt;I do have memories of using sendmail. Actually, horrible dreams of youthful innocence being torn to shreds by m4. We&amp;#8217;ll stay away from the beast.&lt;/p&gt;
&lt;p&gt;A couple years ago I built an anti-spam gateway using postfix and it was easy enough.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Queueing&lt;/span&gt;&lt;br /&gt;In the past I&amp;#8217;ve used amavisd with postfix to run the clamav and spamassassin checks. This has worked by taking incoming smtp messages to postfix and routing them to amavisd on another locally bound port, which scans them and then redelivers them to another locally bound port. One neat thing about this design is you could have amavis running on seperate boxes, with one doing spam, one doing antivirus, and just route between them all, with the final one doing the delivery to the internal mail servers.&lt;/p&gt;
&lt;p&gt;qmail had qmail-scanner-queue which tied all of this together in a way that looks similar to MailScanner, that picks up the messages in one folder and when its done leaves them somewhere else.&lt;/p&gt;
&lt;p&gt;postfix uses &lt;a href=&quot;http://www.postfix.org/FILTER_README.html&quot;&gt;content_filter&lt;/a&gt; to tie into antispam otherwise. The trouble with this is that it&amp;#8217;s already accepted a message by the time it&amp;#8217;s gotten all of this far.&lt;/p&gt;
&lt;p&gt;When you decide something is spam, you can do a couple things. If you&amp;#8217;re still in the SMTP phase, you can reject it before you accept it. I prefer this. Otherwise you&amp;#8217;ve accepted it and you can delete it, return it, tag it (modify the subject), or grey list it somewhere. Option #1 is bad because it may not have been spam. #2 is bad because you have to generate a email message back to the sender address saying &amp;#8220;We think this is spam&amp;#8221; and if it was spam, whoever gets it is certainly not the person that sent it. This is better than #1 though because you get less support calls for disappearing email. #3 and #4 are annoying because you still have to look at the mail.&lt;/p&gt;
&lt;p&gt;In the past I&amp;#8217;ve used RBLs in postfix to reject mail, which gets a lot of spam, then tagging in spamassassin so it&amp;#8217;ll filter into users JunkMail folders so at least they only look at it if they&amp;#8217;re looking for something. This is probably acceptable still. Sometimes I&amp;#8217;ll delete mail based on spamassassin score if it&amp;#8217;s really high, because if someone sends you a legitimate email that gets a score that high, you probably don&amp;#8217;t want to talk to them anyway.&lt;/p&gt;</description>
	<pubDate>Wed, 26 Mar 2008 17:26:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Ubuntu 7.10 GRUB Error 21</title>
	<guid>http://blog.loftninjas.org/?p=165</guid>
	<link>http://blog.loftninjas.org/?p=165</link>
	<description>&lt;p&gt;A recent install of Ubuntu Gutsy 7.10 on a slave IDE disk (cable select) with an existing master IDE disk with XP Pro on it rebooted and got a GRUB Error 21. I was about to boot off the network again to go into rescue mode and look at the grub configs, but when I saw the boot menu I wondered what the boot order since I just added the disk. When I got into BIOS I saw that Primary Slave was OFF. Ubuntu had seen the disk even though the BIOS had it disabled, and since GRUB talks to the BIOS it couldn&amp;#8217;t find the disk. Enabling the disk by setting it to auto in the Dell BIOS fixed GRUB.&lt;/p&gt;</description>
	<pubDate>Tue, 25 Mar 2008 19:20:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: dimdim on centos (fail)</title>
	<guid>http://blog.loftninjas.org/?p=164</guid>
	<link>http://blog.loftninjas.org/?p=164</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://flickr.com/photos/btmspox/2358118019/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2273/2358118019_03683140a0_m.jpg&quot; /&gt;&lt;/a&gt;&lt;br /&gt;I managed to track down a copy of centos 4.5 i386 and made a VM to try to get &lt;a href=&quot;http://www.dimdim.com/&quot;&gt;dimdim&lt;/a&gt; running. I had all sorts of &lt;a href=&quot;http://loftninjas.org/blog/2008/03/dimdim-on-debian-etch.html&quot;&gt;fun&lt;/a&gt; earlier trying to get it running on the much preferred debian. I was talking to a friend of mine about this attempt and he noted that when someone requests him to install some OSS software, one of his major filters is &amp;#8220;does it install on debian?&amp;#8221;. If it doesn&amp;#8217;t have a deb, it fails the bar. This is a pretty good bar. There are exceptions for things like java before they relicensed it. Perhaps, &amp;#8220;does it install on ubuntu?&amp;#8221; is a better question.&lt;/p&gt;
&lt;p&gt;That the &amp;#8220;installer&amp;#8221; for dimdim installs a pile of rpms from dimdim&amp;#8217;s website that have nothing to do with the product (glibc? wtf?) is a great example of why we don&amp;#8217;t use rpm based linux distributions. &lt;/p&gt;
&lt;p&gt;1) People who don&amp;#8217;t understand the differences between rpm/deb distros tend to not respect why packaging is essential, and do stupid shit like put system library rpms in their installer.&lt;/p&gt;
&lt;p&gt;2) RPMs suck, and therefore RPM based distros suck. I&amp;#8217;m not going to get into a flame war over this, but simply try to take your major RPM distro and upgrade it from one major version to the next. Then try to convince me how the steps you took are not cruel and unusual punishment. (&amp;#8221;apt-get update &amp;#038;&amp;#038; apt-get upgrade &amp;#038;&amp;#038; apt-get dist-upgrade&amp;#8221; Wow.)&lt;/p&gt;
&lt;p&gt;Anyways, I ran the installer per the PDF documentation that reads like it was made by the marketing department. It managed to make it through after doing a bunch of kooky stuff to remind me that it is just a shell script, not a packaging system. (Note that if you run it twice, it&amp;#8217;ll fail because lighttpd is already installed. Maybe this &lt;a href=&quot;http://support.dimdim.com/browse/DEV-1097&quot;&gt;bug&lt;/a&gt; that was supposedly fixed last year?).&lt;/p&gt;
&lt;p&gt;Once you run the startup script, if you connect to the host you&amp;#8217;ll get something like this:
&lt;pre&gt;404 Not FoundThe path &amp;#8216;/&amp;#8217; was not found.

Traceback (most recent call last):  File &amp;#8220;/usr/lib/python2.3/site-packages/cherrypy/_cprequest.py&amp;#8221;, line 551, in respond    cherrypy.response.body = self.handler()  File &amp;#8220;/usr/lib/python2.3/site-packages/cherrypy/_cperror.py&amp;#8221;, line 198, in __call__    raise selfNotFound: (404, &amp;#8220;The path &amp;#8216;/&amp;#8217; was not found.&amp;#8221;)&lt;/pre&gt;
&lt;p&gt;You need to go to http://host/dimdim/, the trailing slash is essential.&lt;/p&gt;
&lt;p&gt;This time around the site was less responsive. Sometimes when you start a meeting and you install the plugins the first time, the connect to the meeting fails. Attempts to start a new meeting fail with &amp;#8220;Exceeded server limit of meetings&amp;#8221;. I thought this was a bug, which I worked around by restarting the server. But this time I restarted the server, joined a meeting, then tried to create another one and got this message. Let&amp;#8217;s make this clear since dimdim doesn&amp;#8217;t.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;The Open Source Edition of Dimdim is intentionally crippled.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;You can only have one active meeting at a time. While their &lt;a href=&quot;http://www.dimdim.com/products/dimdim_editions.html&quot;&gt;editions&lt;/a&gt; page mentions that &amp;#8216;dimdim pro&amp;#8217;, a SaaS product, only allows one meeting at a time, the OSS column merely says &amp;#8216;Free&amp;#8217; in that box. This is really perturbing. It wouldn&amp;#8217;t be so bad if they were up front about it. There&amp;#8217;s a thread &lt;a href=&quot;http://sourceforge.net/forum/message.php?msg_id=4758888&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://sourceforge.net/forum/message.php?msg_id=4705338&quot;&gt;here&lt;/a&gt; on the official sourceforge forums with no official responses. Someone there talks of having reverse engineered the limitation, but it&amp;#8217;s a &amp;#8220;email me&amp;#8221; type talk, not an open discussion.&lt;/p&gt;
&lt;p&gt;Grepping for &amp;#8216;maxConcurrentConferences&amp;#8217; in the dimdim install shows it set to 50 in the dimdim.properties file. The forum post refers to a comment of:&lt;br /&gt;
&lt;blockquote&gt;## NOTE : In this Open Source Edition only 1 Meeting at a time is allowed. If you need a Dimdim Meeting Server with higher capabilities then please  &lt;br /&gt;## contact sales@dimdim.com. &lt;/blockquote&gt;&lt;/p&gt;&lt;/p&gt;
&lt;p&gt;However my dimdim.properties lacks any such note. Perhaps in the source code rather than the slightly older centos installer it says this. This value is set to 50 by default in my config files, I recall seeing some mention somewhere that this limit was in a jar file.&lt;/p&gt;
&lt;p&gt;I later found a &lt;a href=&quot;http://sourceforge.net/forum/message.php?msg_id=4686839&quot;&gt;thread&lt;/a&gt; by a user complaining that only five or six users could get into a meeting. This &lt;a href=&quot;http://sourceforge.net/forum/message.php?msg_id=4690937&quot;&gt;response&lt;/a&gt; appears to be by a dimdim employee and states:&lt;br /&gt;
&lt;blockquote&gt;Open Source SF edition of dimdim is a personal edition of the meeting server and is meant to cater to single meeting. We have currently placed the restrction to upto 5 participants. For larger meetings, the resources required increase significantly and require dedicated servers.  &lt;br /&gt;Please use the hosted dimdim edition - for hosting larger meetings. We also provide an enterprise server build for on-premise installations. &lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt; Someone &lt;a href=&quot;http://sourceforge.net/forum/message.php?msg_id=4856236&quot;&gt;replies&lt;/a&gt; with the same sort of arguments that seem obvious to any OSS fan, and &lt;a href=&quot;http://web.archive.org/web/20070504000439/www.dimdim.com/index.php?option=com_content&amp;#038;task=view&amp;#038;id=13&amp;#038;Itemid=37&quot;&gt;links&lt;/a&gt; to a webarchive copy of dimdim&amp;#8217;s website where they say:&lt;br /&gt;
&lt;blockquote&gt;Dimdim makes extensive usage of open source components and products and hopes that someday Dimdim itself will be useful to others in the way others have been useful to it. Big thanks to the communities and individuals of all the open source projects used in Dimdim.&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;I assume at some point the company had OSS fans, and management has pushed it away from OSS.&lt;/p&gt;
&lt;p&gt;Sigh. Dimdim is a very pretty waste of time.&lt;/p&gt;</description>
	<pubDate>Mon, 24 Mar 2008 18:27:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Programming an old EM01 Websensor</title>
	<guid>http://blog.loftninjas.org/?p=163</guid>
	<link>http://blog.loftninjas.org/?p=163</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://flickr.com/photos/btmspox/2358418868/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3113/2358418868_fa610ea949_m.jpg&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;I have an old &lt;a href=&quot;http://www.eesensors.com/websensor.htm&quot;&gt;EM01b&lt;/a&gt; websensor made by &lt;a href=&quot;http://www.eesensors.com/&quot;&gt;eesensors&lt;/a&gt;. They&amp;#8217;re an awesome product, basically a small webserver that senses humidity, temperature and illumination. We&amp;#8217;ve been using an old one as a nagios monitor for the server room temperature. The newer model (both are called an em01b). The one pictured is the older model. I recently picked up the newer model as it comes with one of three options: contact closure, thermistor (additional temperature monitor), or voltage monitoring (great for UPS batteries). I got one with contact closure and tied it into the Common Alarm circuit on our HVAC unit because one of them recently shut down due to a high water level (drain was clogged) and we didn&amp;#8217;t know until nagios threw a temperature warning. Now nagios can poll for the contact closure and will know of an HVAC alarm immediately.&lt;/p&gt;
&lt;p&gt;The EM01b isn&amp;#8217;t cheap, but I&amp;#8217;m sure it&amp;#8217;s cheaper than a separate monitoring unit for a UPS or HVAC unit, and since many people use nagios, it ties in pretty well. I also wrote a ruby &lt;a href=&quot;http://munin.projects.linpro.no/&quot;&gt;munin&lt;/a&gt; module for it recently, which I&amp;#8217;ll post later when I get permission from work to keep the copyright on it and GPL it. This is awesome for temperature trending so you can see how all those servers you&amp;#8217;ve added over the last six months have affected environmentals in the data center.&lt;br /&gt;&lt;a href=&quot;http://flickr.com/photos/btmspox/2357585769&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3213/2357585769_f75f2af0b3.jpg&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Once I had the new EM01b set up, which you program via the network interface using HTTP requests, I went about reconfiguring the old one. The old ones are a little tougher as there is no information about them on the web. I had to email eesensors and I was sent this &lt;a href=&quot;http://www.eesensors.com/downloads/sk1cd.zip&quot;&gt;link&lt;/a&gt; to the old cdrom. Maybe nobody else will have this problem, but since I hadn&amp;#8217;t bought the old em01b, I had no idea how to configure it. It comes with another module, the es00r, which an esbus to serial interface. You need to connect this to the 6pin esbus interface on the em01b using a 6pin phone cable. Power up the em01b with the es00r connected and run the Com2ex*.exe file in the EM01_Configuration folder the &lt;a href=&quot;http://www.eesensors.com/downloads/sk1cd.zip&quot;&gt;zip file&lt;/a&gt;. You need to connect the es00r to the computer with a regular M-F RS323 cable. Select your COM port and hit connect. If it doesn&amp;#8217;t say &amp;#8220;communications established&amp;#8221; on the bottom of the program, it&amp;#8217;s likely you don&amp;#8217;t have a true RS232 cable. I had to try a couple to find one that would work.&lt;/p&gt;
&lt;p&gt;Once you get an established link, restart the em01b. Re-establish the link, then click read/verify to ensure the communications are good. Enter the configuration you want in, and click transfer to send it to the em01b via the es00r. When it&amp;#8217;s complete, restart the em01b, reconnect, and hit read/verify to make sure it got there ok.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;update:&lt;/span&gt;I was getting the same values from the early em01b every query and emailed eesensors about leaving the es00r connected and they said:&lt;br /&gt;
&lt;blockquote&gt;The Es00r cannot be plugged in - it may interfere with the Websensor data which could explain the reason you are seeing the same values. In addition, the 6 random digits should be appended to the back of the &amp;#8220;em&amp;#8221; command (ie. &amp;#8220;em123456&amp;#8243;) on earlier models.&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;I disconnected the es00r and power cycled the em01 and I&amp;#8217;m getting different readings now over time. I&amp;#8217;m still querying index.htm?em though, as the v4.2 manual says this is okay and it seems to work for me:&lt;br /&gt;
&lt;blockquote&gt;Compatibility with the earlier models of Websensor has been maintained. Any version of the Websensor will always return temperature, relative humidity and illumination data by sending: http://192.168.254.102/index.html?em&lt;/blockquote&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 24 Mar 2008 15:36:00 +0000</pubDate>
</item>
<item>
	<title>Matthew Wilson</title>
	<guid>http://matthew.livejournal.com/84400.html</guid>
	<link>http://matthew.livejournal.com/84400.html</link>
	<description>&lt;img src="http://planet.seattlewireless.net/heads/mwilson.jpg" align="right" alt=""&gt;obligatory post in reference to lj strike silliness.&lt;br /&gt;&lt;br /&gt;seriously people, if you are upset then &lt;a href=&quot;http://synecdochic.livejournal.com/203464.html&quot;&gt;send postcards&lt;/a&gt;.</description>
	<pubDate>Fri, 21 Mar 2008 21:48:31 +0000</pubDate>
</item>
<item>
	<title>Matthew Wilson</title>
	<guid>http://matthew.livejournal.com/84096.html</guid>
	<link>http://matthew.livejournal.com/84096.html</link>
	<description>&lt;img src="http://planet.seattlewireless.net/heads/mwilson.jpg" align="right" alt=""&gt;I have a date with&amp;nbsp;&lt;span class=&quot;ljuser&quot;&gt;&lt;a href=&quot;http://burr86.livejournal.com/profile&quot;&gt;&lt;img src=&quot;http://p-stat.livejournal.com/img/userinfo.gif&quot; alt=&quot;[info]&quot; width=&quot;17&quot; height=&quot;17&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://burr86.livejournal.com/&quot;&gt;&lt;b&gt;burr86&lt;/b&gt;&lt;/a&gt;&lt;/span&gt; on Saturday.&amp;nbsp; He's so dreamy.</description>
	<pubDate>Thu, 20 Mar 2008 05:58:08 +0000</pubDate>
</item>
<item>
	<title>Matthew Wilson: bullet style</title>
	<guid>http://matthew.livejournal.com/83923.html</guid>
	<link>http://matthew.livejournal.com/83923.html</link>
	<description>&lt;img src="http://planet.seattlewireless.net/heads/mwilson.jpg" align="right" alt=""&gt;&lt;ul&gt;&lt;li&gt;I'm in Mountain View, CA from now til next Tuesday.&lt;/li&gt;&lt;li&gt;It was a big day for my project at work, very exciting.&lt;/li&gt;&lt;li&gt;Virgin America is a totally awesome airline.&amp;nbsp; The mood lighting kinda wigs out your eyes at first though.&lt;/li&gt;&lt;li&gt;so tired, been up since 4:45am.&lt;br /&gt;&lt;div align=&quot;left&quot;&gt;&amp;nbsp;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;</description>
	<pubDate>Thu, 20 Mar 2008 05:41:41 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Widemile takes over world by way of multivariate testing</title>
	<guid>http://blog.loftninjas.org/?p=162</guid>
	<link>http://blog.loftninjas.org/?p=162</link>
	<description>&lt;p&gt;At this point, it&amp;#8217;s &lt;a href=&quot;http://www.widemile.com/aboutUs/newsEvents_PressRelease031808.php&quot;&gt;official&lt;/a&gt;, &lt;a href=&quot;http://www.widemile.com/&quot;&gt;Widemile&lt;/a&gt; is taking over the world. What?! You want proof?&lt;/p&gt;
&lt;p&gt;I&amp;#8217;d like to pretend sometimes I don&amp;#8217;t know a whole lot about business, but in actuality there&amp;#8217;s a bunch of experience kicking around in my past and I tend to pick up more than the average bear. The difference is that I&amp;#8217;ve never considered myself a business person, or that it was my primary responsibility by happenstance (other than while consulting). But I&amp;#8217;ve done lots of supportish things, lots of consulting, have had to manage people and the likes. More than I&amp;#8217;m willing to admit to even myself. Anyways, the point is I tend to only do business related things when I don&amp;#8217;t feel like someone else competent is doing them. So I notice things, but keep them to myself.&lt;/p&gt;
&lt;p&gt;I work at Widemile as a Systems Administrator. I don&amp;#8217;t even know what that title means anymore. I think I&amp;#8217;m the first full time, non development sysadmin there. I do a number of things, like helping users find the any key, remind them cdrom drives aren&amp;#8217;t cup holders&amp;#8230; actually, I spend most my time building the &lt;a href=&quot;http://loftninjas.org/blog/2008/03/startup-web-20-operations.html&quot;&gt;operations platform&lt;/a&gt;. So I do development, like puppet, ruby, shell scripts and the likes, but I&amp;#8217;m not a developer. Or so I say. Endlessly. Fortunately those people with developer in their title &lt;a href=&quot;http://www.widemile.com/products/technicalPlatform.php&quot;&gt;know what they&amp;#8217;re doing&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When I first started working at Widemile, I wasn&amp;#8217;t particularly interested in the business plan. Linux systems engineering? Sounds good. What do you do? Web 2.0 Product? Check&amp;#8230; I&amp;#8217;ve heard it. People sometimes don&amp;#8217;t realize how socialized a sysadmin gets, everybody wants to be your friend when something doesn&amp;#8217;t work. (There is no friend checkbox in &lt;a href=&quot;http://bestpractical.com/rt/&quot;&gt;RT&lt;/a&gt;. People don&amp;#8217;t make note of this.) So I hear a lot of chatter about our &lt;a href=&quot;http://www.widemile.com/products/&quot;&gt;product&lt;/a&gt; and the results it brings in. I figured, &amp;#8220;automated testing of a web page? Sounds good, makes sense, but it&amp;#8217;s novel right? I mean, how much can it really make a difference?&amp;#8221;.&lt;/p&gt;
&lt;p&gt;The answer is &lt;span&gt;&lt;a href=&quot;http://www.widemile.com/assets/optimization/wm_casestudy.pdf&quot;&gt;tons&lt;/a&gt;&lt;/span&gt;. The term they use is &lt;span&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Conversion_(marketing)&quot;&gt;Conversion Marketing&lt;/a&gt;&lt;/span&gt;. I&amp;#8217;m sure this means something to SEO/SEM types, but what we really do is &amp;#8220;Make more people buy your stuff.&amp;#8221; Which, after all, is kind of the point of business. At this point, I have no reluctance to put forth that using Widemile&amp;#8217;s product will make more people buy your stuff. It works kind of like this:&lt;/p&gt;
&lt;p&gt;You sell stuff to &lt;a href=&quot;http://en.wikipedia.org/wiki/Gold_farming&quot;&gt;farmers&lt;/a&gt;. You pay some carebear 1000 gold pieces to hang around the farmers yakking about how great your stuff is. On average, you make 10,000 gold pieces. Now what if you had some &amp;#8216;&lt;a href=&quot;http://www.widemile.com/optimization/multivariateTesting.php&quot;&gt;multivariate testing&lt;/a&gt;&amp;#8216; pixie dust to sprinkle on that carebear such that there was less yakking, and more of what people wanted? Wait, you ask, how we know what people want? Magic! (Math&amp;#8230;) You give us 250g, and we find you a better carebear with Math Dust for 750g and now you&amp;#8217;re making 20,000 gold.&lt;/p&gt;
&lt;p&gt;Jokes aside (it&amp;#8217;s hard, really). All the talk I hear is of our customers actually having huge success. I&amp;#8217;m not in sales, I can&amp;#8217;t be quoting things, but from my techie point of view with secret business experience, it&amp;#8217;s magic &amp;#8220;something for nothing&amp;#8221; sort of success.  When I&amp;#8217;ve managed to convey to people what Widemile does, a couple educated few have said, &amp;#8220;Oh, like &lt;a href=&quot;http://services.google.com/websiteoptimizer/&quot;&gt;Google Optimizer&lt;/a&gt;.&amp;#8221; No, actually. Congrats on knowing someone in the optimization business, even if it is Google. It&amp;#8217;s basically like this, google has a thinger. They get cool thingers, like take &lt;a href=&quot;http://www.dodgeball.com&quot;&gt;Dodgeball&lt;/a&gt;. I love dodgeball. Second to Google Search, it&amp;#8217;s my most used google product, even more than google maps. How much Dodgeball changed&amp;#8230; in years? Little, it&amp;#8217;s &lt;a href=&quot;http://www.flickr.com/photos/dpstyles/460987802/&quot;&gt;no secret&lt;/a&gt;. Some things Google makes are cool, don&amp;#8217;t get me wrong, but there are &lt;a href=&quot;http://blogoscoped.com/archive/2008-02-25-n19.html&quot;&gt;lots of reasons&lt;/a&gt; Google has products, and they&amp;#8217;re not always to be innovative.&lt;/p&gt;
&lt;p&gt;Widemile is a Landing Page Optimization (&lt;a href=&quot;http://en.wikipedia.org/wiki/Landing_page_optimization&quot;&gt;LPO&lt;/a&gt;) pioneer. They have the &lt;a href=&quot;http://radar.oreilly.com/archives/2007/10/operations-is-a-competitive-ad.html&quot;&gt;secret sauce&lt;/a&gt; (ooh, see what I did there? I linked to an article promoting operations, slam!). Seriously though, people are being sold on LPO that&amp;#8217;s called LPO but it doesn&amp;#8217;t compare to what we do. There is secret sauce out here, real stuff. If you care to know the ingredients, I encourage you to go read every character on &lt;a href=&quot;http://testingblog.widemile.com/&quot;&gt;Billy&amp;#8217;s blog&lt;/a&gt;. I don&amp;#8217;t have a lot of free time, and LPO isn&amp;#8217;t a package management system that generates me more free time, so I&amp;#8217;ll leave it to you business types to figure this stuff out. But it&amp;#8217;s neat all the same.&lt;/p&gt;
&lt;p&gt;The reality is, from a personal point of view: somehow less and less companies seem to get what I want on the web. I recall hearing talk over the years about what kind of time opportunity you had to capture someones interest in traditional marketing. It was pretty short, I forget what it was exactly. I&amp;#8217;ll tell you this though. If I don&amp;#8217;t have an established relationship with a company (which, if I did, it&amp;#8217;s not really marketing when I go to their site, since I&amp;#8217;m going there anyways), how long will I fudge around trying to find where to click next to get what I want? A &lt;span&gt;very short&lt;/span&gt; amount of time. What do I want from you, web? Simplicity with endless bounds. I want the tubes to be lego. By itself, it&amp;#8217;s just a little piece of plastic, but with a handful, you&amp;#8217;ve got a &lt;a href=&quot;http://www.flickr.com/photos/90985082@N00/244968403/&quot;&gt;Space Elevator&lt;/a&gt;. Alright, maybe not the best example, but that&amp;#8217;s the point.&lt;/p&gt;
&lt;p&gt;Today I was trying to find support information for a Netgear ReadyNAS. The web has been defeated in the world of driver searching (&lt;a href=&quot;http://www.google.com/search?q=dell+driver+d620+video&quot;&gt;search&lt;/a&gt; for a dell driver if you haven&amp;#8217;t experienced this), training me to start at a vendors website and drill down, rather than just search. Netgear&amp;#8217;s web site is terrible. What do you get if you just search for &lt;a href=&quot;http://www.google.com/search?q=readynas+support&quot;&gt;ReadyNAS support&lt;/a&gt;? Netgear, and look, a &lt;a href=&quot;http://www.readynas.com&quot;&gt;community oriented site&lt;/a&gt;! &lt;a href=&quot;http://www.seattlewireless.net/&quot;&gt;Communities&lt;/a&gt; have it figured out because they&amp;#8217;re usually filled with information created by people who were once trying to figure things out. Black boxes are alright if a) we buy them to do something and b) they do it.&lt;/p&gt;
&lt;p&gt;Try going to &lt;a href=&quot;http://www.newegg.com&quot;&gt;newegg&lt;/a&gt; and finding RJ45 crimp connectors without searching. Then try with searching. It&amp;#8217;s tough. Most websites are tough to get what you want. This is why tags are getting popular on web 2.0 sites like &lt;a href=&quot;http://www.flickr.com&quot;&gt;flickr&lt;/a&gt; and &lt;a href=&quot;http://del.icio.us/&quot;&gt;delicious&lt;/a&gt;. People choose tags that are meaningful to them because we want to be able to find what we want. How do you know what other people are looking for? If you don&amp;#8217;t know, it only makes sense to test to me. This is where split testing sounds so silly to me, of all the possibilities you&amp;#8217;re trying two. That you probably thought up yourself. Isn&amp;#8217;t this supposed to be a test to see what other people want? There really is Magic in Widemile&amp;#8217;s platform, and I&amp;#8217;m serious when I say there&amp;#8217;s spiffy math behind it a secret sauce design, but software that finds out what variation is most successful? It&amp;#8217;s easy to understand how awesome that is. If you&amp;#8217;re spending any significant amount of money on online advertising and not doing LPO, you&amp;#8217;re throwing away money.&lt;/p&gt;</description>
	<pubDate>Tue, 18 Mar 2008 08:28:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: debugging netgear readynas (was infarant)</title>
	<guid>http://blog.loftninjas.org/?p=161</guid>
	<link>http://blog.loftninjas.org/?p=161</link>
	<description>&lt;p&gt;I&amp;#8217;ve &lt;a href=&quot;http://loftninjas.org/blog/2008/02/enabling-root-ssh-on-your-nas.html&quot;&gt;talked&lt;/a&gt; in the past about how cool it is to have a root shell on your NAS. I&amp;#8217;d like to take a moment to second that.&lt;/p&gt;
&lt;p&gt;Some software that copies web logs off one of our readynas 1100s wasn&amp;#8217;t working today. I got looking and it used a domain account. I realized pretty quickly it had stopped working when we had upgraded the NAS devices to the new domain, but we don&amp;#8217;t use this one setup often enough to have noticed it had stopped running.&lt;/p&gt;
&lt;p&gt;I logged into the readynas and used wbinfo to verify that winbind was working right. While poking around the log files I saw and error about proftpd and PAM. I&amp;#8217;m lucky to have to of these readynas boxes, so I verified that the pam configs hadn&amp;#8217;t changed compared to the production system. I then checked the proftpd binary and it had changed size. Raidiator appears to be debian based, you can see woody packages in a &amp;#8216;dpkg -l&amp;#8217;. Interestingly &amp;#8216;dpkg -s proftpd&amp;#8217; shows version &amp;#8216;1.3.0-9.netgear6&amp;#8242; on both machines, although it had definitely changed. I copied the proftpd binary from the production nas to the backup nas and restarted proftpd and authentication started working again.&lt;/p&gt;
&lt;p&gt;5% chance it was a fluke, but I think it&amp;#8217;s a real bug that slipped past QA and if not for being open source based I&amp;#8217;d be sitting in a support queue rather than having the problem fixed and blogging about it already. Forum post &lt;a href=&quot;http://www.readynas.com/forum/viewtopic.php?f=10&amp;#038;t=17105&quot;&gt;here&lt;/a&gt; too.&lt;/p&gt;
&lt;p&gt;They&amp;#8217;ve been adding lots of cool features to the ReadyNAS line, like a built in &lt;a href=&quot;http://www.readynas.com/?p=60&quot;&gt;bittorrent&lt;/a&gt; client and some neat photo support. It already supports CIFS and things like rsync, making it pretty accessible and functional out of the box. Besides what looks like decent support for &lt;a href=&quot;http://www.readynas.com/forum/viewforum.php?f=35&quot;&gt;third party&lt;/a&gt; development. That there&amp;#8217;s a real usable &lt;a href=&quot;http://www.readynas.com&quot;&gt;website&lt;/a&gt; separate from the netgear main site points to there being some decent smart people behind the project, and possibly at Netgear for letting their acquisition do some things the right way.&lt;/p&gt;
&lt;p&gt;Despite the &lt;a href=&quot;http://www.newegg.com/Product/Product.aspx?Item=N82E16822122010&quot;&gt;RND4000&lt;/a&gt; (4 Disk desktop model without disks) being about $800, I want one just to hack on raidiator. Too bad it&amp;#8217;s not a fully open source distro.&lt;/p&gt;</description>
	<pubDate>Mon, 17 Mar 2008 21:52:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: security questions, offline banking?</title>
	<guid>http://blog.loftninjas.org/?p=160</guid>
	<link>http://blog.loftninjas.org/?p=160</link>
	<description>&lt;p&gt;It&amp;#8217;s an odd thing to say, but I&amp;#8217;ve considering -not- paying bills, banking, etc online anymore. Why? Security Questions. My bank account just made me add some, and I&amp;#8217;ve been struggling with Sallie Mae for some time, having had to reset my account twice since they&amp;#8217;ve added security questions and not before. I suppose it&amp;#8217;s not as bad as how Key Bank liked to ask my debit card and pin for security verification. If there was anything to not entire into a web site, I think a debit card pin would be near the top of the list.&lt;/p&gt;
&lt;p&gt;Worst of the security questions is they require exact answers. Gone are the days of &amp;#8220;what is your mothers maiden name&amp;#8221;, instead we have &amp;#8220;What is the street your favorite residence is on?&amp;#8221;. How the hell do I remember if it&amp;#8217;s &amp;#8220;26th&amp;#8221; or &amp;#8220;26th Ave&amp;#8221; or just &amp;#8220;26&amp;#8243; or some other combination? Name of my first teacher? Which one?&lt;/p&gt;
&lt;p&gt;The solution? I use a password as the answer to all security questions now. Where&amp;#8217;s the version of Dell IdeaStorm that applies to the web on the whole? How long is it going to take until the increase in support calls to reset accounts makes web sites realize this is the worst idea I&amp;#8217;ve seen to date? Meh.&lt;/p&gt;</description>
	<pubDate>Mon, 17 Mar 2008 02:18:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: An Exchange 2007 server on which an address list service is active cannot be found</title>
	<guid>http://blog.loftninjas.org/?p=159</guid>
	<link>http://blog.loftninjas.org/?p=159</link>
	<description>&lt;p&gt;While modifying the mailbox quotes on a user mailbox on exchange 2007 I got the error &amp;#8220;An Exchange 2007 server on which an address list service is active cannot be found&amp;#8221;. Lots of &lt;a href=&quot;http://forums.microsoft.com/TechNet/ShowPost.aspx?PostID=994013&amp;#038;SiteID=17&quot;&gt;chatter here&lt;/a&gt; but I did look at see that the &amp;#8216;Microsoft Exchange System Attendant&amp;#8217; service wasn&amp;#8217;t running, although it was set to automatic. Start -&gt; Run -&gt; services.msc and started it and replayed the actions and the changes worked afterwards. Not sure why it wasn&amp;#8217;t running.&lt;/p&gt;</description>
	<pubDate>Sat, 15 Mar 2008 07:18:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: dimdim on debian etch</title>
	<guid>http://blog.loftninjas.org/?p=157</guid>
	<link>http://blog.loftninjas.org/?p=157</link>
	<description>&lt;p&gt;&lt;span&gt;update2&lt;/span&gt;: I couldn&amp;#8217;t get it working right &lt;a href=&quot;http://loftninjas.org/blog/2008/03/dimdim-on-centos-fail.html&quot;&gt;on centos&lt;/a&gt; either, although I spent less time on it. I did verify that the OSS edition of &lt;span&gt;dimdim is &lt;a href=&quot;http://sourceforge.net/forum/message.php?msg_id=4690937&quot;&gt;crippled&lt;/a&gt;&lt;/span&gt;. Do not use dimdim.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;update:&lt;/span&gt;this install managed to get the conference server going, possibly the streaming server, but not the media server. there&amp;#8217;s good information in it though.&lt;/p&gt;
&lt;p&gt;&amp;#8216;Opensource&amp;#8217;. Heh. I think a decent community makes things much more open source than a license does, but semantics&amp;#8230;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;-worst build system ever-&lt;/span&gt; What&amp;#8217;s the point of packaging tar, sed, python with your distribution? a) you&amp;#8217;re using rpms and don&amp;#8217;t know better b) you only want to ride the OSS wave, but you don&amp;#8217;t actually want to be part of the OSS community?&lt;/p&gt;
&lt;p&gt;We&amp;#8217;ll install a ton of shit via apt rather than touch those dirty dirty rpms that come with the offline installer.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://sourceforge.net/project/showfiles.php?group_id=176809&amp;#038;package_id=206120&amp;#038;release_id=557083&quot;&gt;download&lt;/a&gt; the fancy &amp;#8220;centos&amp;#8221; offline installer.
&lt;pre&gt;unzip *zipchmod 755 *runmkdir dimdim./*run &amp;#8211;tar -xvf -Cdimdim# install lots of crap. who knows?apt-get install sun-java5-jre openoffice.org libaio1cd /usr/local ; tar -xvzf ~/dimdim/dimdimrepository/dimdim.tar.gz&lt;/pre&gt;
&lt;p&gt;Make sure nothing is running on port 80 (netstat -lnp), stop it if it is.&lt;/p&gt;
&lt;p&gt;Go to /user/local/dimdim&lt;br /&gt;&lt;span&gt;Read Linux_Readme_1.5.0.txt&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;vi server.xml, replace DIMDIM_PORT_NUMBER with 80, edit the servernames at the top&lt;br /&gt;vi wrapper.conf, replace wrapper.java.command= with /etc/alternativa/java&lt;br /&gt;# the above is a link into the above installed jvm by way of the alternatives system&lt;br /&gt;./dimdim start ; tail -f wrapper.log&lt;/p&gt;
&lt;p&gt;Seems to.. do something?&lt;/p&gt;
&lt;p&gt;edit?: ConferenceServer/apache-tomcat-5.5.17/webapps/dimdim/WEB-INF/classes/resources/streaming.properties&lt;/p&gt;
&lt;p&gt;The Conference Server appears to be in ConferenceServer/, and is the main web interface that you want running on port 80. the dimdim.properties and server.xml in /usr/local/dimdim are the most important files. ./dimdim start will start it, then you can watch wrapper.log&lt;/p&gt;
&lt;p&gt;The Streaming Server is in StreamingServerCluster/server1. There&amp;#8217;s Information about duplicating it in Linux_Readme_1.5.0.txt. StreamingServerCluster/server1/conf/red5.properties contains it&amp;#8217;s port configurations, this is what runs on 1935/30001. I don&amp;#8217;t really know what the http.port is supposed to point to.&lt;/p&gt;
&lt;p&gt;The Media Server&amp;#8230; Who knows? I think this is what dimdim.dmsServerAddress in dimdim.properties is supposed to point to. Before I set this, I could connect to dimdim but portions didn&amp;#8217;t work. After I set this, the site would lock up just after the browser checks and future attempts to log in reported that the server was full of meetings or something like that.&lt;/p&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 14 Mar 2008 03:08:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: automating vmware guest deployment with capistrano</title>
	<guid>http://blog.loftninjas.org/?p=156</guid>
	<link>http://blog.loftninjas.org/?p=156</link>
	<description>&lt;p&gt;This will get some more work, but I didn&amp;#8217;t find much out there so this is a good starting point for someone&lt;/p&gt;
&lt;p&gt;It appears straightforward enough, but feel free to ask any questions. You&amp;#8217;ll need the rest of your operations platform pre-built, such as existing vmware hosts, pxe booting a debian install, etc.&lt;/p&gt;
&lt;p&gt;I don&amp;#8217;t think blogger is killing anything important. Some day I&amp;#8217;ll setup an actual repository instead of using blogger for this crap. On the new server, next vacation. &lt;img src=&quot;http://blog.loftninjas.org/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;pre&gt;# Capistrano recipe to build a vmware guest# Bryan McLellan &amp;#8212; bryanm@widemile.com

require &amp;#8216;erb&amp;#8217;

logger.info(&amp;#8221;Vmware guest creation script logs in as root&amp;#8221;)set(:user, &amp;#8220;root&amp;#8221;)

vmxtemplate = %q{#!/usr/bin/vmwareconfig.version = &amp;#8220;8&amp;#8243;virtualHW.version = &amp;#8220;4&amp;#8243;scsi0.present = &amp;#8220;TRUE&amp;#8221;scsi0.virtualDev = &amp;#8220;%=disktype %&gt;&amp;#8220;scsi0:0.present = &amp;#8220;TRUE&amp;#8221;scsi0:0.redo = &amp;#8220;&amp;#8221;priority.grabbed = &amp;#8220;normal&amp;#8221;priority.ungrabbed = &amp;#8220;normal&amp;#8221;guestOS = &amp;#8220;other26xlinux-64&amp;#8243;ide1:0.startConnected = &amp;#8220;FALSE&amp;#8221;floppy0.startConnected = &amp;#8220;FALSE&amp;#8221;

displayName = &amp;#8220;%=fqdn %&gt;&amp;#8220;scsi0:0.fileName = &amp;#8220;%=fqdn %&gt;.vmdk&amp;#8221;memsize = &amp;#8220;%=memory %&gt;&amp;#8220;

Ethernet0.present = &amp;#8220;TRUE&amp;#8221;Ethernet0.virtualDev = &amp;#8220;e1000&amp;#8243;ethernet0.addressType = &amp;#8220;generated&amp;#8221;ethernet0.generatedAddressOffset = &amp;#8220;0&amp;#8243;Ethernet0.connectionType = &amp;#8220;custom&amp;#8221;Ethernet0.vnet = &amp;#8220;%=eth0 %&gt;&amp;#8220;

Ethernet1.present = &amp;#8220;TRUE&amp;#8221;Ethernet1.virtualDev = &amp;#8220;e1000&amp;#8243;ethernet1.addressType = &amp;#8220;generated&amp;#8221;ethernet1.generatedAddressOffset = &amp;#8220;10&amp;#8243;Ethernet1.connectionType = &amp;#8220;custom&amp;#8221;Ethernet1.vnet = &amp;#8220;%=eth1 %&gt;&amp;#8220;

tools.syncTime = &amp;#8220;TRUE&amp;#8221;}

pxetemplate = %q{DEFAULT etch_i386_install_autoTIMEOUT 100

LABEL etch_i386_install_auto        kernel debian/etch/i386/linux        append vga=normal initrd=debian/etch/i386/initrd.gz preseed/url=http://debian.example.org/preseed/autoserver-etch.cfg debian-installer/locale=en_US console-keymaps-at/keymap=us hostname=%=hostname %&gt; domain=%=domain %&gt; interface=eth0 &amp;#8211;}

def lastdhcpip(ourmac)  curLeaseIp = nil  curLeaseMac = nil  lastip = nil

  f = File.open(&amp;#8221;/var/lib/dhcp/dhcpd.leases&amp;#8221;)  f.each do |line|    case line    when /lease (.*) {/      curLeaseIp = $1    when /hardware ethernet (.*);/      curLeaseMac = $1      if ourmac == curLeaseMac        lastip = curLeaseIp      end    end  end

  f.close  return lastipend

set(:disktype, &amp;#8220;lsilogic&amp;#8221;)set(:disksize, &amp;#8220;3Gb&amp;#8221;)set(:memory, &amp;#8220;768&amp;#8243;)

#set(:hostname, fqdn.match(/^[0-9A-Za-z-]*/))#puts(&amp;#8221;hostname: #{hostname}&amp;#8221;)

task :build, :roles =&gt; :host  do  set(:host) do    Capistrano::CLI.ui.ask &amp;#8220;vmware hostname: &amp;#8220;  end unless exists?(:host)

  role :host, host

  set(:hostname) do    Capistrano::CLI.ui.ask &amp;#8220;guest hostname (vm16-dev-ots04): &amp;#8220;  end unless exists?(:hostname)

  set(:network) do    Capistrano::CLI.ui.ask &amp;#8220;guest network (prod/corp/test): &amp;#8220;  end unless exists?(:network)

  case network    when /prod/      set(:fqdn, &amp;#8220;#{hostname}.prod.example.org&amp;#8221;)      set(:domain, &amp;#8220;prod.example.org&amp;#8221;)      set(:eth0, &amp;#8220;/dev/vmnet4&amp;#8243;)      set(:eth1, &amp;#8220;/dev/vmnet11&amp;#8243;)    when /corp/      set(:fqdn, &amp;#8220;#{hostname}.corp.example.org&amp;#8221;)      set(:domain, &amp;#8220;corp.example.org&amp;#8221;)      set(:eth0, &amp;#8220;/dev/vmnet0&amp;#8243;)      set(:eth1, &amp;#8220;/dev/vmnet0&amp;#8243;)    when /test/      set(:fqdn, &amp;#8220;#{hostname}.test.example.org&amp;#8221;)      set(:domain, &amp;#8220;test.example.org&amp;#8221;)     set(:eth0, &amp;#8220;/dev/vmnet2&amp;#8243;)      set(:eth1, &amp;#8220;/dev/vmnet14&amp;#8243;)  end  puts(&amp;#8221;fqdn: #{fqdn}&amp;#8221;)

  result = ERB.new(vmxtemplate).result(binding)

  run(&amp;#8221;mkdir /srv/vmware/#{fqdn}&amp;#8221;)  logger.info(&amp;#8221;Building vmx configuration file&amp;#8221;)  put(result, &amp;#8220;/srv/vmware/#{fqdn}/#{fqdn}.vmx&amp;#8221;, :mode =&gt; 0755)

  logger.info(&amp;#8221;Creating virtual disk&amp;#8221;)  run(&amp;#8221;/usr/bin/vmware-vdiskmanager -c -a #{disktype} -s #{disksize} -t 2 /srv/vmware/#{fqdn}/#{fqdn}.vmdk&amp;#8221;)

  # start and stop vm to generate uuid and MACs  logger.info(&amp;#8221;starting VM&amp;#8221;)  #run(&amp;#8221;/usr/bin/vmware-cmd -s unregister /srv/vmware/#{fqdn}/#{fqdn}.vmx&amp;#8221;)  run(&amp;#8221;/usr/bin/vmware-cmd -s register /srv/vmware/#{fqdn}/#{fqdn}.vmx&amp;#8221;)  run(&amp;#8221;/usr/bin/vmware-cmd /srv/vmware/#{fqdn}/#{fqdn}.vmx start&amp;#8221;)  sleep 1  run(&amp;#8221;/usr/bin/vmware-cmd /srv/vmware/#{fqdn}/#{fqdn}.vmx stop hard&amp;#8221;)  macaddr0 = nil  run(&amp;#8221;cat /srv/vmware/#{fqdn}/#{fqdn}.vmx&amp;#8221;) do |ch, stream, data|    case data    when /ethernet0.generatedAddress = &amp;#8220;(.+)&amp;#8221;/      macaddr0 = $1    end  end  macaddr0dash = macaddr0.gsub(/:/, &amp;#8220;-&amp;#8221;);

  pxeConfig = File.new(&amp;#8221;/srv/tftp/pxelinux.cfg/01-#{macaddr0dash}&amp;#8221;, &amp;#8220;w&amp;#8221;, 0644)  result = ERB.new(pxetemplate).result(binding)  pxeConfig.puts(result)  pxeConfig.close

  # Box gets a different ip sometimes on install than on first boot. annoying  run(&amp;#8221;/usr/bin/vmware-cmd /srv/vmware/#{fqdn}/#{fqdn}.vmx start&amp;#8221;)  logger.info(&amp;#8221;Sleeping 30 seconds for network startup&amp;#8221;)  sleep 30  ipaddr0 = lastdhcpip(macaddr0)  logger.info(&amp;#8221;host #{fqdn} is now building and we be available at #{ipaddr0}&amp;#8221;)  File.delete(&amp;#8221;/srv/tftp/pxelinux.cfg/01-#{macaddr0dash}&amp;#8221;)end&lt;/pre&gt;</description>
	<pubDate>Fri, 14 Mar 2008 01:46:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: parsing dhcpd.leases with ruby</title>
	<guid>http://blog.loftninjas.org/?p=155</guid>
	<link>http://blog.loftninjas.org/?p=155</link>
	<description>&lt;p&gt;Needed to get the IP address of a certain mac from the dhcpd leases file, wrote this, seems to work, albeit short. IANAP, YMMV. All of my programming comes from looking at examples, so any faults of mine are actually someone else&amp;#8217;s. Blame fR and niblr!
&lt;pre&gt;#!/usr/bin/ruby -w# getdhcpip.rb Bryan McLellan &amp;#8212; bryanm@widemile.com# parse through dhcpd.leases in search of a mac to get it&amp;#8217;s current ip# assume not malformed. remember that this is a log file and the most recent (bottom) is the most accurate

def lastdhcpip(ourmac)  curLeaseIp = nil  curLeaseMac = nil  lastip = nil

  f = File.open(&amp;#8221;/var/lib/dhcp/dhcpd.leases&amp;#8221;)  f.each do |line|    case line    when /lease (.*) {/      curLeaseIp = $1    when /hardware ethernet (.*);/      curLeaseMac = $1      if ourmac == curLeaseMac        lastip = curLeaseIp      end    end  end

  f.close  return lastipend

if ARGV[0]  puts lastdhcpip(ARGV[0])else  puts &amp;#8220;Requires MAC address as argument: getdhcpip.rb 00:00:00:00:00:00&amp;#8243;end&lt;/pre&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 13 Mar 2008 23:42:00 +0000</pubDate>
</item>
<item>
	<title>Bryan McLellan: Stopping vmware guests with vmware-cmd</title>
	<guid>http://blog.loftninjas.org/?p=154</guid>
	<link>http://blog.loftninjas.org/?p=154</link>
	<description>&lt;p&gt;Lots of talk out there about &amp;#8220;VMControl error -8: Invalid operation for virtual machine&amp;#8217;s current state: Make sure the VMware Server Tools are running&amp;#8221; when trying to use &amp;#8220;vmware-cmd  stop&amp;#8221; to stop a VM. Stop by default tries to do a soft stop, where it asks the guest to shut down.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m scripting a start followed by a stop so vmware will generate new mac addresses for a vmx, and thie works &amp;#8220;vmware-cmd  stop hard&amp;#8221;. &amp;#8216;hard&amp;#8217;, &amp;#8217;soft&amp;#8217; and &amp;#8216;trysoft&amp;#8217; are listed &lt;a href=&quot;http://www.vmware.com/support/esx2/doc/vmware-cmd.html#1012418&quot;&gt;here&lt;/a&gt; as options.&lt;/p&gt;
&lt;p&gt;Theres information &lt;a href=&quot;http://www.vmware.com/support/esx2/doc/esx20admin_netwk2.html#1000550&quot;&gt;here&lt;/a&gt; about how MACs are generated by the way. Removing mac address lines from the vmx file will cause them (and the uuid if it&amp;#8217;s removed to) to be generated on startup and added to the vmx file.&lt;/p&gt;</description>
	<pubDate>Wed, 12 Mar 2008 21:53:00 +0000</pubDate>
</item>
<item>
	<title>Matt Westervelt</title>
	<guid>http://seattlewireless.net/~mattw/2008/03/11/438/</guid>
	<link>http://feeds.feedburner.com/~r/mattw/~3/261536514/</link>
	<description>&lt;p&gt;I&amp;#8217;ve started keeping track of the randomness that is my commute on &lt;a href=&quot;http://www.8blockwalk.com/&quot;&gt;8 BLOCK WALK&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/~a/mattw?a=mNkjGI&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~a/mattw?i=mNkjGI&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/mattw?a=X3vyR1f&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/mattw?i=X3vyR1f&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/mattw/~4/261536514&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Wed, 12 Mar