<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE rss [<!ENTITY % HTMLlat1 PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent">]>
<rss version="2.0" xml:base="http://randomfoo.net/code" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>random($code) - GPL</title>
 <link>http://randomfoo.net/code/taxonomy/term/1/0</link>
 <description>&lt;a href=&quot;http://www.gnu.org/copyleft/gpl.html&quot;&gt;GNU Public License v2&lt;/a&gt;</description>
 <language>en</language>
<item>
 <title>GNU Public License v2.0</title>
 <link>http://randomfoo.net/code/license/GPL</link>
 <description>&lt;p&gt;See also: &lt;a href=&quot;http://www.gnu.org/copyleft/gpl.html&quot;&gt;http://www.gnu.org/copyleft/gpl.html&lt;/a&gt;&lt;/p&gt;

&lt;pre&gt;
		    GNU GENERAL PUBLIC LICENSE
		       Version 2, June 1991

 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

			    Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
&lt;p&gt;&lt;a href=&quot;http://randomfoo.net/code/license/GPL&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://randomfoo.net/code/license/GPL#comment</comments>
 <category domain="http://randomfoo.net/code/gpl">GPL</category>
 <pubDate>Sun, 17 Oct 2004 23:42:22 -0700</pubDate>
 <dc:creator>lhl</dc:creator>
 <guid isPermaLink="false">6 at http://randomfoo.net/code</guid>
</item>
<item>
 <title>flickrer - automatic Flickr uploading</title>
 <link>http://randomfoo.net/code/node/17</link>
 <description>&lt;p&gt;Here&#039;s a script I&#039;ve been using for the past couple of weeks since I started really using Flickr.&lt;/p&gt;

&lt;p&gt;Requires:&lt;/p&gt;
&lt;pre&gt;File::Basename
File::Copy
LWP::UserAgent
Flickr::Upload&lt;/pre&gt;

&lt;p&gt;Should be an easy breezy install w/ CPAN (&lt;code&gt;perl -MPCAN -e shell&lt;/code&gt;)&lt;/p&gt;

&lt;p&gt;flickrer first checks that it isn&#039;t already running via a process search, then looks the files from the &lt;code&gt;dropbox&lt;/code&gt; and locks (via . rename) while uploading.  This makes it pretty safe to run at regular intervals via cron.  Once it finishes it moves the file to the sentbox.  I run sips, OS X&#039;s built in image processing utility to reduce the size of the images, as even w/ a Pro account (1GB/mo), u/ling full photo files would be quickly pass quota.&lt;/p&gt;</description>
 <comments>http://randomfoo.net/code/node/17#comment</comments>
 <category domain="http://randomfoo.net/code/gpl">GPL</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/21">Major</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/39">Perl</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/34">Web</category>
 <enclosure url="http://randomfoo.net/code/files/flickrer" length="2557" type="application/octet-stream" />
 <pubDate>Thu, 02 Dec 2004 16:25:28 -0800</pubDate>
 <dc:creator>lhl</dc:creator>
 <guid isPermaLink="false">17 at http://randomfoo.net/code</guid>
</item>
<item>
 <title>record - a simple recording script for your Mac</title>
 <link>http://randomfoo.net/code/record</link>
 <description>&lt;p&gt;Written originally for OSCON 2002, this is a simple record script that I wrote for my Mac (and my home-built headphone-embedded binaural microphone).  I recently updated this to make sure that it still works (it does), although honestly, if you have an iPod, I recommend picking up a &lt;a href=&quot;http://www.griffintechnology.com/products/italk/&quot;&gt;Griffin iTalk&lt;/a&gt;, it&#039;s great.&lt;/p&gt;

&lt;p&gt;Still, this is a handy script to have in your ~bin just in case.&lt;/p&gt;

&lt;p&gt;I recommend using &lt;a href=&quot;http://fink.sourceforge.net/&quot;&gt;Fink&lt;/a&gt; to install esdrec and lame:&lt;/p&gt;

&lt;pre&gt;sudo fink install esound
sudo fink install lame&lt;/pre&gt;

&lt;p&gt;TODO: switch modify encoding paramaters?&lt;/p&gt;</description>
 <comments>http://randomfoo.net/code/record#comment</comments>
 <category domain="http://randomfoo.net/code/gpl">GPL</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/21">Major</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/55">OS X</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/40">Shell</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/35">Unix</category>
 <enclosure url="http://randomfoo.net/code/files/record" length="611" type="application/octet-stream" />
 <pubDate>Thu, 21 Oct 2004 15:59:10 -0700</pubDate>
 <dc:creator>lhl</dc:creator>
 <guid isPermaLink="false">15 at http://randomfoo.net/code</guid>
</item>
<item>
 <title>CRM114 Mail.app Training Scripts</title>
 <link>http://randomfoo.net/code/Mail.app/CRM114 Smart Training___shift-s.scpt</link>
 <description>&lt;p&gt;At the beginning of this year, I knew I needed a new Spam filtering solution and switched to a &lt;a href=&quot;http://www.qcc.ca/~charlesc/software/getmail-4/&quot;&gt;getmail&lt;/a&gt; (much better than fetchmail&lt;/a&gt;) and more robust Procmail setup, running &lt;a href=&quot;http://crm114.sourceforge.net/&quot;&gt;CRM114&lt;/a&gt;, an advanced learning filter based on alien space technology (well, more accurately, math beyond my ken).&lt;/p&gt;

&lt;p&gt;Full setup information belongs in the scope of another site, but I also wrote some AppleScripts to make training much easier w/ Apple&#039;s Mail.app&lt;/p&gt;

&lt;p&gt;I&#039;ve included the earlier manual training scripts, as well as the subsequent &#039;smart&#039; training script that I continue to use today.  I suspect I&#039;ll continue using this until I switch to a fully automated, web/db-based &lt;acronym title=&quot;Train Until No Errors&quot;&gt;TUNE&lt;/acronym&gt; method.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://randomfoo.net/code/Mail.app/CRM114 Smart Training___shift-s.scpt&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://randomfoo.net/code/Mail.app/CRM114 Smart Training___shift-s.scpt#comment</comments>
 <category domain="http://randomfoo.net/code/taxonomy/term/53">AppleScript</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/57">CRM114</category>
 <category domain="http://randomfoo.net/code/gpl">GPL</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/54">Mail</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/56">Mail.app</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/21">Major</category>
 <enclosure url="http://randomfoo.net/code/files/CRM114 Train Ham___shift-h.scpt" length="2212" type="application/octet-stream" />
 <pubDate>Wed, 20 Oct 2004 21:21:26 -0700</pubDate>
 <dc:creator>lhl</dc:creator>
 <guid isPermaLink="false">14 at http://randomfoo.net/code</guid>
</item>
<item>
 <title>include.py - Trac Macro</title>
 <link>http://randomfoo.net/code/trac/include.py</link>
 <description>&lt;p&gt;Inserts the output of an external URL.&lt;/p&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;pre&gt;[[include(http://www.example.com/)]]&lt;/pre&gt;

&lt;p&gt;Ver: 0.7.1+&lt;/p&gt;
</description>
 <comments>http://randomfoo.net/code/trac/include.py#comment</comments>
 <category domain="http://randomfoo.net/code/gpl">GPL</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/42">Python</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/52">Trac</category>
 <enclosure url="http://randomfoo.net/code/files/include.py.txt" length="228" type="text/plain" />
 <pubDate>Wed, 20 Oct 2004 00:03:04 -0700</pubDate>
 <dc:creator>lhl</dc:creator>
 <guid isPermaLink="false">11 at http://randomfoo.net/code</guid>
</item>
<item>
 <title>hiptop.pl - Sidekick Address Exporter 0.2.1</title>
 <link>http://randomfoo.net/code/Sidekick/hiptop.pl</link>
 <description>&lt;p&gt;Written last winter, this is the Mechanize script I used to dump my T-Mobile Sidekick&#039;s (Danger Hiptop) Address Book into an iCal compatible format.&lt;/p&gt;
&lt;p&gt;It&#039;s quite unfinished, and possibly not working anymore (if the site&#039;s changed).  But in case there&#039;s &lt;em &gt;still&lt;/em&gt; (for shame, Danger, for shame) not any syncing software available, this is a good starting point.&lt;/p&gt;
&lt;p&gt;Originally posted on &lt;a href=&quot;http://www.hiptop.com/forums/viewtopic.php?t=11290&quot;&gt;the Danger Forums here&lt;/a&gt;.&lt;/p&gt;
</description>
 <comments>http://randomfoo.net/code/Sidekick/hiptop.pl#comment</comments>
 <category domain="http://randomfoo.net/code/gpl">GPL</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/21">Major</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/39">Perl</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/35">Unix</category>
 <enclosure url="http://randomfoo.net/code/files/hiptop.pl.txt" length="12393" type="text/plain" />
 <pubDate>Tue, 19 Oct 2004 21:15:52 -0700</pubDate>
 <dc:creator>lhl</dc:creator>
 <guid isPermaLink="false">10 at http://randomfoo.net/code</guid>
</item>
<item>
 <title>SkipList.js - A JS Skip List Class</title>
 <link>http://randomfoo.net/code/node/9</link>
 <description>&lt;p&gt;Now, you might be saying to yourself, &quot;Ahh, a skip list, one of my favorite data structures!&quot;  However, much more likely, you&#039;re probably wondering WTF a &lt;a href=&quot;http://www.nist.gov/dads/HTML/skiplist.html&quot;&gt;skip list&lt;/a&gt; (NIST reference) is.&lt;/p&gt;

&lt;p&gt;A skip list is a &lt;q&gt;randomized variant of an ordrered linked list with additional, parallel lists.&lt;/q&gt;  This is a probabilistic alternative to balanced trees that in general practice gives O(log n) searching w/ easy inserts and deletions (no tree reshuffling).&lt;/p&gt;

&lt;p&gt;This OOP JavaScript implementation was created almost entirely from Pugh&#039;s original publication, &lt;a href=&quot;http://citeseer.ist.psu.edu/521847.html&quot;&gt;Skip Lists: A Probabilistic Alternative to Balanced Trees&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://randomfoo.net/code/node/9&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://randomfoo.net/code/node/9#comment</comments>
 <category domain="http://randomfoo.net/code/gpl">GPL</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/47">JavaScript</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/21">Major</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/34">Web</category>
 <enclosure url="http://randomfoo.net/code/files/SkipList.js" length="5512" type="application/x-javascript" />
 <pubDate>Mon, 18 Oct 2004 19:29:48 -0700</pubDate>
 <dc:creator>lhl</dc:creator>
 <guid isPermaLink="false">9 at http://randomfoo.net/code</guid>
</item>
<item>
 <title>get_bw.pl v1.0</title>
 <link>http://randomfoo.net/code/node/5</link>
 <description>&lt;p&gt;This is the first public release of a little script I wrote the other month for those using The Planet or ServerMatrix as their ISP that logs into the Orbit system and outputs bandwidth used to the console, and their router-based RRD graph to a pre-determined location.&lt;/p&gt;

&lt;p&gt;I have it running on the cron (piping output to a text file) and then pick it up locally w/ &lt;a href=&quot;http://projects.tynsoe.org/en/geektool/&quot;&gt;GeekTool&lt;/a&gt; on my desktop.&lt;/p&gt;

&lt;blockquote&gt;
&lt;pre&gt;muffins bw:
509.3GB, 42.4%&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;p&gt;Code licensed under the GPL.&lt;/p&gt;</description>
 <comments>http://randomfoo.net/code/node/5#comment</comments>
 <category domain="http://randomfoo.net/code/taxonomy/term/32">Bandwidth</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/30">get_bw.pl</category>
 <category domain="http://randomfoo.net/code/gpl">GPL</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/21">Major</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/31">Monitoring</category>
 <category domain="http://randomfoo.net/code/taxonomy/term/36">ServerMatrix</category>
 <enclosure url="http://randomfoo.net/code/files/get_bw.pl.txt" length="1283" type="text/plain" />
 <pubDate>Sun, 17 Oct 2004 22:41:37 -0700</pubDate>
 <dc:creator>lhl</dc:creator>
 <guid isPermaLink="false">5 at http://randomfoo.net/code</guid>
</item>
</channel>
</rss>
