<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-33172031</id><updated>2012-01-05T20:41:41.896-05:00</updated><category term='images'/><category term='simplicity'/><category term='proxy'/><category term='nextgadget'/><category term='comedy'/><category term='ttytter'/><category term='free'/><category term='comics'/><category term='perl'/><category term='efficiency'/><category term='grandcentral'/><category term='ads'/><category term='status'/><category term='fonts'/><category term='TAL'/><category term='os x'/><category term='films'/><category term='privacy'/><category term='event'/><category term='art'/><category term='hitchhiker&apos;s'/><category term='this american life'/><category term='phone'/><category term='star wars'/><category term='fluorescent'/><category term='iphone'/><category term='pda'/><category term='analysis'/><category term='script'/><category term='logic puzzles'/><category term='hardest'/><category term='keystrokes'/><category term='review'/><category term='work'/><category term='changes'/><category term='science'/><category term='presentations'/><category term='math'/><category term='google voice'/><category term='batman'/><category term='lego'/><category term='feed'/><category term='diy'/><category term='ebooks'/><category term='iron-on'/><category term='surliness'/><category term='Bayesian'/><category term='tracking'/><category term='nietzsche'/><category term='ian shoales'/><category term='awesome'/><category term='music'/><category term='bigger'/><category term='business cards'/><category term='commentary'/><category term='game'/><category term='book'/><category term='wap'/><category term='kindle'/><category term='watchmen'/><category term='frugality'/><category term='text'/><category term='fake'/><category term='geek-out'/><category term='words'/><category term='syncing'/><category term='opinion'/><category term='consuming'/><category term='twitter'/><category term='history'/><category term='plucker'/><category term='palm'/><category term='search'/><category term='command-line'/><category term='dropbox'/><category term='neon'/><category term='mp3'/><category term='colors'/><category term='spoilers'/><category term='bookmarking'/><category term='why'/><category term='automation'/><category term='ipod touch'/><category term='google'/><category term='filtering'/><title type='text'>Surly You're Joking, Mr. Teabag</title><subtitle type='html'>A blog for carrying on an undertaking of great advantage, but nobody to know what it is.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>47</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-33172031.post-2439756058208613923</id><published>2011-03-17T01:02:00.001-04:00</published><updated>2011-03-17T01:02:00.236-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='command-line'/><category scheme='http://www.blogger.com/atom/ns#' term='os x'/><category scheme='http://www.blogger.com/atom/ns#' term='ttytter'/><category scheme='http://www.blogger.com/atom/ns#' term='twitter'/><title type='text'>TTYtter: a turbo-charged console Twitter client</title><content type='html'>I finally got around to updating to a real Twitter client again. Twitter now requires that applications use OAuth authentication instead of a standard username/password login, rendering my old command-line Twitter programs obsolete.&lt;br /&gt;&lt;br /&gt;But then I found the awesome Perl-based &lt;a href="http://www.floodgap.com/software/ttytter/#notify"&gt;TTYtter&lt;/a&gt;. First, unlike a lot of Perl-based applications, you don't have to recursively install lots of other modules to get TTYtter to work. I just installed the single file Perl script, and it worked. The OAuth set-up is clearly described and easy. The benefits of this program are huge! It supports the new-fangled retweets, favoriting, direct-messaging, tracking arbitrary keywords, and searching (I visit search.twitter.com a lot less often). It can retrieve the entire thread for any given Twitter post. If your version of Lynx or cURL supports SSL, TTYtter can use SSL encryption on your Twitter traffic. &lt;br /&gt;&lt;br /&gt;There is one Perl module that I would recommend you install though...  &lt;a href="http://search.cpan.org/~ckaiser/Term-ReadLine-TTYtter-1.1/"&gt;Term::ReadLine::TTYtter&lt;/a&gt; fixes the readline behavior AND gives a cool dynamically-updating character count for what you have typed at the prompt &lt;br /&gt;&lt;br /&gt;TTYtter supports Growl notifications, so you can set it up to inform you when you get a direct message or just when there is a new update of any kind. It is highly configurable.&lt;br /&gt;&lt;br /&gt;Mac users: Make a file called ".ttytterrc" in your home directory containing just this one line:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;urlopen=open -g %U&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;and then when you use the /url command, TTYtter will open the corresponding URL in your default browser. The "-g" switch opens the page in the background, keeping your Terminal window in the foreground.  &lt;br /&gt;&lt;br /&gt;One downside to the high degree of configurability is that there is a lot to learn to fully exploit the powers of TTYtter. (I run the program with the following set of command-line switches: &lt;code&gt;ttytter -ssl -readline -notifytype=growl -notifies=dm,reply -notifyquiet -timestamp -filter="/spn\.tw/||/\#FF/"&lt;/code&gt;.) But the documentation is well-written, and what you get is worth the learning curve.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-2439756058208613923?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/2439756058208613923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/2439756058208613923'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2011/03/ttytter-turbo-charged-console-twitter.html' title='TTYtter: a turbo-charged console Twitter client'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-5803121730027763212</id><published>2010-07-02T00:27:00.004-04:00</published><updated>2010-12-04T22:25:40.130-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='analysis'/><category scheme='http://www.blogger.com/atom/ns#' term='history'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>A history of Google from one user's perspective</title><content type='html'>I recently thought about some of the ways that Google has revolutionized the Internet. As I started doing a little research, I found that there were more services that they had introduced, which were important at the time and which I still use today, which I was taking for granted. A lot of these memories were triggered by &lt;a href="http://www.google.com/corporate/history.html"&gt;Google's own list of milestones&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1997: Search (Google search actually started in ~1996, but it wasn't until about 1997 that I discovered it.) Prior to Google, searching the Internet was done through Alta Vista which was crappy at finding what I wanted. I spent hours tweaking Boolean expressions, trying to get it to find the right thing. Google easily supplanted it. &lt;br /&gt;&lt;br /&gt;2000: An important component in the cleanness and niceness of Google (Search) was the lack of annoying ads which threatened to overtake the rest of the Internet. Google's introduction of AdWords guaranteed a continued peaceful search experience while allowing Google to make money.&lt;br /&gt;&lt;br /&gt;2001: Google saves the Usenet archives and makes them way more accessible as Google Groups (which name later came to mean primarily their mailing list/web forum offering, displacing Yahoo(!) Groups which is serviceable but a bit crappier and ad-ridden).&lt;br /&gt;&lt;br /&gt;2002: Google News - A better interface for finding news articles (both recent and older stuff) without having to use some specific source or pay for the privilege. &lt;br /&gt;&lt;br /&gt;2002: Froogle (now known by the less clever name "Google Shopping"). While never quite ideal, the interface made for a far more pleasant way of finding good prices for purchases on the Internet. &lt;br /&gt;&lt;br /&gt;2003: Google acquires Blogger - the free, blogging service which brought you this post.&lt;br /&gt;&lt;br /&gt;2004: Google Local is introduced and eventually surpasses other Yellow Pages services in usefulness and intuitiveness.&lt;br /&gt;&lt;br /&gt;2004: Gmail revolutionizes web mail which had previously just been a crappy e-mail solution for people without access to *real* e-mail (back when men were men, women were women, and e-mail was text). &lt;br /&gt;&lt;br /&gt;2004: Google Scholar: Google indexes academic articles, making them way easier to find. What was it like before Google Scholar? Hell.&lt;br /&gt;&lt;br /&gt;2005: Google Maps revolutionizes online maps, providing mouse control over the map for zooming and shifting, bigger and better maps, satellite views, and increasing features and usability. Mapquest was previously my default source for online maps (though I would sometimes use MapBlast for its wonderfully sparse LineDrive driving directions). &lt;br /&gt;&lt;br /&gt;2006: Google buys YouTube. At the time, I did not like this because YouTube's interface and video resolution were much worse than available on Google. But YouTube has gradually improved under Google.&lt;br /&gt;&lt;br /&gt;2006: Google launches Google Docs &amp; Spreadsheets. While I don't use these for my own purposes, people send me information formatted in such forms frequently enough that having Gmail automatically open them in a usable online viewer makes my life easier. &lt;br /&gt;&lt;br /&gt;2007: Google Street View makes it possibly to become familiar with an area and find specific businesses and buildings without ever having to go there.&lt;br /&gt;&lt;br /&gt;2007: GOOG-411 allows you to call up 800-GOOG-411 and get directory and business information by speaking location and desired business/location information. I like using it. It's good for when I am trying to accomplish something under a deadline (and don't have time to search from my phone by typing in search terms). [GOOG-411 is unfortunately being done away with in 2010. Microsoft bought TellMe and made BING-411, which is reputedly a good alternative.]&lt;br /&gt;&lt;br /&gt;2009: Google Voice: Much of the credit is due to Grand Central, but under Google, this finally got text messaging capabilities and voice mail transcriptions and is just now way better. I don't know whether this will gain wide acceptance or use in the near term, but I believe that in ten years, the more sophisticated phone services which Google Voice allows (ringing many phones from one number, filtering incoming calls to specific phones or voice mail based on who is calling, etc.) will be standard telephone features.&lt;br /&gt;&lt;br /&gt;2010: I expect that I will soon appreciate the power of the just released &lt;a href="http://code.google.com/p/googlecl"&gt;GoogleCL&lt;/a&gt;. It makes it possible to access a few Google services from the command line. Currently this is limited to Blogger, Calendar, Contacts, Docs, Picasa, and YouTube. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;What this analysis confirms is that (with the exception of Google Voice) no single product that Google has released since 2005 has had the same value for me as Google Maps or Gmail. I'm not sure if this is because Google's new services have not been as vital or simply because I have been adopting fewer new services in the past few years.&lt;a name="back"&gt;&lt;a href="#footnote"&gt;*&lt;/a&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Google Print (started in 2003 and later becoming Google Books) and Google Reader (introduced in 2005) are two obvious contenders that I did not list above because I don't feel that I use them enough that they have impacted my life. Google Translate, I use frequently, but I never remember it surpassing Babelfish. It just became my default translation service somehow. Also Google Talk (2005), Google Calendar (2006), Android (2007), Chrome - Google's web browser (2008 - Mac version, 2010), and Google Wave (2009) have not found their way into my life yet. But even if they never do, the many little continuing improvements to Google Search and Gmail and other products, combined with Google still doing things the way that I would hope they would much of the time (such as offering command-line access to a user's Google data as mentioned above, as well as Google's new encrypted search engine: &lt;a href="https://encrypted.google.com/"&gt;https://encrypted.google.com/&lt;/a&gt;) maintain Google's position in my esteem. &lt;br /&gt;&lt;br /&gt;&lt;hr width="75%"&gt;&lt;br /&gt;&lt;a name="footnote"&gt;&lt;/a&gt;* A third possibility: There is a finite set of web sites that a typical user is going to use enough to be able to recall them and consider them useful. The longer I am on the Internet, the more of those slots are taken up by things that have been around for ~10 years.  In the interest of shaking things up a little, let me recommend a new search engine I found when following up on Google's encrypted search:&lt;br /&gt;&lt;br /&gt;The criticism of Google's encrypted search is that Google still retains the search records, so privacy is improved but could be better. An alternative is a new search engine called &lt;a href="http://dukgo.com"&gt;Duck Duck Go&lt;/a&gt;. It offers &lt;a href="https://duckduckgo.com/"&gt;encrypted search&lt;/a&gt; AND complete privacy by not logging your IP address or browser information or retaining individual search histories of any type. It supports keyboard shortcuts, YubNub-like searching of other sites ([!g search terms] goes directly to the Google search results for those terms) and easily customizable results pages. It is worth checking out.&lt;a href="#back"&gt;(back to footnote marker)&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-5803121730027763212?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/5803121730027763212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=5803121730027763212' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/5803121730027763212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/5803121730027763212'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2010/07/history-of-google-from-one-users.html' title='A history of Google from one user&apos;s perspective'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-1492959090753359762</id><published>2010-05-30T08:37:00.002-04:00</published><updated>2010-10-06T02:58:46.236-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='command-line'/><category scheme='http://www.blogger.com/atom/ns#' term='filtering'/><category scheme='http://www.blogger.com/atom/ns#' term='Bayesian'/><category scheme='http://www.blogger.com/atom/ns#' term='twitter'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>Command-line Bayesian Twitter reader with ad-blocking</title><content type='html'>UPDATE: The method below and the correspond script recently stopped working since Twitter changed their login method to "OAuth". The actual necessary changes will be a) switching to an updated Twitter client like &lt;a href="http://www.floodgap.com/software/ttytter/"&gt;TTYtter&lt;/a&gt; (which looks pretty awesome) and b) maybe revising the parsing of the Twitter client output. I've just started working on this and don't know when or if I will release updates. The script still works for Facebook updates, as is.&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;Following up on my initial post on &lt;a href="http://surlyteabag.blogspot.com/2009/05/general-purpose-command-line-bayesian.html"&gt;command-line Bayesian filtering&lt;/a&gt; and the &lt;a href="http://surlyteabag.blogspot.com/2009/08/upgrading-bayesian-filtered-status.html"&gt;subsequent update&lt;/a&gt;, I have now generalized the script to incorporate not just Facebook status updates but Twitter posts as well. &lt;br /&gt;&lt;br /&gt;I've been refining this script over the last year. In addition to providing a convenient way of incorporating Bayesian filtering in the tracking of posts from Twitter and Facebook, it now has the ability to review a particular Twitter user's posting history (via the "rewind" option) and to whitelist or blacklist arbitrary terms, which can be useful in permanently filtering out undesirable subjects or ads. And it tries to auto-expand those annoying shortened URLs and display the actual title of the web page being referenced.&lt;br /&gt;&lt;br /&gt;This script requires that your system has the following programs: links (terminal-based web browser), curl, &lt;a href="http://dbacl.sourceforge.net/"&gt;dbacl&lt;/a&gt; (Bayesian decision engine), &lt;a href="http://andrewprice.me.uk/projects/twyt/"&gt;twyt&lt;/a&gt; (command-line Twitter interface).&lt;br /&gt;&lt;br /&gt;(I actually use another command line Twitter client (twixer) for following and unfollowing other people's accounts. And, while Twyt should work for posting on Twitter, I often use a third program for posting (twerp) which I started using before I found Twyt.)&lt;br /&gt;&lt;br /&gt;Typical usage of the Bayesian twi script:&lt;br /&gt;&lt;tt&gt;&lt;pre&gt;&lt;br /&gt;Teapot:~ surly$ twi&lt;br /&gt;0: [5325528218] StephenAtHome: wearing a mask is &lt;br /&gt;so sweaty. i don’t know how those scooby-doo &lt;br /&gt;villians did it. (Sun Nov 01 00:40:05 2009 via web)&lt;br /&gt;o)k, b)ad, u)rgent, open l)ink, c)opy, add to q)uotes, r)ewind, &amp;lt;CR&amp;gt;=next&lt;br /&gt;&lt;/pre&gt;&lt;/tt&gt;&lt;br /&gt;&lt;br /&gt;The number "0" is just an index that counts down to zero to help identify the status messages you will be processing in this session. The number in brackets comes from the twyt program and is a unique Twitter message ID.&lt;br /&gt;&lt;br /&gt;The options presented after the post are:&lt;br /&gt;&lt;b&gt;o)k:&lt;/b&gt; Add the post to the "ok" data file (for stuff you want to see more of in the future) and go to the next item.&lt;br /&gt;&lt;b&gt;b)ad:&lt;/b&gt; Add the post to the "bad" data file (stuff you don't want to see) and go to the next item.&lt;br /&gt;&lt;b&gt;u)rgent:&lt;/b&gt; Add the post to the "urgent" data file and go to the next item. This is a category I came up for for messages that say things like "Party at my place tonight" or "Free T-shirts for the first ten respondents". All I am really doing with them at the moment is highlighting them in a brighter color, but my idea is that in some future revision, these might be actively fetched and brought to my attention. At the moment, so few messages qualify as "urgent" that it's still a half-baked idea.&lt;br /&gt;&lt;b&gt;open l)ink&lt;/b&gt;: Opens the first extracted hyperlink in Safari.&lt;br /&gt;&lt;b&gt;c)opy&lt;/b&gt;: Copies the text of the post to the OS X system clipboard.&lt;br /&gt;&lt;b&gt;add to q)uotes&lt;/b&gt;: Appends the post to a text file with my collection of quotes. In the future, I might cause this to also mark the post as a "favorite" on Twitter, but this is not a priority for me.&lt;br /&gt;&lt;b&gt;r)ewind&lt;/b&gt;: The rewind feature was designed to compensate for situations where your Bayesian filter causes posts to filter below your radar and then suddenly another one from the same person bubbles up to the surface, but you don't understand it because you are missing the context. Rewinding causes the program to start going backwards through the locally cached history of all posts (in the "all.d" file) searching for posts from the user in question. It will keep feeding you previous posts as you keep hitting keys (or until you type &lt;b&gt;q&lt;/b&gt; for "quit"). This feature only works on Twitter accounts at the moment, due to the way it is extracting the name to grep for.&lt;br /&gt;&lt;b&gt;&amp;lt;CR&amp;gt;=next&lt;/b&gt;: You've got to hit the carriage return to advance to the next post. If you type "o" and hit enter, the post will be categorized as "ok". If you just hit enter, your Bayesian filter will learn nothing from this post. Initially, it's good to give your filter as much definite feedback as you can, but once you are happy with its performance, you can just hit enter all the way through if you like.&lt;br /&gt;&lt;br /&gt;Importantly, but perhaps not obviously, any set of these commands can be entered for a given post, and they will all be executed. Example:&lt;br /&gt;&lt;tt&gt;&lt;pre&gt;o)k, b)ad, u)rgent, open l)ink, c)opy, add to q)uotes, r)ewind, &amp;lt;CR&amp;gt;=next&lt;br /&gt;&lt;br /&gt;olq &lt;/tt&gt;&lt;/pre&gt; will categorize the item as "ok", open the associated hyperlink, and add the item to the quotes file. There is nothing stopping you from categorizing the item as ok, bad, and urgent, but this will almost certainly just confuse the Bayesian filter. &lt;br /&gt;&lt;br /&gt;Finally you will be prompted to "Categorize which other posts as ok?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;When the program is finished processing all the new status messages, it will post an accuracy rating for the current session (basically, if you don't mark any of the "ok" messages as bad or correct any of the "bad" ones to be ok, it thinks it has 100% accuracy). You can use this as a rough metric for how good the current training level is.&lt;br /&gt;&lt;br /&gt;Limitations: The current version of Twyt does not seem to be picking up the newfangled "Retweet" posts. Based on the messages that I am missing, this is something of a net advantage.&lt;br /&gt;&lt;br /&gt;The twi script can be found &lt;a href="http://surlyteabag.blogspot.com/p/twipl-readable.html"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-1492959090753359762?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/1492959090753359762'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/1492959090753359762'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2010/05/command-line-bayesian-twitter-reader.html' title='Command-line Bayesian Twitter reader with ad-blocking'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-760247134572921671</id><published>2010-03-27T13:54:00.004-04:00</published><updated>2010-08-02T15:22:44.058-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='palm'/><category scheme='http://www.blogger.com/atom/ns#' term='ipod touch'/><category scheme='http://www.blogger.com/atom/ns#' term='pda'/><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><title type='text'>A Palm user tries to convert to the iPod touch</title><content type='html'>I finally bought an iPod touch. I had wanted one for two years. I really started to want one last year, when Apple started allowing developers to write applications for the iPhone OS. With the release of the 3.0 version of the iPhone OS, it had seemed that there was finally enough functionality to allow the iPod touch to serve as my primary PDA. &lt;br /&gt;&lt;br /&gt;First reactions: Even though I had seen it before and played with it in stores, the actual experience of owning a device with such an amazing and cool-looking interface has exceeded my expectations.&lt;br /&gt;&lt;br /&gt;Something about many of the apps available from the iTunes Store sort of immediately turned me off though. Lots of them have a desperate commercial aura that I associate with Windows shareware programs. Many of the free programs are prominently labelled as "FREE" or "LITE" and some have ads in them. It's usually apparent after running a program whether it feels right. Since I prefer using open source programs, the iPhone apps scene, where everyone has to pay $100 annually to have their programs available to be bought or downloaded, feels kind of constrained.&lt;br /&gt;&lt;br /&gt;Fortunately there are exceptions. The programs I list below (in particular, Instapaper and Simplenote) have great interfaces and are a joy to use.&lt;br /&gt;&lt;br /&gt;A comparison of Palm and iPhone programs for a few functions.&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;br /&gt;&lt;tr&gt;&lt;th&gt;Function&lt;/th&gt;&lt;th&gt;Palm program&lt;/th&gt;&lt;th&gt;iPhone equivalent&lt;/th&gt;&lt;th width="60%"&gt;Comments&lt;/th&gt;&lt;th&gt;Advantage?&lt;/th&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;General purpose maps&lt;/td&gt;&lt;td&gt;Mapopolis&lt;/td&gt;&lt;td&gt;offmaps&lt;/td&gt;&lt;td&gt;offmaps is much cheaper (though this is thanks to the OpenStreetMaps initiative for free map data), but it can't search for streets without an Internet connection. Also it frequently doesn't have the amount of cached detail that I had hoped it would have. I'll bet there's a better maps program out there, but I haven't found it yet.&lt;/td&gt;&lt;td&gt;&lt;a name="grid"&gt;&lt;/a&gt;Advantage Palm&lt;a href="#mapquest"&gt;*&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;GPS turn-by-turn navigation&lt;/td&gt;&lt;td&gt;TomTom&lt;/td&gt;&lt;td&gt;TomTom? Navigon?&lt;/td&gt;&lt;td&gt;Prices are comparable, but for the iPod touch user, it's still not clear whether any GPS software will interface with an external Bluetooth GPS (which was the norm for the Palm). It seems like the only official way of doing it is to pay TomTom $200 ($100 for the GPS which interfaces to the iPod, and $100 for the software).&lt;/td&gt;&lt;td&gt;Advantage Palm&lt;a href="#mapquest"&gt;*&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;Offline web page reading&lt;/td&gt;&lt;td&gt;Plucker&lt;/td&gt;&lt;td&gt;Instapaper&lt;/td&gt;&lt;td&gt;Plucker is free. Equivalent Instapaper functionality costs a few bucks. Also, since I had built my own plucking script, it was convenient to pluck both web pages and HTML and text pages on my computer. Instapaper only works for things that are already online. But Instapaper allows me to mark things for offline reading from any computer.&lt;/td&gt;&lt;td&gt;Advantage Palm&lt;/td&gt;&lt;/tr&gt;&lt;br /&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;PDF reading is definitely superior on the iPod touch (I recommend buying GoodReader), but for some reason it's not convenient enough that I have gotten into the habit of reading PDFs on it. &lt;br /&gt;&lt;br /&gt;Address book functionality is adequate on both. &lt;br /&gt;&lt;br /&gt;Overall, in terms of PDA functions, it's kind of a draw. I've now owned the iPod touch for six months. I have my Address Book information on it. I use it regularly for reading web pages downloaded through Instapaper. &lt;br /&gt;&lt;br /&gt;The killer feature of the iPod touch is the iPod features themselves. I use it for listening to podcasts and music all the time. The convenient and automatic syncing of stuff to the iPod and its intuitive interface are the key features that make it so much better than any competing products that I have played with. The Palm was never even close to a decent mp3 player. Combined with the iPod touch's better battery life (the Palm is a color model), this is the reason that I stopped carrying the Palm in favor of the iPod touch.&lt;br /&gt;&lt;br /&gt;I sync text files over to the iPod touch using Simplenote, but it has to be done manually. (I could easily automate syncing from the computer to the Simplenote web site, but in order to sync text files with the iPod touch, one must run the Simplenote program while the iPod has an Internet connection.) With the Palm, I had it set up so that everything would sync pretty much automatically. Instapaper has the same syncing problem. One advantage to Simplenote though is that the syncing works in both directions without any contemplation on my part so I can take notes on the iPod touch and sync them back to my computer as well as going the other way (whereas on my Palm, I pretty much just synced from the Palm to my computer). In truth, I am not using the text files feature so much on the iPod.&lt;br /&gt;&lt;br /&gt;I'm starting to experience gadgetlust again. I want to have something that I can carry around that I can modify... like something that could run Perl or Python scripts. This is forbidden on the iPod touch. A cheap Android device looks slightly appealing. Unfortunately the unlocked phones are still quite expensive.&lt;br /&gt;&lt;br /&gt;There are a lot of cool programs for the iPod touch (the Dropbox client, Google Earth, Pandora). Basically, for Internet functionality the iPod touch blows away the Palm, but for the few things I want to do on a regular basis (other than listen to audio files) - read text files, read downloaded web pages, look at offline maps, turn-by-turn navigation - the Palm is actually still as good or better. Maybe this is because I acquired this functionality over years of fiddling with things and finding the right software. Presumably I will find (and pay for) better software for some functions on the iPod touch, but whether I will be able to tinker as much and optimize some otherwise suboptimal features, remains to be seen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="mapquest"&gt;*&lt;/a&gt; UPDATE: The new &lt;a href="http://itunes.apple.com/us/app/mapquest-4-mobile/id316126557?mt=8"&gt;Mapquest iPhone app&lt;/a&gt; may improve map capabilities for the iPhone Touch significantly. &lt;a href="#grid"&gt;(Back to the footnote pointer)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ANOTHER UPDATE: It turns out that it is possible to use HTML5 and Javascript to program &lt;a href="http://www.apple.com/webapps/index_sp.html"&gt;"web apps"&lt;/a&gt; which are almost as good as a regular iPhone App (mainly lacking the ability to access iPhone sensors). It is possible to save these apps to your device and use them even when offline. This may counteract some of my above criticisms of the iPhone.&lt;br /&gt;&lt;br /&gt;UPDATE 3: A collection of iPhone web apps, with reviews, can be found at &lt;a href="http://www.openappmkt.com"&gt;OpenAppMkt&lt;/a&gt;. However, it's unclear how well they work. I tried PieGuy (a Pac-Man-like game) on my second generation iPod touch, and it didn't work at all. I also recall Checklist as being wonky, behaving OK sometimes, but then losing its state at other times. Your mileage may vary.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-760247134572921671?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/760247134572921671/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=760247134572921671' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/760247134572921671'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/760247134572921671'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2010/03/palm-user-tries-to-convert-to-ipod.html' title='A Palm user tries to convert to the iPod touch'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-6003175746203315940</id><published>2010-02-19T19:40:00.003-05:00</published><updated>2010-02-19T20:30:24.925-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='review'/><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>The One Book List</title><content type='html'>Back in the early days of the World Wide Web, there was a thing called "The One Book List". It was started in 1994 by Paul Phillips when he posted to the rec.arts.books newsgroup: &lt;blockquote&gt;I would like for each of you to decide on a single book that you would most like for the world to read for inclusion in the list. The book that, for you, was the most influential, or thought-provoking, or enjoyable, or moving, or philosophically powerful, or deep in some sense you cannot properly define, or any other criteria you wish to set.&lt;/blockquote&gt; Hundreds of people responded to his request, and he eventually accumulated a set of stellar recommendations from people all over the proto-Web, including Douglas Adams, who recommended &lt;a href="http://www.amazon.com/gp/product/0393315703?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0393315703" onclick="javascript: pageTracker._trackPageview ('/outgoing/amazon/blindwatchmaker/blog/link');"&gt;The Blind Watchmaker&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=thesurtea-20&amp;l=as2&amp;o=1&amp;a=0393315703" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; by Richard Dawkins, and Douglas Hofstadter, who recommended &lt;a href="http://www.amazon.com/gp/product/0316769177?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0316769177" onclick="javascript: pageTracker._trackPageview ('/outgoing/amazon/catcherintherye/blog/link');"&gt;The Catcher in the Rye&lt;/a&gt;.&lt;img src="http://www.assoc-amazon.com/e/ir?t=thesurtea-20&amp;l=as2&amp;o=1&amp;a=0316769177" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br /&gt;&lt;br /&gt;I often used to browse through the One Book List &lt;a href="http://www.amazon.com/gp/product/068816112X?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=068816112X" onclick="javascript: pageTracker._trackPageview ('/outgoing/amazon/replay/blog');"&gt;&lt;img border="0" align="right" src="https://images-na.ssl-images-amazon.com/images/I/51D-gvP0jDL._SL160_.jpg"&gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=thesurtea-20&amp;l=as2&amp;o=1&amp;a=068816112X" width="1" height="1" border="0" alt="Replay" style="border:none !important; margin:0px !important;" /&gt; when looking for a great book. It was from this list that I found &lt;a href="http://www.amazon.com/gp/product/068816112X?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=068816112X" onclick="javascript: pageTracker._trackPageview ('/outgoing/amazon/replay/blog/link');"&gt;Replay&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=thesurtea-20&amp;l=as2&amp;o=1&amp;a=068816112X" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; by Ken Grimwood. It takes a novel concept involving replaying events, explores all the permutations, and ultimately comments on the role of human decisions in life. Replay is a thought-provoking and entertaining book that has stuck with me ever since I read it.&lt;br /&gt;&lt;br /&gt;When I looked for the list again recently, I found that it had essentially disappeared from the Internet. The only place you can find it now is through the Wayback Machine which has a &lt;a href="http://web.archive.org/web/20030207150741/http://www.go2net.com/internet/onebook/"&gt;copy of the original front page of the One Book List site&lt;/a&gt; (last updated in 1998) and the &lt;a href="http://web.archive.org/web/20030212195304/www.go2net.com/internet/onebook/one-book.html"&gt;the list itself&lt;/a&gt;. If you are looking for a great reading experience, the One Book List is still a great place to start your search.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-6003175746203315940?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/6003175746203315940/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=6003175746203315940' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6003175746203315940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6003175746203315940'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2010/02/one-book-list.html' title='The One Book List'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-191650918366251528</id><published>2010-02-09T17:20:00.003-05:00</published><updated>2011-05-13T12:50:34.918-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comics'/><category scheme='http://www.blogger.com/atom/ns#' term='science'/><category scheme='http://www.blogger.com/atom/ns#' term='math'/><title type='text'>Comics about Science</title><content type='html'>I've loved comic strips as far back as I can remember, particularly Calvin and Hobbes and The Far Side. But in the last few years, I've discovered a whole lot more comics to my liking, and many that appeal to those of a scientific mindset.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://xkcd.com"&gt;xkcd&lt;/a&gt; may be the first of the Internet-based  comics to break through into the mainstream, on the basis of its strong appeal to people interested in science, technology, humor, and sometimes relationships. It has now been around for almost four and a half years, amassing nearly 700 strips and is one of the most successful online comics (a.k.a, "webcomics").  &lt;a href="http://xkcd.com/248/"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 247px;" src="http://1.bp.blogspot.com/_jtSRNLN2Vms/S3COpfQFGxI/AAAAAAAAAMQ/4FtckFIrKP0/s320/xkcd-hypothetical-situation.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5436001593650912018" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you want humor that is even more deeply connected to math and physics, try &lt;a href="http://abstrusegoose.com/"&gt;Abstruse Goose&lt;/a&gt;. One of my favorites is called &lt;a href="http://abstrusegoose.com/80"&gt;All You Zombies&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I also enjoy &lt;a href="http://sydneypadua.com/2dgoggles/the-complete-lovelace-and-babbage/"&gt;this web comic about Charles Babbage and Ada Lovelace and their giant Difference Engine&lt;/a&gt;. And crime-fighting.&lt;br /&gt;&lt;br /&gt;My current favorite online comic is &lt;a href="http://dresdencodak.com/"&gt;Dresden Codak&lt;/a&gt;. The artwork is gorgeous. Every comic has an interesting idea in it (often something about science or philosophy), and it is relentlessly inventive, unafraid of trying new things. &lt;br /&gt;&lt;br /&gt;You can support independent comic strips like this by buying their merchandise. (I do!) You can currently buy &lt;a href="http://www.topatoco.com/merchant.mvc?Screen=PROD&amp;Store_Code=TO&amp;Product_Code=DC-PRINTS&amp;Category_Code=DC-PRINTS&amp;Affiliate=surly"&gt;Dresden Codak comic strip prints&lt;/a&gt; and &lt;a href="http://www.topatoco.com/merchant.mvc?Screen=CTGY&amp;Store_Code=TO&amp;Category_Code=DC-SHIRTS&amp;Affiliate=surly"&gt;T-shirts&lt;/a&gt; and soon there should be a Dresden Codak book, compiling the artist's work.&lt;br /&gt;&lt;br /&gt;There are of course many comic books which use the medium simply for explaining scientific concepts, Larry Gonick's Cartoon Guides to Everything being the best-known example.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/gp/product/0966010620?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0966010620"&gt;&lt;img border="0" align="left" src="https://images-na.ssl-images-amazon.com/images/I/610tdYmHHSL._SL160_.jpg" onclick="javascript: pageTracker._trackPageview ('/outgoing/amazon/twofistedscience/blog');"&gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=thesurtea-20&amp;l=as2&amp;o=1&amp;a=0966010620" width="1" height="1" border="0" alt="[Two-Fisted Science]" style="border:none !important; margin:0px !important;" align="left"&gt; &lt;a href="http://www.amazon.com/gp/product/0966010620?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0966010620" onclick="javascript: pageTracker._trackPageview ('/outgoing/amazon/twofistedscience/blog/link');"&gt;Two-Fisted Science&lt;/a&gt;  by  Jim Ottaviani is a comic book with many different stories, all featuring real scientists and mathematicians, including Einstein, Newton, Galileo, Leibniz, Bertrand Russell, Bethe, Pauli, Heisenberg, Bohr, Oppenheimer, and Feynman! &lt;br /&gt;&lt;br /&gt;Bertrand Russsell is also featured in &lt;a href="http://www.amazon.com/gp/product/1596914521?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1596914521" onclick="javascript: pageTracker._trackPageview ('/outgoing/amazon/logicomix/blog/link');"&gt;Logicomix&lt;/a&gt;. I am currently reading it and will post a review when I'm done.&lt;br /&gt;&lt;br /&gt;Thanks to some combination of increases in the role of science in society, interest in science,  and leisure time, we now have a lot more opportunities to consume science-based literature and entertainment. Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-191650918366251528?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/191650918366251528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/191650918366251528'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2010/02/comics-about-science.html' title='Comics about Science'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_jtSRNLN2Vms/S3COpfQFGxI/AAAAAAAAAMQ/4FtckFIrKP0/s72-c/xkcd-hypothetical-situation.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-534060302276628336</id><published>2009-10-08T22:04:00.001-04:00</published><updated>2009-10-08T22:07:52.401-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comics'/><title type='text'>Pigeons</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_jtSRNLN2Vms/Ss6aXHP4VUI/AAAAAAAAAJw/FL4HwRkhmDQ/s1600-h/passenger-pigeon.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 320px;" src="http://1.bp.blogspot.com/_jtSRNLN2Vms/Ss6aXHP4VUI/AAAAAAAAAJw/FL4HwRkhmDQ/s400/passenger-pigeon.png" border="0" alt="All pigeons are passenger pigeons, if you're small enough."id="BLOGGER_PHOTO_ID_5390415525882385730" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-534060302276628336?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/534060302276628336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=534060302276628336' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/534060302276628336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/534060302276628336'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/10/pigeons.html' title='Pigeons'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_jtSRNLN2Vms/Ss6aXHP4VUI/AAAAAAAAAJw/FL4HwRkhmDQ/s72-c/passenger-pigeon.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-8538853842441836819</id><published>2009-09-30T20:48:00.003-04:00</published><updated>2009-09-30T21:08:56.724-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comics'/><title type='text'>Rhetoric</title><content type='html'>&lt;center&gt;&lt;br /&gt;&lt;img width="400" height="320" src="http://2.bp.blogspot.com/_jtSRNLN2Vms/SsP95Qtr9qI/AAAAAAAAAJo/QZbmdZszUwU/s400/rhetorial.png" border="0" alt="I like rhetorical answers. They don't require questions, AND THEY ARE ALWAYS RIGHT!" &gt;&lt;br /&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-8538853842441836819?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/8538853842441836819/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=8538853842441836819' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8538853842441836819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8538853842441836819'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/09/rhetoric.html' title='Rhetoric'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_jtSRNLN2Vms/SsP95Qtr9qI/AAAAAAAAAJo/QZbmdZszUwU/s72-c/rhetorial.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-4876202010619661454</id><published>2009-08-15T00:28:00.001-04:00</published><updated>2009-08-15T01:00:46.598-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bookmarking'/><title type='text'>Pinboard.in - the second coming of del.icio.us?</title><content type='html'>I used to love del.icio.us. Then Yahoo bought it and turned it into delicious.com. While the new version has some good features, I overall find it too slow and bogged down in fancy, unnecessary ornation. In many ways, I prefer the sparseness of the old design.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.pinboard.in"&gt;Pinboard&lt;/a&gt; was recently announced as the cure for such problems. Joshua Schachter (creator of del.icio.us) seems to be an unofficial, in-the-background consultant on this project. He posts on the &lt;a href="http://groups.google.com/group/pinboard-dev"&gt;Pinboard Google group&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;One neat new feature that Pinboard has is a quick bookmark-this-without-tagging option which automatically puts things in a special, private "to read" pile. This is intended to work much like the &lt;a href="http://www.instapaper.com"&gt;Instapaper&lt;/a&gt; model. &lt;br /&gt;&lt;br /&gt;The last essential piece of a bookmarking archive is automatically saving the HTML and other contents of a bookmarked page, preserving a locally cached copy for all time. The Pinboard developer is promising this in the future, for a fee.&lt;br /&gt;&lt;br /&gt;There is a sign-up fee of ~$5. I paid it because, after seeing bookmarking site after bookmarking site go under or decay, I want to believe that one can be done right. I want to like bookmarking again. For now, I do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-4876202010619661454?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/4876202010619661454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=4876202010619661454' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4876202010619661454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4876202010619661454'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/08/pinboardin-second-coming-of-delicious.html' title='Pinboard.in - the second coming of del.icio.us?'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-2226444005071585871</id><published>2009-08-08T22:45:00.005-04:00</published><updated>2009-09-03T22:09:17.562-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='music'/><category scheme='http://www.blogger.com/atom/ns#' term='hitchhiker&apos;s'/><category scheme='http://www.blogger.com/atom/ns#' term='game'/><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>Life! Don't talk to me about life!</title><content type='html'>&lt;blockquote&gt;&gt;ask Marvin about the object of the game&lt;br /&gt;&lt;br /&gt;"Being clever doesn't always make you happy, you know.  Look at me, brain the size of a planet, how many points do you think I've got?  Minus thirty zillion at the last count."&lt;/blockquote&gt;&lt;br /&gt;The amazing Douglas Adams/Infocom collaboration, the &lt;i&gt;Hitchhiker's Guide to the Galaxy&lt;/i&gt; text adventure game, is playable online in &lt;a href="http://www.douglasadams.com/creations/infocomjava.html"&gt;Java&lt;/a&gt; or &lt;a href="http://www.bbc.co.uk/radio4/hitchhikers/game.shtml"&gt;Flash&lt;/a&gt; (with added illustrations).&lt;br /&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;Marvin was so popular at one point that he recorded and released a few songs (more details &lt;a href="http://en.wikipedia.org/wiki/Marvin_the_Paranoid_Android#Song"&gt;on Wikipedia&lt;/a&gt;... definitely check them out if you get the chance), and there was even a Marvin Depreciation Society. &lt;br /&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/gp/product/1401323588?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1401323588"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 103px; height: 160px;" src="http://3.bp.blogspot.com/_jtSRNLN2Vms/Sn5D7kqoHKI/AAAAAAAAAFE/kiRP3GDGa9U/s400/andanotherthing.jpg" border="0" alt=""id="And Another Thing..." /&gt;&lt;/a&gt;&lt;br /&gt;There is apparently going to be a sixth book in the Hitchhiker's series, written by the guy who writes those Artemis Fowl books. It's going to be called: &lt;a href="http://www.amazon.com/gp/product/1401323588?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1401323588"&gt;And Another Thing...&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=thesurtea-20&amp;l=as2&amp;o=1&amp;a=1401323588" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; [All of the titles for the five books in the Hitchhikers' Guide series were phrases that appeared somewhere in the first book. I was hoping that any sixth book would be called "Oh no, not again" (which was what the bowl of petunias thought when it was brought into existence over Magrathea before crashing into the planet).] The book releases on October 12th, 2009. According to &lt;a href="http://www.amazon.com/gp/product/1401323588?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1401323588"&gt;the Amazon page&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=thesurtea-20&amp;l=as2&amp;o=1&amp;a=1401323588" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;: "It features a pantheon of unemployed gods, everyone's favorite renegade Galactic President, a lovestruck green alien, an irritating computer, and at least one very large slab of cheese. " And Arthur and Marvin will be back!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-2226444005071585871?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/2226444005071585871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=2226444005071585871' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/2226444005071585871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/2226444005071585871'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/08/life-dont-talk-to-me-about-life.html' title='Life! Don&apos;t talk to me about life!'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_jtSRNLN2Vms/Sn5D7kqoHKI/AAAAAAAAAFE/kiRP3GDGa9U/s72-c/andanotherthing.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-2500486408457251195</id><published>2009-08-08T16:21:00.006-04:00</published><updated>2010-02-07T12:17:31.677-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='command-line'/><category scheme='http://www.blogger.com/atom/ns#' term='status'/><category scheme='http://www.blogger.com/atom/ns#' term='feed'/><title type='text'>Upgrading the Bayesian-filtered status reader</title><content type='html'>In a &lt;a href="http://surlyteabag.blogspot.com/2009/05/general-purpose-command-line-bayesian.html"&gt;previous post&lt;/a&gt;, I described my assembly of a command-line program for Bayesian filtering and presentation of Facebook statuses. After a while, constantly pulling down the RSS feed (via &lt;tt&gt;curl&lt;/tt&gt;) and seeing the same statuses for certain people, day after day until they expired, kind of wore on me, so I went looking for a simple feed reader.  There were command-line feed readers that looked more appealing to me (&lt;a href="http://codezen.org/canto/"&gt;Canto&lt;/a&gt; and &lt;a href="http://synflood.at/newsbeuter/newsbeuter.html"&gt;Newsbeuter&lt;/a&gt;) but they required newer versions of Python or some series of installations of things that were not available in a sufficiently upgraded form in Fink. So I tried &lt;a href="http://offog.org/code/rawdog.html"&gt;rawdog&lt;/a&gt; which is written in Python and only requires the easily installed &lt;a href="http://www.feedparser.org/"&gt;feedparser&lt;/a&gt;. It seemed like it was modifiable to do what I wanted, and I even went so far as to post a triumphant blog post about my success with getting it to properly parse my Facebook feed and deliver it to my Bayesian-filtering/displaying script. And then the next day, it went haywire and started reshowing me things I had already seen and dismissed.&lt;br /&gt;&lt;br /&gt;So.&lt;br /&gt;&lt;br /&gt;I decided to do everything myself. I was already partially parsing the RSS feed, so I just went a little further and parsed out the post date and compared it with the date when I last looked through the posts. (This seemed daunting until I found out that Perl already has time functions built in.) Finally I coded in dumping the output to a text file, as well as to the screen. Now the command can work on its own or have its output easily combined with my separate Twitter Bayesian filter which is a bit more sophisticated and which does a nice job of increasing my local Twitter signal-to-noise ratio. I intend to post about it someday.&lt;br /&gt;&lt;br /&gt;The code for stati.pl is &lt;a href="http://surlyteabag.blogspot.com/p/statipl.html"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-2500486408457251195?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/2500486408457251195/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=2500486408457251195' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/2500486408457251195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/2500486408457251195'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/08/upgrading-bayesian-filtered-status.html' title='Upgrading the Bayesian-filtered status reader'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-6082097928922031167</id><published>2009-07-30T21:39:00.004-04:00</published><updated>2009-07-30T22:21:02.478-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='logic puzzles'/><category scheme='http://www.blogger.com/atom/ns#' term='hardest'/><category scheme='http://www.blogger.com/atom/ns#' term='math'/><title type='text'>The Hardest Logic Puzzle Ever</title><content type='html'>The Hardest Logic Puzzle Ever came up recently in a Metafilter post, but it linked to a site that gave a very poor explanation of the puzzle and no credit to the original author, Raymond Smullyan (creator of the logic puzzles involving people who always tell the truth and people who always lie).  &lt;br /&gt;&lt;br /&gt;George Boolos wrote up a &lt;a href="http://www.hcs.harvard.edu/~hrp/issues/1996/Boolos.pdf"&gt;nice description of the Hardest Logic Puzzle Ever&lt;/a&gt;, including clarifications and breaking the puzzle down into more manageable sub-puzzles. The puzzle goes a step beyond the liars and truthtellers by introducing a third entity: someone who just gives random responses. And they all speak in some completely foreign language. If you solve the whole thing, you can claim that you solved the Hardest Logic Puzzle Ever! It is a bit of a project and benefits from contemplation. It's one of my more memorable puzzle experiences.&lt;br /&gt;&lt;br /&gt;George Boolos also once gave a short talk on Gödel's second incompleteness theorem, using only one-syllable words. The text is available &lt;a href="http://www2.kenyon.edu/Depts/Math/Milnikel/boolos-godel.pdf"&gt;here&lt;/a&gt; in PDF.&lt;br /&gt;&lt;br /&gt;And Smullyan does more than just make puzzles! He is a professor of philosophy at Indiana University and has done important work on extending the applicability of Gödel's incompleteness theorems.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-6082097928922031167?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/6082097928922031167/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=6082097928922031167' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6082097928922031167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6082097928922031167'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/07/hardest-logic-puzzle-ever.html' title='The Hardest Logic Puzzle Ever'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-4750951236980887368</id><published>2009-07-24T19:20:00.006-04:00</published><updated>2009-08-02T12:17:39.464-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='free'/><category scheme='http://www.blogger.com/atom/ns#' term='google voice'/><category scheme='http://www.blogger.com/atom/ns#' term='business cards'/><title type='text'>Google Voice business cards may or may not be available</title><content type='html'>Google started (and then stopped) offering 25 free business cards to people with Google Voice accounts. It seems like a way to encourage people to give out their Google Voice number. Also, I hope that it helps to educate the populace about what a Google Voice number is. Too many people get confused when I call or text them from my Google Voice number and later from some other number. Admittedly, I should route more of my outgoing cell phone calls through Google Voice, but my phone is only moderately smart (not iPhone/Android smart, i.e., not smart enough to run special apps), so extra steps are required.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_jtSRNLN2Vms/SmpFSiP5V1I/AAAAAAAAAEs/_hUCEzD5QMU/s1600-h/GoogleVoice+business+card.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 227px; height: 128px;" src="http://4.bp.blogspot.com/_jtSRNLN2Vms/SmpFSiP5V1I/AAAAAAAAAEs/_hUCEzD5QMU/s400/GoogleVoice+business+card.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5362174491071436626" /&gt;&lt;/a&gt;Back to the business cards: The cards were supposed to be delivered to the first 50000 people to request them, but according to a Twitter post from one of the Google Voice team on the evening of July 23rd, they &lt;blockquote&gt;had to turn off the biz card promotion: too many requests!, our partner got overloaded! Will bring it back shortly. bear with us! Thx!&lt;/blockquote&gt;The URL for the promotion, &lt;a href="https://www.google.com/voice/promo/iprint"&gt;https://www.google.com/voice/promo/iprint&lt;/a&gt;, is not working at present.  Unofficial look-alike cards may be obtained in exchange for money from &lt;a href="http://printmvp.com/google-voice-promo-business-cards"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;UPDATE: The promotion is active and still open as of August 1, 2009.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-4750951236980887368?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/4750951236980887368/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=4750951236980887368' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4750951236980887368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4750951236980887368'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/07/google-voice-business-cards-may-or-may.html' title='Google Voice business cards may or may not be available'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_jtSRNLN2Vms/SmpFSiP5V1I/AAAAAAAAAEs/_hUCEzD5QMU/s72-c/GoogleVoice+business+card.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-3469518361179328831</id><published>2009-07-07T21:59:00.004-04:00</published><updated>2009-07-07T22:14:05.538-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ian shoales'/><category scheme='http://www.blogger.com/atom/ns#' term='comedy'/><category scheme='http://www.blogger.com/atom/ns#' term='review'/><category scheme='http://www.blogger.com/atom/ns#' term='commentary'/><title type='text'>How I found Ian Shoales</title><content type='html'>I remember sitting in a parking lot, waiting for some unrelated event, listening to this little snippet of audio over and over, trying to extract enough of the words that I could figure out what to Google to determine the source. The guy was talking really fast and the other stuff on the cassette seemed to be taped off of the radio... Was it a radio program? The words could have been ungooglable.&lt;br /&gt;&lt;br /&gt;I had found this cassette in a box with a bunch of discarded tapes and CDs, left behind by whoever had previously been working in my room. None of it was as tantalizing as this.&lt;br /&gt;&lt;br /&gt;It featured someone named Ian in an office fencing with his secretary and spouting diatribes and sardonic top-ten lists before being accosted surreally by an inflating fat man satirizing the stereotypical James Bond (or Dashiell Hammett) villain, complete with henchmen.&lt;br /&gt;&lt;br /&gt;I googled my transcriptions and came up with nothing. Then I tried [ian radio monologue -laura] on Google Groups, which turned up a reference to an Ian Shoales and Duck's Breath Mystery Theatre on NPR.&lt;br /&gt;&lt;br /&gt;Ian Shoales: Think of him as kind of like Oscar the Grouch, only less muppety and on speed.  He is a parody of a critic. Not unlike Stephen Colbert.&lt;br /&gt;&lt;br /&gt;He has &lt;a href="http://www.ianshoales.com"&gt;a web site&lt;/a&gt; and his alter ego, Merle Kessler, regularly posts to &lt;a href="http://dbmt.blogspot.com"&gt;a blog&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;Here is one of his self-introductions:&lt;blockquote&gt;Hi, I'm Ian Shoales, the-semi-eminent, acerbic social critic. Perhaps you've heard of me. Perhaps you've noticed my hardhitting commentaries on "All Things Considered" and "Nightline," or in USA Today? My trademark, "I gotta go"? That Ian Shoales? Is my name a word in your household? When you see the crossword puzzle clue "bitter, negative, cynical," do you write "Shoalesian" in the boxes, whether it fits or not? I know I do.&lt;/blockquote&gt;Ian on the concept of the state lottery: "Luck gets a bureaucracy."&lt;br /&gt;&lt;br /&gt;"I don't like people who speak French in public places. This includes the French." &lt;br /&gt;&lt;br /&gt;Ian Shoales on ... himself again:&lt;blockquote&gt;I admit it freely -- I'm not a positive thinker. On Star Trek, the beautiful alien with the green hair and the taut belly would always say to Captain Kirk, "Oh one called Jim, what is this thing you call a kiss?"  If that alien were here today (and in my Perfect World, believe me, she would be), she would gaze at me lovingly and say, "Oh one called Ian, what is this thing you call a sneer?"  That's the kind of guy I am.  Captain Kirk and I both want the same thing: the whole-hearted devotion of a naive alien.  And if certain things stand in our way -- Klingons for Kirk, reality for me -- well, we just have to suck in our guts, set the phasers on Stun, and hope for the best.&lt;/blockquote&gt;Ian Shoales on Twitter:&lt;blockquote&gt;Posts traditionally have been things like "I'm drinking coffee!" or "A bird flew by!" or "I just shot my parents!".  These posts are called &lt;i&gt;tweets&lt;/i&gt;.  Users of Twitter call each other &lt;i&gt;Tweeple&lt;/i&gt;. And haters of Twitter are called &lt;i&gt;Twaitors&lt;/i&gt;. It's all a little too *smurfish* for me.&lt;/blockquote&gt;Ian can be heard on &lt;a href="http://www.kqed.org/"&gt;KQED&lt;/a&gt; (which fortunately has &lt;a href="http://www.kqed.org/radio/listen/"&gt;streaming audio&lt;/a&gt;), Saturdays and Sundays at around 5:35am.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-3469518361179328831?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/3469518361179328831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=3469518361179328831' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/3469518361179328831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/3469518361179328831'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/07/how-i-found-ian-shoales.html' title='How I found Ian Shoales'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-8347107669206726159</id><published>2009-06-27T11:53:00.005-04:00</published><updated>2010-10-27T15:04:50.897-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iron-on'/><category scheme='http://www.blogger.com/atom/ns#' term='diy'/><title type='text'>Custom Iron-on Decals for T-shirts (or Whatever)</title><content type='html'>If you have an iron and an inkjet printer, you can make your own iron-on decals. The thermal transfer paper runs about $1 per sheet. &lt;a href="http://www.amazon.com/gp/product/B000LNKO7K?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=B000LNKO7K" onclick="javascript: pageTracker._trackPageview ('/outgoing/amazon/blog/iron-on/link');"&gt;This one&lt;/a&gt; is supposed to be one of the best.&lt;br /&gt;&lt;br /&gt;The easiest way to do this is to use white fabric. Then you can simply scale the picture you want to print and take the mirror image (if getting the orientation correct matters for your image) and print it onto the special thermal transfer paper. Then you press the paper onto the fabric (pre-ironed, so it's smooth) with a hot iron (though not against an ironing board, because an ironing board is soft and the transfer will become distorted... one needs a hard, flat surface).&lt;br /&gt;&lt;br /&gt;It's really not that difficult, &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_jtSRNLN2Vms/SkZB1kNW56I/AAAAAAAAAEM/F9PAH4BULHw/s400/iron-on+example+500x415.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 150px; height: 124px;" src="http://4.bp.blogspot.com/_jtSRNLN2Vms/SkZA_A6LxnI/AAAAAAAAAEE/5sRMxIVEhUk/s400/iron-on+example+150x124.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5352036658496390770" /&gt;&lt;/a&gt; and making something like this gives a feeling of satisfaction. My first test is shown here. My plan is to custom-design a T-shirt. Maybe with discreet logos on the sleeves.&lt;br /&gt;&lt;br /&gt;&lt;hr width = 70%&gt;&lt;br /&gt;If you need ideas for designs, check out some of the &lt;a href="http://www.topatoco.com/merchant.mvc?Screen=CTGY&amp;Store_Code=TO&amp;Category_Code=SPEC&amp;Affiliate=surly" onclick="javascript: pageTracker._trackPageview ('/outgoing/topatoco/blog/coolshirts/link');"&gt;cool shirts at Topatoco&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.topatoco.com/merchant.mvc?Screen=PROD&amp;Store_Code=TO&amp;Product_Code=QW-FAILURE&amp;Category_Code=ALLSHIRTS&amp;Affiliate=surly" onclick="javascript: pageTracker._trackPageview ('/outgoing/topatoco/blog/failure');"&gt;&lt;img style="float:left; cursor:pointer; cursor:hand;width: 320px; height: 120px;" src="http://3.bp.blogspot.com/_jtSRNLN2Vms/TMhy6zU9jmI/AAAAAAAAASo/pg9f8qlmiMc/s320/failure-t-shirt.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5532798496760761954" /&gt;&lt;/a&gt;    &lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=thesurtea-20&amp;l=as2&amp;o=1&amp;a=B000LNKO7K" width="1" height="15" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br /&gt;&lt;a href="http://www.topatoco.com/merchant.mvc?Screen=PROD&amp;Store_Code=TO&amp;Product_Code=QW-CHEATSHEET&amp;Category_Code=ALLSHIRTS&amp;Affiliate=surly" onclick="javascript: pageTracker._trackPageview ('/outgoing/topatoco/blog/gonebackintime');"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 222px;" src="http://1.bp.blogspot.com/_jtSRNLN2Vms/TMhx3hyEuRI/AAAAAAAAASg/7tEIqBsFHAs/s320/gone-back-in-time.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5532797340999792914" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.topatoco.com/merchant.mvc?Screen=PROD&amp;Store_Code=TO&amp;Product_Code=RB-PLUMBERS&amp;Category_Code=ALLSHIRTS&amp;Affiliate=surly" onclick="javascript: pageTracker._trackPageview ('/outgoing/topatoco/blog/warrior-plumbers');"&gt;&lt;img style="float:left; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 170px;" src="http://3.bp.blogspot.com/_jtSRNLN2Vms/TMh2Lrgae5I/AAAAAAAAASw/guK1GmZ_WYc/s400/warrior-plumbers.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5532802085253970834" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-8347107669206726159?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/8347107669206726159/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=8347107669206726159' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8347107669206726159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8347107669206726159'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/06/custom-iron-on-decals-for-t-shirts-or.html' title='Custom Iron-on Decals for T-shirts (or Whatever)'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_jtSRNLN2Vms/SkZA_A6LxnI/AAAAAAAAAEE/5sRMxIVEhUk/s72-c/iron-on+example+150x124.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-7870325041708207366</id><published>2009-06-17T20:28:00.004-04:00</published><updated>2009-06-17T20:37:00.374-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='words'/><category scheme='http://www.blogger.com/atom/ns#' term='fake'/><title type='text'>DIY words: Zero</title><content type='html'>I felt like making up a word for when you have zero of something. Like if three is a triple, and two is a double, then one is a single, but what is zero? &lt;br /&gt;&lt;br /&gt;There's a good generic term for such a word: a &lt;a href="http://en.wikipedia.org/wiki/Tuple"&gt;tuple&lt;/a&gt;. For n=4 and above, all the tuples end in "-uple" (quandruple, quintuple, sextuple,...). Maybe they should be called the "uples". And Wikipedia has an entry for n=0. It looks like this:&lt;blockquote&gt;0: Empty tuple; Unit&lt;/blockquote&gt; I don't like it much. Since all the other prefixes come from some variant of the Latin word for the number, I decided to start with the Latin word for zero. Of course, the Romans didn't have a symbol for zero. Some hold that the Babylonians were the first to come up with one and that this idea propagated around and eventually the Latin alphabet picked up words for zero in the Middle Ages: &lt;b&gt;cifra&lt;/b&gt; and &lt;b&gt;zephyrum&lt;/b&gt;. (The English cognate would be &lt;b&gt;cipher&lt;/b&gt;.) Therefore, I propose &lt;b&gt;zephle&lt;/b&gt; as the zero-tuple. Or else &lt;b&gt;zerple&lt;/b&gt;. "Zephle" is probably a more genunine fake tuple, but "zerple" (pronounced as ZEER-pul) is more self-explanatory and fun to say. Zerpledecker bus. Zerple cheesburger. Zerple date. Identical zerplets. See? &lt;br /&gt;&lt;br /&gt;Word most likely to be confused for zero-tuple: &lt;b&gt;nonuple&lt;/b&gt;. It's when you have nine of something. There's a really long list of such words &lt;a href="http://home.comcast.net/~igpl/NWR.html"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-7870325041708207366?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/7870325041708207366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=7870325041708207366' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/7870325041708207366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/7870325041708207366'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/06/diy-words-zero.html' title='DIY words: Zero'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-5284395568567418176</id><published>2009-06-06T15:53:00.005-04:00</published><updated>2009-06-06T16:20:16.473-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='work'/><category scheme='http://www.blogger.com/atom/ns#' term='tracking'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>Automated self-monitoring</title><content type='html'>Looking for a way to self-monitor my working habits, I decided to write a script to analyze my notebook file and determine on which dates I had made an entry. Ideally, I ought to be working and making notes on my progress every day. &lt;br /&gt;&lt;br /&gt;I decided to grep through the file for datestamps and form something like an ASCII &lt;a href="http://www.edwardtufte.com/bboard/q-and-a-fetch-msg?msg_id=0001OR&amp;topic_id=1&amp;topic="&gt;sparkline&lt;/a&gt;, indicating whether I had made at least one entry on a given day.&lt;br /&gt;&lt;br /&gt;The output for the last couple of months looks like this:&lt;br /&gt;&lt;tt&gt;&lt;pre&gt;.|.|...|......|...|...||.|..||||....||........|..|..|||.&lt;/pre&gt;&lt;/tt&gt;&lt;br /&gt;It looks even more badass displayed on my desktop via Geektool. I am also displaying the actual number of entries for each day immediately below the corresponding sparkline symbol. Admittedly, this contradicts the idea of displaying the information in tiny graphical form. I may eventually switch to something like this:&lt;br /&gt;&lt;tt&gt;&lt;pre&gt;.|.-...:......-...-...--.:..-::-....::........-..-..---.&lt;/pre&gt;&lt;/tt&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_jtSRNLN2Vms/SirMDC7eYiI/AAAAAAAAADA/rD15bKUun8k/s1600-h/bf13.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 166px; height: 151px;" src="http://3.bp.blogspot.com/_jtSRNLN2Vms/SirMDC7eYiI/AAAAAAAAADA/rD15bKUun8k/s320/bf13.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5344308260526514722" /&gt;&lt;/a&gt;&lt;br /&gt;This is almost like Benjamin Franklin's &lt;a href="http://www.flamebright.com/PTPages/Benjamin.asp"&gt;system for reinforcing his 13 virtues&lt;/a&gt;. Admittedly, I am only reinforcing one virtue now, but I have a few other habits that I have been monitoring with my all-purpose tracking script, and these are ripe for display and correlation with other behaviors.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-5284395568567418176?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/5284395568567418176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=5284395568567418176' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/5284395568567418176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/5284395568567418176'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/06/automated-self-monitoring.html' title='Automated self-monitoring'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_jtSRNLN2Vms/SirMDC7eYiI/AAAAAAAAADA/rD15bKUun8k/s72-c/bf13.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-7214253508642170139</id><published>2009-06-05T22:37:00.005-04:00</published><updated>2009-06-05T22:51:50.433-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='text'/><category scheme='http://www.blogger.com/atom/ns#' term='simplicity'/><category scheme='http://www.blogger.com/atom/ns#' term='automation'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>My 1mm-thick PDA backup system</title><content type='html'>You may have heard of the "Hipster PDA". It started as a joke that a bunch of notecards could be used like a PDA without all the electricity and technology. Then it caught on. There are elements of this that I like (particularly the creativity and do-it-yourself-ness), but it wasn't what I wanted.&lt;br /&gt;&lt;br /&gt;The problem that motivated me: Every once in a while my PDA runs out of charge and/or loses all its data. As everything is backed up on my laptop, this is mainly just inconvenient. But when I suddenly need some vital bit of information that is on said PDA, it suddenly shifts to serious nuisance.&lt;br /&gt;&lt;br /&gt;My first solution was to simply print out my calendar (which I keep in the plain text remind format) in 4-up form, fold it up, and keep it in my back pocket. And I found that I liked this because it is often easier to pull out and immediately access the information that I want. (It is particularly useful when going on a trip and having flights, times, hotels, and rental car places all listed on a little rectangle of paper.)&lt;br /&gt;&lt;br /&gt;This eventually developed into a full script. This script currently collects the following things into a single text file. 0) &lt;b&gt;The current date&lt;/b&gt;, to ensure freshness. 1) The output of my remind calendar, excluding boring things. 2) &lt;b&gt;A little address book.&lt;/b&gt; I started by extracting specific contact information for specific people from the OS X Address Book via a little command line program called &lt;a href="http://gnufoo.org/contacts/"&gt;contacts&lt;/a&gt;. Then I wised up and started extracting everyone who has an asterisk after their name, allowing me to easily switch people in and out of my short list. (This is something I would like to automate someday.) 3) Some things that I have hard-coded into the program, including public transportation information, phone numbers for taxis, directions to places that I rarely go to, and business hours for a few places. 4) &lt;b&gt;A tiny calendar.&lt;/b&gt; I initially thought of setting this up to grab the last, current, and next months from the UNIX &lt;i&gt;cal&lt;/i&gt; program, but then I thought of the ingenious &lt;a href="http://thumbcalendar.com"&gt;thumb calendar&lt;/a&gt; which allows a bunch of months to be compactly fit into a small area. And I realized that I could make my own. 5) And finally, &lt;b&gt;my shopping list&lt;/b&gt; as extracted from my &lt;a href="http://todotxt.com"&gt;todo.txt&lt;/a&gt; to-do list.&lt;br /&gt;&lt;br /&gt;[The only thing that I would like to get on there that I haven't figure out yet is a ruler, along the edge. This will likely require monkeying with PostScript or something.]&lt;br /&gt;&lt;br /&gt;Here's the pared down script:&lt;br /&gt;&lt;tt&gt;&lt;pre&gt;&lt;br /&gt;#!/usr/bin/perl -w&lt;br /&gt;&lt;br /&gt;$fname="/Users/Surly/remind.txt";&lt;br /&gt;open(INFO,$fname);&lt;br /&gt;@lines = &lt;INFO&gt;;&lt;br /&gt;close(INFO);&lt;br /&gt;$outfile="hpda.txt";&lt;br /&gt;&lt;br /&gt;open(OUTFO, "&gt;$outfile");&lt;br /&gt;&lt;br /&gt;$datestamp=`/bin/date "+%y%m%d"`;&lt;br /&gt;print OUTFO $datestamp;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;$i=0;&lt;br /&gt;while($lines[$i])#assuming we initially have a numbered subtitle&lt;br /&gt;{ $rem=(($lines[$i]=~/^rem/)|($lines[$i]=~/^REM/));&lt;br /&gt; $pass=((($lines[$i]!~/^[;#\n]/)&amp;$rem)&amp;($lines[$i]!~/growlnotify/));&lt;br /&gt; $pass=$pass &amp; ($lines[$i]!~/boring/);&lt;br /&gt; &lt;br /&gt; if ($pass) &lt;br /&gt; #ignore comments and growlnotifys and commands and only pass REMs&lt;br /&gt; {$lines[$i]=~s/^rem //;$lines[$i]=~s/^REM //;&lt;br /&gt; $lines[$i]=~s/ msg/:/;$lines[$i]=~s/ MSG/:/;&lt;br /&gt; print OUTFO $lines[$i];   &lt;br /&gt; }&lt;br /&gt; $i++;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;print OUTFO "===contacts=========\n";&lt;br /&gt;$a1=`contacts -H -f "%n %mp %wp %hp" Cleo`;&lt;br /&gt;$a1=~s/-/./g; print OUTFO $a1;&lt;br /&gt;$a1=`contacts -H -f "%n %wp %op" Popeye`;&lt;br /&gt;print OUTFO $a1;&lt;br /&gt;$a1=`contacts -H -f "%n %mp %e" Betty`;&lt;br /&gt;print OUTFO $a1;&lt;br /&gt;$a1=`contacts -H -f "%n %mp %wp %op %a" Snidely`;&lt;br /&gt;$a1=~s/\n\n/\n/g; print OUTFO $a1;  &lt;br /&gt;$a1=`contacts -H -f "%n %mp" "*"`;&lt;br /&gt;$a1=~s/-/ /g;print OUTFO $a1;&lt;br /&gt;$a1=`contacts -H -f "%n %mp %a" God`;&lt;br /&gt;$a1=~s/\n\n/\n/g; print OUTFO $a1;&lt;br /&gt;&lt;br /&gt;print OUTFO "===random stuff====\n";&lt;br /&gt;print OUTFO "The Hamburglar's place: Practice, practice, practice, and take a left.\n";&lt;br /&gt;print OUTFO "Library: open until 8pm.\n";&lt;br /&gt;print OUTFO "===thumb calendar=====\n";#thumbcalendar.com&lt;br /&gt;print OUTFO "            Su Mo Tu We Th Fr Sa JUL (31)\n";&lt;br /&gt;print OUTFO "               Su Mo Tu We Th Fr Sa SEP (30)\n";&lt;br /&gt;print OUTFO "                     01 02 03 04 05 06 07\n";&lt;br /&gt;print OUTFO "01 02 03 04 05 06 07 08 09 10 11 12 13 14\n";&lt;br /&gt;print OUTFO "08 09 10 11 12 13 14 15 16 17 18 19 20 21\n";&lt;br /&gt;print OUTFO "15 16 17 18 19 20 21 22 23 24 25 26 27 28\n";&lt;br /&gt;print OUTFO "22 23 24 25 26 27 28 29 30 31\n";&lt;br /&gt;print OUTFO "29 30 31\n";&lt;br /&gt;print OUTFO "                  Su Mo Tu We Th Fr Sa JUN (31)\n";&lt;br /&gt;print OUTFO "   Su Mo Tu We Th Fr Sa AUG (31)\n";&lt;br /&gt;print OUTFO "===\@shopping========\n";&lt;br /&gt;&lt;br /&gt;$fname="/Users/Surly/todo.txt";&lt;br /&gt;open(INFO,$fname);&lt;br /&gt;@lines = &lt;INFO&gt;;&lt;br /&gt;close(INFO);&lt;br /&gt;&lt;br /&gt;$i=0;&lt;br /&gt;while($lines[$i+1]){$i++;}&lt;br /&gt;&lt;br /&gt;while($i&gt;=0)&lt;br /&gt;{ $pass=(($lines[$i]!~/^x /));&lt;br /&gt; $pass=$pass &amp; (($lines[$i]!~/\@office/));&lt;br /&gt; $pass=$pass &amp; ($lines[$i]=~/buy/);&lt;br /&gt; $pass=$pass &amp; ($lines[$i]!~/\@online/); &lt;br /&gt; &lt;br /&gt; if ($pass) &lt;br /&gt; {$lines[$i]=~s/ \@shopping//;&lt;br /&gt; $lines[$i]=~s/^buy //;&lt;br /&gt; print OUTFO $lines[$i];   &lt;br /&gt; }&lt;br /&gt; $i--;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;close(OUTFO);&lt;br /&gt;&lt;/tt&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-7214253508642170139?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/7214253508642170139/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=7214253508642170139' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/7214253508642170139'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/7214253508642170139'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/06/my-1mm-thick-pda-backup-system.html' title='My 1mm-thick PDA backup system'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-7621544345399144606</id><published>2009-06-04T22:16:00.002-04:00</published><updated>2009-06-04T22:23:56.650-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='search'/><category scheme='http://www.blogger.com/atom/ns#' term='music'/><title type='text'>The Surly Teabag Consumer Report on the Last.fm subscription</title><content type='html'>So I wanted to play a particular album.  It looked like it was playable from &lt;a href="http://last.fm"&gt;last.fm&lt;/a&gt; (under their current you-can-play-any-streamable-track-3-times-for-free policy) but that seemed to entail clicking each and every one of those little play buttons.  I wanted to stream a continuous set of songs so I could work without interruption.  So I anted up the 3 bucks for a one-month subscription to last.fm.  My conclusion is that it is worth it, but first some details:&lt;br /&gt;&lt;br /&gt;The last.fm playlist creator has a &lt;b&gt;very&lt;/b&gt; clicky interface.  What I wanted was just to click on something near the album and put the whole thing in a playlist.  But there seems to be no option for that.  So you've got to find every song you want to hear and click on it a couple of times to get it on the playlist. At least dialog boxes can be dismissed by hitting the return key. Before you can play a playlist, it needs at least 45 playable tracks by 15 different artists, so be prepared to do a lot of clicking. &lt;br /&gt;&lt;br /&gt;Now the good news. It is freaking awesome: I discovered a bunch of new songs that I loved, so I went out and bought them. This is probably the most efficient way to track down those elusive tracks that I want to listen to over and over. Thank you, last.fm.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-7621544345399144606?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/7621544345399144606/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=7621544345399144606' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/7621544345399144606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/7621544345399144606'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/06/surly-teabag-consumer-report-on-lastfm.html' title='The Surly Teabag Consumer Report on the Last.fm subscription'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-8871193946937856539</id><published>2009-05-09T08:35:00.003-04:00</published><updated>2010-03-30T12:23:36.823-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='command-line'/><category scheme='http://www.blogger.com/atom/ns#' term='surliness'/><category scheme='http://www.blogger.com/atom/ns#' term='twitter'/><title type='text'>In search of the ideal Twitter command-line client</title><content type='html'>After testing out a bunch of candidates, my new default command-line Twitter client is &lt;a href="http://andrewprice.me.uk/projects/twyt/"&gt;Twyt&lt;/a&gt;. Do not be fooled by the spartan front page. Active development is taking place. It's written in Python and (as of version 0.9.2) has the virtue of offering the following command-line options for the "check stati of friends" command:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;  -s SINCE, --since=SINCE&lt;br /&gt;                        The date or ID of a message to list status messages&lt;br /&gt;                        from.&lt;br /&gt;  -P PAGE, --page=PAGE  Lists the PAGEth page of status updates&lt;br /&gt;  -n COUNT, --count=COUNT&lt;br /&gt;                        The number of statuses to retrieve (max 200)&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Unfortunately, it seems to be suffering from the same malady as other programs: No matter what value I put in for the &lt;tt&gt;--since&lt;/tt&gt; flag, I still get the same 20 stati... The &lt;tt&gt;--page&lt;/tt&gt; flag does work though, and the &lt;tt&gt;--count&lt;/tt&gt; flag is doing something...&lt;br /&gt;&lt;br /&gt;However, I also like the &lt;a href="http://code.google.com/p/twixer/"&gt;twixer&lt;/a&gt; client because it has implemented a few commands that I have not found in any other command line program. According to its command line options, it can 1) list your friends, 2) list your followers, 3) show the little information box on a user, and 4) delete stati and direct messages.&lt;br /&gt;&lt;br /&gt;Unfortunately (and maybe I am doing something wrong here), but as of version 0.1.1, it will only show the little information box on me, no matter who I put in. But status deletion works great!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-8871193946937856539?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/8871193946937856539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=8871193946937856539' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8871193946937856539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8871193946937856539'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/05/in-search-of-ideal-twitter-command-line.html' title='In search of the ideal Twitter command-line client'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-4874062837138064583</id><published>2009-05-03T15:23:00.010-04:00</published><updated>2010-02-07T12:32:32.646-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='filtering'/><category scheme='http://www.blogger.com/atom/ns#' term='Bayesian'/><title type='text'>General-purpose command-line Bayesian filter</title><content type='html'>The idea for using Bayesian classification (e.g., the kind of probabilistic estimation of whether an e-mail is spam, based on how well its features match the features of things you have previously called "spam") for filtering things like Twitter status update is now &lt;a href="http://www.ademiller.com/blogs/tech/2008/04/improving-twitter-with-bayesian-filtering-client/"&gt;out there&lt;/a&gt; (via &lt;a href="http://the.taoofmac.com/space/links/2009/04/28/1113#improving-twitter-with-a-bayesian-filtering-client"&gt;Tao of Mac&lt;/a&gt;). As I often view such updates from the command line, I decided to give it a shot.&lt;br /&gt;&lt;br /&gt;There's a wonderful little program called &lt;a href="http://dbacl.sourceforge.net/"&gt;dbacl&lt;/a&gt; which stands for digramic Bayesian classifier. It's really nicely documented and installs without much trouble under OS X.  I only had one installation issue: There was some weird error message about a file called "missing" being missing, but this did not interfere with installation. One perplexing trait of the program: When I copy example commands from the documentation, they sometimes fail. The reason is that the examples had options on the end of the command, like:&lt;br /&gt;&lt;tt&gt;% dbacl -c one -c two -c three sample4.txt -N&lt;/tt&gt;&lt;br /&gt;The solution was to just rearrange the flags so the filename is at the end.&lt;br /&gt;&lt;br /&gt;I wrote this little (specific purpose) pair of scripts for applying Bayesian filtering to Facebook updates (as pulled from the RSS feed).&lt;br /&gt;&lt;br /&gt;The training script looks like this:&lt;br /&gt;&lt;tt&gt;&lt;br /&gt;&lt;pre&gt;#!/usr/bin/perl&lt;br /&gt;$DBACL_PATH="/Users/surly/.dbacl";&lt;br /&gt;#TODO: capture keypresses instantly with Term::ReadKey;&lt;/pre&gt;@lines=`curl --fail "http://www.facebook.com/feeds/friends_status.php?id=[fill-in]&amp;key=[the-blanks]&amp;format=rss20" -A "Mozilla/4.0"|grep title|grep -v "s Friends"|perl -p -i -e "s/^\s+//"|perl -p -i -e "s/&amp;apos;/\'/g"|perl -p -i -e "s/ \'s/'s/g"|perl -p -i -e "s/\&amp;amp;/\&amp;/g"|perl -p -i -e "s/\&lt;title\&gt;//g"`;&lt;pre&gt;$i=0;&lt;br /&gt;while($lines[$i])&lt;br /&gt;{ $cat=`echo "$lines[$i]"|dbacl -v -c ok -c bad -c urgent`;&lt;br /&gt; $lines[$i]=~s/\s?\&lt;\/title\&gt;//g; &lt;br /&gt; if ($cat=~/ok/)   { print " $lines[$i]";}&lt;br /&gt; elsif ($cat=~/bad/)  { print "-$lines[$i]";}&lt;br /&gt; elsif ($cat=~/urgent/) { print "*$lines[$i]";}&lt;br /&gt;#categorization prediction, done&lt;br /&gt; print "Categorize as: o)k, b)ad, u)rgent:\n";&lt;br /&gt; $cat=&lt;&gt;;$cat=~s/\n//;&lt;br /&gt; if ($cat=~/o/)&lt;br /&gt; { `echo "$lines[$i]"&gt;&gt;$DBACL_PATH/ok.d`;&lt;br /&gt;  print "Categorized as ok.\n";}&lt;br /&gt; elsif ($cat=~/b/)&lt;br /&gt; { `echo "$lines[$i]"&gt;&gt;$DBACL_PATH/bad.d`;&lt;br /&gt;  print "Categorized as bad.\n";}&lt;br /&gt; elsif ($cat=~/u/)&lt;br /&gt; { `echo "$lines[$i]"&gt;&gt;$DBACL_PATH/urgent.d`;&lt;br /&gt;  print "Categorized as urgent.\n";}&lt;br /&gt; $i++;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;/tt&gt;&lt;br /&gt;It marks each status update with a symbol to indicate what the prediction would be based on the existing set of information.&lt;br /&gt;dbacl has one counter-intuitive feature; it does not have any memory. One must keep all the information that one wants to train the filters on (here, in the files ok.d, bad.d, and urgent.d) and then refresh the filter by training it on the entire corpus, as is done in the script below. Briefly, it fetches the updates, trains the filters (using regular expressions for defining Bayesian features, specifically so I can filter on the @somebody grammar that Twitter uses), and then displays all the stati, using ANSI escape codes to emphasize or de-emphasize them based on their categorization. &lt;br /&gt;&lt;br /&gt;&lt;tt&gt;&lt;pre&gt;&lt;br /&gt;#!/usr/bin/perl&lt;br /&gt;$DBACL_PATH="/Users/surly/.dbacl";&lt;/pre&gt;@lines=`curl --fail "http://www.facebook.com/feeds/friends_status.php?id=[fill-in]&amp;key=[the-blanks]&amp;format=rss20" -A "Mozilla/4.0"|grep title|grep -v "s Friends"|perl -p -i -e "s/^\s+//"|perl -p -i -e "s/&amp;apos;/\'/g"|perl -p -i -e "s/ \'s/'s/g"|perl -p -i -e "s/\&amp;amp;/\&amp;/g"|perl -p -i -e "s/\&lt;title\&gt;//g"`;&lt;br /&gt;&lt;br /&gt;`dbacl -l $DBACL_PATH/ok -g "^([[:alpha:]]+)" -g "[^[:alpha:]]([[:alpha:]]+)" -g "^(@[[:alpha:]]+)" -g "[^[:alpha:]](@[[:alpha:]]+)" $DBACL_PATH/ok.d`;&lt;br /&gt;`dbacl -l $DBACL_PATH/bad -g "^([[:alpha:]]+)" -g "[^[:alpha:]]([[:alpha:]]+)" -g "^(@[[:alpha:]]+)" -g "[^[:alpha:]](@[[:alpha:]]+)" $DBACL_PATH/bad.d`;&lt;br /&gt;`dbacl -l $DBACL_PATH/urgent -g "^([[:alpha:]]+)" -g "[^[:alpha:]]([[:alpha:]]+)" -g "^(@[[:alpha:]]+)" -g "[^[:alpha:]](@[[:alpha:]]+)" $DBACL_PATH/urgent.d`;&lt;pre&gt;$i=0;&lt;br /&gt;while($lines[$i])&lt;br /&gt; { $lines[$i]=~s/\s?\&lt;\/title\&gt;//g;&lt;br /&gt; $cat=`echo "$lines[$i]"|dbacl -v -c ok -c bad -c urgent`;&lt;br /&gt; if ($cat=~/ok/)&lt;br /&gt; { print "$lines[$i]";}&lt;br /&gt; elsif ($cat=~/bad/)&lt;br /&gt; { print "\033[0;37;48m$lines[$i]";&lt;br /&gt;  print "\033[0m";}&lt;br /&gt; elsif ($cat=~/urgent/)&lt;br /&gt; { print "\033[0;34;48m$lines[$i]";&lt;br /&gt;  print "\033[0m";}&lt;br /&gt; $i++;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;/tt&gt;&lt;br /&gt;&lt;br /&gt;This is a first cut. The dbacl documentation suggests not using two-word combinations when the corpus is small, due to the possibility of overfitting. Much remains to be learned about the art of Bayesian filtering.&lt;br /&gt;&lt;br /&gt;Think of the possibilities for using Bayesian filtering on things beyond spam filtering. Imagine using it to filter through social networks or music (see &lt;a href="http://www.thefilter.com"&gt;TheFilter&lt;/a&gt;). Imagine a web browser that watches what links you click on and which pages you bookmark (or mark as "good") and then highlights links that it predicts you will like, possibly based on pre-fetching and evaluating the link contents. I love the feeling of unbounded potential.&lt;br /&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;Further reading:&lt;br /&gt;&lt;a href="http://surlyteabag.blogspot.com/2009/08/upgrading-bayesian-filtered-status.html"&gt;A much improved status update reader with Bayesian filtering&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-4874062837138064583?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/4874062837138064583/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=4874062837138064583' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4874062837138064583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4874062837138064583'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/05/general-purpose-command-line-bayesian.html' title='General-purpose command-line Bayesian filter'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-49735896033129781</id><published>2009-04-10T18:16:00.004-04:00</published><updated>2010-03-08T23:30:37.718-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='why'/><category scheme='http://www.blogger.com/atom/ns#' term='neon'/><category scheme='http://www.blogger.com/atom/ns#' term='colors'/><category scheme='http://www.blogger.com/atom/ns#' term='fluorescent'/><category scheme='http://www.blogger.com/atom/ns#' term='science'/><title type='text'>What makes neon colors look "neon"?</title><content type='html'>A friend asked why there is no neon brown.  It turns out that a better name for neon colors is "fluorescent".  Fluorescent colors appear unnaturally bright because they are.  They contain pigments which are made up of molecules which are very efficient at absorbing high frequency light and then emitting lower frequency light.  For instance, some molecules absorb ultraviolet light and re-emit some fraction of it in the blue.  This is the principle behind those detergents that make clothes look super-bright white.  (It's also why printer paper sometimes look blindingly white.)  Your eye expects that the brightest something can be, is if all the ambient (visible) light is reflected back, but by sneaking in extra energy from the UV, something can actually be brighter than it should be.  (I admit to being surprised by the part about the brain sensing the amount of illumination something is getting and then formulating an expectation about how bright things should appear, in an absolute sense.)  Obvious corollary: You can't display a seemingly fluorescent color on a computer screen without doing something clever like making everything else appear dimmer.&lt;br /&gt;&lt;br /&gt;Much of this I got from &lt;a href="http://www.newton.dep.anl.gov/askasci/chem03/chem03285.htm"&gt;this page&lt;/a&gt;, which also explains that:&lt;br /&gt;"Fluorescent blues are usually unimpressive because they must be fueled by farther-UV light, and there is not always an abundance of that in the ambient illumination.  Red is typically fueled by green, yellow by blue, green by violet/near-UV.  In a well-lit room you are guaranteed plenty of blue light, so fluorescent oranges have it made."&lt;br /&gt;&lt;br /&gt;So, now we know why neon brown is so hard to come by - neon blue is too weak.  But you could artificially create it (and neon purple), by illuminating a room with an appropriate wavelength black light.  It would probably be easier to create neon tan.  Neon beige, anyone?  Don't get me started on neon grey.&lt;br /&gt;&lt;br /&gt;What about gold and silver and copper (as in a box of Crayolas)?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://aleksandreia.wordpress.com/2009/03/18/all-that-glisters-is-not-metallic-gold/"&gt;This page&lt;/a&gt; relates Crayola's official policy on gold and copper.  Cutting to the chase:&lt;br /&gt;&lt;blockquote&gt;All Crayola crayons are made from paraffin wax, stearic acid and color pigment.  To manufacture our crayons, the paraffin wax is melted and mixed together with pre-measured amounts of powder color pigments to produce the many colors of Crayola crayons.&lt;br /&gt;&lt;br /&gt;The original formulation of Crayola copper and gold colored crayons contained bronze powder, which in the presence of stearic acid will oxidize over time, causing the green color.  This oxidation process is the same as occurs on a penny or the "Statue of Liberty" as a result of an acidic environment.  We successfully reformulated the copper and gold crayons to prevent oxidation from occurring by using a blend of pigments to achieve the copper and gold colors.  This formula change took place during 1994 and continues today in both the copper and gold crayons.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;The page goes on to refer to the &lt;a href="http://en.wikipedia.org/wiki/Gold_(color)"&gt;Wikipedia entry on the gold color&lt;/a&gt;*:&lt;br /&gt;"Of course, the visual sensation usually associated with the metal gold is its metallic shine. This cannot be reproduced by a simple solid color, because the shiny effect is due to the material's reflective brightness varying with the surface's angle to the light source."&lt;br /&gt;&lt;br /&gt;* (Some argue gold is not a color at all, but a combination of yellow and luster.  They obviously never had a pre-1994 box of 64 Crayolas.)&lt;br /&gt;&lt;br /&gt;But I think that this is a little pessimistic.  Suppose you take the little camera that is build into the top of the laptop screen and use it to monitor the ambient lighting, and the position of the user's head (and their likely viewing angle).  Then it would be entirely possible to adjust the brightness of different bits of the gold in real time to synthesize the glittering of real gold.&lt;br /&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;If you liked this explanation, and would like to see more, &lt;a href="http://www.contactify.com/c87a6"&gt;send me your science questions&lt;/a&gt;. I will try to answer, and if the result is interesting enough, I'll post it. This offer is good until I get overwhelmed and take it down.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-49735896033129781?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/49735896033129781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=49735896033129781' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/49735896033129781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/49735896033129781'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/04/what-makes-neon-colors-look-neon.html' title='What makes neon colors look &quot;neon&quot;?'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-6508580413424275452</id><published>2009-03-29T11:58:00.006-04:00</published><updated>2009-05-04T22:30:26.169-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='star wars'/><category scheme='http://www.blogger.com/atom/ns#' term='art'/><category scheme='http://www.blogger.com/atom/ns#' term='images'/><title type='text'>Reimagining great works of art, as they might be in the Star Wars universe</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_jtSRNLN2Vms/Sc-dm9-YYGI/AAAAAAAAAA0/mWgfExSdJr8/s1600-h/starwars-classic-art-escher-vader.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 180px; height: 320px;" src="http://1.bp.blogspot.com/_jtSRNLN2Vms/Sc-dm9-YYGI/AAAAAAAAAA0/mWgfExSdJr8/s320/starwars-classic-art-escher-vader.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5318642977744642146" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;My other favorites: &lt;a href="http://i.somethingawful.com/inserts/articlepics/photoshop/02-27-09-starwars/Lincoln.jpg"&gt;one&lt;/a&gt;, &lt;a href="http://i.somethingawful.com/inserts/articlepics/photoshop/02-27-09-starwars/Hungry-Black-Mage.jpg"&gt;two&lt;/a&gt;, &lt;a href="http://i.somethingawful.com/inserts/articlepics/photoshop/02-27-09-starwars/Twisted-Echidna.jpg"&gt;three&lt;/a&gt;, &lt;a href="http://i.somethingawful.com/inserts/articlepics/photoshop/02-27-09-starwars/YerAuraBoresMeAlice.jpg"&gt;four&lt;/a&gt;, and (apparently from some other contest) &lt;a href="http://josh.oneradicalsite.com/images/starwars.jpg"&gt;five&lt;/a&gt;.  The full gallery is &lt;a href="http://www.somethingawful.com/d/photoshop-phriday/star-wars-art.php?page=1"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-6508580413424275452?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/6508580413424275452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=6508580413424275452' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6508580413424275452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6508580413424275452'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/reimagining-great-works-of-art-as-they.html' title='Reimagining great works of art, as they might be in the Star Wars universe'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_jtSRNLN2Vms/Sc-dm9-YYGI/AAAAAAAAAA0/mWgfExSdJr8/s72-c/starwars-classic-art-escher-vader.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-6210899331313380712</id><published>2009-03-28T09:01:00.000-04:00</published><updated>2009-03-28T09:55:00.948-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='free'/><category scheme='http://www.blogger.com/atom/ns#' term='google voice'/><category scheme='http://www.blogger.com/atom/ns#' term='wap'/><title type='text'>Google Voice: interface for WAP browser and other tricks</title><content type='html'>I have one of those cell phones that isn't a fancy cutting-edge touchscreen  phone/PDA.  It does have a WAP browser.  I like it.  And since I can use the mobile Gmail client on it, I thought to wonder whether something similar is available for Google Voice.  It turns out that it is:&lt;br /&gt;&lt;br /&gt;On your phone's browser, enter the URL &lt;a href="http://voice.google.com"&gt;http://voice.google.com&lt;/a&gt;, and you will wind up at the URL &lt;a href="https://www.google.com/voice/m/"&gt;https://www.google.com/voice/m/&lt;/a&gt;.  The interface is nice and clean.  I actually like it more that the web interface.  It seems to offer every feature that the web client does.  (This seems likely to mean that any voice mail you receive will be transcribed and available here as text.)  Most importantly, it gives a "Quick Call" option and an SMS option, allowing you to place calls or send text messages that appear to come from (because they are routed through) your Google Voice number, and are without additional charge.  The only disadvantage to connecting directly from your phone is that the number must be manually entered, or else found in the Contacts part of the Google Voice interface.&lt;br /&gt;&lt;br /&gt;But there is a workaround:&lt;br /&gt;&lt;br /&gt;From a &lt;a href="http://groups.google.com/group/grandcentral-help-poweruser/browse_thread/thread/19a4f55bcfd72db8#"&gt;GrandCentral Google Group thread&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;GV has a nifty feature that you may use to store and call your contacts' cell phones and show your GV number on their phones. This only works with contacts with cell phones that can send and receive text messages.&lt;br /&gt;&lt;br /&gt;(1) First make sure you can receive your contacts' calls and messages on your cell phone (If you have set up a particular contact so that their calls are not sent to your cell phone this will not work)&lt;br /&gt;&lt;br /&gt;(2) Using GV website's SMS feature send them a message and ask them to reply to it.&lt;br /&gt;&lt;br /&gt;(3) When you receive your contact's reply on your cell phone you will notice that it apparently comes from a phone number in the "406" area code. This is a number the GV has assigned to your contact for your account only. Save this number in your cell phone as your contact's phone number.&lt;br /&gt;&lt;br /&gt;(4) Call this number next time you want to make a call to your contact from one of your GV recognized phones. The call will go from your phone to GV, GV will know that you are trying to call your contact, it will ring their phones and show your GV account number instead of the number of the phone you are dialing from.&lt;br /&gt;&lt;br /&gt;I have been testing this method and so far it seems to work. It is a partial solution to your question but it is definitely more convenient than going through the GV phone menu routine. If you find a kink in this method please publish it as a response to this answer.&lt;br /&gt;&lt;br /&gt;This 406 number is assigned for "your" account to "your" contact - so it will be unique to you. The same 406 number may be attached to another person's account for their contacts and it becomes unique to them. The way it works is when you call the 406 number from one of your GV recognized phones it goes to the Google server, the server identifies the originator of the call (you), find out which of your contact it has assigned that 406 number to, and then calls that person's cell phone. According to one Google employee this assignment of the 406 number to the contacts of each account holder will be maintained on a permanent basis so once you have saved the number you may just dial it to reach the contact any time in the future.&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-6210899331313380712?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/6210899331313380712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=6210899331313380712' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6210899331313380712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6210899331313380712'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/google-voice-interface-for-wap-browser.html' title='Google Voice: interface for WAP browser and other tricks'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-6786473059896120082</id><published>2009-03-21T17:40:00.001-04:00</published><updated>2009-03-21T19:38:34.755-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='search'/><category scheme='http://www.blogger.com/atom/ns#' term='changes'/><category scheme='http://www.blogger.com/atom/ns#' term='keystrokes'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='efficiency'/><category scheme='http://www.blogger.com/atom/ns#' term='proxy'/><title type='text'>Googling for phrases: Trying to route around new inefficiencies</title><content type='html'>In the good old days, Google's search engine supported searching for exact phrases in two different ways: &lt;br /&gt;&lt;blockquote&gt;You can search for phrases by adding quotation marks. Words enclosed in double quotes ("like this") appear together in all returned documents. Phrase searches using quotation marks are useful when searching for famous sayings or specific names.&lt;br /&gt;Certain characters serve as phrase connectors. Phrase connectors work like quotes because they join your search words in the same way double quotes join your search words. For example, the search:&lt;br /&gt;[some-example-I-have-forgotten]&lt;br /&gt;is treated as a phrase search even though the search words are not enclosed in double quotes. Google recognizes hyphens, slashes, periods, equal signs, and apostrophes as phrase connectors.&lt;/blockquote&gt;&lt;br /&gt;For a while now, the second approach has not been working.  &lt;br /&gt;Compare &lt;a href="http://www.google.com/search?q=green-ham-and-eggs"&gt;[green-ham-and-eggs]&lt;/a&gt; with &lt;a href="http://www.google.com/search?q=%22green%20ham%20and%20eggs%22"&gt;["green ham and eggs"]&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Out of curiosity, I googled &lt;a href="http://www.google.com/search?q=%22green-ham-and-eggs%22"&gt;["green-ham-and-eggs"]&lt;/a&gt; and got what appeared to be the same results as for ["green ham and eggs"].&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://www.google.com/support/websearch/bin/answer.py?hl=en&amp;answer=136861"&gt;official position&lt;/a&gt; now seems to be:  &lt;blockquote&gt;The hyphen - is sometimes used as a signal that the two words around it are very strongly connected.&lt;/blockquote&gt;&lt;br /&gt;There might even be some utility to this interpretation, though for now it is depriving me of my favorite way of refining Google searches.  &lt;br /&gt;&lt;br /&gt;This &lt;a href="http://blogoscoped.com/archive/2008-10-28-n59.html"&gt;blog posting&lt;/a&gt; sheds a tiny amount of light on why Google did this.  At least, it teaches me how to save a keystroke: in searches, OR can be replaced with | (the pipe symbol or vertical bar).&lt;br /&gt;&lt;br /&gt;I'm trying to figure out how to fix this on my own.  The most obvious way of restoring this behavior would be to use an URL-rewriting proxy, like &lt;a href="http://www.chiark.greenend.org.uk/~sgtatham/ick-proxy/"&gt;ick-proxy&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The knee-jerk reaction is generally to propose some kind of Greasemonkey script or Firefox add-on, but I would like a solution that is as browser-independent (and indeed, computer-independent) and configuration-free as possible.&lt;br /&gt;&lt;br /&gt;Someone has also pointed out that the Microsoft search engine supports the dashes-as-phrase-connectors functionality, though I shudder at the idea of switching to Microsoft.&lt;br /&gt;&lt;br /&gt;I will report back once I get around to setting up ick-proxy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-6786473059896120082?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/6786473059896120082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=6786473059896120082' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6786473059896120082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/6786473059896120082'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/googling-for-phrases-trying-to-route.html' title='Googling for phrases: Trying to route around new inefficiencies'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-3134622437854488905</id><published>2009-03-20T23:30:00.003-04:00</published><updated>2009-03-20T23:38:36.401-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='films'/><category scheme='http://www.blogger.com/atom/ns#' term='fonts'/><category scheme='http://www.blogger.com/atom/ns#' term='review'/><title type='text'>Helvetica (the documentary): a summary and an opinionated review</title><content type='html'>A &lt;a href="http://www.imdb.com/title/tt0847817/"&gt;documentary about a font&lt;/a&gt; seems like a wonderfully geeky idea.  However, I felt like there wasn't much to this film.  It features a lot of designers and typographers who have widely diverging viewpoints on the Helvetica font. (You know, the one that looks &lt;font face="Helvetica"&gt;like this&lt;/font&gt;.)&lt;br /&gt;&lt;br /&gt;One guy says that Helvetica is the McDonald's of fonts: a ubiquitous, thing which people choose by default, even though it's crap.  Like I hadn't already thought this myself!  &lt;br /&gt;&lt;br /&gt;Others believe that Helvetica is the evolutionary endpoint of a particular aesthetic, or even the best of all possible fonts.&lt;br /&gt;&lt;br /&gt;Still another guy thinks that Helvetica was great in the sixties, but its flaw is that all the characters were meant to look maximally alike which makes it harder to read.  Best line of the film: While he describes himself as loving fonts, he says, "I've never sort of woken up with a typeface coming out, you know, like some people... I've got to do this, and they go to their, whatever, their easel, and these amazing brush strokes.  I don't have that urge.  You know, I wake up and usually I want to go back to sleep."&lt;br /&gt;&lt;br /&gt;Beyond the opinions, most of the information in the film may be found in the &lt;a href="http://en.wikipedia.org/wiki/Helvetica"&gt;Wikipedia article on Helvetica (the font)&lt;/a&gt;.  &lt;br /&gt;&lt;br /&gt;If you like montages of Helvetica-in-the-wild, this film is for you.&lt;br /&gt;&lt;br /&gt;Myself, I prefer Gill Sans.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.edwardtufte.com/bboard/q-and-a-fetch-msg?msg_id=00009r&amp;topic_id=1&amp;topic=Ask+E%2eT%2e"&gt;Edward Tufte does too.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-3134622437854488905?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/3134622437854488905/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=3134622437854488905' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/3134622437854488905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/3134622437854488905'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/helvetica-documentary-summary-and.html' title='Helvetica (the documentary): a summary and an opinionated review'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-9058311295856425722</id><published>2009-03-20T02:05:00.000-04:00</published><updated>2009-05-04T21:42:39.982-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ads'/><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><title type='text'>Disabling AdSense's interest-based ads (from both sides)</title><content type='html'>I still find the idea of my activities being tracked all over &lt;br /&gt;the Internet creepy (though oddly not as creepy when Google&lt;br /&gt;describes it, making it sound like just increasing ad relevance), so &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_jtSRNLN2Vms/ScaC9Bow_aI/AAAAAAAAAAs/kEXo1kUVhfQ/s1600-h/dsense-interests.jpg"&gt;&lt;img src="http://1.bp.blogspot.com/_jtSRNLN2Vms/ScaC9Bow_aI/AAAAAAAAAAs/kEXo1kUVhfQ/s320/dsense-interests.jpg" style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 170px;" border="0" alt=""id="BLOGGER_PHOTO_ID_5316080395080498594" /&gt;&lt;/a&gt; I decided to modify the settings on my AdSense account to &lt;br /&gt;opt this blog out of the tracking program which means a) clicks &lt;br /&gt;on ads here will not be added to a user's tracked behavior and&lt;br /&gt;b) ads on this site will not be based on behavior elsewhere.&lt;br /&gt;&lt;br /&gt;One can also simply delete and block all cookies from doubleclick.net&lt;br /&gt;to get the same behavior.  Or else use the various &lt;a href="http://www.google.com/privacy_ads.html"&gt;opt-out&lt;/a&gt; &lt;a href="http://www.privacychoice.org/"&gt;schemes&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-9058311295856425722?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/9058311295856425722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=9058311295856425722' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/9058311295856425722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/9058311295856425722'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/disabling-adsenses-interest-based-ads.html' title='Disabling AdSense&apos;s interest-based ads (from both sides)'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_jtSRNLN2Vms/ScaC9Bow_aI/AAAAAAAAAAs/kEXo1kUVhfQ/s72-c/dsense-interests.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-977494803520474376</id><published>2009-03-14T18:58:00.001-04:00</published><updated>2009-03-14T19:09:15.843-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='consuming'/><category scheme='http://www.blogger.com/atom/ns#' term='frugality'/><category scheme='http://www.blogger.com/atom/ns#' term='surliness'/><category scheme='http://www.blogger.com/atom/ns#' term='mp3'/><title type='text'>Why I subscribed to eMusic and why I eventually cancelled my subscription</title><content type='html'>I used to buy a lot of CDs, but I disliked having to cart them around every time I moved.  To break my habit of poring over the racks at used CD stores, I subscribed to &lt;a href="http://www.emusic.com"&gt;eMusic&lt;/a&gt;.  There were a lot of tracks that I wanted from the band They Might Be Giants on there, so I took the plunge and swore off the poring.  And it was great.  I got a very high bang-for-my-buck initially as I first tracked down types of music I liked and plunged deeper into them and then later kept finding new things that I enjoyed.  But after the first year, it became more of a chore to search through the music, trying to find something I wanted.  One can easily download lots of stuff and wind up deleting it all - if one is a scrutinizing stickler.  But I enjoyed the scrutinizing, as I saw eMusic as a good way to cheaply search for amazing new music.  &lt;br /&gt;&lt;br /&gt;Eventually, I realized that I had just switched from poring over racks of CDs to poring over pages of mp3s.  And after a couple of years I was definitely getting diminishing returns.  I wasn't always downloading my full 40 tracks before they disappeared at the end of the billing period.  &lt;br /&gt;&lt;br /&gt;The breaking point came when eMusic announced that they were changing the rates for existing users.  For the $10/month subscription, it was going from something like 25 cents per track to 33 cents.  I sorted through my iTunes library to determine what my good finds were for the previous year.  I figure that there were only about three CDs that I thought were good downloads and three individual tracks.  And in terms of actually finding new things, eMusic accounted for less than a third of the year's finds.  (I was finding more completely new stuff came through &lt;a href="http://www.last.fm"&gt;last.fm&lt;/a&gt;.)  This was no longer worth $120 per year.  The final change that really made this decision possible was Amazon's entering the DRM-free mp3 market.  That had been eMusic's second-most appealing feature (after price) back when the options were the iTunes Music Store or buying CDs.&lt;br /&gt;&lt;br /&gt;I do think that there was a period of about a year and a half where my eMusic subscription was worth what I was paying for it, but whether it was that I could no longer find the tracks that would have appealed to me, or that eMusic has just run out of things I wanted to listen to, the time had come to switch.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-977494803520474376?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/977494803520474376/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=977494803520474376' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/977494803520474376'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/977494803520474376'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/why-i-subscribed-to-emusic-and-why-i.html' title='Why I subscribed to eMusic and why I eventually cancelled my subscription'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-4228652440316620152</id><published>2009-03-12T13:32:00.004-04:00</published><updated>2009-04-01T13:56:47.150-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='awesome'/><category scheme='http://www.blogger.com/atom/ns#' term='grandcentral'/><category scheme='http://www.blogger.com/atom/ns#' term='phone'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>GrandCentral is finally reborn as Google Voice</title><content type='html'>GrandCentral was essentially a proxy phone number which people could call and which would ring all of your phones (land lines a bit before cell phones).  Or depending on your settings for the caller, it could ring some subset of your phones, go straight to voice mail, or be blocked entirely (Sayonara, telemarketers!).  Voice mail messages could be played from a web interface.  Calls within the United States were free.&lt;br /&gt;&lt;br /&gt;Google Voice adds automatic transcripts of voice mail, cheap international calls (since it works as VOIP) [apparently this is the only feature that costs money], conference calls, and the big one: It does what you would expect it to with SMS messages to your GrandCentral number: It forwards them to all your cell phones.  &lt;br /&gt;&lt;br /&gt;You can also &lt;a href="http://blogoscoped.com/forum/152658.html"&gt;send a Google Voice number an SMS by e-mail&lt;/a&gt;.  The Google Voice address is [your 10-digit number]@txt.voice.google.com&lt;br /&gt;&lt;br /&gt;Upgrading is apparently optional for existing GrandCentral users at this point.  Those who choose to do so would be wise to export their GC contacts first, as they will have to be re-added under the new Google Contacts scheme.  [I have accumulated 15 spammer numbers which I would not want to lose, and while it is possible do delist your GrandCentral number from telemarketers like any other number (via &lt;a href="http://www.donotcall.gov"&gt;donotcall.gov&lt;/a&gt;), I'd wager that some of the spam calls I got would not be filtered out by this mechanism.]&lt;br /&gt;&lt;br /&gt;For everyone else, there's the official &lt;a href="https://services.google.com/fb/forms/googlevoiceinvite/"&gt;Google Voice invitation request form&lt;/a&gt;.  Or you can &lt;a href="http://twitter.com/googlevoice/status/1314750022"&gt;request an invitation via the Google Voice Twitter account&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-4228652440316620152?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/4228652440316620152/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=4228652440316620152' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4228652440316620152'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4228652440316620152'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/grandcentral-is-finally-reborn-as.html' title='GrandCentral is finally reborn as Google Voice'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-4065152298099737841</id><published>2009-03-11T21:17:00.006-04:00</published><updated>2009-07-20T12:10:35.869-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dropbox'/><category scheme='http://www.blogger.com/atom/ns#' term='syncing'/><title type='text'>How to keep files synced between two computers</title><content type='html'>My old solution to syncing files was &lt;a href="http://en.wikipedia.org/wiki/Concurrent_Versions_System"&gt;cvs&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_jtSRNLN2Vms/SbhoXxdXcmI/AAAAAAAAAAU/l9eDK0wZ7c0/s1600-h/dropbox.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 105px;" src="http://1.bp.blogspot.com/_jtSRNLN2Vms/SbhoXxdXcmI/AAAAAAAAAAU/l9eDK0wZ7c0/s320/dropbox.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5312110518106288738" /&gt;&lt;/a&gt;   My new solution is &lt;a href="http://www.getdropbox.com"&gt;Dropbox&lt;/a&gt;.  Dropbox integrates perfectly with the Finder on OS X, working through a folder (called "Dropbox"), the contents of which are automatically synced with a central server whenever there is a change in the file contents (whether on the local computer or a remote computer). File and folder icons are modified with a tiny symbol which indicates the synced/syncing status of the file.  &lt;br /&gt;&lt;br /&gt;The downside is that when one computer is offline and a file is changed on both computers, Dropbox handles the changes less well than cvs. (cvs merges the changes intelligently and flags in the file where user assistance is needed with the merging.  Dropbox just saves the conflicting version to a separate file.)  I did recently find that syncing had stopped, but upgrading to a newer version of the Dropbox application solved that problem.&lt;br /&gt;&lt;br /&gt;Also, files are available through a web interface and old versions can be easily obtained.  It works with all major operating systems.  The first 2 gigabytes are free.  It is elegant and makes my life easier.  I give it high marks (to be updated once I figure out how many teabags are in my rating system).&lt;br /&gt;&lt;br /&gt;Dropbox currently has a referral program where, if you register through &lt;a href="https://www.getdropbox.com/referrals/NTQwNjE1Nzk"&gt;this referral link&lt;/a&gt;, both you and I will get an extra 250 megabytes.&lt;br /&gt;&lt;br /&gt;Bonus link: &lt;a href="http://wiki.getdropbox.com/TipsAndTricks/TextBasedLinuxInstall"&gt;How to install a console version of Dropbox (no GUI!) on Linux&lt;/a&gt; (thanks to Jared of the &lt;a href="http://mostlycli.blogspot.com/"&gt;Mostly CLI blog&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-4065152298099737841?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/4065152298099737841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=4065152298099737841' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4065152298099737841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/4065152298099737841'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/how-to-keep-files-synced-between-two.html' title='How to keep files synced between two computers'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_jtSRNLN2Vms/SbhoXxdXcmI/AAAAAAAAAAU/l9eDK0wZ7c0/s72-c/dropbox.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-1037216732968267281</id><published>2009-03-10T21:39:00.007-04:00</published><updated>2009-04-02T10:48:36.671-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nextgadget'/><category scheme='http://www.blogger.com/atom/ns#' term='kindle'/><category scheme='http://www.blogger.com/atom/ns#' term='ebooks'/><title type='text'>Why e-books suck and an extended rant</title><content type='html'>It's the same reason that all media encumbered by "digital rights management" suck: One little perturbation to the system and you are locked out of what you spent your money on.  I have bought several e-books for the Palm, chiefly from fictionwise.com.  My new PDA stopped working.  I switched back to my old PDA.  Now it is impossible for me to read my old books.  Some of them I never even finished in the first place.  Unlike meatspace books, I can not lend them, sell them, or trade them.  The money is gone.  &lt;br /&gt;&lt;br /&gt;Amazon's &lt;a href="http://www.amazon.com/gp/product/B00154JDAI?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creativeASIN=B00154JDAI"&gt;Kindle 2&lt;/a&gt; is appealing to me, not because I need an e-Book reader (a PDA with an offline browser is usually quite sufficient).  (The ability to convert PDFs into something the device can display seems quite useful though.)  As &lt;a href="http://xkcd.com/548/"&gt;pointed out by xkcd&lt;/a&gt;, it's because of its &lt;a href="http://blag.xkcd.com/2009/02/25/kindle-2/"&gt;free cellular Internet connection&lt;/a&gt; via Sprint EVDO.  Apparently, the Kindle's browser is primitive, like that of a smart phone.  Therefore I would estimate the value of this service is in the neighborhood of $100 per year (based on equivalent costs for prepaid Internet access).  More minuses: the interface is awkward and slow, and the Kindle itself is too big to fit in my pocket, so how often am I going to have it with me?&lt;br /&gt;&lt;br /&gt;However, whenever I go on trips, I wish I had something smaller than my laptop that would still give me most of its functionality (web browsing, music playing, presentation editing, paper reading).  The Kindle is not yet there, and neither is the iPhone.  Maybe next year...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-1037216732968267281?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/1037216732968267281/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=1037216732968267281' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/1037216732968267281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/1037216732968267281'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/why-e-books-suck-and-extended-rant.html' title='Why e-books suck and an extended rant'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-8472707390946128859</id><published>2009-03-08T18:31:00.005-04:00</published><updated>2009-03-11T22:08:56.927-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='this american life'/><category scheme='http://www.blogger.com/atom/ns#' term='event'/><category scheme='http://www.blogger.com/atom/ns#' term='TAL'/><title type='text'>This American Life, Live!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_jtSRNLN2Vms/SbRJhdvLy-I/AAAAAAAAAAM/tOUgjLOzFow/s1600-h/talLIVE.jpg"&gt;&lt;img src="http://3.bp.blogspot.com/_jtSRNLN2Vms/SbRJhdvLy-I/AAAAAAAAAAM/tOUgjLOzFow/s400/talLIVE.jpg" style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 400px; height: 81px;" border="0" alt="This American Life, Live!" /&gt;&lt;/a&gt;&lt;br /&gt;Last year, &lt;a href="http://www.thislife.org"&gt;This American Life&lt;/a&gt; held a live show in New Your City, to promote the second season of its television show, and then simulcast it to a bunch of movie theaters around the country.  This year, they are doing it again, only this time, it will be one of their stage shows which will be eventually edited down into a radio show.  It is going to be amazing!  Ira Glass is one of the great entertainers of our time. &lt;br /&gt;Here are some of the previous live TAL shows, which are among my very favorites:&lt;ul&gt;&lt;br /&gt;&lt;li&gt;2007: &lt;a href="http://www.thislife.org/Radio_Episode.aspx?sched=1176"&gt;What I Learned From Television&lt;/a&gt;&lt;br /&gt;&lt;li&gt;2003: &lt;a href="http://www.thislife.org/Radio_Episode.aspx?sched=1033"&gt;Lost in America&lt;/a&gt;&lt;br /&gt;&lt;li&gt;2000: &lt;a href="http://www.thislife.org/Radio_Episode.aspx?episode=174"&gt;Birthdays, Anniversaries and Milestones&lt;/a&gt;&lt;br /&gt;&lt;li&gt;1998: &lt;a href="http://www.thislife.org/Radio_Episode.aspx?episode=118"&gt;What You Lookin' At?&lt;/a&gt; (with music by They Might Be Giants)&lt;/ul&gt; &lt;br /&gt;The event page for this year's show is &lt;a href="http://www.fathomevents.com/OriginalPrograms/ThisAmericanLifeLive.aspx?utm_source=TAL&amp;utm_medium=Link_TAL&amp;utm_campaign=TAL2009"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-8472707390946128859?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/8472707390946128859/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=8472707390946128859' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8472707390946128859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8472707390946128859'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/this-american-life-live.html' title='This American Life, Live!'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_jtSRNLN2Vms/SbRJhdvLy-I/AAAAAAAAAAM/tOUgjLOzFow/s72-c/talLIVE.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-3683167197728737338</id><published>2009-03-08T12:44:00.003-04:00</published><updated>2009-04-02T11:40:05.699-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comics'/><category scheme='http://www.blogger.com/atom/ns#' term='watchmen'/><title type='text'>Watchmen: the movie review</title><content type='html'>I saw the Watchmen movie last night.  I think it only works as a film if you have read the graphic novel, as the movie feels like it is missing the layers of sophistication that allow one to get involved with the characters and ponder the questions that the comic book raises.  My advice would be to read the graphic novel, and then wait for the special DVD release, which is supposed to have a lot more footage that makes it more faithful to the comic book (including the comic-book-within-a-comic-book pirate sequences, which emphasize the metaphor).  (Although weirdly, it turns out that the extra footage has already been &lt;a href="http://www.amazon.com/gp/product/B001QTWC0K?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B001QTWC0K"&gt;released on DVD&lt;/a&gt;.  And apparently there's an animated version of the graphic novel called &lt;a href="http://www.amazon.com/gp/product/B001QFYLJY?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B001QFYLJY"&gt;Watchmen: The Complete Motion Comic&lt;/a&gt;?   Is this really necessary?  If all the voices are done by one guy, what does this add to the Static Images Comic?  Something tells me that somebody needs to read Scott McCloud's &lt;a href="http://www.amazon.com/gp/product/006097625X?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=006097625X"&gt;Understanding Comics&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.scottmccloud.com/2-print/1-uc/index.html"&gt;Here&lt;/a&gt; is Alan Moore's blurb: "Understanding Comics is quite simply the best analysis of the medium that I have ever encountered. With this book Scott McCloud has taken breathtaking leaps towards establishing a critical language that the comic art form can work with and build upon in the future. Lucid and accessible, it is an astonishing feat of perception. Highly recommended."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-3683167197728737338?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/3683167197728737338/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=3683167197728737338' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/3683167197728737338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/3683167197728737338'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2009/03/watchmen-i-saw-watchmen-movie-last.html' title='Watchmen: the movie review'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-8114784287582535270</id><published>2008-07-21T18:13:00.000-04:00</published><updated>2009-03-15T19:00:26.834-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='opinion'/><category scheme='http://www.blogger.com/atom/ns#' term='analysis'/><category scheme='http://www.blogger.com/atom/ns#' term='spoilers'/><category scheme='http://www.blogger.com/atom/ns#' term='batman'/><title type='text'>The Dark Knight - a spoiler-ridden non-review analysis</title><content type='html'>I saw &lt;span style="font-style:italic;"&gt;&lt;a href="www.imdb.com/title/tt0468569"&gt;The Dark Knight&lt;/a&gt;&lt;/span&gt; on Saturday, but I am still thinking about it. &lt;b&gt;That&lt;/b&gt; is the sign of a good film. The way the Joker would tell different people different stories of how he got his scars was interesting. Is he just a pathological liar? He was also very charming, tailoring his message to his audience, as when he convinced Harvey Dent to flip out. The other notable lie I recall is when he deliberately switched the addresses for Rachel and Dent when giving them to Batman. But what I wonder about him is whether he was telling the truth when he said things to suggest that he had no plan... that he was just "like a dog chasing cars" and wouldn't know what to do with one if he caught it. Look at the plan he developed to get caught and put in prison so he could break out the Chinese guy. Or the bank heist!&lt;br /&gt;&lt;br /&gt;I think that, rather that being the embodiment of pure chaos, which is what he claims, he is actually very methodically saying and doing things that will &lt;u&gt;create&lt;/u&gt; the most chaos.&lt;br /&gt;&lt;br /&gt;Though the Joker was not the only one who was manipulating the truth... Harvey Dent claimed to be Batman.  Gordon pretended to be dead.  Alfred destroyed Rachel's letter to Bruce.  And Batman took the blame for Dent's murders at the end.  Deception seems to be a strong theme in Christopher Nolan's work.  &lt;br /&gt;&lt;br /&gt;I thought that, as a thriller, &lt;span style="font-style:italic;"&gt;The Dark Knight&lt;/span&gt; had a good, complex story with lots of little bits, and good character development. And it looked good visually. Also, it was funny, like when the Joker said "Do I look like a guy with a plan?". Or when that other guy said: "So you think your client, one of the richest and most powerful men in the world, is secretly a vigilante, who goes around at night beating criminals to a pulp with his bare hands? And your plan is to blackmail this person? Good luck with that."&lt;br /&gt;&lt;br /&gt;Things I didn't like: This film seemed a little too realistic, in the sense that including the scene in China seemed to anchor the film too much in the now and in the real world, whereas &lt;span style="font-style:italic;"&gt;&lt;a href="www.imdb.com/title/tt0372784/"&gt;Batman Begins&lt;/a&gt;&lt;/span&gt; seemed a little more timeless, and Gotham City, a little more alternate-reality. Remember the monorail in &lt;span style="font-style:italic;"&gt;Batman Begins&lt;/span&gt;? Nowhere to be found in &lt;span style="font-style:italic;"&gt;The Dark Knight&lt;/span&gt;. But the killer was that I found the action scenes too much in the modern, trendy, up-close shots so that you can't really tell what's going on. While there were close, fast cuts in the previous film, I only had the impression of disorientation when the Scarecrow character gassed people. I guess that that filming style makes you feel more like you are &lt;u&gt;in&lt;/u&gt; the fight, but it decreases my enjoyment.&lt;br /&gt;&lt;br /&gt;The other problem was that, while the story was better in the sense that it was more complex, I preferred the story of &lt;span style="font-style:italic;"&gt;Batman Begins&lt;/span&gt;, which was about Bruce Wayne struggling with a desire for revenge and becoming a vigilante. I found that, both in terms of the story and in terms of the action sequences, watching &lt;span style="font-style:italic;"&gt;Batman Begins&lt;/span&gt; the first time charged me up and left me excited. (Though I watched &lt;span style="font-style:italic;"&gt;Batman Begins&lt;/span&gt; a second time, and it loses a lot when you know what's going to happen.  I suspect that &lt;span style="font-style:italic;"&gt;The Dark Knight&lt;/span&gt; may hold up better under multiple viewings.)  Where &lt;span style="font-style:italic;"&gt;The Dark Knight&lt;/span&gt; worked was on a psychological and character development level (though being more about the Joker and Harvey Dent with some stuff about the Bruce Wayne - Rachel Dawes - Harvey Dent love triangle).  Ultimately, the film is maybe the best crime thriller (or something... its genre is not so well-defined) that I've ever seen, but it was not the most awesome action film.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-8114784287582535270?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/8114784287582535270/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=8114784287582535270' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8114784287582535270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/8114784287582535270'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2008/07/dark-knight-spoiler-ridden-non-review.html' title='&lt;span style=&quot;font-style:italic;&quot;&gt;The Dark Knight&lt;/span&gt; - a spoiler-ridden non-review analysis'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-117070676162004248</id><published>2007-02-05T15:16:00.001-05:00</published><updated>2009-03-10T14:22:57.820-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='palm'/><category scheme='http://www.blogger.com/atom/ns#' term='plucker'/><category scheme='http://www.blogger.com/atom/ns#' term='bigger'/><title type='text'>How to make Plucker display full screen</title><content type='html'>Wisdom from the plucker mailing list:&lt;br /&gt;&lt;br /&gt;Q: How can one use the offline web browser Plucker in full screen mode on the Palm Tungsten T3 (or other full screen Palm)?&lt;br /&gt;&lt;br /&gt;A: 'Go to "Preferences" &gt; "Layout" &gt; Rotation at the bottom of list and select clockwise or counterclockwise or none.'&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-117070676162004248?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/117070676162004248/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=117070676162004248' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/117070676162004248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/117070676162004248'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2007/02/wisdom-from-plucker-mailing-list-q-how.html' title='How to make Plucker display full screen'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-117067782181814387</id><published>2007-02-05T07:03:00.002-05:00</published><updated>2009-03-11T22:10:21.955-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='event'/><category scheme='http://www.blogger.com/atom/ns#' term='TAL'/><title type='text'>This American Life live shows!</title><content type='html'>&lt;blockquote&gt;&lt;br /&gt;It's finally time again for THIS AMERICAN LIFE LIVE -- the "What I Learned from Television" Tour!&lt;br /&gt;&lt;br /&gt;THIS AMERICAN LIFE is doing its first "live show" tour in four years!  We'll be peforming an extended version of the radio show in six cities at the end of February/beginning of March.  Tickets go on sale soon -- in many cases you're getting an early chance to buy tickets before they're available to the general public -- so get 'em before they're sold out.  All the information is below.&lt;br /&gt;&lt;br /&gt;In the shows, Ira Glass and popular TAL contributors will tell stories on the theme "What I Learned From TV" -- hear Sarah Vowell talk about the popularity of Puritans on TV (she swears this is true); Dan Savage on shielding his son from sexual content on TV while he writes what is possibly one of the dirtiest advice columns in the country; and more!  Plus, Ira Glass will talk about making the new TAL TV show for the Showtime network, with behind-the-scenes footage of what did and didn't work as producers tried to apply the TAL sensibility to TV. &lt;br /&gt;&lt;hr&gt;&lt;br /&gt;NEW YORK CITY: February 26, 2007, 8 p.m.&lt;br /&gt;Avery Fisher Hall at Lincoln Center&lt;br /&gt;Special This American Life Email Pre-Sale:  TAL email subscribers can purchase tickets right now by calling 212/721-6500 and mentioning code WNYCTAL.&lt;br /&gt;Tickets go on sale to the public Friday, February 2, at www.lincolncenter.org, at CenterCharge (212/721-6500), or at the Avery Fisher Hall Box office.&lt;br /&gt;Appearances by: Ira Glass, Chris Wilcha, Dan Savage, Sarah Vowell, and Jonathan Goldstein, with special musical guest Mates of State&lt;br /&gt;&lt;br /&gt;BOSTON: February 27, 2007, 8 p.m.&lt;br /&gt;Boston Opera House&lt;br /&gt;Special This American Life Email Pre-Sale:  TAL email subscribers can purchase tickets right now by going to http://www.ticketmaster.com/artist/1099363 and entering code: WBUR&lt;br /&gt;Tickets go on sale to the public Friday, February 2, at http://www.ticketmaster.com/artist/1099363, via Charge by Phone at 617/931-2787, or at the Boston Opera House box office.&lt;br /&gt;Appearances by: Ira Glass, Sarah Vowell, Dan Savage, and Jonathan Goldstein, with special musical guest Mates of State&lt;br /&gt;&lt;br /&gt;MINNEAPOLIS: February 28, 2007&lt;br /&gt;Orpheum Theatre&lt;br /&gt;Tickets are sold out.  Seats may be available closer to the event.   Check http://www.ticketmaster.com/artist/1099357&lt;br /&gt;Appearances by: Ira Glass, Sarah Vowell, Dan Savage, and David Rakoff, with special musical guest Mates of State&lt;br /&gt;&lt;br /&gt;CHICAGO: March 1, 2007, 8 p.m.&lt;br /&gt;Chicago Theatre&lt;br /&gt;Special This American Life Email Pre-Sale:  TAL email subscribers can purchase tickets right now by going to www.ticketmaster.com and entering code: WBEZTAL&lt;br /&gt;Tickets available Friday, February 2, at http://www.ticketmaster.com/artist/1098912, via Charge by Phone (312/902-1500), or at the Chicago Theatre Box Office.&lt;br /&gt;Appearances by: Ira Glass, Sarah Vowell, Dan Savage, and David Rakoff, with special musical guest Mates of State&lt;br /&gt;&lt;br /&gt;SEATTLE: March 7, 2007, 8 p.m.&lt;br /&gt;Paramount Theatre&lt;br /&gt;Special This American Life Email Pre-Sale:  TAL email subscribers can purchase tickets Wednesday, February 7, by going to www.ticketmaster.com and mentioning code: KUOWTAL&lt;br /&gt;Tickets available to the general public February 9 at 10 a.m. at www.ticketmaster.com, via Charge by Phone (206/292-ARTS (2787)), or at the Paramount Theatre box office.&lt;br /&gt;Appearances by: Ira Glass, Alexa Junge, and David Rakoff, with special musical guest Mates of State&lt;br /&gt;&lt;br /&gt;LOS ANGELES: March 12, 2007, 8 p.m.&lt;br /&gt;Royce Hall&lt;br /&gt;Special This American Life Email Pre-Sale:  TAL email subscribers can purchase tickets Wednesday, February 7, by going to www.ticketmaster.com and mentioning code: KCRWTAL&lt;br /&gt;Tickets available to the general public February 9, at http://www.ticketmaster.com/artist/862391, via Charge by Phone (310/825-2101 or 213/365-3500), or at the UCLA Central Ticket Office at the James West Alumni Center.&lt;br /&gt;Appearances by: Ira Glass, Sarah Vowell, and John Hodgman, with special musical guest TBA&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-117067782181814387?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/117067782181814387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=117067782181814387' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/117067782181814387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/117067782181814387'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2007/02/this-american-life-live-shows-its.html' title='This American Life live shows!'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-116398271036105312</id><published>2006-11-19T19:27:00.000-05:00</published><updated>2006-11-19T19:31:50.373-05:00</updated><title type='text'></title><content type='html'>My current hack for syncing text files (well, _a_ text file) between a Mac and a Palm, using the MacNoteTaker conduit - NoteTakersFriend.sh:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;#It seems like growlnotify can not be launched by NoteTakersFriend&lt;br /&gt;&lt;br /&gt;#could probably rewrite simply with rsync&lt;br /&gt;#gotta wait until the first sync is done&lt;br /&gt;#watchfile /Users/Surly/Documents/Palm/Users/Palm\ Users&lt;br /&gt;#-60 second interval &lt;br /&gt;&lt;br /&gt;#IF Conduit Manager is not an active process OR if that UserData file exists then execute NoteTakersFriend&lt;br /&gt;#watchedfileboils&lt;br /&gt;#this is definitely checkable through Applescript (see itunes status mod.)&lt;br /&gt;#newer=ls -t /Users/Surly/Documents/Palm/Users/Surly/NoteTaker/remind*|awk '{print $1}';&lt;br /&gt;#simpler:   TIME=`date | awk '{print $4}'`&lt;br /&gt;&lt;br /&gt;#DEBUGGING:&lt;br /&gt;#It seems like something sometimes gets screwed up such that this file gives no echo output.&lt;br /&gt;#The cure to this sleeping sickness seems to be somewhere in running (at least pasting the &lt;br /&gt;#commands into a sh shell), thecure.sh (basically commenting out the if [ "$?" != "0" ] line and it's fi terminator)&lt;br /&gt;SyncMode=`diff /Users/Surly/Documents/Palm/Users/Palm\ Users /Users/Surly/Documents/Palm/Users/Palm\ UsersSyncOnce |cut -c 112-117`;&lt;br /&gt;newer=`(set \`ls -t /Users/Surly/Documents/Palm/Users/Surly/NoteTaker/remind*|awk '{print $1}'\`; echo $1)`&lt;br /&gt;#echo "$newer"&lt;br /&gt;#if (lastntf&lt;HotSync Log) &lt;br /&gt;if  [ "$SyncMode" = "differ" -a "$newer" = "/Users/Surly/Documents/Palm/Users/Surly/NoteTaker/remind.txt" ]; then  # = for strings and -eq for numbers&lt;br /&gt;# if [ls -t /Users/Surly/Documents/Palm/Users/Surly/NoteTaker/remind*|awk '{print $1}'=~s/remindmergetracker&lt;br /&gt;#if (change date of NoteTaker/remind.txt &gt;change data of remind.txt)  &lt;br /&gt;&lt;br /&gt;#deal with line feed discrepancy&lt;br /&gt;#merge osx old palm&lt;br /&gt; userspath="/Users/Surly/Documents/Palm/Users/";&lt;br /&gt; fileold="/Users/Surly/Documents/Palm/Users/Surly/tmp/remind.txt";&lt;br /&gt; file="/Users/Surly/remind.txt";&lt;br /&gt; filepalm="/Users/Surly/Documents/Palm/Users/Surly/NoteTaker/remind.txt";&lt;br /&gt; filemerged="/Users/Surly/Documents/Palm/Users/Surly/tmp/remind.txt.merged";&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; cp $filepalm $filepalm.tmp&lt;br /&gt; tr '\015' '\012' &lt;$filepalm.tmp &gt; $filepalm&lt;br /&gt; rm $filepalm.tmp&lt;br /&gt;#instead of diffing palm and laptop versions, just check last time &lt;br /&gt;#NoteTaker/remind.txt was touched&lt;br /&gt; diff -q "$file" "$filepalm" &gt;/dev/null;&lt;br /&gt; if [ "$?" != "0" ]; then #$?==0 when files are identical (no differences)&lt;br /&gt;#if [ diff -q "$file" "$filepalm" &gt;/dev/null 2&gt;&amp;1]; then&lt;br /&gt;#echo "$file1 and $file2 differ"&lt;br /&gt;  merge -p $file $fileold $filepalm &gt;$filemerged&lt;br /&gt;  cp $fileold $fileold.1&lt;br /&gt;  cp $file /Users/Surly/remind.bak&lt;br /&gt;  cp $filemerged $filepalm&lt;br /&gt;  cp $filemerged $file&lt;br /&gt;  cp $filemerged $fileold&lt;br /&gt;#cp $userspath/Surly/tmp/remind.txt.merged&lt;br /&gt;#cp $userspath/Palm\ UsersWriteOnce $userspath/Palm\ Users&lt;br /&gt;  cp $userspath/Palm\ UsersSyncOnce $userspath/Palm\ Users&lt;br /&gt;  touch $userspath/Surly/NoteTaker/remindmergetracker&lt;br /&gt;#the assumption here is that nothing happens on the palm between the &lt;br /&gt;#read sync and the write one - i.e., days do not go by&lt;br /&gt;#defense against such intervening stretches?  Maybe on reboot cp ReadPalm to default&lt;br /&gt;&lt;br /&gt;#another possible loophole: Conduit Settings is open, NTF runs, then Conduit&lt;br /&gt;#Settings closes, saving its prior settings&lt;br /&gt;#open -a /Applications/Palm/Conduit\ Manager&lt;br /&gt;  echo "HotSync again to synchronize NoteTaker" | /usr/local/bin/growlnotify -s -a /Applications/Palm/HotSync\ Manager&lt;br /&gt;#man 1 growlnotify for help&lt;br /&gt;  echo "NoteTaker sync mode =&gt;2: Sync with Palm"&lt;br /&gt; fi &lt;br /&gt;#identical files&lt;br /&gt;#NoteTaker/remind.txt was newer than &lt;br /&gt;else&lt;br /&gt; if  [ "$SyncMode" = "differ" ]; then&lt;br /&gt;  echo "NoteTaker sync mode 1: Read from Palm"&lt;br /&gt; else&lt;br /&gt;  echo "NoteTaker sync mode 2: Sync with Palm"&lt;br /&gt; fi&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#manual sync again?  &lt;br /&gt;#if so, then must worry about even or odd number of syncs&lt;br /&gt;#or else come up with some kind of timing gimmick or something&lt;br /&gt;&lt;br /&gt;#TO automate for an entire directory of synched files modify:&lt;br /&gt;#for file1 in *; do&lt;br /&gt;#for file2 in *; do&lt;br /&gt;#if [ "$file1" != "$file2" ]; then&lt;br /&gt;#if [ ! diff -q "$file1" "$file2" &gt;/dev/null 2&gt;&amp;1 ]; then&lt;br /&gt;#echo "%file1 and $file2 are identical"&lt;br /&gt;#fi&lt;br /&gt;#fi&lt;br /&gt;#done&lt;br /&gt;#done&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;I hope to document this in the future, but basically I just set NoteTaker conduit settings (to read from Palm, write to Palm, whatever) through HotSync Manager and then copied the Palm Users file to those named in the script.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-116398271036105312?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/116398271036105312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=116398271036105312' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116398271036105312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116398271036105312'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/11/my-current-hack-for-syncing-text-files.html' title=''/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-116355607850523766</id><published>2006-11-14T20:37:00.002-05:00</published><updated>2009-03-08T17:55:35.922-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='palm'/><category scheme='http://www.blogger.com/atom/ns#' term='plucker'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>pluck - A perl script to simplify saving web pages for offline browsing on a Palm</title><content type='html'>&lt;a href="http://www.plkr.org"&gt;Plucker&lt;/a&gt; Desktop, the program to convert web pages and text files into a format readable on the Palm (using the Plucker viewer), is purported to not work on Intel Macs.  Whatever - I always found it a very clicky program and have wanted for years to install a command-line equivalent.  Stymied by problems with compiling the Plucker Python distiller, I looked briefly at payware iSilo, but it, too, is not yet working on Intel.  I dug around in the Plucker Python distiller and found a version of the Python scripts which can be run directly by just plopping them wherever.  &lt;br /&gt;&lt;br /&gt;Then I wrote a simple perl script for processing those .webloc files that I drag off the [Safari|Shiira] address bar:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;#!/usr/bin/perl -w&lt;br /&gt;@files = &lt;/Users/Surly/plucker/to-pluck/*&gt;;&lt;br /&gt;foreach $file (@files) {&lt;br /&gt; if ($file=~/\s/)&lt;br /&gt; {$newfile=$file;&lt;br /&gt; $newfile=~s/\s/_/g;$newfile=~s/\'//g;$newfile=~s/\#//g;&lt;br /&gt; $newfile=~s/\&amp;//g;$newfile=~s/\://g;$newfile=~s/\;//g;&lt;br /&gt; $newfile=~s/\|//g;$newfile=~s/\?//g;$newfile=~s/\"//g;&lt;br /&gt; $newfile=~s/\(//g;$newfile=~s/\)//g;$oldfile=$file;&lt;br /&gt; $oldfile=~s/ /\\ /g;$oldfile=~s/\'/\\'/g;$oldfile=~s/\;/\\\\;/g;&lt;br /&gt; $oldfile=~s/\&amp;/\\\&amp;/g;$oldfile=~s/\:/\\\:/g;&lt;br /&gt; $oldfile=~s/\|/\\\|/g;$oldfile=~s/\?/\\\?/g;&lt;br /&gt; $oldfile=~s/\"/\\\"/g;$oldfile=~s/\(/\\\(/g;&lt;br /&gt; $oldfile=~s/\)/\\\)/g;&lt;br /&gt; `mv $oldfile $newfile`;&lt;br /&gt; print "mv $oldfile $newfile\n";&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$i=0;&lt;br /&gt;@files = &lt;/Users/Surly/plucker/to-pluck/*&gt;;&lt;br /&gt;foreach $file (@files) {&lt;br /&gt; $URL=`strings $file/rsrc | grep http | sed '/^.http/s//http/' | head -1`;&lt;br /&gt; $URL=~s/\s+//g;&lt;br /&gt; $URL=~s/\&lt;string\&gt;//;&lt;br /&gt; $URL=~s/\&lt;\/string\&gt;//;&lt;br /&gt;&lt;br /&gt;print $URL;print "\n"; &lt;br /&gt; $originalfile=$file;&lt;br /&gt; $justfilename=$file;&lt;br /&gt; $justfilename=~s/\/Users\/Surly\/plucker\/to-pluck\///;# WITH .webloc&lt;br /&gt; $pdbname=$justfilename;&lt;br /&gt; $pdbname=~s/\.webloc//;&lt;br /&gt; $pdbname=substr($pdbname,0,20);&lt;br /&gt;  $p='/Users/Surly/Documents/Palm/Users/Surly/Files\\ to\\ Install/';&lt;br /&gt; `/Users/Surly/bin/PyPlucker/Spider.py --maxdepth=1 --home-url=$URL -f $p$pdbname`;&lt;br /&gt; `mv $originalfile /Users/Surly/plucker/plucked/$justfilename`;&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;Yeah, it's ugly, but it works.&lt;br /&gt;&lt;br /&gt;Then it was necessary to use Fink to install netpbm for processing some of the image files.  This failed on jpegs, and even though I had set up ImageMagick (twice, since Fink also did an install) and had set &lt;code&gt;image_parser = ImageMagick&lt;/code&gt; in .pluckerrc Spider.py was seemingly still defaulting to netpbm.  Anyhow, I noticed that there were some more image processing settings under the [POSIX] section of the .pluckerrc file so I installed libjpeg and then in the .pluckerrc file set &lt;code&gt;djpeg_program = djpeg&lt;/code&gt;.  And now it all seems to work.  &lt;br /&gt;&lt;br /&gt;What's left to do: devise a scheme for handling the more complicated plucking jobs: like those that require altering the default &lt;tt&gt;maxdepth&lt;/tt&gt; value (1 seems _so much_ better than 2) or those that need special URL matching; Folder Actions for automating the plucking; catching errors in parsing and not moving the .webloc file under those circumstances.&lt;br /&gt;&lt;br /&gt;The bottom line: Plucking on an Intel Mac is not that hard to set up.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-116355607850523766?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/116355607850523766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=116355607850523766' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116355607850523766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116355607850523766'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/11/plucker-desktop-program-to-convert-web.html' title='pluck - A perl script to simplify saving web pages for offline browsing on a Palm'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-116344084436765315</id><published>2006-11-13T12:56:00.000-05:00</published><updated>2006-11-13T14:11:15.200-05:00</updated><title type='text'></title><content type='html'>Compatibility problems between old (2.1.something) and new (2.9.something) versions of &lt;a href="http://www.octave.org"&gt;Octave&lt;/a&gt; - there are a lot of them.  Apparently many of them are for "compatibilty" with Matlab, while sacrificing (fairly draconianly, in some cases) backward compatiblity with Octave.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;The old method of setting the path where Octave looks for other function files has changed from setting a LOADPATH environment variable in .octaverc to something like this: &lt;br /&gt;&lt;code&gt;addpath (genpath ("~/Library/Octave"));&lt;/code&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://aquaterm.sourceforge.net/"&gt;Aquaterm&lt;/a&gt;, the way to get Octave to plot in OS X with Gnuplot but without X11, is displaying some kind of wonky behavior in its 1.0.2 incarnation.  This may be entirely Aquaterm's fault - the old version (0.3?) was also wonky and required a "close all" command in Octave to get old plot windows killed.  I'm still working on this, but excising the "close all" commands at least allows a function to plot to the same windows when called twice.  &lt;br /&gt;&lt;li&gt;At some point back in 2004, Octave &lt;a href="http://velveeta.che.wisc.edu/octave/lists/archive//help-octave.2004/msg00305.html"&gt;switched from defaulting to column vectors to defaulting to row vectors&lt;/a&gt; because that's what Matlab does.  If you routinely use the construction&lt;br /&gt;&lt;code&gt;for i=1:n, x(i)= &lt;i&gt;whatever&lt;/i&gt; ; end;&lt;/code&gt;,&lt;br /&gt;this is a serious monkey wrench heading your way.  &lt;br /&gt;&lt;br /&gt;The simplest solution that I have found so far is to go through the code and replace&lt;br /&gt;&lt;tt&gt;x(i)=&lt;/tt&gt; constructions with &lt;tt&gt;x(i,:)&lt;/tt&gt; constructions.  This will ensure backward compatibility of the script.&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;There are some nice features in this new version of Octave, including allowing matrices of arbitrary dimensionality.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-116344084436765315?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/116344084436765315/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=116344084436765315' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116344084436765315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116344084436765315'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/11/compatibility-problems-between-old-2.html' title=''/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-116308527198391110</id><published>2006-11-09T10:06:00.000-05:00</published><updated>2006-11-09T10:15:01.780-05:00</updated><title type='text'></title><content type='html'>I'm switching (at least temporarily) to the &lt;a href="http://hmdt-web.net/shiira/en"&gt;Shiira web browser&lt;/a&gt; for three reasons:&lt;br /&gt;&lt;br /&gt;1) Firefox is the only OS X browser that works with Gmail's keyboard shortcuts, but all browsers run out of memory eventually so a second browser is needed for actual browsing.&lt;br /&gt;&lt;br /&gt;2) Safari is great, but the new version (2.0.4) has serious problems with keyboard navigation (page up/page down/home/end keys are unresponsive, and tabbing gives undesired results).&lt;br /&gt;&lt;br /&gt;3) Shiira (1.2.2) finally has a substitute for Firefox's keyword searches and Safari's AcidSearch add-on: it is called "custom search engines" and is found under the Window menu.  And like everything else on Shiira, it works.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-116308527198391110?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/116308527198391110/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=116308527198391110' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116308527198391110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116308527198391110'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/11/im-switching-at-least-temporarily-to.html' title=''/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-116025423456636012</id><published>2006-10-07T16:30:00.001-04:00</published><updated>2009-03-14T19:12:08.290-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nietzsche'/><title type='text'>When you look into the abyss...</title><content type='html'>&lt;a href="http://www.losanjealous.com/nfc/"&gt;Nietzsche Family Circus&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/2859/3638/1600/nfc000.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/2859/3638/400/nfc000.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-116025423456636012?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/116025423456636012/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=116025423456636012' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116025423456636012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/116025423456636012'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/10/when-you-look-into-abyss.html' title='When you look into the abyss...'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-115946136194876343</id><published>2006-09-28T12:15:00.000-04:00</published><updated>2009-03-07T19:35:31.330-05:00</updated><title type='text'></title><content type='html'>From the This American Life Update from September 27, 2006:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;NEWS FLASH!  This week we're introducing our brand-new custom Flash player from Pupu Platters Studios, which allows you to stream our MP3 archives for free while preserving your ability to pause, fast-forward and rewind. You don't have to do anything special – the player will open automatically whenever you click on our streaming audio links.   So, if you were frustrated with streaming options this summer please give us another try.  We're ready to rumble!&lt;br /&gt;&lt;br /&gt;ALSO -- CHEAP DOWNLOADS!  Our back catalogue is now $.95 a show at the Apple Music Store.   Download high-quality files quickly and easily!  Have TAL listening parties, and use the money you save on snack trays!&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/2859/3638/1600/tal-flash-player.0.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/2859/3638/400/tal-flash-player.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;The Flash player works pretty well.  It loads the whole sound file so you can jump around by dragging the time indicator.  The fast-forward and rewind buttons are inoperative under Safari 1.3.2.  What would be nice is if there were a menu for each episode so you could click on the different Acts to jump to them.  Also there should be keyboard shortcuts for navigation.  Overall this is a step up from the Real Player and the deliberately crippled m3u option.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-115946136194876343?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/115946136194876343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=115946136194876343' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115946136194876343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115946136194876343'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/09/from-this-american-life-update-from.html' title=''/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-115720950914323456</id><published>2006-09-02T11:03:00.001-04:00</published><updated>2009-04-02T10:58:32.088-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lego'/><category scheme='http://www.blogger.com/atom/ns#' term='geek-out'/><title type='text'>Mindstorms of the LEGO variety</title><content type='html'>&lt;ul&gt;&lt;a href="http://www.amazon.com/gp/product/B000E4FDAE?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B000E4FDAE"&gt;LEGO Mindstorms NXT&lt;/a&gt; links and dreams&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.nxtclub.com/2006/04/23/lego-rcx-vacuum-cleaner/"&gt;RCX Era (Old-School) Mindstorms Vacuum Cleaner Robot&lt;/a&gt; - Cleaning robots seem like an awesome idea.  Also paper organizing robots.  I NEED cleaning robots to serve my will.  &lt;br /&gt;&lt;li&gt;&lt;a href="http://mindstormsnxt.blogspot.com/2006/08/lego-cam-web-controlled-nxt-robot.html"&gt;NXT Camera Robot&lt;/a&gt; - This is controllable over the Web.  I don't need telepresence as badly as I need cleaning robots.  But I still need it.&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-115720950914323456?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/115720950914323456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=115720950914323456' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115720950914323456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115720950914323456'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/09/lego-mindstorms-nxt-links-and-dreams.html' title='Mindstorms of the LEGO variety'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-115712515224667041</id><published>2006-09-01T11:20:00.001-04:00</published><updated>2009-04-02T11:10:15.372-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='presentations'/><category scheme='http://www.blogger.com/atom/ns#' term='os x'/><title type='text'>Alternatives to PowerPoint for making presentations on OS X</title><content type='html'>The best alternative seems to be Apple's &lt;a href="http://www.amazon.com/gp/product/B0014X2UAK?ie=UTF8&amp;tag=thesurtea-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0014X2UAK"&gt;Keynote&lt;/a&gt; as it is a) cheaper and b) better designed.  Microsoft's PowerPoint program has serious issues with PDF files.  If you try to paste one into your presentation, it converts it to some other format, and (as an example) you lose any transparency that you might have had in it.  Keynote handles PDF's perfectly.&lt;br /&gt;&lt;br /&gt;I tried using &lt;a href="www.neooffice.org"&gt;NeoOffice&lt;/a&gt; but it just seemed to require immense amounts of RAM, and was therefore unusable.&lt;br /&gt;&lt;br /&gt;I like the idea of a completely different approach like &lt;a href="http://prosper.sourceforge.net/"&gt;Prosper&lt;/a&gt; (LaTeX templates for presentations) or &lt;a href="http://meyerweb.com/eric/tools/s5/"&gt;S5&lt;/a&gt; (XHTML, CSS, and Javascript approach), but these script-like schemes completely ignore one of the essential features of a presentation creation program: A simple drawing program.  I've got the equation and plot angles covered (&lt;a href="http://evolve.lse.ac.uk/software/EquationEditor/"&gt;LaTeX Equation Editor&lt;/a&gt; and the publication-quality &lt;a href="http://www.r-project.org/"&gt;R&lt;/a&gt;), but a simple drawing program continues to elude me.  For now I will stick with Keynote.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-115712515224667041?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/115712515224667041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=115712515224667041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115712515224667041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115712515224667041'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/09/alternatives-to-powerpoint-for-os-x.html' title='Alternatives to PowerPoint for making presentations on OS X'/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-115711612954927457</id><published>2006-09-01T08:55:00.000-04:00</published><updated>2006-09-01T09:08:49.556-04:00</updated><title type='text'></title><content type='html'>&lt;a href="http://echosphere.net/star_trek_insp/star_trek_insp.html"&gt;Star Trek Inspirational Posters&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/2859/3638/1600/insp_captkirk.0.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/2859/3638/400/insp_captkirk.png" border="0" alt="CAPTAIN JAMES T. KIRK: I'm sorry, I can't hear you over the sound of how awesome I am." /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-115711612954927457?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/115711612954927457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=115711612954927457' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115711612954927457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115711612954927457'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/09/star-trek-inspirational-posters.html' title=''/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-115705181754035256</id><published>2006-08-31T14:56:00.000-04:00</published><updated>2006-08-31T15:16:57.546-04:00</updated><title type='text'></title><content type='html'>&lt;blockquote&gt;&lt;br /&gt;Top Ten Rentals to Avoid On a First Video Date.  &lt;br /&gt;#6: &lt;a href="http://video.google.com/videoplay?docid=6355110065089064433"&gt;Freaks&lt;/a&gt;. There's something about this Tod Browning classic that will lead a woman to hate you and everything you stand for.  After seeing this movie with you, she will call your parents and request that you be put somewhere where you will be of no further harm to yourself or others.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt; - from &lt;i&gt;Ian Shoales' Perfect World&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-115705181754035256?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/115705181754035256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=115705181754035256' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115705181754035256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115705181754035256'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/08/top-ten-rentals-to-avoid-on-first.html' title=''/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-33172031.post-115685790715350289</id><published>2006-08-29T08:27:00.000-04:00</published><updated>2006-08-29T09:42:49.966-04:00</updated><title type='text'></title><content type='html'>OK, let's recap the ongoing saga of &lt;a href="http://thislife.org"&gt;This American Life&lt;/a&gt;'s streaming policy.  The world's greatest radio show was an early pioneer in making its episodes available over the Internet.  For many years, I have enjoyed the streaming functionality (supporting the show through buying merchandise and the occasional donation (OK, once)).  A few months ago, TAL switched from the Real Audio streaming format to streaming mp3 via the .m3u playlist format.  This was great, allowing listening with a variety of programs, including iTunes.  But apparently a lot of people realized that it was possible to download the mp3 file directly, and this ruffled someone's feathers (something like "contractual obligations" were mentioned), causing a shift to a gimpy, non-downloadable kind of stream which disables all the navigation features except for "play".   Now comes a new development, announced in this exerpt from the August 24, 2006, This American Life Update newsletter: &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;COMING SOON: MP3 STREAMING RELIEF&lt;br /&gt;If you've been frustrated with this summer's less-than-ideal streaming MP3 functionality, relief is in sight.  We plan to introduce a new, user-friendly Flash player for our streaming files sometime in September; it'll reinstate all the things you've been missing (fast forward, pause, rewind,etc).&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;They are also going to drop prices of old shows from 4 bucks to 95 cents!&lt;br /&gt;&lt;br /&gt;Here are a few early episodes which are not available as streams, but can be purchased through the iTunes Music Store: &lt;a href="http://207.70.82.73/pages/descriptions/96/8.html"&gt;Episode 8 - New Year&lt;/a&gt;, &lt;a href="http://207.70.82.73/pages/descriptions/96/11.html"&gt;Episode 11 - Enemies&lt;/a&gt;, and the irresistibly titled &lt;a href="http://207.70.82.73/pages/descriptions/96/17.html"&gt;Episode 17 - Name Change/No Theme&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;My advice?  Snap up some of those cheap episodes before something even weirder happens!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/33172031-115685790715350289?l=surlyteabag.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://surlyteabag.blogspot.com/feeds/115685790715350289/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=33172031&amp;postID=115685790715350289' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115685790715350289'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/33172031/posts/default/115685790715350289'/><link rel='alternate' type='text/html' href='http://surlyteabag.blogspot.com/2006/08/ok-lets-recap-ongoing-saga-of-this.html' title=''/><author><name>Surly Teabag</name><uri>http://www.blogger.com/profile/07251453183815233705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='26' src='http://4.bp.blogspot.com/_jtSRNLN2Vms/SdbpOFBPqtI/AAAAAAAAACA/-GY4y89i1UQ/S220/madhatter-21k-flipped.jpg'/></author><thr:total>0</thr:total></entry></feed>
