<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2titles.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.stevetrefethen.com/~d/styles/itemtitles.css"?><rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>Steve Trefethen's Weblog</title>
    <link>http://www.stevetrefethen.com/blog/</link>
    <description>stevetrefethen.com is the blog of Steve Trefethen. I am a software developer interested in .NET, testing, internet applications, automation and anything related to my family and friends.</description>
    <language>en-us</language>
    <copyright>Steve Trefethen</copyright>
    <lastBuildDate>Sun, 28 Jun 2009 18:22:46 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 2.1.8139.823</generator>
    <managingEditor>strefethen@gmail.com</managingEditor>
    <webMaster>strefethen@gmail.com</webMaster>
    <geo:lat>37.057575</geo:lat><geo:long>-122.015071</geo:long><creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license><xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /><meta xmlns="http://pipes.yahoo.com" name="pipes" content="noprocess" /><image><link>http://www.stevetrefethen.com/blog/</link><url>http://feeds2.feedburner.com/~fc/SteveTrefethensWeblog?bg=FF9900&amp;amp;fg=000000&amp;amp;anim=0</url><title>Steve Trefethen's Blog</title></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.stevetrefethen.com/SteveTrefethensWeblog" type="application/rss+xml" /><feedburner:emailServiceId>SteveTrefethensWeblog</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=86739b91-090d-4df0-8fb9-5a7dd7915915</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,86739b91-090d-4df0-8fb9-5a7dd7915915.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,86739b91-090d-4df0-8fb9-5a7dd7915915.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=86739b91-090d-4df0-8fb9-5a7dd7915915</wfw:commentRss>
      <title>Google Voice your personal PBX if you can get by the Privacy Policy</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,86739b91-090d-4df0-8fb9-5a7dd7915915.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/fEHD2dRG7VY/GoogleVoiceYourPersonalPBXIfYouCanGetByThePrivacyPolicy.aspx</link>
      <pubDate>Sun, 28 Jun 2009 18:22:46 GMT</pubDate>
      <description>&lt;p&gt;
Last Thursday, I received an invite to &lt;a href="http://www.google.com/googlevoice/about.html" target="_blank"&gt;Google
Voice&lt;/a&gt; (a.k.a. &lt;a href="http://www.grandcentral.com/" target="_blank"&gt;GrandCentral&lt;/a&gt;)
after signing up for the beta months ago, a detail I’d practically forgotten. Google
Voice is:
&lt;/p&gt;
&lt;blockquote&gt; 
&lt;p&gt;
…a service that gives you one number for all your phones, voicemail that is easy as
email, and many enhanced calling features like call blocking and screening, voicemail
transcripts, call conferencing, international calls, and more. 
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115986"&gt;&lt;span class="answer_link"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 0px 20px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" align="right" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/GoogleVoicelikeGMailforyourphone_95C0/image_5.png" width="320" height="480" /&gt;&lt;/span&gt;&lt;/a&gt;In
other words it’s sort of like having a personal &lt;a href="http://en.wikipedia.org/wiki/Private_branch_exchange" target="_blank"&gt;PBX&lt;/a&gt;.
The feature set (see below) is rich not to mention free, at least for now:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115986"&gt;&lt;span class="answer_link"&gt;About
voicemail transcriptions&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115078"&gt;&lt;span class="answer_link"&gt;About
ListenIn&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115135"&gt;&lt;span class="answer_link"&gt;Call
screening vs. Call presentation&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115112"&gt;&lt;span class="answer_link"&gt;Changing
screened name&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115080"&gt;&lt;span class="answer_link"&gt;Switching
phones during an incoming call&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115037"&gt;&lt;span class="answer_link"&gt;Recording
phone calls&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115084"&gt;&lt;span class="answer_link"&gt;Temporary
call forwarding&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115106"&gt;&lt;span class="answer_link"&gt;Sending
all calls to voicemail&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=117102"&gt;&lt;span class="answer_link"&gt;About
the Call button&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=117108"&gt;&lt;span class="answer_link"&gt;About
the SMS button&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115121"&gt;&lt;span class="answer_link"&gt;Recording
outbound calls&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115137"&gt;&lt;span class="answer_link"&gt;Conference
calling on the fly&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115128"&gt;&lt;span class="answer_link"&gt;About
call widgets&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=117285"&gt;&lt;span class="answer_link"&gt;Goog411
integration&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115104"&gt;&lt;span class="answer_link"&gt;Compatibility
with SIP services&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115122"&gt;&lt;span class="answer_link"&gt;Adding
a Gizmo number&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.stevetrefethen.com/support/voice/bin/answer.py?hl=en&amp;amp;answer=115123"&gt;&lt;span class="answer_link"&gt;Taking
calls from Gizmo&lt;/span&gt;&lt;/a&gt; 
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
I could easily see Google extending this for small businesses much like &lt;a href="http://www.google.com/apps/intl/en/business/index.html" target="_blank"&gt;Google
Apps for Domains&lt;/a&gt; which could be an interesting play in that space particularly
given &lt;a href="http://www.stevetrefethen.com/blog/SuggestionsForASmallOfficePhoneSystem.aspx" target="_blank"&gt;my
company’s need for a phone system&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
When you sign up for Google Voice you get to select your phone number with an option
to choose from within a specific area or zip code. My area code (831) was available
and within that area code I could choose a &lt;a href="http://maps.google.com/maps?&amp;z=13&amp;ll=36.974855,-122.031326&amp;spn=0.114923,0.134239&amp;om=1"&gt;Santa
Cruz&lt;/a&gt; prefix (among other surrounding cities/towns) and I paired that with a memorable
last 4 digits.
&lt;/p&gt;
&lt;p&gt;
Another feature of Google Voice optional transcription of calls though in a few test
calls I’ve found it &lt;em&gt;might&lt;/em&gt; convey the “gist” of the call but can get quite
mangled. For example, you can see above a test call where I said “This is a test call
using Google Voice trying to call my cell phone from my home phone in Scotts Valley
California.” and you can see the result. Nonetheless, it’s a cool feature I’m sure
will improve over time.
&lt;/p&gt;
&lt;p&gt;
Here’s the GMail-like web UI (running in &lt;a href="http:///labs.mozilla.com/featured-projects/" target="_blank"&gt;Prism&lt;/a&gt;):
&lt;/p&gt;
&lt;p&gt;
&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Google Voice web UI" border="0" alt="Google Voice web UI" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/GoogleVoicelikeGMailforyourphone_95C0/image_8.png" width="799" height="659" /&gt; 
&lt;/p&gt;
&lt;h2&gt;One minor detail: The Privacy Policy
&lt;/h2&gt;
&lt;p&gt;
This is all very cool although the biggest hurdle for me is the &lt;a href="http://www.google.com/googlevoice/privacy-policy.html" target="_blank"&gt;Privacy
Policy&lt;/a&gt; which details the kind of information Google collects through this service.
While it’s not really unusual nor unexpected it details how your information will
be collected and used including:
&lt;/p&gt;
&lt;blockquote&gt; 
&lt;p&gt;
When you use Google Voice, Google&amp;#8217;s servers automatically record certain information
about your use of Google Voice. Similar to other web services, Google Voice records
information such as account activity (including storage usage, number of log-ins),
data displayed or clicked on (including UI elements, links); and other &lt;a href="http://www.google.com/privacy_faq.html#serverlogs"&gt;log
information&lt;/a&gt; (including browser type, IP-address, date and time of access, cookie
ID, and referrer URL). Google&amp;#8217;s servers also automatically collect telephony
log information (including calling-party number, forwarding numbers, time and date
of calls, duration of calls, SMS routing information, and types of calls).
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p&gt;
There’s also a bit about transcription:
&lt;/p&gt;
&lt;blockquote&gt; 
&lt;p&gt;
Voicemail Transcription - if you use Google Voice&amp;#8217;s voicemail transcription
service, Google may transcribe voicemail messages into text and email and/or SMS the
resulting text to the email account or phone number(s) designated in your user settings.
Google&amp;#8217;s computers process the information in your messages for various purposes,
including formatting and displaying the information to you, delivering related links,
backing up your messages, and other purposes relating to offering you Google Voice.
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p&gt;
Clearly, Google mines your data like it does for everything it offers though this
service IMO goes further in that you’re more or less accepting the Privacy Policy
on behalf of anyone calling you especially considering there’s no way for a caller
to know you’re using Google Voice as it’s transparent.
&lt;/p&gt;
&lt;p&gt;
I’ll experiment Google Voice for awhile but I’m not sure I’m ready to turn this amount
of information over to Google regardless of &lt;a href="http://investor.google.com/conduct.html" target="_blank"&gt;Don’t
be Evil&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Are you using Google Voice?
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=86739b91-090d-4df0-8fb9-5a7dd7915915" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;.
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/oCM42jMFAdMExNsXGumGC0IAjNY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oCM42jMFAdMExNsXGumGC0IAjNY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/oCM42jMFAdMExNsXGumGC0IAjNY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oCM42jMFAdMExNsXGumGC0IAjNY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=fEHD2dRG7VY:HT1JNCWBSVA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=fEHD2dRG7VY:HT1JNCWBSVA:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=fEHD2dRG7VY:HT1JNCWBSVA:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=fEHD2dRG7VY:HT1JNCWBSVA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=fEHD2dRG7VY:HT1JNCWBSVA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=fEHD2dRG7VY:HT1JNCWBSVA:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=fEHD2dRG7VY:HT1JNCWBSVA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=fEHD2dRG7VY:HT1JNCWBSVA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=fEHD2dRG7VY:HT1JNCWBSVA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/fEHD2dRG7VY" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,86739b91-090d-4df0-8fb9-5a7dd7915915.aspx</comments>
      <category>Opinion</category>
      <category>Technology</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/GoogleVoiceYourPersonalPBXIfYouCanGetByThePrivacyPolicy.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=8979ec83-c63e-4dd8-8aff-5f24e799d9da</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,8979ec83-c63e-4dd8-8aff-5f24e799d9da.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,8979ec83-c63e-4dd8-8aff-5f24e799d9da.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=8979ec83-c63e-4dd8-8aff-5f24e799d9da</wfw:commentRss>
      <slash:comments>2</slash:comments>
      
      <title>An HttpHandler for use with Facebook</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,8979ec83-c63e-4dd8-8aff-5f24e799d9da.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/EfQXbpaVRm4/AnHttpHandlerForUseWithFacebook.aspx</link>
      <pubDate>Thu, 18 Jun 2009 05:40:29 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;a href="http://apps.facebook.com/socialmine" target="_blank"&gt;&#xD;
            &lt;img style="border-width: 0px; margin: 0px 0px 0px 5px; display: inline;" title="image" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ExploringyourFacebooksocialnetwork_1406B/image_3.png" align="right" border="0" height="285" width="290"&gt;&lt;/img&gt;&#xD;
          &lt;/a&gt;In&#xD;
my &lt;a href="http://apps.facebook.com/socialmine" target="_blank"&gt;SocialMine&lt;/a&gt; Facebook&#xD;
application, which uses MIT’s &lt;a href="http://www.simile-widgets.org/exhibit/" target="_blank"&gt;Simile&#xD;
Exhibit&lt;/a&gt;, I needed to fetch Facebook &lt;a href="http://wiki.developers.facebook.com/index.php/FQL" target="_blank"&gt;FQL&lt;/a&gt; query&#xD;
results from the Exhibit client-side JavaScript. While it may not sound that complicated&#xD;
it’s not something directly supported by the &lt;a href="http://www.codeplex.com/FacebookToolkit" target="_blank"&gt;Facebook&#xD;
Developer Toolkit&lt;/a&gt; (FDT). I created an HttpHandler to respond to the Exhibit requests&#xD;
for the JSON data which populates the Exhibit. The HTTP request includes a Referrer&#xD;
header that contains the necessary data, fb_sig_user and fb_sig_session_key to construct&#xD;
an instance of facebook.Components.FacebookService. For completeness here is a list&#xD;
of the queryparams contained in the Referrer URL:&#xD;
&lt;/p&gt;&#xD;
        &lt;pre&gt;auth_token=1379094a2a42e1c0037a33048912a875&#xD;
fb_sig_in_iframe=1&#xD;
fb_sig_locale=en_US&#xD;
fb_sig_in_new_facebook=1&#xD;
fb_sig_time=1245301045.1412&#xD;
fb_sig_added=1&#xD;
fb_sig_profile_update_time=1241328269&#xD;
fb_sig_expires=0&#xD;
&lt;strong style="background-color: cornsilk;"&gt;fb_sig_user=719571200&#xD;
fb_sig_session_key=c93185e145713ce98d72dfc2-719571700&lt;/strong&gt; fb_sig_ss=57abbef0284354d029fe8a19fa00dfce&#xD;
fb_sig_ext_perms=offline_access,email,auto_publish_recent_activity fb_sig_api_key=33c52d0a0c9867f677a1f05154c28478&#xD;
fb_sig_app_id=5012360767 fb_sig=9ad664af23910ca18aeb203203c366cd&lt;/pre&gt;&#xD;
        &lt;p&gt;&#xD;
The HttpHandler is an abstract class with a single abstract method called FacebookRequest&#xD;
descendents override to handle the request. As you can see below the handler is quite&#xD;
simple, parsing the queryparams into a Dictionary, creates an instance of the FacebookService&#xD;
and calls FacebookRequest passing the service instance and the HttpContext passed&#xD;
to the handler.&#xD;
&lt;/p&gt;&#xD;
        &lt;pre class="c#" name="code"&gt;public abstract class FacebookHandler : IHttpHandler&#xD;
{&#xD;
    private const string REQUEST_SESSION_KEY = "fb_sig_session_key";&#xD;
    private const string REQUEST_USER_ID = "fb_sig_user";&#xD;
&#xD;
    #region IHttpHandler Members&#xD;
&#xD;
    public bool IsReusable&#xD;
    {&#xD;
        get { return false; }&#xD;
    }&#xD;
&#xD;
    void IHttpHandler.ProcessRequest(HttpContext ctxt)&#xD;
    {&#xD;
        facebook.Components.FacebookService f = new facebook.Components.FacebookService();&#xD;
        f.ApplicationKey = WebConfigurationManager.AppSettings["APIKey"];&#xD;
        f.Secret = WebConfigurationManager.AppSettings["Secret"];&#xD;
&#xD;
        Dictionary&amp;lt;string, string&amp;gt; dic = new Dictionary&amp;lt;string, string&amp;gt;();&#xD;
&#xD;
        string[] split = ctxt.Request.UrlReferrer.Query.Split(new char[] { '?', '&amp;amp;', '=' });&#xD;
        // Skip the first item since it’s the "?"&#xD;
        for (int i = 1; i &amp;lt; split.Length - 1; i += 2)&#xD;
        {&#xD;
            if(i &amp;lt; split.Length)&#xD;
                dic.Add(split[i], split[i + 1]);&#xD;
        }&#xD;
&#xD;
        f.SessionKey = dic[REQUEST_SESSION_KEY];&#xD;
        f.uid = Convert.ToInt64(dic[REQUEST_USER_ID]);&#xD;
        FacebookRequest(f, ctxt);&#xD;
    }&#xD;
    #endregion&#xD;
&#xD;
    protected abstract void FacebookRequest(facebook.Components.FacebookService fbservice, HttpContext ctxt);&#xD;
}&lt;/pre&gt;&#xD;
        &lt;p&gt;&#xD;
The JavaScript of Simile Exhibit requests the JSON data using the following LINK tag:&#xD;
&lt;/p&gt;&#xD;
        &lt;pre class="xml" name="code"&gt;&amp;lt;link href="friendsjson.aspx" type="application/json" rel="exhibit/data" /&amp;gt;    &lt;/pre&gt;&#xD;
        &lt;p&gt;&#xD;
The reference to friendsjson.aspx isn’t actually an ASPX as it’s handled by a descendent&#xD;
of this HttpHandler which is registered in the httpHandlers section of the web.config&#xD;
as follows:&#xD;
&lt;/p&gt;&#xD;
        &lt;pre class="xml" name="code"&gt;&amp;lt;add verb="*" path="friendsjson.aspx" type="FBFQL.JSONHandler" /&amp;gt;&lt;/pre&gt;&#xD;
In my application the FacebookRequest method queries using FQL for profile data and&#xD;
returns a JSON result that populates the Exhibit.&lt;br&gt;&lt;br&gt;&#xD;
Btw, if you're looking for help on Facebook development be sure to read my &lt;a href="http://www.stevetrefethen.com/wiki/Facebook%20application%20development%20in%20ASP.NET.ashx?NoRedirect=1"&gt;wiki&#xD;
article&lt;/a&gt;.&lt;br&gt;&lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=8979ec83-c63e-4dd8-8aff-5f24e799d9da"&gt;&lt;/img&gt;&lt;br&gt;&lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6_AneUH9f8yW1zCW5pvmI-MBVtY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6_AneUH9f8yW1zCW5pvmI-MBVtY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6_AneUH9f8yW1zCW5pvmI-MBVtY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6_AneUH9f8yW1zCW5pvmI-MBVtY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EfQXbpaVRm4:nCcJypIB16k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EfQXbpaVRm4:nCcJypIB16k:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=EfQXbpaVRm4:nCcJypIB16k:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EfQXbpaVRm4:nCcJypIB16k:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=EfQXbpaVRm4:nCcJypIB16k:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EfQXbpaVRm4:nCcJypIB16k:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EfQXbpaVRm4:nCcJypIB16k:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=EfQXbpaVRm4:nCcJypIB16k:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EfQXbpaVRm4:nCcJypIB16k:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/EfQXbpaVRm4" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,8979ec83-c63e-4dd8-8aff-5f24e799d9da.aspx</comments>
      <category>.NET</category>
      <category>Development</category>
      <category>Facebook</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/AnHttpHandlerForUseWithFacebook.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=2e688405-ef49-472b-8a18-0427967faf6c</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,2e688405-ef49-472b-8a18-0427967faf6c.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,2e688405-ef49-472b-8a18-0427967faf6c.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=2e688405-ef49-472b-8a18-0427967faf6c</wfw:commentRss>
      
      <title>EDI Purchase Order system goes live</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,2e688405-ef49-472b-8a18-0427967faf6c.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/8BMDxtjWK60/EDIPurchaseOrderSystemGoesLive.aspx</link>
      <pubDate>Wed, 10 Jun 2009 23:36:06 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
If you’ve been reading my blog for long you probably have read a few previous posts&#xD;
where I blogged about &lt;a href="http://www.stevetrefethen.com/blog/CCNETBasedEDIInvoicingProjectGoesIntoProduction.aspx" target="_blank"&gt;EDI&#xD;
processing using CCNET&lt;/a&gt;. Well, yesterday the Purchase Order portion of the system&#xD;
went live so I sent a screenshot of the CCNET web dashboard to the Team at &lt;a href="http://www.falafel.com/" target="_blank"&gt;Falafel&lt;/a&gt; and&#xD;
our CTO, John Water’s replied with his modified version (right). I figure for those&#xD;
of you programming types you’d enjoy this…&#xD;
&lt;/p&gt;&#xD;
        &lt;table&gt;&#xD;
          &lt;tbody&gt;&#xD;
            &lt;tr&gt;&#xD;
              &lt;td&gt;&#xD;
                &lt;img style="border-width: 0px; display: inline;" title="image" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/EDIPurchaseOrdersystemgoeslive_E47A/image_thumb.png" border="0" width="469" height="240"&gt;&lt;/img&gt;&#xD;
              &lt;/td&gt;&#xD;
              &lt;td&gt;&#xD;
 &lt;img style="border-width: 0px; display: inline;" title="image" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/EDIPurchaseOrdersystemgoeslive_E47A/image_thumb_3.png" border="0" width="317" height="209"&gt;&lt;/img&gt;&lt;/td&gt;&#xD;
            &lt;/tr&gt;&#xD;
          &lt;/tbody&gt;&#xD;
        &lt;/table&gt;&#xD;
        &lt;p&gt;&#xD;
At least, I got a good laugh from it.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
For those familiar with EDI this custom system handles 810, 850, 855, 856 and 997&#xD;
documents. Also, based on my FTP Provider for CCNET there should be a new source provider&#xD;
showing up on that project in the near future as one of the leads approached me about&#xD;
adding it.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=2e688405-ef49-472b-8a18-0427967faf6c"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/cAfqmiQOPn6EBDgz8Bycdtz3jqk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cAfqmiQOPn6EBDgz8Bycdtz3jqk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/cAfqmiQOPn6EBDgz8Bycdtz3jqk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cAfqmiQOPn6EBDgz8Bycdtz3jqk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8BMDxtjWK60:os7vKxsOvnY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8BMDxtjWK60:os7vKxsOvnY:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=8BMDxtjWK60:os7vKxsOvnY:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8BMDxtjWK60:os7vKxsOvnY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=8BMDxtjWK60:os7vKxsOvnY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8BMDxtjWK60:os7vKxsOvnY:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8BMDxtjWK60:os7vKxsOvnY:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=8BMDxtjWK60:os7vKxsOvnY:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8BMDxtjWK60:os7vKxsOvnY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/8BMDxtjWK60" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,2e688405-ef49-472b-8a18-0427967faf6c.aspx</comments>
      <category>For fun</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/EDIPurchaseOrderSystemGoesLive.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=5bcccec1-f3bd-4ddb-8f54-2d819e0cd2e1</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,5bcccec1-f3bd-4ddb-8f54-2d819e0cd2e1.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,5bcccec1-f3bd-4ddb-8f54-2d819e0cd2e1.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=5bcccec1-f3bd-4ddb-8f54-2d819e0cd2e1</wfw:commentRss>
      <slash:comments>2</slash:comments>
      
      <title>iPod Touch well worth it</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,5bcccec1-f3bd-4ddb-8f54-2d819e0cd2e1.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/8mPuuO9m79Y/iPodTouchWellWorthIt.aspx</link>
      <pubDate>Fri, 29 May 2009 17:26:02 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
It’s been about a year since I &lt;a href="http://www.stevetrefethen.com/blog/MyAnswerToApplesIPodTouchIsItWorthIt.aspx"&gt;posted&lt;/a&gt; my&#xD;
thoughts on the iPod Touch and my answer has since changed from a “maybe” to absolutely,&#xD;
even my v1.0 edition. I use it for everything from:&lt;a href="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/iPodTouchisworthit_14E4B/image_2.png"&gt;&lt;img style="border-right-width: 0px; margin: 0px 0px 0px 10px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" align="right" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/iPodTouchisworthit_14E4B/image_thumb.png" width="190" height="285"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&#xD;
        &lt;ul&gt;&#xD;
          &lt;li&gt;&#xD;
emailed versions of my travel itinerary &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
podcasts &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
multi-day alarm clock, a wake-up call replacement &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
ebook reader &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
restaurant/coffee shop locator &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
status updates to Facebook, Yammer and Twitter &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
newspapers &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
weather &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
maps and even a poor man’s GPS &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
flashlight/nightlight&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
File sharing device (AirSharing)&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Banking&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
And yes, even music though mostly streamed via Pandora&lt;/li&gt;&#xD;
        &lt;/ul&gt;&#xD;
        &lt;p&gt;&#xD;
These days I’m traveling a heck-of-a lot more and I’ve found it to be an invaluable&#xD;
travel tool. In fact, the Touch can even function as a poor man’s GPS. To see this&#xD;
working you’ll need to cache some map content while connected to wifi:&#xD;
&lt;/p&gt;&#xD;
        &lt;ol&gt;&#xD;
          &lt;li&gt;&#xD;
Before embarking on your trip connect to a wifi network&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Using the Google Map browse around the area you’ll be driving so the map will be cached.&#xD;
You may want to zoom in so as to capture more detailed content.&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Start driving to the location where you’re headed while viewing the Google Maps application.&#xD;
If there are sufficient wifi access points in the area the little blue target locator&#xD;
(pictured) will occasionally update and follow you along the map.&lt;/li&gt;&#xD;
        &lt;/ol&gt;&#xD;
        &lt;p&gt;&#xD;
To be sure we’re not talking real time but it does actually work. Notice in the picture&#xD;
that the Touch isn’t connected to wifi when it was captured as I sat at a stop light.&#xD;
I stumbled into this feature while on a business trip to Austin TX and while driving&#xD;
around looking for a Starbuck’s I noticed my location on the map changing. The screenshot&#xD;
here displays it working near Wilkes-Barre PA.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
My current favorite application is RSS Player which makes listening to podcasts easy&#xD;
and enjoyable, it still needs a few features but it’s seriously a must have if you’re&#xD;
a podcast listener.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=5bcccec1-f3bd-4ddb-8f54-2d819e0cd2e1"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/wk8ehXcvhe3kezlTqHJslPg8qvI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wk8ehXcvhe3kezlTqHJslPg8qvI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/wk8ehXcvhe3kezlTqHJslPg8qvI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wk8ehXcvhe3kezlTqHJslPg8qvI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8mPuuO9m79Y:bJwOKvdww6E:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8mPuuO9m79Y:bJwOKvdww6E:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=8mPuuO9m79Y:bJwOKvdww6E:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8mPuuO9m79Y:bJwOKvdww6E:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=8mPuuO9m79Y:bJwOKvdww6E:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8mPuuO9m79Y:bJwOKvdww6E:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8mPuuO9m79Y:bJwOKvdww6E:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=8mPuuO9m79Y:bJwOKvdww6E:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=8mPuuO9m79Y:bJwOKvdww6E:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/8mPuuO9m79Y" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,5bcccec1-f3bd-4ddb-8f54-2d819e0cd2e1.aspx</comments>
      <category>Electronics</category>
      <category>Hardware</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/iPodTouchWellWorthIt.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=a18372fc-4d36-4190-bca5-3d0f174b21bd</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,a18372fc-4d36-4190-bca5-3d0f174b21bd.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,a18372fc-4d36-4190-bca5-3d0f174b21bd.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=a18372fc-4d36-4190-bca5-3d0f174b21bd</wfw:commentRss>
      
      <title>Experienced San Francisco Bay Area ASP.NET Developer’s needed - May 2009</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,a18372fc-4d36-4190-bca5-3d0f174b21bd.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/rh1r6ttyr24/ExperiencedSanFranciscoBayAreaASPNETDevelopersNeededMay2009.aspx</link>
      <pubDate>Wed, 27 May 2009 05:46:40 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
My employer, &lt;a href="http://www.falafel.com/" target="_blank"&gt;Falafel Software&lt;/a&gt;,&#xD;
is looking for Senior/Architect level C# .NET developers located in the San Francisco&#xD;
Bay area (U.S. residents or individuals with a work permit only, no visas). We’re&#xD;
looking for developer’s with deep experience developing C# &lt;a href="http://www.asp.net/" target="_blank"&gt;ASP.NET&lt;/a&gt; applications.&#xD;
If you are an individual contributor (read not recruiter etc.) and meet the qualifications&#xD;
outlined below &lt;a href="http://www.stevetrefethen.com/blog/email.aspx" target="_blank"&gt;contact&#xD;
me&lt;/a&gt; or email &lt;a href="mailto:jobs@falafel.com"&gt;jobs@falafel.com&lt;/a&gt;. I’ll add that&#xD;
both verbal and written communication and presentation skills are extremely important&#xD;
in our line of work.&#xD;
&lt;/p&gt;&#xD;
        &lt;h2&gt;Senior Software Engineer / Architect&#xD;
&lt;/h2&gt;&#xD;
        &lt;p&gt;&#xD;
Suitable candidates will possess a software engineering background combined with professional&#xD;
services, consulting or pre/post-sales experience. Engineer/Architect must be comfortable&#xD;
with client presentations, demos and working with client teams to meet development,&#xD;
integration and/or training goals. &#xD;
&lt;br&gt;&lt;/p&gt;&#xD;
        &lt;h2&gt;Required&#xD;
&lt;/h2&gt;&#xD;
        &lt;ul&gt;&#xD;
          &lt;li&gt;&#xD;
5+ years hand-on production experience with Microsoft .NET Framework development (WinForms&#xD;
and/or ASP.Net) &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Proficiency in C# &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Working knowledge of SQL Server 2000 or later (not DBA, but be able to use the database&#xD;
in projects) &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Excellent communication skills, team member, self-motivated and driven (lots of remote&#xD;
work, work from home etc) &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Be a consultant: comfortable meeting clients, discussing their problems, listening,&#xD;
finding pragmatic solutions, and billing time &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Some travel required 15% or less (conferences, client site visits) &#xD;
&lt;/li&gt;&#xD;
        &lt;/ul&gt;&#xD;
        &lt;h2&gt;Ideal candidates should also possess one or more of the following proficiencies:&#xD;
&lt;/h2&gt;&#xD;
        &lt;ul&gt;&#xD;
          &lt;li&gt;&#xD;
SQL Server 2000 (or later) and Transact SQL (5+ yrs) &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Web 2.0 technology (AJAX, dynamic HTML, JavaScript) &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Microsoft or other applicable Certifications &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Bachelor’s degree or higher in Computer Science or equivalent (i.e. Electrical&#xD;
Engineering) – or natural talent and experience that blows us away! &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Knowledge of modeling (ER diagrams, UML etc), processes (agile, RUP, etc), Version&#xD;
Control Systems and Practices (TFS, SVN etc), QA processes and practices (unit testing,&#xD;
continuous integration, automated QA, etc) &#xD;
&lt;/li&gt;&#xD;
        &lt;/ul&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=a18372fc-4d36-4190-bca5-3d0f174b21bd"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BN2HEGyB9T32VC6FQ-5mLpYt4Go/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BN2HEGyB9T32VC6FQ-5mLpYt4Go/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BN2HEGyB9T32VC6FQ-5mLpYt4Go/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BN2HEGyB9T32VC6FQ-5mLpYt4Go/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=rh1r6ttyr24:q3kbaq6GLFQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=rh1r6ttyr24:q3kbaq6GLFQ:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=rh1r6ttyr24:q3kbaq6GLFQ:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=rh1r6ttyr24:q3kbaq6GLFQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=rh1r6ttyr24:q3kbaq6GLFQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=rh1r6ttyr24:q3kbaq6GLFQ:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=rh1r6ttyr24:q3kbaq6GLFQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=rh1r6ttyr24:q3kbaq6GLFQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=rh1r6ttyr24:q3kbaq6GLFQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/rh1r6ttyr24" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,a18372fc-4d36-4190-bca5-3d0f174b21bd.aspx</comments>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/ExperiencedSanFranciscoBayAreaASPNETDevelopersNeededMay2009.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=73bbe3a1-a535-41ac-b4b8-a57eebfe4047</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,73bbe3a1-a535-41ac-b4b8-a57eebfe4047.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,73bbe3a1-a535-41ac-b4b8-a57eebfe4047.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=73bbe3a1-a535-41ac-b4b8-a57eebfe4047</wfw:commentRss>
      <slash:comments>1</slash:comments>
      
      <title>Funny code comment</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,73bbe3a1-a535-41ac-b4b8-a57eebfe4047.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/WJOT3KwqR9Y/FunnyCodeComment.aspx</link>
      <pubDate>Fri, 08 May 2009 22:34:55 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
A little Friday fun… while reviewing some code awhile ago I ran into this little gem:&#xD;
&lt;/p&gt;&#xD;
        &lt;pre&gt;&#xD;
          &lt;div&gt;&#xD;
            &lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&#xD;
            &lt;span style="color: rgb(0, 128, 0);"&gt;//&lt;/span&gt;&#xD;
            &lt;span style="color: rgb(0, 128, 0);"&gt; Warning:&#xD;
Suckage++&lt;/span&gt;&#xD;
          &lt;/div&gt;&#xD;
        &lt;/pre&gt;&#xD;
        &lt;p&gt;&#xD;
The remainder of the comment is in reference to a situation beyond the developers&#xD;
control where they had to special case logic to deal with some missing data. My comments&#xD;
typically aren’t quite this creative and I usually denote code that has&lt;em&gt; issues&lt;/em&gt; using&#xD;
NOTE: or "!!!".&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
How do you mark code that otherwise denotes some nastiness?&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=73bbe3a1-a535-41ac-b4b8-a57eebfe4047"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hsONCcq7c2uOjG7tdB18FMiLFi0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hsONCcq7c2uOjG7tdB18FMiLFi0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hsONCcq7c2uOjG7tdB18FMiLFi0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hsONCcq7c2uOjG7tdB18FMiLFi0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=WJOT3KwqR9Y:xlFFzBZaQBE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=WJOT3KwqR9Y:xlFFzBZaQBE:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=WJOT3KwqR9Y:xlFFzBZaQBE:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=WJOT3KwqR9Y:xlFFzBZaQBE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=WJOT3KwqR9Y:xlFFzBZaQBE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=WJOT3KwqR9Y:xlFFzBZaQBE:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=WJOT3KwqR9Y:xlFFzBZaQBE:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=WJOT3KwqR9Y:xlFFzBZaQBE:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=WJOT3KwqR9Y:xlFFzBZaQBE:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/WJOT3KwqR9Y" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,73bbe3a1-a535-41ac-b4b8-a57eebfe4047.aspx</comments>
      <category>Development</category>
      <category>For fun</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/FunnyCodeComment.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=452dbc4e-8840-48d9-b418-042bf3d2e79f</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,452dbc4e-8840-48d9-b418-042bf3d2e79f.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,452dbc4e-8840-48d9-b418-042bf3d2e79f.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=452dbc4e-8840-48d9-b418-042bf3d2e79f</wfw:commentRss>
      <slash:comments>4</slash:comments>
      
      <title>Mining your Facebook social network</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,452dbc4e-8840-48d9-b418-042bf3d2e79f.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/EopQ6-bDtAQ/MiningYourFacebookSocialNetwork.aspx</link>
      <pubDate>Tue, 28 Apr 2009 07:33:14 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;a href="http://apps.facebook.com/socialmine" target="_blank"&gt;&#xD;
            &lt;img title="image" style="border-right: 0px; border-top: 0px; display: inline; margin: 0px 0px 0px 5px; border-left: 0px; border-bottom: 0px" height="285" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ExploringyourFacebooksocialnetwork_1406B/image_3.png" width="290" align="right" border="0"&gt;&lt;/img&gt;&#xD;
          &lt;/a&gt;Many&#xD;
months ago, well before the latest &lt;a href="http://www.facebook.com/" target="_blank"&gt;Facebook&lt;/a&gt; redesign,&#xD;
I wrote an application to explore my Facebook social network in what I think is a&#xD;
fun and interesting way. Leveraging &lt;a href="http://www.google.com/search?rlz=1C1CHMB_en___US314&amp;amp;sourceid=chrome&amp;amp;ie=UTF-8&amp;amp;q=simile+site:www.stevetrefethen.com/" target="_blank"&gt;MIT’s&#xD;
Simile Exhibit&lt;/a&gt; project I developed &lt;a href="http://apps.facebook.com/socialmine" target="_blank"&gt;SocialMine&lt;/a&gt;,&#xD;
an application that surfaces many attributes of your network’s profile information&#xD;
allowing you to filter and otherwise “mine” the data. As this is the hallmark of any&#xD;
Exhibit application, within the genre, I’d consider it to be quite plain were it not&#xD;
for the personal relevance of the data. Still, you can extensively filter the information&#xD;
in a live view including a Google Map.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Since the application relies on user provided profile data there may be cases where&#xD;
it simply doesn’t/won’t “work”. For example, I discovered a little over half of my&#xD;
friends haven’t specified a current location so they don’t appear on the map. On the&#xD;
other hand, I now know who those people are and can bug them to update their profile. &lt;img alt=":-)" src="smilies/happy.gif"&gt;&lt;/img&gt; At&#xD;
any rate, I’ve had fun “mining” my network and thought you might too.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Lastly, having been developed for fun in my extremely limited free time largely after&#xD;
12AM, SocialMine is by no means complete nor thoroughly tested. There I said it and&#xD;
should it fail utterly under load wouldn’t come as a huge surprise. FYI, if you have &lt;em&gt;a&#xD;
lot&lt;/em&gt; of friends rendering the page could take &lt;em&gt;significant&lt;/em&gt; time so consider&#xD;
yourself warned. For those interested, it’s written in C# using &lt;a href="http://www.asp.net/" target="_blank"&gt;ASP.NET&lt;/a&gt; and&#xD;
based on my &lt;a href="http://www.stevetrefethen.com/wiki/Facebook%20application%20development%20in%20ASP.NET.ashx" target="_blank"&gt;FDT&#xD;
Starter Kit&lt;/a&gt;. And now for those who find this a necessity a disclaimer…&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;strong&gt;&#xD;
            &lt;em&gt;Disclaimer:&lt;/em&gt;&#xD;
          &lt;/strong&gt; I make no warrantees expressed or implied, your&#xD;
mileage may vary, use at your own risk. &lt;strong&gt;For entertainment purposes only&lt;/strong&gt;,&#xD;
accuracy of the rendered data is &lt;em&gt;entirely control by your friends so consult them!&lt;/em&gt; Insert&#xD;
here any other relevant disclaimer related verbiage encompassing whatever problem(s)&#xD;
or situation(s) you may encounter while using SocialMine. Should you dislike SocialMine&#xD;
kindly remove it and simply move along. Consider yourself warned!&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Now that that’s over, enjoy!&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=452dbc4e-8840-48d9-b418-042bf3d2e79f"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/05sr_wE46Njxz-FrzE_ipHoSN6A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/05sr_wE46Njxz-FrzE_ipHoSN6A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/05sr_wE46Njxz-FrzE_ipHoSN6A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/05sr_wE46Njxz-FrzE_ipHoSN6A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EopQ6-bDtAQ:8yaBqGWjjc8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EopQ6-bDtAQ:8yaBqGWjjc8:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=EopQ6-bDtAQ:8yaBqGWjjc8:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EopQ6-bDtAQ:8yaBqGWjjc8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=EopQ6-bDtAQ:8yaBqGWjjc8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EopQ6-bDtAQ:8yaBqGWjjc8:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EopQ6-bDtAQ:8yaBqGWjjc8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=EopQ6-bDtAQ:8yaBqGWjjc8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=EopQ6-bDtAQ:8yaBqGWjjc8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/EopQ6-bDtAQ" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,452dbc4e-8840-48d9-b418-042bf3d2e79f.aspx</comments>
      <category>Facebook</category>
      <category>For fun</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/MiningYourFacebookSocialNetwork.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=aa4c12de-28fc-41a8-969b-22689dff0bbf</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,aa4c12de-28fc-41a8-969b-22689dff0bbf.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,aa4c12de-28fc-41a8-969b-22689dff0bbf.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=aa4c12de-28fc-41a8-969b-22689dff0bbf</wfw:commentRss>
      <slash:comments>3</slash:comments>
      
      <title>Kindness of a stranger</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,aa4c12de-28fc-41a8-969b-22689dff0bbf.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/n6--7buZjDA/KindnessOfAStranger.aspx</link>
      <pubDate>Thu, 23 Apr 2009 02:41:50 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;img title="Weather at OHare April 19, 2009" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 0px 0px 10px; BORDER-RIGHT-WIDTH: 0px" height="285" alt="Weather at OHare April 19, 2009" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/Kindness_103C5/ohare_3.jpg" width="350" align="right" border="0"&gt;&lt;/img&gt;  &#xD;
On Sunday, I flew from SFO to O’Hare (radar on right) on my way to Wilkes-Barre, PA&#xD;
and when I arrived I found my next flight canceled. I headed to the United Customer&#xD;
Service desk which was completely unattended (I so wish I’d had a camera, chairs scattered&#xD;
everywhere) and used a self help monitor and got on the standby list for a 9pm flight&#xD;
then picked up a support phone and talked to a rep who, after telling me I was well&#xD;
down the standby list and that the next available seat was two days later, directed&#xD;
me to talk to a United person at the airport. I asked about alternatives and was informed&#xD;
every other United flight out of O’Hare to PA sold out.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
I returned to the gate I’d arrived at having seen the neighboring gate was a flight&#xD;
to Philadelphia, roughly 100 miles from my destination thinking if I could make it&#xD;
I’d drive the remainder. No luck, that flight was booked with a long standby list.&#xD;
I got redirected to another terminal and another United Customer Service desk which&#xD;
had what must have been over 100+ people in line. After waiting for over an hour I&#xD;
spoke to a rep who had no better news and offered only a 6pm flight the next day to&#xD;
Philadelphia. Feeling rather dejected decided to grab some dinner. I got seated at&#xD;
a Chili’s and few minutes later a gentleman was seated next to me and we started chatting&#xD;
and exchanging stories. He’d come from SFO too and his next flight had been canceled&#xD;
and that he was on standby as well. When I explained my situation he said “You can’t&#xD;
stick with that plan, it’s a loser so consider yourself adopted.”&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
He went on, explaining he was a 300K mile traveler and would help to try and get me&#xD;
a confirmed seat or alternative flight plans. We finished dinner and headed to the&#xD;
United Red Carpet Club, got on the web and started looking for alternatives. He walked&#xD;
me through the process telling me that it was possible to get United to pay for an&#xD;
alternate route. While I was looking for alternatives he called is “special” United&#xD;
travelers number and worked that angle but they couldn’t improve my situation. I managed&#xD;
to get a seat confirmed on a Delta flight to Philly so he called United back and got&#xD;
them to agree to buy the alternative route but at the last minute their flight got&#xD;
delayed sinking the deal. We’d spent over an hour on the phone working on alternatives&#xD;
to no avail. Finally, he said “Let’s go try the desk here in the club.” Given he’d&#xD;
already talked to United on the phone he wasn’t optimistic. We walked up to the counter&#xD;
with my canceled ticket in hand where he explained my situation and the rep took my&#xD;
ticket and offered to review my ticket. Not more than a minute or two later she was&#xD;
printing me a boarding pass for a confirmed seat! She then offered to check his flight&#xD;
and got him confirmed as well! At that point, we returned to the lounge, smiling and&#xD;
laughing over our combined good fortune. By then his next flight time was approaching&#xD;
so we exchanged business cards, I thanked him and he left. &#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
A couple hours later I boarded my flight and made it to PA about 7 hours after my&#xD;
original arrive time. The next morning I had an email asking if I’d made it to PA.  &lt;img alt=":-)" src="smilies/happy.gif"&gt;&lt;/img&gt;&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
So, here’s to the generosity of a complete stranger who not only helped me catch a&#xD;
flight but taught me a few travel tips along the way.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;strong&gt;Thanks Don!&lt;/strong&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=aa4c12de-28fc-41a8-969b-22689dff0bbf"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2mqqj3DI4hoX731Ubwvux-MQWpc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2mqqj3DI4hoX731Ubwvux-MQWpc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/2mqqj3DI4hoX731Ubwvux-MQWpc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2mqqj3DI4hoX731Ubwvux-MQWpc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=n6--7buZjDA:IG-CIDiXA8M:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=n6--7buZjDA:IG-CIDiXA8M:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=n6--7buZjDA:IG-CIDiXA8M:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=n6--7buZjDA:IG-CIDiXA8M:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=n6--7buZjDA:IG-CIDiXA8M:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=n6--7buZjDA:IG-CIDiXA8M:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=n6--7buZjDA:IG-CIDiXA8M:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=n6--7buZjDA:IG-CIDiXA8M:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=n6--7buZjDA:IG-CIDiXA8M:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/n6--7buZjDA" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,aa4c12de-28fc-41a8-969b-22689dff0bbf.aspx</comments>
      <category>Travel</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/KindnessOfAStranger.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=8c6c4f8f-a196-44be-b385-9cf27e23f890</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,8c6c4f8f-a196-44be-b385-9cf27e23f890.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,8c6c4f8f-a196-44be-b385-9cf27e23f890.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=8c6c4f8f-a196-44be-b385-9cf27e23f890</wfw:commentRss>
      
      <title>Facebook’s Disappearing Platform redux</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,8c6c4f8f-a196-44be-b385-9cf27e23f890.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/SfPlIWaq1P8/FacebooksDisappearingPlatformRedux.aspx</link>
      <pubDate>Mon, 13 Apr 2009 23:10:19 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="285" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/41badaf32d38_DAAA/image_5.png" width="542" align="right" border="0"&gt;&lt;/img&gt; About&#xD;
a month ago I wrote &lt;a href="http://www.stevetrefethen.com/blog/FacebooksDisappearingApplicationPlatform.aspx"&gt;a&#xD;
post&lt;/a&gt; with some thoughts on what I felt the impact was on the platform as a result&#xD;
of the UI redesign. Today, I ran across &lt;a href="http://www.allfacebook.com/2009/04/top-application-decline/"&gt;this&#xD;
post&lt;/a&gt; on AllFacebook.com titled &lt;em&gt;Top Facebook Applications See 25 Percent Drop&#xD;
In Traffic Since Redesign&lt;/em&gt;. Where Nick O’Neil states:&#xD;
&lt;/p&gt;&#xD;
        &lt;div style="clear: right"&gt;&#xD;
        &lt;/div&gt;&#xD;
        &lt;blockquote&gt;&#xD;
          &lt;p&gt;&#xD;
If you thought the last redesign spelled the death of the Facebook platform, you ain’t&#xD;
seen nothing yet! Last July Facebook released their new design and within a matter&#xD;
of months, widget applications had become a thing of the past. A few of those applications&#xD;
were able to withstand the changes but there’s a grim picture being painted weeks&#xD;
after Facebook’s latest redesign.&#xD;
&lt;/p&gt;&#xD;
        &lt;/blockquote&gt;&#xD;
        &lt;p&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
He goes on to provide some additional statistics and spells out the fact that it’s&#xD;
not all “gloom and doom”. At present, I’m quite skeptical about the &lt;a href="http://www.facebook.com/" target="_blank"&gt;Facebook&lt;/a&gt; Platform&#xD;
being worthy of the development time and effort in light of the near constantly shifting&#xD;
playing field.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
The graphic I included displays the stats for my &lt;a href="http://www.stevetrefethen.com/wiki/Facebook%20application%20development%20in%20ASP.NET.ashx" target="_blank"&gt;Facebook&#xD;
Starter Kit&lt;/a&gt; application with March 20th (mentioned in the article) highlighted,&#xD;
where it’s clearly visible even this simple application exhibits a similar drop off&#xD;
though I can’t say for sure this wouldn’t have happened naturally as it is a “Seinfeld”&#xD;
of applications.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=8c6c4f8f-a196-44be-b385-9cf27e23f890"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/44OdIUS_fPilYBoEIQDMjfIilqY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/44OdIUS_fPilYBoEIQDMjfIilqY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/44OdIUS_fPilYBoEIQDMjfIilqY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/44OdIUS_fPilYBoEIQDMjfIilqY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=SfPlIWaq1P8:VfrrQVFNytY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=SfPlIWaq1P8:VfrrQVFNytY:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=SfPlIWaq1P8:VfrrQVFNytY:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=SfPlIWaq1P8:VfrrQVFNytY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=SfPlIWaq1P8:VfrrQVFNytY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=SfPlIWaq1P8:VfrrQVFNytY:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=SfPlIWaq1P8:VfrrQVFNytY:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=SfPlIWaq1P8:VfrrQVFNytY:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=SfPlIWaq1P8:VfrrQVFNytY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/SfPlIWaq1P8" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,8c6c4f8f-a196-44be-b385-9cf27e23f890.aspx</comments>
      <category>Facebook</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/FacebooksDisappearingPlatformRedux.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=1eb83721-5de7-4e22-b617-0ca7954cf6ad</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,1eb83721-5de7-4e22-b617-0ca7954cf6ad.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,1eb83721-5de7-4e22-b617-0ca7954cf6ad.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=1eb83721-5de7-4e22-b617-0ca7954cf6ad</wfw:commentRss>
      <slash:comments>8</slash:comments>
      <title>Best Buy not quite up to it’s name</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,1eb83721-5de7-4e22-b617-0ca7954cf6ad.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/4D-lvzkWT80/BestBuyNotQuiteUpToItsName.aspx</link>
      <pubDate>Fri, 03 Apr 2009 15:59:20 GMT</pubDate>
      <description>&lt;p&gt;
&lt;img style="display: inline; margin-left: 0px; margin-right: 0px" alt="Motorola Surfboard SB5101 Cable Modem" src="http://ecx.images-amazon.com/images/I/21pTLoDyKSL._SL500_AA226_.jpg" align="right" /&gt;
&lt;/p&gt;
&lt;p&gt;
Recently, my Internet connection here at the house started dropping roughly every
90 seconds or so, quite annoying as you can imagine. I started trying to debug the
problem doing the typical unplug &amp; cabling song and dance but that didn’t work. I
have a Motorola SurfBoard 5201 cable modem and the send/receive lights on it were
constantly pulsing no, not good. I headed to Best Buy, plopped down $86, picked up
a new Motorola SB5101, brought it home, called &lt;a href="http://www.comcast.com/" target="_blank"&gt;Comcast&lt;/a&gt; and
added it to my account and after testing it several but no dice so the rep scheduled
a visit the next day. The following day the tech calls to let me know he’s on the
way me so I hop in the car, head back to the house and call my wife to let her know.
She then informs me she’s been surfing the web and “everything’s fixed”. I pull up
to the house and the tech hasn’t found anything wrong with our connection and as my
wife indicated everything is fine. Thanks Murphy.
&lt;/p&gt;
&lt;p&gt;
Anyway, back to my point, since Best Buy was convenient I bought a modem there thinking
I’d return it if that wasn’t the problem. At this point, it appears that the modem
was the problem so I get online and start looking for a better deal. Kind of funny,
the Best Buy modem helps me replace itself. &lt;img alt=":-)" src="smilies/happy.gif"&gt; I
was a bit surprised to that Amazon had the same modem for nearly half the price ($45.93)
with free shipping, it arrives in a few days at which point I’ll return the one from
“Best Buy”.
&lt;/p&gt;
&lt;strong&gt;[Update: April 6, 2009]&lt;/strong&gt;&amp;nbsp;Amazon price has dropped another $2.20.
I don't see any way Best Buy can compete with that.&lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=1eb83721-5de7-4e22-b617-0ca7954cf6ad" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;.
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/bIpehwqirGW3SJ0QfOjbfugYALg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bIpehwqirGW3SJ0QfOjbfugYALg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/bIpehwqirGW3SJ0QfOjbfugYALg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bIpehwqirGW3SJ0QfOjbfugYALg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=4D-lvzkWT80:G1woKy5FChs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=4D-lvzkWT80:G1woKy5FChs:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=4D-lvzkWT80:G1woKy5FChs:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=4D-lvzkWT80:G1woKy5FChs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=4D-lvzkWT80:G1woKy5FChs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=4D-lvzkWT80:G1woKy5FChs:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=4D-lvzkWT80:G1woKy5FChs:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=4D-lvzkWT80:G1woKy5FChs:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=4D-lvzkWT80:G1woKy5FChs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/4D-lvzkWT80" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,1eb83721-5de7-4e22-b617-0ca7954cf6ad.aspx</comments>
      <category>Hardware</category>
      <category>Home</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/BestBuyNotQuiteUpToItsName.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=e172006b-1f3e-4193-9d7c-e014842fa4b2</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,e172006b-1f3e-4193-9d7c-e014842fa4b2.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,e172006b-1f3e-4193-9d7c-e014842fa4b2.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=e172006b-1f3e-4193-9d7c-e014842fa4b2</wfw:commentRss>
      <slash:comments>5</slash:comments>
      
      <title>GUI Test Automation with Ranorex Studio</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,e172006b-1f3e-4193-9d7c-e014842fa4b2.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/atGp-kjETbQ/GUITestAutomationWithRanorexStudio.aspx</link>
      <pubDate>Wed, 25 Mar 2009 06:19:59 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
Today I got a demo of a tool called &lt;a href="http://www.ranorex.com/"&gt;Ranorex Studio&lt;/a&gt;,&#xD;
a test automation product built using the &lt;a href="http://www.icsharpcode.net/OpenSource/SD/"&gt;SharpDevelop&lt;/a&gt; IDE.&#xD;
Aside from the IDE I last play with in the very early days of the project for me,&#xD;
the real interesting aspect was the C# framework it ships with that provides the bases&#xD;
of modeling UI elements in a similar manner to &lt;a href="http://www.stevetrefethen.com/blog/ModelingUIForAutomatedGUITesting.aspx"&gt;Zombie’s&#xD;
GEM framework&lt;/a&gt;. Tests can be written in C#, VB.NET or Iron Python and are written&#xD;
using this framework to build a test. To give you a taste of this kind of binding&#xD;
here is fragment from a typed class that models Windows Calc:&#xD;
&lt;/p&gt;&#xD;
        &lt;pre class="c#" name="code"&gt;/// &amp;lt;summary&amp;gt;&#xD;
/// The FormCalculatorAppFolder folder.&#xD;
/// &amp;lt;/summary&amp;gt;&#xD;
public class FormCalculatorAppFolder : RepoGenBaseFolder&#xD;
{&#xD;
&#xD;
    /// &amp;lt;summary&amp;gt;&#xD;
    /// Creates a new FormCalculator  folder.&#xD;
    /// &amp;lt;/summary&amp;gt;&#xD;
    public FormCalculatorAppFolder(RepoGenBaseFolder appFolder) : &#xD;
            base("FormCalculator", "/form[@title='Calculator' or @title='Rechner']", appFolder, 3000, true)&#xD;
    {&#xD;
    }&#xD;
&#xD;
    /// &amp;lt;summary&amp;gt;&#xD;
    /// The ButtonAsterisk item.&#xD;
    /// &amp;lt;/summary&amp;gt;&#xD;
    public virtual Ranorex.Button ButtonAsterisk&#xD;
    {&#xD;
        get &#xD;
        { &#xD;
            return CreateAdapterForPath&amp;lt;Ranorex.Button&amp;gt;("ButtonAsterisk", "button[@text='*']", 5000, null);&#xD;
        }&#xD;
    }&#xD;
    /// &amp;lt;summary&amp;gt;&#xD;
    /// The Button3 item.&#xD;
    /// &amp;lt;/summary&amp;gt;&#xD;
    public virtual Ranorex.Button Button3&#xD;
    {&#xD;
        get &#xD;
        { &#xD;
            return CreateAdapterForPath&amp;lt;Ranorex.Button&amp;gt;("Button3", "button[@text='3']", 5000, null);&#xD;
        }&#xD;
    }&#xD;
    /// &amp;lt;summary&amp;gt;&#xD;
    /// The ButtonEqual item.&#xD;
    /// &amp;lt;/summary&amp;gt;&#xD;
    public virtual Ranorex.Button ButtonEqual&#xD;
    {&#xD;
        get &#xD;
        { &#xD;
            return CreateAdapterForPath&amp;lt;Ranorex.Button&amp;gt;("ButtonEqual", "button[@text='=']", 5000, null);&#xD;
        }&#xD;
    }&#xD;
    /// &amp;lt;summary&amp;gt;&#xD;
    /// The OutputText item.&#xD;
    /// &amp;lt;/summary&amp;gt;&#xD;
    public virtual Ranorex.Text OutputText&#xD;
    {&#xD;
        get &#xD;
        { &#xD;
            return CreateAdapterForPath&amp;lt;Ranorex.Text&amp;gt;("OutputText", "text[@controlid='403']", 5000, null);&#xD;
        }&#xD;
    }&#xD;
    /// &amp;lt;summary&amp;gt;&#xD;
    /// The ButtonClose item.&#xD;
    /// &amp;lt;/summary&amp;gt;&#xD;
    public virtual Ranorex.Button ButtonClose&#xD;
    {&#xD;
        get &#xD;
        { &#xD;
            return CreateAdapterForPath&amp;lt;Ranorex.Button&amp;gt;("ButtonClose", "titlebar/button[@accessiblename='Close' or @accessiblename='Schließen']", 5000, null);&#xD;
        }&#xD;
    }&#xD;
    /// &amp;lt;summary&amp;gt;&#xD;
    /// The Button7 item.&#xD;
    /// &amp;lt;/summary&amp;gt;&#xD;
    public virtual Ranorex.Button Button7&#xD;
    {&#xD;
        get &#xD;
        { &#xD;
            return CreateAdapterForPath&amp;lt;Ranorex.Button&amp;gt;("Button7", "button[@text='7']", 5000, null);&#xD;
        }&#xD;
    }&#xD;
    /// &amp;lt;summary&amp;gt;&#xD;
    /// The ButtonMinus item.&#xD;
    /// &amp;lt;/summary&amp;gt;&#xD;
    public virtual Ranorex.Button ButtonMinus&#xD;
    {&#xD;
        get &#xD;
        { &#xD;
            return CreateAdapterForPath&amp;lt;Ranorex.Button&amp;gt;("ButtonMinus", "button[@text='-']", 5000, null);&#xD;
        }&#xD;
    }&#xD;
    /// &amp;lt;summary&amp;gt;&#xD;
    /// The Self item.&#xD;
    /// &amp;lt;/summary&amp;gt;&#xD;
    public virtual Ranorex.Form Self&#xD;
    {&#xD;
        get &#xD;
        { &#xD;
            return CreateAdapterForPath&amp;lt;Ranorex.Form&amp;gt;("Self", "", 3000, null);&#xD;
        }&#xD;
    }&#xD;
&#xD;
    &#xD;
}&lt;/pre&gt;&#xD;
        &lt;p&gt;&#xD;
Notice in this example methods of class FormCalculatorAppFolder use XPATH &lt;strike&gt;regular&lt;/strike&gt; expressions&#xD;
to “bind” their respective UI element which I think this is an interesting approach&#xD;
with a lot of flexibility. Also notice the idea here is similar to that of strongly&#xD;
typed dataset for data access. The tool provides a set of “adapters” which are used&#xD;
to drive various types of UI at varying degrees of accessibility (WinAPI, .NET, Web,&#xD;
MSAA).&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
I haven’t had enough time using the tool or framework to draw a conclusion as to the&#xD;
validity of the approach or quality of implementation but I have seen a few unexpected&#xD;
error dialogs which are things that will need to be fixed right away.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Are you familiar with or have you used this tool? If so, what do you think?&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
If not, what tools are you using for GUI automation?&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=e172006b-1f3e-4193-9d7c-e014842fa4b2"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/lX1LWNe6yd5YLQY73x938veXN1s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lX1LWNe6yd5YLQY73x938veXN1s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/lX1LWNe6yd5YLQY73x938veXN1s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/lX1LWNe6yd5YLQY73x938veXN1s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=atGp-kjETbQ:8gnrAZtJokA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=atGp-kjETbQ:8gnrAZtJokA:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=atGp-kjETbQ:8gnrAZtJokA:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=atGp-kjETbQ:8gnrAZtJokA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=atGp-kjETbQ:8gnrAZtJokA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=atGp-kjETbQ:8gnrAZtJokA:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=atGp-kjETbQ:8gnrAZtJokA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=atGp-kjETbQ:8gnrAZtJokA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=atGp-kjETbQ:8gnrAZtJokA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/atGp-kjETbQ" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,e172006b-1f3e-4193-9d7c-e014842fa4b2.aspx</comments>
      <category>Automation</category>
      <category>Testing</category>
      <category>Tools</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/GUITestAutomationWithRanorexStudio.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=927506cd-c8e3-4ee9-a7e8-262bdc9c1520</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,927506cd-c8e3-4ee9-a7e8-262bdc9c1520.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,927506cd-c8e3-4ee9-a7e8-262bdc9c1520.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=927506cd-c8e3-4ee9-a7e8-262bdc9c1520</wfw:commentRss>
      <slash:comments>8</slash:comments>
      
      <title>Getting my attention</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,927506cd-c8e3-4ee9-a7e8-262bdc9c1520.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/ZVQ0U7vuVe4/GettingMyAttention.aspx</link>
      <pubDate>Mon, 23 Mar 2009 04:49:30 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
I’ve written 500+ blog posts and not until I developed a &lt;a href="http://www.stevetrefethen.com/blog/FacebookDeveloperToolkitStarterKitUpdatedToV20RC3.aspx"&gt;Starter&#xD;
Kit&lt;/a&gt; did I start getting so much direct email though the Contact me link on my&#xD;
blog. Of course, not all of it ends up reading like &lt;a href="http://www.stevetrefethen.com/blog/CommentView,guid,1BBF25B8-EED5-458B-86B7-006D78F50ED9.aspx#dcf36e5b-165e-44e4-9356-76a6e3e7c110"&gt;this&lt;/a&gt; (comment),&#xD;
far from it, rather let me give you an example:&#xD;
&lt;/p&gt;&#xD;
        &lt;p style="padding-left: 100px"&gt;&#xD;
          &lt;em&gt;i 2 m working on facebook app &#xD;
&lt;br&gt;&#xD;
i try install ur starter kit but it not appear &#xD;
&lt;br&gt;&#xD;
need u 2 send me solution urgent &#xD;
&lt;br&gt;&#xD;
i didn’t understand plz help&lt;/em&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
This kind of writing drives nuts. Perhaps if my kids were teens I might appreciate&#xD;
this a bit more but they’re 5, 3 and 1. While this isn’t an actual email it is representative&#xD;
and as you can imagine, not exactly the kind of thing I look forward to reading. I&#xD;
used to feel obligated to respond to nearly everyone who felt the desire to reach&#xD;
out to me via the Contact me link but seriously? I don’t know, and don’t really want&#xD;
to know, if there is a name for this “style” but I find it difficult and halting to&#xD;
read. How it makes sense to reach out to someone with a message like this and asking&#xD;
for help? Yeah, this ain’t it.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Granted, in some cases it may simply be a language barrier but I’ve gotten plenty&#xD;
of messages written in this “style” where it’s pretty clear that’s not the case.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=927506cd-c8e3-4ee9-a7e8-262bdc9c1520"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/19OKqZaZ9oKg-e9h9V0NfJJzI-A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/19OKqZaZ9oKg-e9h9V0NfJJzI-A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/19OKqZaZ9oKg-e9h9V0NfJJzI-A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/19OKqZaZ9oKg-e9h9V0NfJJzI-A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=ZVQ0U7vuVe4:4sbYvrumRMo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=ZVQ0U7vuVe4:4sbYvrumRMo:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=ZVQ0U7vuVe4:4sbYvrumRMo:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=ZVQ0U7vuVe4:4sbYvrumRMo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=ZVQ0U7vuVe4:4sbYvrumRMo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=ZVQ0U7vuVe4:4sbYvrumRMo:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=ZVQ0U7vuVe4:4sbYvrumRMo:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=ZVQ0U7vuVe4:4sbYvrumRMo:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=ZVQ0U7vuVe4:4sbYvrumRMo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/ZVQ0U7vuVe4" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,927506cd-c8e3-4ee9-a7e8-262bdc9c1520.aspx</comments>
      <category>Soapbox</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/GettingMyAttention.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=93e29c2b-faca-4d59-9fa8-05a73b1a4655</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,93e29c2b-faca-4d59-9fa8-05a73b1a4655.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,93e29c2b-faca-4d59-9fa8-05a73b1a4655.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=93e29c2b-faca-4d59-9fa8-05a73b1a4655</wfw:commentRss>
      
      <title>Comcast Triple Play Denied</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,93e29c2b-faca-4d59-9fa8-05a73b1a4655.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/h2IasNshx6o/ComcastTriplePlayDenied.aspx</link>
      <pubDate>Sat, 21 Mar 2009 19:38:30 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
Last Thursday I called &lt;a href="http://www.comcast.com/" target="_blank"&gt;ComCast&lt;/a&gt; regarding&#xD;
an issue with our Internet access and subsequently ended up asking about their Triple&#xD;
Play plan combining TV, Internet and Phone service. The rep gladly quoted me $99 for&#xD;
12 months which I accepted and scheduled a tech for today (Saturday) between 12-4pm.&#xD;
The rep mentioned he’d call me back within 20 minutes to confirm a smaller time window&#xD;
but that call never happened but I thought “no big deal”. Well, I decided double check&#xD;
this morning that, in fact, someone was coming today and found ComCast had no record&#xD;
of my call nor any order for new service. The new rep apologized and offered to schedule&#xD;
a new appointment and set me up for $115/month! Rather puzzled, I explained my previous&#xD;
call and basically all i got was an apology. He went on to inform me the $99 price&#xD;
expired last November and he wasn’t authorized to give me that “deal” to which I said,&#xD;
“no thanks”.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Suffice it to say, not a good experience. Perhaps it’s called Triple Play because&#xD;
it’s just that, over quickly.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=93e29c2b-faca-4d59-9fa8-05a73b1a4655"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/c_z98AEcm3FlsASmhVoGCKK_kOI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/c_z98AEcm3FlsASmhVoGCKK_kOI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/c_z98AEcm3FlsASmhVoGCKK_kOI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/c_z98AEcm3FlsASmhVoGCKK_kOI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=h2IasNshx6o:CeBgS8R7rME:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=h2IasNshx6o:CeBgS8R7rME:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=h2IasNshx6o:CeBgS8R7rME:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=h2IasNshx6o:CeBgS8R7rME:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=h2IasNshx6o:CeBgS8R7rME:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=h2IasNshx6o:CeBgS8R7rME:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=h2IasNshx6o:CeBgS8R7rME:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=h2IasNshx6o:CeBgS8R7rME:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=h2IasNshx6o:CeBgS8R7rME:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/h2IasNshx6o" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,93e29c2b-faca-4d59-9fa8-05a73b1a4655.aspx</comments>
      <category>Home</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/ComcastTriplePlayDenied.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=7401f868-e2f4-4b68-8ec9-a6ad074dcbbe</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,7401f868-e2f4-4b68-8ec9-a6ad074dcbbe.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,7401f868-e2f4-4b68-8ec9-a6ad074dcbbe.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=7401f868-e2f4-4b68-8ec9-a6ad074dcbbe</wfw:commentRss>
      
      <title>Simile Exhibit of Falafel Training Sessions</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,7401f868-e2f4-4b68-8ec9-a6ad074dcbbe.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/biTMmAB4BN4/SimileExhibitOfFalafelTrainingSessions.aspx</link>
      <pubDate>Fri, 20 Mar 2009 18:41:35 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;a href="http://training.falafel.com/TrainingMap.ashx"&gt;&#xD;
            &lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 0px 0px 5px; border-right-width: 0px" height="329" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/TestCompleteOpenClassTrainingApril_88C5/image_3.png" width="344" align="right" border="0"&gt;&lt;/img&gt;&#xD;
          &lt;/a&gt; I’ve &lt;a href="http://www.stevetrefethen.com/blog/TestCompleteTrainingOnline.aspx"&gt;mentioned&#xD;
before&lt;/a&gt; part of my job at &lt;a href="http://www.falafel.com/" target="_blank"&gt;Falafel&#xD;
Software&lt;/a&gt; is online and onsite training which is a great and expanding business&#xD;
(fortunately in this economy). And recently, I’ve been working on &lt;a href="http://training.falafel.com/" target="_blank"&gt;training.falafel.com&lt;/a&gt;,&#xD;
Falafel’s new training website which includes a Google map driven by &lt;a href="http://www.google.com/search?q=Simile+Exhibit"&gt;Simile&#xD;
Exhibit&lt;/a&gt; highlighting Falafel’s training engagements dating back to January of&#xD;
2007. I’ve blogged about Exhibit &lt;a href="http://www.stevetrefethen.com/blog/HostingMITsSimileExhibitOSProject.aspx"&gt;before&lt;/a&gt; and&#xD;
found it to be a great visualization tool.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Exhibit is a pretty fascinating way to leverage both JavaScript and HTML markup. Using&#xD;
custom attributes on tags HTML tags you craft a page that using &lt;a href="http://simile.mit.edu/wiki/Exhibit/Lenses_Views_and_Facets"&gt;Lenses,&#xD;
Views and Facets&lt;/a&gt; creating a unique presentation of your data. In fact, the &lt;a href="http://simile.mit.edu/wiki/Exhibit/2.0/Map_View"&gt;Map&#xD;
View&lt;/a&gt; super easy to use and “just works”. For example, the entire markup necessary&#xD;
for this training page looks like this (fyi, the Google Map Key has been removed as&#xD;
it’s very long): &#xD;
&lt;/p&gt;&#xD;
        &lt;pre class="xml" name="code"&gt; &amp;lt;html&amp;gt;&#xD;
   &amp;lt;head&amp;gt;&#xD;
       &amp;lt;title&amp;gt;Falafel Trainings&amp;lt;/title&amp;gt;&#xD;
       &amp;lt;link href="/trainingmap/trainings.js" type="application/json" rel="exhibit/data" /&amp;gt;&#xD;
       &amp;lt;script src="http://static.simile.mit.edu/exhibit/api-2.0/exhibit-api.js"&#xD;
           type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&#xD;
       &amp;lt;script src="http://static.simile.mit.edu/exhibit/extensions-2.0/map/map-extension.js?gmapkey="&#xD;
           type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&#xD;
        &amp;lt;style type="text/css"&amp;gt;&#xD;
        body {&#xD;
            font-family:Arial,Helvetica,SunSans-Regular,sans-serif;&#xD;
            font-size:12px;&#xD;
        }&#xD;
        &amp;lt;/style&amp;gt;&#xD;
   &amp;lt;/head&amp;gt; &#xD;
   &amp;lt;body&amp;gt;&#xD;
    &amp;lt;div style="float:right" ex:role="logo" ex:color="DeepSkyBlue"&amp;gt;&amp;lt;/div&amp;gt;&#xD;
    &amp;lt;div ex:role="view" ex:viewClass="Map" ex:latlng=".addressLatLng"&#xD;
        ex:center="38.479394673276445, -95.361328125" ex:zoom="4"&#xD;
        ex:showHeader="true" ex:overviewControl="true" ex:colorKey=".type"&amp;gt;&#xD;
    &amp;lt;/div&amp;gt;&#xD;
    &amp;lt;table width="100%"&amp;gt;&#xD;
        &amp;lt;tr valign="top"&amp;gt;&#xD;
            &amp;lt;td width="50%" valign="top"&amp;gt;&#xD;
                &amp;lt;div ex:role="facet" ex:expression=".product" ex:facetLabel="Product"&amp;gt;&amp;lt;/div&amp;gt;&#xD;
            &amp;lt;/td&amp;gt;&#xD;
            &amp;lt;td width="50%" valign="top"&amp;gt;&#xD;
                &amp;lt;div ex:role="facet" ex:expression=".location" ex:facetLabel="Location"&amp;gt;&amp;lt;/div&amp;gt;&#xD;
            &amp;lt;/td&amp;gt;&#xD;
        &amp;lt;/tr&amp;gt;&#xD;
        &amp;lt;tr&amp;gt;&#xD;
            &amp;lt;td width="50%" valign="top"&amp;gt;&#xD;
                &amp;lt;div ex:role="facet" ex:expression=".training" ex:facetLabel="Type"&amp;gt;&amp;lt;/div&amp;gt;            &#xD;
            &amp;lt;/td&amp;gt;&#xD;
            &amp;lt;td width="50%" valign="top"&amp;gt;&#xD;
                &amp;lt;div ex:role="facet" ex:expression=".startdate" ex:facetLabel="Start Date"&amp;gt;&amp;lt;/div&amp;gt;&#xD;
            &amp;lt;/td&amp;gt;&#xD;
        &amp;lt;/tr&amp;gt;&#xD;
    &amp;lt;/table&amp;gt;&#xD;
&amp;lt;/body&amp;gt;&#xD;
&amp;lt;/html&amp;gt;&lt;/pre&gt;&#xD;
        &lt;p&gt;&#xD;
The data is in JSON format and loaded by Exhibit using a special &amp;lt;link&amp;gt; as you&#xD;
can see in the HEAD section above. To find lat/long coordinates for a set of data&#xD;
you can follow &lt;a href="http://simile.mit.edu/wiki/Exhibit/2.0/Map_View_Tutorial"&gt;this&#xD;
tutorial&lt;/a&gt; and fetch them via a simple page loaded in the browser, though it’s limited&#xD;
as Google restricts how many geocode requests you can make within a given timeframe&#xD;
leaving you with partial results, or use a &lt;a href="http://www.stevetrefethen.com/blog/UsingGoogleMapsForGeocodingInCPart2DeserializingToAClass.aspx"&gt;geocoding&#xD;
routine&lt;/a&gt; that handles the throttling for you ensuring a complete result set. In&#xD;
this case, I’m using a simple text file as we don’t have hundreds of items, at least&#xD;
not yet &lt;img alt=":-)" src="smilies/happy.gif"&gt;&lt;/img&gt;.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Exhibit supports numerous views though this example uses just the Map View, another&#xD;
example of a view is the timeline, built into &lt;a href="http://dasblog.info" target="_blank"&gt;dasblog&lt;/a&gt;,&#xD;
for displaying &lt;a href="http://www.stevetrefethen.com/blog/timeline.aspx"&gt;blog posts&#xD;
over time&lt;/a&gt;. As I’ve said before, if you haven’t looked at the &lt;a href="http://simile.mit.edu/"&gt;Simile&#xD;
projects&lt;/a&gt; you should, they could save you lots of time.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
So, how about it, have you used any Simile projects?&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;strong&gt;[Update: March 21, 2009] &lt;/strong&gt;Fix typos.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=7401f868-e2f4-4b68-8ec9-a6ad074dcbbe"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GbUubxPCdfljb2BuN4DndWZALJk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GbUubxPCdfljb2BuN4DndWZALJk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GbUubxPCdfljb2BuN4DndWZALJk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GbUubxPCdfljb2BuN4DndWZALJk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=biTMmAB4BN4:ryz-nP1xcpc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=biTMmAB4BN4:ryz-nP1xcpc:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=biTMmAB4BN4:ryz-nP1xcpc:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=biTMmAB4BN4:ryz-nP1xcpc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=biTMmAB4BN4:ryz-nP1xcpc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=biTMmAB4BN4:ryz-nP1xcpc:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=biTMmAB4BN4:ryz-nP1xcpc:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=biTMmAB4BN4:ryz-nP1xcpc:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=biTMmAB4BN4:ryz-nP1xcpc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/biTMmAB4BN4" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,7401f868-e2f4-4b68-8ec9-a6ad074dcbbe.aspx</comments>
      <category>Open Source</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/SimileExhibitOfFalafelTrainingSessions.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=5b38be9b-838a-4390-bcfc-b8d71bc71d6d</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,5b38be9b-838a-4390-bcfc-b8d71bc71d6d.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,5b38be9b-838a-4390-bcfc-b8d71bc71d6d.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=5b38be9b-838a-4390-bcfc-b8d71bc71d6d</wfw:commentRss>
      
      <title>Facebook’s Disappearing Application Platform</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,5b38be9b-838a-4390-bcfc-b8d71bc71d6d.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/PGX7ZGob4Yg/FacebooksDisappearingApplicationPlatform.aspx</link>
      <pubDate>Mon, 16 Mar 2009 08:21:45 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;div class="dropcap"&gt;W&#xD;
&lt;/div&gt;&#xD;
ith each refinement to the &lt;a href="http://www.facebook.com/" target="_blank"&gt;Facebook&lt;/a&gt; UI&#xD;
it seems their application platform is taking a back seat to the desire of chasing&#xD;
after millisecond status updates a la Twitter and with this latest round applications&#xD;
seem to have all but disappeared. When the platform first rolled out there was a period&#xD;
of rapid developer adoption largely due to the potential audience size an application&#xD;
could field in a short period of time, that viral affect that was so popularized.&#xD;
The excitement continued for quite some time though I think in some cases Facebook&#xD;
must have become envious as it seems others were perhaps having more commercial success&#xD;
on their platform than Facebook itself if not in real terms perhaps in relative terms. &#xD;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;&#xD;
In the beginning, applications played a prominent roll and “installing” new applications&#xD;
was perhaps all too easy. I’d refer to those as the “wild west” days with the ensuing&#xD;
gold rush period that was eventually &lt;a href="http://www.techcrunch.com/2008/06/02/facebook-applications-arent-meant-to-be-installed/" target="_blank"&gt;killed&#xD;
off&lt;/a&gt;. Ever since then it seems Facebook as increasing clamped down user’s exposure&#xD;
to third party applications and in many cases made it difficult and costly to keep&#xD;
an FB application up and running successfully over time as the API continues to be&#xD;
a moving target.&#xD;
&lt;/p&gt;&lt;p&gt;&#xD;
With the latest round of UI changes I couldn’t find a link to Facebook’s own&#xD;
Developer’s application, which I have “installed” on my account allowing me to review&#xD;
the FB applications I’ve created. Eventually, I found a round-about path through the&#xD;
Settings|Application Settings menu though that seems quite counter intuitive. Clearly,&#xD;
the rules of engagement for applications have changed dramatically over the platform’s&#xD;
brief lifetime so much so I’d be interested in statistics regarding how the viral&#xD;
nature of Facebook applications has been altered since the early days though I suspect&#xD;
we’ll never know. I think if you were fortunate enough to get in early and earn a&#xD;
respectable size audience you’re probably doing just though I’d suspect that’s not&#xD;
nearly as repeatable as one might hope given the current situation.&#xD;
&lt;/p&gt;&lt;p&gt;&#xD;
Facebook has something unique with their platform and garnered a developer audience&#xD;
quickly though it seems bent on following in Apple’s footsteps by locking it down&#xD;
so tightly they’ll end up thwarting the majority of developer’s who’d write applications&#xD;
they wouldn’t have the time nor wherewithal to write. These days it’s almost looking&#xD;
like Facebook would have preferred &lt;a href="http://www.google.com/search?q=Facebook+Connect"&gt;Facebook&#xD;
Connect&lt;/a&gt; rather than their platform route as that’s certainly the direction their&#xD;
pushing. At this point, let’s just say I’m glad I’m not working for a company in the&#xD;
midst of developing a Facebook application hoping to reach my target audience.&#xD;
&lt;/p&gt;&lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=5b38be9b-838a-4390-bcfc-b8d71bc71d6d"&gt;&lt;/img&gt;&lt;br&gt;&lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3IITudUd8r6cjStm5qCCsCTD2_8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3IITudUd8r6cjStm5qCCsCTD2_8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3IITudUd8r6cjStm5qCCsCTD2_8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3IITudUd8r6cjStm5qCCsCTD2_8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=PGX7ZGob4Yg:4sWmB3iXXng:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=PGX7ZGob4Yg:4sWmB3iXXng:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=PGX7ZGob4Yg:4sWmB3iXXng:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=PGX7ZGob4Yg:4sWmB3iXXng:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=PGX7ZGob4Yg:4sWmB3iXXng:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=PGX7ZGob4Yg:4sWmB3iXXng:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=PGX7ZGob4Yg:4sWmB3iXXng:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=PGX7ZGob4Yg:4sWmB3iXXng:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=PGX7ZGob4Yg:4sWmB3iXXng:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/PGX7ZGob4Yg" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,5b38be9b-838a-4390-bcfc-b8d71bc71d6d.aspx</comments>
      <category>Facebook</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/FacebooksDisappearingApplicationPlatform.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=fa8c45b7-abe7-4e35-bc73-1a97147c322a</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,fa8c45b7-abe7-4e35-bc73-1a97147c322a.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,fa8c45b7-abe7-4e35-bc73-1a97147c322a.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=fa8c45b7-abe7-4e35-bc73-1a97147c322a</wfw:commentRss>
      
      <title>Reading list since November 2008</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,fa8c45b7-abe7-4e35-bc73-1a97147c322a.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/LyqzCaYSjCw/ReadingListSinceNovember2008.aspx</link>
      <pubDate>Wed, 11 Mar 2009 06:18:21 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;div&gt;&#xD;
          &lt;table class="floatleft" cellpadding="5"&gt;&#xD;
            &lt;tbody&gt;&#xD;
              &lt;tr&gt;&#xD;
                &lt;td&gt;&#xD;
                  &lt;a class="floatleft" href="http://www.amazon.com/gp/product/1416558977?ie=UTF8&amp;amp;tag=stevtrefwebl-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=1416558977"&gt;&#xD;
                    &lt;img title="image" style="border-width: 0px; display: inline;" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/27f6fba7ed21_11F18/image_6db2db3f-97f4-45ee-a528-43632f7ae7ca.png" border="0" height="160" width="106"&gt;&lt;/img&gt;&#xD;
                  &lt;/a&gt;&#xD;
                  &lt;img style="border-style: none ! important; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=stevtrefwebl-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=1416558977" border="0" height="1" width="1"&gt;&lt;/img&gt;&#xD;
                &lt;/td&gt;&#xD;
                &lt;td&gt;&#xD;
                  &lt;a class="floatleft" href="http://www.amazon.com/gp/product/0743497198?ie=UTF8&amp;amp;tag=stevtrefwebl-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0743497198"&gt;&#xD;
                    &lt;img title="image" style="border-width: 0px; display: inline;" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/27f6fba7ed21_11F18/image_85323c71-f3a4-42b7-8080-b92ea7642d6b.png" border="0" height="160" width="99"&gt;&lt;/img&gt;&#xD;
                  &lt;/a&gt;&#xD;
                  &lt;img style="border-style: none ! important; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=stevtrefwebl-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0743497198" border="0" height="1" width="1"&gt;&lt;/img&gt;&#xD;
                &lt;/td&gt;&#xD;
              &lt;/tr&gt;&#xD;
              &lt;tr&gt;&#xD;
                &lt;td&gt;&#xD;
                  &lt;a class="floatleft" href="http://www.amazon.com/gp/product/039306235X?ie=UTF8&amp;amp;tag=stevtrefwebl-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=039306235X" width="50%"&gt;&#xD;
                    &lt;img title="image" style="border-width: 0px; display: inline;" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/27f6fba7ed21_11F18/image_d2407bdc-8a8c-4ca6-ab99-cb10f6975a32.png" border="0" height="160" width="106"&gt;&lt;/img&gt;&#xD;
                  &lt;/a&gt;&#xD;
                  &lt;img style="border-style: none ! important; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=stevtrefwebl-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=039306235X" border="0" height="1" width="1"&gt;&lt;/img&gt;&#xD;
                &lt;/td&gt;&#xD;
                &lt;td&gt;&#xD;
                  &lt;a class="floatleft" href="http://www.amazon.com/gp/product/0307455874?ie=UTF8&amp;amp;tag=stevtrefwebl-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0307455874"&gt;&#xD;
                    &lt;img title="image" style="border-width: 0px; display: inline;" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/27f6fba7ed21_11F18/image_e11c8dcb-a4e8-4871-858b-4cd47c277bf7.png" border="0" height="160" width="98"&gt;&lt;/img&gt;&#xD;
                  &lt;/a&gt;&#xD;
                  &lt;img style="border-style: none ! important; margin: 0px;" alt="" src="http://www.assoc-amazon.com/e/ir?t=stevtrefwebl-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0307455874" border="0" height="1" width="1"&gt;&lt;/img&gt;&#xD;
                &lt;/td&gt;&#xD;
              &lt;/tr&gt;&#xD;
            &lt;/tbody&gt;&#xD;
          &lt;/table&gt;&#xD;
          &lt;p&gt;&#xD;
Following up my &lt;a href="http://www.stevetrefethen.com/blog/10PagesADay.aspx"&gt;last&#xD;
post&lt;/a&gt; I thought I’d add my reading list from roughly November of last year. I’m&#xD;
currently finishing up Obama’s Audacity of Hope while at the same time reading Robinson&#xD;
Crusoe on my &lt;a href="http://www.stevetrefethen.com/blog/MyAnswerToApplesIPodTouchIsItWorthIt.aspx" target="_blank"&gt;iPod&#xD;
Touch&lt;/a&gt; using the &lt;a href=""&gt;Classics App&lt;/a&gt;, a must buy IMO at $2.99. I wasn’t&#xD;
sure how I’d like reading a book on a device but it’s been an enjoyable experience&#xD;
and a great escape when eating dinner while on the road like I am right now writing&#xD;
from &lt;a href="http://maps.google.com/maps?f=q&amp;amp;source=s_q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=sierra+vista,+az&amp;amp;sll=37.0625,-95.677068&amp;amp;sspn=53.300127,76.464844&amp;amp;ie=UTF8&amp;amp;ll=31.56391,-110.316296&amp;amp;spn=0.113209,0.149345&amp;amp;t=h&amp;amp;z=13&amp;amp;iwloc=addr" target="_blank"&gt;Sierra&#xD;
Vista, AZ&lt;/a&gt;.&#xD;
&lt;/p&gt;&#xD;
        &lt;/div&gt;&#xD;
        &lt;p&gt;&#xD;
I’ve been thinking I should put together a similar list of the books our kids are&#xD;
enjoying from our &lt;a href="http://www.santacruzpl.org/branches/sv/index.shtml" target="_blank"&gt;local&#xD;
library&lt;/a&gt;. We usually pick up 10-15 books every few weeks for reading before bed&#xD;
and there have been some clear favorites.&#xD;
&lt;/p&gt;&#xD;
        &lt;div style="clear:left"&gt;&#xD;
        &lt;/div&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=fa8c45b7-abe7-4e35-bc73-1a97147c322a"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/pzmMrn0Bhj1DI2eGtXBntrwGb_M/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pzmMrn0Bhj1DI2eGtXBntrwGb_M/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/pzmMrn0Bhj1DI2eGtXBntrwGb_M/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pzmMrn0Bhj1DI2eGtXBntrwGb_M/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=LyqzCaYSjCw:Rz55l14lAlk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=LyqzCaYSjCw:Rz55l14lAlk:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=LyqzCaYSjCw:Rz55l14lAlk:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=LyqzCaYSjCw:Rz55l14lAlk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=LyqzCaYSjCw:Rz55l14lAlk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=LyqzCaYSjCw:Rz55l14lAlk:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=LyqzCaYSjCw:Rz55l14lAlk:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=LyqzCaYSjCw:Rz55l14lAlk:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=LyqzCaYSjCw:Rz55l14lAlk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/LyqzCaYSjCw" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,fa8c45b7-abe7-4e35-bc73-1a97147c322a.aspx</comments>
      <category>Personal</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/ReadingListSinceNovember2008.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=6bc9c624-290e-417b-8546-26449a2209a4</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,6bc9c624-290e-417b-8546-26449a2209a4.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,6bc9c624-290e-417b-8546-26449a2209a4.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=6bc9c624-290e-417b-8546-26449a2209a4</wfw:commentRss>
      <slash:comments>4</slash:comments>
      
      <title>10 pages a day</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,6bc9c624-290e-417b-8546-26449a2209a4.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/VHxy-qT24jI/10PagesADay.aspx</link>
      <pubDate>Tue, 10 Mar 2009 07:27:39 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
A few weeks ago I had a wide ranging and varied conversation with Mark Dahlby, a principle&#xD;
of &lt;a href="http://www.writers.com" target="_blank"&gt;writers.com&lt;/a&gt;, and Jeff Meyer&#xD;
an old friend from my Borland Tech Support days, where we discussed writing, music&#xD;
and &lt;a href="http://en.wikipedia.org/wiki/Overtone_singing" target="_blank"&gt;Tuvan&#xD;
throat singing&lt;/a&gt; among numerous other topics. During the conversation I mentioned&#xD;
one of the main reason’s I blog is the habit of regular writing outside the context&#xD;
status updates, instant messages and email none of which I view as “writing”. We discussed&#xD;
the immediacy of content on the web and that much of our communication is breaking&#xD;
down to twitteresque snippets and how our consumption of content isn’t much deeper&#xD;
as skimming now rules the day. In fact, I’ve trimmed my blog reading dramatically&#xD;
and I’m no longer keeping up with the river of posts as evidenced by my Google Reader&#xD;
Trends which isn’t a bad thing.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;img title="Google Trends" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="275" alt="Google Trends" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/10pagesaday_12C2B/WindowClipping%20(45)_3.jpg" width="490" border="0"&gt;&lt;/img&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;h2&gt;Back to Basics&#xD;
&lt;/h2&gt;&#xD;
        &lt;p&gt;&#xD;
At the beginning of the year, not that I’m a subscriber to resolutions, I decided&#xD;
I’d gotten too far away from reading books and started a ten-page-a-day commitment.&#xD;
Each day I work to set aside time for at least ten pages from whatever book I’m reading&#xD;
and so far it’s working. In fact, I’ve been working on a reading list post but I’ve&#xD;
been too darn busy and have slowed down on blogging. Ah, the trade offs!&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Do you have any reading goals or find this to be a problem too?&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=6bc9c624-290e-417b-8546-26449a2209a4"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ObJ4mVzxjEephZUTFu7lE-ehDgw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ObJ4mVzxjEephZUTFu7lE-ehDgw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ObJ4mVzxjEephZUTFu7lE-ehDgw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ObJ4mVzxjEephZUTFu7lE-ehDgw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=VHxy-qT24jI:66bJMs_owVo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=VHxy-qT24jI:66bJMs_owVo:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=VHxy-qT24jI:66bJMs_owVo:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=VHxy-qT24jI:66bJMs_owVo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=VHxy-qT24jI:66bJMs_owVo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=VHxy-qT24jI:66bJMs_owVo:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=VHxy-qT24jI:66bJMs_owVo:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=VHxy-qT24jI:66bJMs_owVo:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=VHxy-qT24jI:66bJMs_owVo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/VHxy-qT24jI" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,6bc9c624-290e-417b-8546-26449a2209a4.aspx</comments>
      <category>Personal</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/10PagesADay.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=6aff75e4-324a-4194-b032-66623d9bc5b2</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,6aff75e4-324a-4194-b032-66623d9bc5b2.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,6aff75e4-324a-4194-b032-66623d9bc5b2.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=6aff75e4-324a-4194-b032-66623d9bc5b2</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <title>Down another 2,000 points on the DOW</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,6aff75e4-324a-4194-b032-66623d9bc5b2.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/UY-7Ekwwjl8/DownAnother2000PointsOnTheDOW.aspx</link>
      <pubDate>Fri, 06 Mar 2009 08:54:04 GMT</pubDate>
      <description>&lt;div class="floatright"&gt;&lt;a href="http://mobile.bloomberg.com/markets/americas.html"&gt;&lt;img style="border-width: 0px;" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/Noendinsite_1383E/image_thumb.png" border="0" height="128" width="244"&gt;&lt;/a&gt; 
&lt;br&gt;
&lt;span style="font-size: 0.6em;"&gt;Chart from &lt;a href="http://www.bloomberg.com/mobile"&gt;bloomberg.com&lt;/a&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;p&gt;
I last commented on the economy &lt;a href="http://www.stevetrefethen.com/blog/ALittleEconomicDialog.aspx" target="_blank"&gt;back
in October&lt;/a&gt; and things are far worse now. The predictable job market loses are
being reported daily, a pattern which I believe we’re likely to see for quite awhile.
The next shoe to drop might well be the failure of some of our major financial institutions
or the very large and distressed companies such as GM. It’s becoming increasingly
unclear to me why throwing billions of dollars at these companies, like AIG in particular,
is the right thing to do as they appear to be bottomless sink holes. Like BofA’s predicament
with Merrill Lynch where it appears they completely misunderstood the severity of
the problems Merrill faced. It’s striking how Ken Lewis, BofA’s CEO, was &lt;a href="http://www.cbsnews.com/stories/2008/10/19/60minutes/main4531244.shtml" target="_blank"&gt;on
60 minutes&lt;/a&gt; in late October touted as having created one of America’s “healthiest
banks” yet eight weeks later was asking for billions from tax payers in bail-out.
&lt;/p&gt;
&lt;p&gt;
I find it hard to believe the government can continue writing checks without letting
at least some of these large institutions fail. Now that we’re into near constant
bail-outs it seems actually allowing even one to fail would likely send another shockwave
to the economy yet it seems almost inevitable.
&lt;/p&gt;
&lt;p&gt;
I’ve been traveling a lot lately for work and it’s interesting to see businesses that
are doing well during these economic times. For example, I was recently in West Virginia
training at the &lt;a href="http://www.apus.edu/" target="_blank"&gt;American Public University&lt;/a&gt; whose
stock has &lt;a href="http://www.google.com/finance?client=ob&amp;amp;q=NASDAQ:APEI" target="_blank"&gt;held
up quite well&lt;/a&gt; all things considered. And today, listening to Fareed Zakaria’s &lt;a href="http://ht.cdn.turner.com/cnn/big/podcasts/fareedzakaria/video/2009/03/01/gps.podcast.03.01.new.cnn.m4v" target="_blank"&gt;GPS
podcast&lt;/a&gt; from March 1st with Canadian Prime Minister Stephen Harper about how Canada
hasn’t had a single bank failure nor bail-out. In January I was in Toronto at the &lt;a href="http://www.cppib.ca/" target="_blank"&gt;CPP
Investment Board&lt;/a&gt; and asked about the impact of the economy on their business though
they too are doing quite well. We also discussed how Canada’s banking regulations
may have helped it avoid the crisis the US finds itself in as they haven’t suffered
a sub-prime mortgage meltdown.
&lt;/p&gt;
&lt;p&gt;
As for our personal investments I continue to be extremely concerned about our 401k/IRA’s
as we’re over 50% loss meaning many years worth of savings is gone. We’re fortunate
that we purchased our home in 1999 meaning we have valuable equity although that’s
declining too. Home sales in our neighborhood used to be commonplace though houses
now rarely come on the market and when they do they sit there for months.
&lt;/p&gt;
&lt;p&gt;
Lastly is crime which at least anecdotally seems could be on the rise. In the past
few months two friends of ours have had their cars broken into here in Scotts Valley,
the first such cases I can recall in the 10 years we’ve lived here. I suspect this
too will be a sad reality as time marches on and the number of displaced and desperate
people increases. Speaking of which over the weekend we were at Costco in &lt;a href="http://maps.google.com/maps?&amp;z=13&amp;ll=36.974855,-122.031326&amp;spn=0.114923,0.134239&amp;om=1"&gt;Santa
Cruz&lt;/a&gt; and the crowd surrounding the nearby homeless shelter was many times the
largest crowd I’d seen there before.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;[Update: March 10, 2009] &lt;/strong&gt;A third friend’s car was broken into this
time in Aptos.
&lt;/p&gt;
&lt;p&gt;
I haven’t reached the depths of despair of the like so aptly described in Robinson
Crusoe, which I’m presently reading, but the economic outlook isn’t good. 
&lt;/p&gt;
&lt;p&gt;
Finally, as &lt;a href="http://www.stevetrefethen.com/blog/LessonFromMyThreeYearOldImGreat.aspx" target="_blank"&gt;I
learned from my son&lt;/a&gt; I’ll close with a few good notes: we just hired a new employee
at &lt;a href="http://www.falafel.com" target="_blank"&gt;Falafel&lt;/a&gt; this week and I head
out on Sunday for yet another business trip, the third such trip this year. So here’s
to good business!
&lt;/p&gt;
&lt;p&gt;
&lt;b&gt;[Update: March 19, 2009]&lt;/b&gt; A car in at neighboring house was broken into last
night and my wife spoke with the police who said that our neighborhood had been targeted
several times recently. Apparently, they caught two parolee's from nearby town in
relation to theft.&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=6aff75e4-324a-4194-b032-66623d9bc5b2" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;.
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Xsl4R9KNvt-YA2wmUAAuBduBA3E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Xsl4R9KNvt-YA2wmUAAuBduBA3E/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Xsl4R9KNvt-YA2wmUAAuBduBA3E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Xsl4R9KNvt-YA2wmUAAuBduBA3E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=UY-7Ekwwjl8:qeSICYKcNm0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=UY-7Ekwwjl8:qeSICYKcNm0:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=UY-7Ekwwjl8:qeSICYKcNm0:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=UY-7Ekwwjl8:qeSICYKcNm0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=UY-7Ekwwjl8:qeSICYKcNm0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=UY-7Ekwwjl8:qeSICYKcNm0:IlIkOUNlVJg"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=IlIkOUNlVJg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=UY-7Ekwwjl8:qeSICYKcNm0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?i=UY-7Ekwwjl8:qeSICYKcNm0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~ff/SteveTrefethensWeblog?a=UY-7Ekwwjl8:qeSICYKcNm0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SteveTrefethensWeblog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/UY-7Ekwwjl8" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,6aff75e4-324a-4194-b032-66623d9bc5b2.aspx</comments>
      <category>Opinion</category>
      <category>Personal</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/DownAnother2000PointsOnTheDOW.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=782375a7-23df-42bf-9e8f-547f6c4490e9</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,782375a7-23df-42bf-9e8f-547f6c4490e9.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,782375a7-23df-42bf-9e8f-547f6c4490e9.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=782375a7-23df-42bf-9e8f-547f6c4490e9</wfw:commentRss>
      <slash:comments>4</slash:comments>
      
      <title>Lesson from my three year old, “I’m great”</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,782375a7-23df-42bf-9e8f-547f6c4490e9.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/f9r55iszwYQ/LessonFromMyThreeYearOldImGreat.aspx</link>
      <pubDate>Mon, 23 Feb 2009 05:22:49 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
Nearly every morning I wake to my three year olds faint call of “Daddy, Daddy…” and&#xD;
make my way to his room where he always asks “Will you lay down with me?”. I lay down&#xD;
and ask “How are you bud?” to which he &lt;em&gt;always&lt;/em&gt; responds “I’m great”.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Personally, I’ve always responded to this question with “I’m good” or “pretty good”&#xD;
but I don’t do that anymore. So, it took a few months but, my son finally managed&#xD;
to teach me that I’m not just “good” or “pretty good” but that I too am doing “great”.&#xD;
This might seem trite but I’m beginning to think responding to people this way actually&#xD;
affects their reaction. I’m willing to concede it may solely be my outlook that’s&#xD;
changed but I see people smile and engage more when they recognize that I’m apparently&#xD;
doing well. I notice this particularly during brief encounters such as at a coffee&#xD;
shop or airline ticket counter (I’m seeing those a lot lately). I’ll see more eye&#xD;
contact, a longer smile or a more engaged response. Admittedly, the difference is&#xD;
subtle but I believe it’s there, perhaps people are more inclined to engage someone&#xD;
who outwardly appears to be doing really well opposed to just “good”.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Anyway, kids are awesome. Thanks Colby! And in case you’re wondering I’ve actually&#xD;
talked to him about this and now he always asks me how I’m doing.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=782375a7-23df-42bf-9e8f-547f6c4490e9"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/83BancGxAfi66TxVXneIWTVYu4A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/83BancGxAfi66TxVXneIWTVYu4A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/83BancGxAfi66TxVXneIWTVYu4A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/83BancGxAfi66TxVXneIWTVYu4A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=IoHMpVRd"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=1h3Q9xdf"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=1h3Q9xdf" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=7bJVDxkc"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=7bJVDxkc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=aRkJRo3X"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=aASnjMl5"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=aASnjMl5" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=yVPt5W8J"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/f9r55iszwYQ" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,782375a7-23df-42bf-9e8f-547f6c4490e9.aspx</comments>
      <category>Personal</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/LessonFromMyThreeYearOldImGreat.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=6f7cd234-9006-4158-b9b7-5fa5b39dba49</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,6f7cd234-9006-4158-b9b7-5fa5b39dba49.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,6f7cd234-9006-4158-b9b7-5fa5b39dba49.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=6f7cd234-9006-4158-b9b7-5fa5b39dba49</wfw:commentRss>
      <slash:comments>3</slash:comments>
      
      <title>Growth of a Facebook Application</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,6f7cd234-9006-4158-b9b7-5fa5b39dba49.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/CaCV2WEj6B0/GrowthOfAFacebookApplication.aspx</link>
      <pubDate>Thu, 12 Feb 2009 07:34:34 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;img title="image" style="border-right: 0px; border-top: 0px; display: inline; margin-left: 0px; border-left: 0px; margin-right: 0px; border-bottom: 0px" height="249" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/GrowthofaFacebookApplication_14066/image_8.png" width="313" align="right" border="0"&gt;&lt;/img&gt; I’ve&#xD;
written what I consider to be sort of a Seinfeld of &lt;a href="http://www.facebook.com/" target="_blank"&gt;Facebook&lt;/a&gt; applications,&#xD;
an app about “nothing”. I’m talking about my &lt;a href="http://www.stevetrefethen.com/blog/ASPNETFacebookStarterKitForVSNET2008UpdatedToV08.aspx" target="_blank"&gt;Facebook&#xD;
Starter Kit&lt;/a&gt; application which you can add to your Facebook account &lt;a href="http://apps.facebook.com/facebookaspnet" target="_blank"&gt;here&lt;/a&gt;.&#xD;
The application, pictured to the right, has a total of three pages:&#xD;
&lt;/p&gt;&#xD;
        &lt;ol&gt;&#xD;
          &lt;li&gt;&#xD;
Main page (pictured) which lists all your friends with their photo and a link to their&#xD;
profile page&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
An XFBML page that illustrates usage of XFBML via JavaScript on an IFrame canvas page&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
An &lt;a href="http://wiki.developers.facebook.com/index.php/FQL" target="_blank"&gt;FQL&lt;/a&gt; query&#xD;
page that allows you to test FQL queries with a list of your friends Facebook ID’s&#xD;
as well as your ID for convenience&lt;/li&gt;&#xD;
        &lt;/ol&gt;&#xD;
        &lt;p&gt;&#xD;
And that’s it.&#xD;
&lt;/p&gt;&#xD;
        &lt;h2&gt;By the Numbers&#xD;
&lt;/h2&gt;&#xD;
        &lt;p&gt;&#xD;
What I’ve found fairly interesting is watching the apps statistics, provided by Facebook,&#xD;
which are quite extensive. Here are some basic stats from from January 28th:&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;img title="Facebook app usage Jan 28th, 2009" alt="Facebook app usage Jan 28th, 2009" src="http://www.stevetrefethen.com/WndClip/WindowClippings_77fb6d8248434773a8406ee533a564ec.jpg"&gt;&lt;/img&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
And two weeks later:&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;img src="http://www.stevetrefethen.com/wndclip/WindowClippings_5a87e12fdadd49d5a16afb5acd1ce4b2.jpg"&gt;&lt;/img&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Meaning my “app about nothing” attracted roughly 10 new users a day over the past&#xD;
two weeks. Here is a chart of active users over the past few months:&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;img title="image" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="336" alt="image" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/GrowthofaFacebookApplication_14066/image_7.png" width="631" border="0"&gt;&lt;/img&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
The inflection point is Dec 24th 2009 which is interesting because I’ve read Facebook&#xD;
had a &lt;a href="http://news.bbc.co.uk/newsbeat/hi/technology/newsid_7811000/7811631.stm" target="_blank"&gt;very&#xD;
big Christmas&lt;/a&gt; with regard to traffic. I’ve done little to actually “market” this&#xD;
application other than &lt;a href="http://www.stevetrefethen.com/blog/CategoryView,category,Facebook.aspx" target="_blank"&gt;blog&#xD;
about the Starter Kit&lt;/a&gt; and post a link to my &lt;a href="http://www.stevetrefethen.com/wiki/Facebook%20application%20development%20in%20ASP.NET.ashx" target="_blank"&gt;wiki&#xD;
article&lt;/a&gt;.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Anyway, I thought this mildly interesting and it will be fun to watch where the stats&#xD;
go from here. I noticed today that the FDT now has +17K downloads and I know that&#xD;
no where near that number of people are using my Starter Kit so there is “room for&#xD;
growth”. &lt;img alt=":-)" src="smilies/happy.gif"&gt;&lt;/img&gt;&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Anyone else have interesting FB app stats to share?&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=6f7cd234-9006-4158-b9b7-5fa5b39dba49"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/aAwOFfvuy9V_pF9aRvpiy0gYuP8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aAwOFfvuy9V_pF9aRvpiy0gYuP8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/aAwOFfvuy9V_pF9aRvpiy0gYuP8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aAwOFfvuy9V_pF9aRvpiy0gYuP8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=CyYfctnv"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=Grwwqg1x"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=Grwwqg1x" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=VGjwIOBL"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=VGjwIOBL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=cbkykzPt"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=JmYncP5N"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=JmYncP5N" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=9PLdpU26"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/CaCV2WEj6B0" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,6f7cd234-9006-4158-b9b7-5fa5b39dba49.aspx</comments>
      <category>Facebook</category>
      <category>For fun</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/GrowthOfAFacebookApplication.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=dd347b50-abc6-434a-9753-2c433a79c36d</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,dd347b50-abc6-434a-9753-2c433a79c36d.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,dd347b50-abc6-434a-9753-2c433a79c36d.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=dd347b50-abc6-434a-9753-2c433a79c36d</wfw:commentRss>
      
      <title>Adding a project to TFS from TestComplete</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,dd347b50-abc6-434a-9753-2c433a79c36d.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/tS7lFTysMlA/AddingAProjectToTFSFromTestComplete.aspx</link>
      <pubDate>Fri, 06 Feb 2009 16:10:46 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
As a &lt;a href="http://www.automatedqa.com/products/testcomplete/" target="_blank"&gt;TestComplete&lt;/a&gt;&lt;a href="http://www.stevetrefethen.com/blog/TestCompleteTrainingOnline.aspx" target="_blank"&gt;trainer&lt;/a&gt; I’ve&#xD;
found myself re-installing it a few times and I typically have to reconfigure my &lt;a href="http://en.wikipedia.org/wiki/Team_Foundation_Server" target="_blank"&gt;TFS&lt;/a&gt; connection.&#xD;
I’ve been asked about this a few times so I thought I’d write it down. Here are the&#xD;
steps to setup and add a TestComplete project to TFS.&#xD;
&lt;/p&gt;&#xD;
        &lt;ol&gt;&#xD;
          &lt;li&gt;&#xD;
Select Tools | Issue Tracking | Connection Manager. This is usually the step I forget&#xD;
since it seems a bit odd to got to Issue Tracking when I want Source Control. Anyhoo… &#xD;
&lt;br&gt;&lt;br&gt;&lt;a href="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_2.png"&gt;&lt;img title="TestComplete Connection Manager" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="279" alt="TestComplete Connection Manager" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_thumb.png" width="423" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br&gt;&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Click Add…, provide a Connection name and select Visual Studio Team System: &#xD;
&lt;br&gt;&lt;br&gt;&lt;a href="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_4.png"&gt;&lt;img title="TestComplete Connection Wizard" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="285" alt="TestComplete Connection Wizard" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_thumb_1.png" width="350" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Click Next and specify the TFS URL and credentials: &#xD;
&lt;br&gt;&lt;br&gt;&#xD;
 &lt;a href="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_12.png"&gt;&lt;img title="TestComplete Connection Wizard Team System" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="285" alt="TestComplete Connection Wizard Team System" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_thumb_5.png" width="350" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
At this point, you should see the status of the connection and the top-level projects&#xD;
from the TFS server: &#xD;
&lt;br&gt;&lt;br&gt;&#xD;
 &lt;a href="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_10.png"&gt;&lt;img title="TestComplete Connection Wizard" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="285" alt="TestComplete Connection Wizard" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_thumb_4.png" width="354" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Now, from the Project Explorer you can right click your Project Suite and add it to&#xD;
the repository: &#xD;
&lt;br&gt;&lt;br&gt;&lt;a href="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_14.png"&gt;&lt;img title="Adding a TestComplete Suite to TFS" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="285" alt="Adding a TestComplete Suite to TFS" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ConnectingtoanTFSserverinTestComplete_F5A9/image_thumb_6.png" width="384" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/li&gt;&#xD;
        &lt;/ol&gt;&#xD;
        &lt;p&gt;&#xD;
And that as they say is it.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Are you using TFS? Do you use it in TestComplete?&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=dd347b50-abc6-434a-9753-2c433a79c36d"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/WVhqRbfoTyoL7anA79jcEqYdCz0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WVhqRbfoTyoL7anA79jcEqYdCz0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/WVhqRbfoTyoL7anA79jcEqYdCz0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/WVhqRbfoTyoL7anA79jcEqYdCz0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=tTOWGPwX"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=tAHIo131"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=tAHIo131" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=vbHX3W7e"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=vbHX3W7e" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=eGlXnlDE"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=FaMpPEfp"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=FaMpPEfp" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=7vx7z0Kf"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/tS7lFTysMlA" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,dd347b50-abc6-434a-9753-2c433a79c36d.aspx</comments>
      <category>Testing</category>
      <category>Tools</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/AddingAProjectToTFSFromTestComplete.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=3f712a42-aa94-417f-b3ad-6033f53daba6</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,3f712a42-aa94-417f-b3ad-6033f53daba6.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,3f712a42-aa94-417f-b3ad-6033f53daba6.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=3f712a42-aa94-417f-b3ad-6033f53daba6</wfw:commentRss>
      <slash:comments>3</slash:comments>
      
      <title>Per user queued Windows Error Reporting and reclaiming 3.13GB of disk space</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,3f712a42-aa94-417f-b3ad-6033f53daba6.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/_sY8gMXhNj8/PerUserQueuedWindowsErrorReportingAndReclaiming313GBOfDiskSpace.aspx</link>
      <pubDate>Thu, 05 Feb 2009 07:56:22 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
I just ran the Disk Cleanup utility and discovered this little gem: 3.13GB worth of&#xD;
disk space worth of Vista error reports. Why would it be allowed to grow this large?&#xD;
Seriously, what’s the point. Anyway, if you’re looking for some extra disk space you&#xD;
might just recapture some of it here like I just did. If only my fondness for Vista&#xD;
grew as fast as it’s waste of my disk space (have you checked the size of your &lt;a href="http://www.google.com/search?q=winsxs"&gt;winsxs&lt;/a&gt; directory&#xD;
lately?) &#xD;
&lt;br&gt;&lt;img title="Windows Disk Cleanup Utlity" height="499" alt="Windows Disk Cleanup Utlity" src="http://www.stevetrefethen.com/wndclip/Disk_Cleanup_for__(C_)_5218fbfab5864e1da0d58078f21ade1e.jpg" width="421"&gt;&lt;/img&gt;&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=3f712a42-aa94-417f-b3ad-6033f53daba6"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/zUd7-yEu9pyGlEHrSXRgEgX47uA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zUd7-yEu9pyGlEHrSXRgEgX47uA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/zUd7-yEu9pyGlEHrSXRgEgX47uA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zUd7-yEu9pyGlEHrSXRgEgX47uA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=0FDpUcqR"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=hZN4lZFf"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=hZN4lZFf" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=TMfYf7Eg"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=TMfYf7Eg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=cgNloUXv"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=RCYrVvKq"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=RCYrVvKq" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=1RPKk6kr"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/_sY8gMXhNj8" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,3f712a42-aa94-417f-b3ad-6033f53daba6.aspx</comments>
      <category>Vista</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/PerUserQueuedWindowsErrorReportingAndReclaiming313GBOfDiskSpace.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=fef9431d-39cd-4787-a232-df3c65b97d82</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,fef9431d-39cd-4787-a232-df3c65b97d82.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,fef9431d-39cd-4787-a232-df3c65b97d82.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=fef9431d-39cd-4787-a232-df3c65b97d82</wfw:commentRss>
      <slash:comments>7</slash:comments>
      
      <title>Need suggestions for fixing Windows Vista Sleep problems</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,fef9431d-39cd-4787-a232-df3c65b97d82.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/UP4tyrRSPsQ/NeedSuggestionsForFixingWindowsVistaSleepProblems.aspx</link>
      <pubDate>Wed, 28 Jan 2009 03:23:51 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
I’m running Vista on a &lt;a href="http://www.stevetrefethen.com/blog/RunningWindowsVistaOnAMacBookPro.aspx" target="_blank"&gt;MacBook&#xD;
Pro&lt;/a&gt; using bootcamp and over the past 7 days Vista’s Sleep functionality has completely&#xD;
failed which isn’t necessarily a new &lt;a href="http://www.stevetrefethen.com/blog/VistaSP1ResumeFromSleepBlackScreenOfDeathOnMyMacBookPro.aspx" target="_blank"&gt;problem&lt;/a&gt;.&#xD;
Now, the vast majority of times when the machine enters Sleep mode it eventually results&#xD;
in a system failure and reboot and roughly 30% of the time lost data of one kind or&#xD;
another leaving this message in the Event Viewer:&#xD;
&lt;/p&gt;&#xD;
        &lt;blockquote&gt;&#xD;
          &lt;p&gt;&#xD;
The previous system shutdown at 11:07:50 PM on 1/26/2009 was unexpected.&#xD;
&lt;/p&gt;&#xD;
        &lt;/blockquote&gt;&#xD;
        &lt;p&gt;&#xD;
I’m open to suggestions as to how to fix this problem. On Jan 9th 2009, I installed&#xD;
AVG Free (which I’ve now uninstalled) but that’s it, no other software has been installed/removed.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Any ideas?&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;b&gt;[Update: Feb 5, 2009] &lt;/b&gt;Knock on wood but after uninstalling FreeAVG I seem to&#xD;
be in a fairly stable state again WRT Sleep, meaning my machine actually wakes properly&#xD;
at this point. Go figure.&lt;br&gt;&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=fef9431d-39cd-4787-a232-df3c65b97d82"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/7fh3cscIwnJXk_xVI4GvKneev0w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7fh3cscIwnJXk_xVI4GvKneev0w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/7fh3cscIwnJXk_xVI4GvKneev0w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7fh3cscIwnJXk_xVI4GvKneev0w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=Yvp1hc8q"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=yRhmPJio"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=yRhmPJio" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=6Pw79vdN"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=6Pw79vdN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=sUcAnEuq"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=43cmcHfM"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=43cmcHfM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=nCWzrkVE"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/UP4tyrRSPsQ" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,fef9431d-39cd-4787-a232-df3c65b97d82.aspx</comments>
      <category>Hardware</category>
      <category>Vista</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/NeedSuggestionsForFixingWindowsVistaSleepProblems.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=8fd3e4b0-63fe-41a2-ae0a-077c11b73585</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,8fd3e4b0-63fe-41a2-ae0a-077c11b73585.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,8fd3e4b0-63fe-41a2-ae0a-077c11b73585.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=8fd3e4b0-63fe-41a2-ae0a-077c11b73585</wfw:commentRss>
      <slash:comments>15</slash:comments>
      
      <title>Replacing Yahoo</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,8fd3e4b0-63fe-41a2-ae0a-077c11b73585.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/bZHVl0HXQ4s/ReplacingYahoo.aspx</link>
      <pubDate>Sun, 25 Jan 2009 18:40:42 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
As the complaints about Yahoo’s homepage redesign continue pouring in on my &lt;a href="http://www.stevetrefethen.com/blog/SwitchingBackToMyYahooClassic.aspx" target="_blank"&gt;Switch&#xD;
back post&lt;/a&gt; I thought I’d mention how I moved on:&#xD;
&lt;/p&gt;&#xD;
        &lt;ul&gt;&#xD;
          &lt;li&gt;&#xD;
Forwarded all Yahoo email (using Yahoo Mail Pro, don’t worry it’s cheap) to my newer&#xD;
email address hosted on &lt;a href="http://www.stevetrefethen.com/blog/ConfiguringDNSCNAMEAndMXRecordsForGoogleAppsOnDiscountASPNET.aspx" target="_blank"&gt;my&#xD;
own domain using Google Apps for Domains&lt;/a&gt; meaning I can use GMail as my client&#xD;
even with my personal email address (very nice!)&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Use &lt;a href="http:///labs.mozilla.com/featured-projects/" target="_blank"&gt;Prism&lt;/a&gt; (or &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/6665" target="_blank"&gt;Refractor&lt;/a&gt; add-on&#xD;
for Firefox) hosting GMail on the desktop &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Switched to &lt;a href="http://www.pandora.com/" target="_blank"&gt;Pandora&lt;/a&gt; replacing,&#xD;
the now sold-off, &lt;a href="http://www.launchcast.com/" target="_blank"&gt;LAUNCHCast&lt;/a&gt; for&#xD;
music &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Switched to &lt;a href="http://www.feedly.com/" target="_blank"&gt;Feedly&lt;/a&gt; in &lt;a href="http://www.mozilla.com/firefox/" target="_blank"&gt;Firefox&lt;/a&gt; for&#xD;
news and RSS reading based on my &lt;a href="http://www.google.com/search?q=Google+Reader"&gt;Google&#xD;
Reader&lt;/a&gt; feeds&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Use &lt;a href="http://www.ceruleanstudios.com/" target="_blank"&gt;Trillian&lt;/a&gt; as my IM&#xD;
client for my Yahoo contacts (among others) &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Moved my address book to my &lt;a href="http://www.stevetrefethen.com/blog/MyAnswerToApplesIPodTouchIsItWorthIt.aspx" target="_blank"&gt;iPod&#xD;
Touch&lt;/a&gt; and &lt;a href="http://www.facebook.com/" target="_blank"&gt;Facebook&lt;/a&gt; which&#xD;
is nice since friends provide their own updates&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Switched to &lt;a href="http://www.google.com/search?q=Google+groups"&gt;Google groups&lt;/a&gt; from&#xD;
Yahoo Groups &#xD;
&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Switched to &lt;a href="http://www.google.com/search?q=Google+Calendar"&gt;Google Calendar&lt;/a&gt;&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Switched to Google’s &lt;a href="http://picasaweb.google.com/" target="_blank"&gt;Picasa&lt;/a&gt; for&#xD;
photos&lt;/li&gt;&#xD;
        &lt;/ul&gt;&#xD;
        &lt;p&gt;&#xD;
Having been a Yahoo customer for &lt;a href="http://www.stevetrefethen.com/blog/After10YearsImSeeminglyStillAStrangerToYahoo.aspx" target="_blank"&gt;well&#xD;
over ten years&lt;/a&gt; I’m a little torn though feel they left me more then I left them.&#xD;
Regardless, my Yahoo days pretty ended, I do wish them well as I know they’re struggling.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=8fd3e4b0-63fe-41a2-ae0a-077c11b73585"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ZJmLcaSO6RMyeyejLwb4T3R_jMw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZJmLcaSO6RMyeyejLwb4T3R_jMw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ZJmLcaSO6RMyeyejLwb4T3R_jMw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZJmLcaSO6RMyeyejLwb4T3R_jMw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=piD2sZTt"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=AWvbN8Xo"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=AWvbN8Xo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=D0ZN64n3"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=D0ZN64n3" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=Ly0ypfLy"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=2jR89A13"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=2jR89A13" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=UxwdRrUz"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/bZHVl0HXQ4s" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,8fd3e4b0-63fe-41a2-ae0a-077c11b73585.aspx</comments>
      <category>Personal</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/ReplacingYahoo.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=ad0d9cc3-1e04-4145-8f7d-688b2fec07f9</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,ad0d9cc3-1e04-4145-8f7d-688b2fec07f9.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,ad0d9cc3-1e04-4145-8f7d-688b2fec07f9.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=ad0d9cc3-1e04-4145-8f7d-688b2fec07f9</wfw:commentRss>
      
      <title>Trigger exception logging now supported in Cruisecontrol.NET</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,ad0d9cc3-1e04-4145-8f7d-688b2fec07f9.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/XM8ITmp9KRo/TriggerExceptionLoggingNowSupportedInCruisecontrolNET.aspx</link>
      <pubDate>Thu, 22 Jan 2009 22:22:50 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;A little over a year ago I &lt;a href="http://www.stevetrefethen.com/blog/ExceptionsInCruiseControlNETRevisited.aspx" target="_blank"&gt;wrote&#xD;
a post&lt;/a&gt; expanding on a problem I was having in CCNET where exceptions thrown by&#xD;
a Source Control  Provider wouldn’t trigger the build publisher meaning there&#xD;
was no easy way to see something went wrong. Well, it took awhile but persistence&#xD;
paid off and thanks to Ruben Willems, who works on CCNET, a recent check-in has addressed&#xD;
this problem. Working from suggestions included in my patch he developed a more complete&#xD;
solution, after several iterations, that deals with a number of build status issues&#xD;
among other things. In case you’re interested the details can be found &lt;a href="http://jira.public.thoughtworks.org/browse/CCNET-748" target="_blank"&gt;here&lt;/a&gt; and &lt;a href="http://groups.google.com/group/ccnet-devel/browse_thread/thread/675320009f182780/35386ade50409258?lnk=gst&amp;amp;q=trigger#35386ade50409258" target="_blank"&gt;here&lt;/a&gt;. &#xD;
&lt;p&gt;&#xD;
Aside from the details you can now rest assured that if your Source Control Provider&#xD;
throws an exception the build publisher(s) will execute to let you know. Additionally,&#xD;
a new project property was added allowing for control over the number of exception&#xD;
that can occur before the project is simply stopped called maxAmountOfSourceControlExceptions&#xD;
which you’d use like this:&#xD;
&lt;/p&gt;&lt;pre class="xml" name="code"&gt;&amp;lt;project name="ProjectName" maxAmountOfSourceControlExceptions="3"&amp;gt;&#xD;
...&#xD;
&amp;lt;/project&amp;gt;&lt;/pre&gt;&#xD;
Again, big thanks to Ruben for his time and effort!&lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=ad0d9cc3-1e04-4145-8f7d-688b2fec07f9"&gt;&lt;/img&gt;&lt;br&gt;&lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DJMNM4od4H2WZVS28W7Bo2muZgI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DJMNM4od4H2WZVS28W7Bo2muZgI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DJMNM4od4H2WZVS28W7Bo2muZgI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DJMNM4od4H2WZVS28W7Bo2muZgI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=A9StIj0I"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=KPYEpqTy"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=KPYEpqTy" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=howv3wU8"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=howv3wU8" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=hSsVG2qu"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=TLwWi2Wo"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=TLwWi2Wo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=Tchzuxbl"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/XM8ITmp9KRo" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,ad0d9cc3-1e04-4145-8f7d-688b2fec07f9.aspx</comments>
      <category>Continuous Integration</category>
      <category>Open Source</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/TriggerExceptionLoggingNowSupportedInCruisecontrolNET.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=6c2cd1df-74e2-4a77-a723-8a0c39dff2fa</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,6c2cd1df-74e2-4a77-a723-8a0c39dff2fa.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,6c2cd1df-74e2-4a77-a723-8a0c39dff2fa.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=6c2cd1df-74e2-4a77-a723-8a0c39dff2fa</wfw:commentRss>
      
      <title>Inauguration</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,6c2cd1df-74e2-4a77-a723-8a0c39dff2fa.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/RGH8ISVjpMQ/Inauguration.aspx</link>
      <pubDate>Tue, 20 Jan 2009 18:27:16 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;img style="display: inline; margin-left: 0px; margin-right: 0px" src="http://www.stevetrefethen.com/images/obama.jpg" align="right"&gt;&lt;/img&gt; Just&#xD;
watched what few portions of the Inauguration my kids would allow, fortunately it’s&#xD;
recorded, and I can’t overstate how happy I am the US affords it’s people the ability&#xD;
to elect new leadership. Despite what’s ahead I’m glad that we have a new set of eyes&#xD;
looking at the myriad of problems we face.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
President Obama, I wish him well.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Btw, &lt;a href="http://www.whitehouse.gov/feed/blog/" target="_blank"&gt;subscribed&lt;/a&gt;.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=6c2cd1df-74e2-4a77-a723-8a0c39dff2fa"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/aFLLvs5XKZ7vPgsdEx5N6updqE4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aFLLvs5XKZ7vPgsdEx5N6updqE4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/aFLLvs5XKZ7vPgsdEx5N6updqE4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aFLLvs5XKZ7vPgsdEx5N6updqE4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=1okryLcG"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=y9UNMNQ0"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=y9UNMNQ0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=8xGeBGse"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=8xGeBGse" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=GSifYiGR"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=2LiZRLTd"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=2LiZRLTd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=EB5pyWoh"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/RGH8ISVjpMQ" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,6c2cd1df-74e2-4a77-a723-8a0c39dff2fa.aspx</comments>
      <category>Personal</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/Inauguration.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=676e89cc-ed22-4b42-8b31-6ffb3cb5cf24</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,676e89cc-ed22-4b42-8b31-6ffb3cb5cf24.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,676e89cc-ed22-4b42-8b31-6ffb3cb5cf24.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=676e89cc-ed22-4b42-8b31-6ffb3cb5cf24</wfw:commentRss>
      <slash:comments>4</slash:comments>
      
      <title>Handling unexpected Windows in GUI test automation</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,676e89cc-ed22-4b42-8b31-6ffb3cb5cf24.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/NdY7RE4NOqo/HandlingUnexpectedWindowsInGUITestAutomation.aspx</link>
      <pubDate>Mon, 19 Jan 2009 19:07:48 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
Since I conduct &lt;a href="http://www.falafel.com/training/testcomplete.aspx" target="_blank"&gt;training&lt;/a&gt; for&#xD;
AutomatedQA’s &lt;a href="http://www.automatedqa.com/products/testcomplete/" target="_blank"&gt;TestComplete&lt;/a&gt; I&#xD;
like to follow the support forum to see the types of questions people are asking.&#xD;
Recently, Michael Groves posted the &lt;a href="http://www.automatedqa.com/forums/d.cgi?cmd=article&amp;amp;group=automatedqa.public.testcomplete&amp;amp;item=34832&amp;amp;utag=" target="_blank"&gt;following&#xD;
question&lt;/a&gt;:&#xD;
&lt;/p&gt;&#xD;
        &lt;blockquote&gt;&#xD;
          &lt;p&gt;&#xD;
We do testing on our applications on production boxes that are setup as our production&#xD;
builds.  This being the case, we get applications that try to update i.e. virus,&#xD;
Adobe etc... and mess up test runs.  Does anyone know of a way have the test&#xD;
script ignore these items as they come up and continue with testing our app? &#xD;
&lt;/p&gt;&#xD;
        &lt;/blockquote&gt;&#xD;
        &lt;p&gt;&#xD;
Michael’s talking about a class of unexpected windows which aren’t part of the application&#xD;
being tested. This includes things like Microsoft’s own Windows Update dialogs that&#xD;
popup, sometimes persistently, asking to reboot the machine. Unfortunately, there&#xD;
isn’t a simple answer to the question which is perhaps best illustrated by the lack&#xD;
of response he got (aside from me). Clearly, turning off such update prompts would&#xD;
eliminate the problem but they come from all kinds of different sources and may not&#xD;
be easy to disable particularly in environments where software configuration is strictly&#xD;
controlled.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
While at Borland working on &lt;a href="http://www.stevetrefethen.com/blog/WillWeEverShipZombieOurInternalGUIAutomationFramework.aspx" target="_blank"&gt;Delphi’s&#xD;
automation framework&lt;/a&gt; I solved, or perhaps a better way to put it would be mitigated,&#xD;
the problem at the framework level meaning test developers could write tests without&#xD;
ever thinking this particular issue. The solution used a secondary thread that constantly&#xD;
probed the active window and under certain conditions would dismiss the window allowing&#xD;
the test to proceed unimpeded. Additionally, the thread handled various exceptions&#xD;
dialogs raised by the application under test (AUT) and aborted the current test allowing&#xD;
subsequent tests to run. In most cases the AUT was terminated and the framework simply&#xD;
re-launched the AUT for the next test. The approach afforded test writer’s freedom&#xD;
to focus on their tests and write much less “defensive” code.&#xD;
&lt;/p&gt;&#xD;
        &lt;h2&gt;Those pesky #32770 windows!&#xD;
&lt;/h2&gt;&#xD;
        &lt;p&gt;&#xD;
If you’ve ever been knee deep in Windows GUI automation you’re likely to be familiar&#xD;
with #32770 windows. #32770 refers to a commonly used &lt;a href="http://msdn.microsoft.com/en-us/library/ms632596(VS.85).aspx" target="_blank"&gt;window&#xD;
class&lt;/a&gt; that you’ll find in all sorts of places throughout Windows. For example,&#xD;
the Windows Update dialog, mentioned above, can be particularly problematic not only&#xD;
because it keeps popping up but because it too is a #32770 window. The #32770 class&#xD;
is also used by the .NET Frameworks Assertion Failed dialog as well as other standard&#xD;
error dialogs not to mention Windows Task Manager and Windows &lt;a href="http://msdn.microsoft.com/en-us/library/ms645524(VS.85).aspx" target="_blank"&gt;common&#xD;
dialogs&lt;/a&gt;, ok have I made my point yet?&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
Clearly, identifying windows by window class alone is insufficient. To that end, the&#xD;
solution I developed cached a list of #32770 window handles that existed prior to&#xD;
test execution to help distinguish them from instances created by the AUT. &#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;a href="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ccc1eca1039e_1356A/image_4.png"&gt;&#xD;
            &lt;img title="WinSpy Utility" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="285" alt="WinSpy Utility" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ccc1eca1039e_1356A/image_thumb_1.png" width="471" align="right" border="0"&gt;&lt;/img&gt;&#xD;
          &lt;/a&gt;As&#xD;
Michael points out, there may be numerous other applications that display UI during&#xD;
test execution that the test may need to dismiss to prevent false failures. Years&#xD;
ago I wrote a tool (pictured right) to help figure out the specifics of such windows&#xD;
available &lt;a href="http://www.stevetrefethen.com/files/winspy.zip" target="_blank"&gt;here&lt;/a&gt;.&#xD;
It’s a simple utility application displaying a hierarchy of windows on your system&#xD;
listing Window Handle, {Classname}, Caption, thread ID, and dimensions. I found this&#xD;
tool to be very useful in developing solutions to deal with errant popup windows.&#xD;
&lt;/p&gt;&#xD;
        &lt;h2&gt;TestComplete’s Approach to Unexpected Windows&#xD;
&lt;/h2&gt;&#xD;
        &lt;p&gt;&#xD;
If you’re using &lt;a href="http://www.automatedqa.com/products/testcomplete/" target="_blank"&gt;TestComplete&lt;/a&gt; (TC)&#xD;
you can take advantage of it’s OnUnexpectedWindow event, fired when a keyboard or&#xD;
mouse command is unable to be directed to the intended window.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
          &lt;a href="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ccc1eca1039e_1356A/image_2.png"&gt;&#xD;
            &lt;img title="TestComplete onunexpectedwindow event" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="59" alt="TestComplete onunexpectedwindow event" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/ccc1eca1039e_1356A/image_thumb.png" width="511" border="0"&gt;&lt;/img&gt;&#xD;
          &lt;/a&gt;&#xD;
        &lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
The event calls a function you write in script giving you the opportunity to manually&#xD;
handle the unexpected window which is passed in as a parameter. TC has a built-in&#xD;
mechanism to handle to try and dismiss the window but in certain cases that can lead&#xD;
to unintended consequences, an issue we explore in the TC training class that &lt;a href="http://www.falafel.com" target="_blank"&gt;Falafel&lt;/a&gt; offers.&#xD;
Even if you don’t use this event TestComplete uses a fairly elaborate strategy to&#xD;
deal with unexpected windows and it’s important to clearly understand what it’s doing&#xD;
so you can understand what happens when things fail.&#xD;
&lt;/p&gt;&#xD;
        &lt;h2&gt;What’s the answer?&#xD;
&lt;/h2&gt;&#xD;
        &lt;p&gt;&#xD;
I don’t have the perfect answer as it’s often dependent on the environment where the&#xD;
tests are run but developing a flexible system to deal with unexpected windows the&#xD;
rule. In this particular case I suggested to Michael that it might be a good idea&#xD;
to write a console application that handles these unwanted dialogs and simply execute&#xD;
that app from TC and leave it running throughout the test. Using a separate application&#xD;
would help avoid TC’s unexpected window logic which can take time to trigger.&#xD;
&lt;/p&gt;&#xD;
        &lt;p&gt;&#xD;
What’s you’re approach to dealing with unexpected windows?&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=676e89cc-ed22-4b42-8b31-6ffb3cb5cf24"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4lc58HanPUtLG5IF38AnZ43zroE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4lc58HanPUtLG5IF38AnZ43zroE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4lc58HanPUtLG5IF38AnZ43zroE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4lc58HanPUtLG5IF38AnZ43zroE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=2OtWV3xO"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=woabFMN8"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=woabFMN8" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=PNv0pCfv"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=PNv0pCfv" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=sII5Bou5"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=mCe1qPc8"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=mCe1qPc8" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=3dHg1Q6b"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/NdY7RE4NOqo" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,676e89cc-ed22-4b42-8b31-6ffb3cb5cf24.aspx</comments>
      <category>Automation</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/HandlingUnexpectedWindowsInGUITestAutomation.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=cba1f52f-218a-4bf8-9f3a-462361e58b3d</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,cba1f52f-218a-4bf8-9f3a-462361e58b3d.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,cba1f52f-218a-4bf8-9f3a-462361e58b3d.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=cba1f52f-218a-4bf8-9f3a-462361e58b3d</wfw:commentRss>
      <slash:comments>5</slash:comments>
      
      <title>Command line alternatives to Remote Desktop</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,cba1f52f-218a-4bf8-9f3a-462361e58b3d.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/JLZNb9dJBGs/CommandLineAlternativesToRemoteDesktop.aspx</link>
      <pubDate>Tue, 30 Dec 2008 17:14:32 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;Most days I’m connected to a client’s VPN&#xD;
working on a project and lately I’ve converted from using Remote Desktop (RD), &lt;a href="http://www.stevetrefethen.com/blog/TabbedRemoteDesktopClientForWindows.aspx" target="_blank"&gt;Terminals&lt;/a&gt; actually&#xD;
and highly recommended btw, to &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx" target="_blank"&gt;psexec&lt;/a&gt; and &lt;a href="http://www.google.com/search?q=taskkill"&gt;taskkill&lt;/a&gt; to&#xD;
get things done. Using psexec I start/stop CCService, run CCNET from the console,&#xD;
use SVN and build from the command line to name a few. The machine I connect to most&#xD;
of the time has a limited simultaneous RD users and occasionally I’m unable to get&#xD;
a connection so having an alternative is crucial. One caveat I ran into was &lt;a href="http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-automation.html" target="_blank"&gt;TortoiseProc.exe&lt;/a&gt; fails&#xD;
to terminate when run remotely with psexec and has to be killed manually and unfortunately&#xD;
the SVN command line tools are not installed, at least not yet. Occasionally, I use &lt;a href="http://technet.microsoft.com/en-us/library/cc775544.aspx" target="_blank"&gt;remote.exe&lt;/a&gt; from&#xD;
the NT Resource Toolkit though I haven’t used that in quite awhile not to mention&#xD;
the EXE I have is from 1997, not that that makes it any less effective. &#xD;
&lt;p&gt;&#xD;
Do you do something similar? What utilities do you use?&#xD;
&lt;/p&gt;&lt;p&gt;&#xD;
[Update: Feb 23, 2009] I also use &lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb897545.aspx" target="_blank"&gt;psloggedon&lt;/a&gt; which&#xD;
is useful to see who is using the machine. Additionally, it’s nice to be able to launch&#xD;
a console window on the remote machine as well like this (though as Bary notes below&#xD;
ssh is also an option):&#xD;
&lt;/p&gt;&lt;p&gt;&#xD;
psexec.exe \\machine -w d:\ cmd.exe&#xD;
&lt;/p&gt;&lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=cba1f52f-218a-4bf8-9f3a-462361e58b3d"&gt;&lt;/img&gt;&lt;br&gt;&lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rz35lH6vkzB8kn1h5H8I6NBrjvM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rz35lH6vkzB8kn1h5H8I6NBrjvM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rz35lH6vkzB8kn1h5H8I6NBrjvM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rz35lH6vkzB8kn1h5H8I6NBrjvM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=oE7QC49g"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=iPvAwM26"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=iPvAwM26" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=dv6XPiqP"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=dv6XPiqP" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=MQhCaAUY"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=byhTZVg4"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=byhTZVg4" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=IJJx3OjH"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/JLZNb9dJBGs" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,cba1f52f-218a-4bf8-9f3a-462361e58b3d.aspx</comments>
      <category>Tools</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/CommandLineAlternativesToRemoteDesktop.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=3b181c8b-7787-4399-897b-c20406d28a53</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,3b181c8b-7787-4399-897b-c20406d28a53.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,3b181c8b-7787-4399-897b-c20406d28a53.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=3b181c8b-7787-4399-897b-c20406d28a53</wfw:commentRss>
      <slash:comments>7</slash:comments>
      
      <title>ASP.NET Facebook Starter Kit for VS.NET 2008 updated to v0.8</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,3b181c8b-7787-4399-897b-c20406d28a53.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/wGCjNDAaSTc/ASPNETFacebookStarterKitForVSNET2008UpdatedToV08.aspx</link>
      <pubDate>Mon, 29 Dec 2008 16:33:56 GMT</pubDate>
      <description>&lt;body xmlns="http://www.w3.org/1999/xhtml"&gt;&#xD;
        &lt;p&gt;&#xD;
I’ve updated my ASP.NET Facebook Starter Kit with the following improvements/changes:&#xD;
&lt;/p&gt;&#xD;
        &lt;ul&gt;&#xD;
          &lt;li&gt;&#xD;
Added support for &lt;a href="http://wiki.developers.facebook.com/index.php/Resizable_IFrame"&gt;dynamically&#xD;
resizable iframe&lt;/a&gt; which avoids a scrollbar though may have some side effects/caveats.&#xD;
Code is based on JavaScript sample from Facebook.&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Added an example of &lt;a href="http://www.stevetrefethen.com/blog/AddingXFBMLSupportToTheFacebookStarterKit.aspx"&gt;XFBML&lt;/a&gt; which&#xD;
requires xd_receiver.htm (included) allowing for a &lt;a href="http://wiki.developers.facebook.com/index.php/Cross_Domain_Communication_Channel"&gt;Cross&#xD;
Domain Communication Channel&lt;/a&gt;&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Added example of using FQL, refer to FQL.aspx&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Updated Facebook Dev Toolkit assemblies&lt;/li&gt;&#xD;
          &lt;li&gt;&#xD;
Added Facebook stylesheet from &lt;a href="http://www.socialsnippets.com/snippets/how-to-style-an-application-like-facebook.aspx"&gt;Bill&#xD;
Konrad&lt;/a&gt;&lt;/li&gt;&#xD;
        &lt;/ul&gt;&#xD;
        &lt;p&gt;&#xD;
The download is &lt;a href="http://www.stevetrefethen.com/files/FacebookApp2008v2.0.vsi" target="_blank"&gt;here&lt;/a&gt; and&#xD;
full directions for installation and use are &lt;a href="http://www.stevetrefethen.com/wiki/Facebook%20application%20development%20in%20ASP.NET.ashx" target="_blank"&gt;here&lt;/a&gt;.&#xD;
To see this application running on Facebook click &lt;a href="http://apps.facebook.com/facebookaspnet" target="_blank"&gt;here&lt;/a&gt;.&#xD;
As always, please direct questions on the Facebook API to the &lt;a href="http://forum.developers.facebook.com/" target="_blank"&gt;Developer’s&#xD;
Forum&lt;/a&gt;, or on the Facebook Developer’s Toolkit to the &lt;a href="http://www.codeplex.com/FacebookToolkit/Thread/List.aspx" target="_blank"&gt;discussion&#xD;
list&lt;/a&gt;.&#xD;
&lt;/p&gt;&#xD;
        &lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=3b181c8b-7787-4399-897b-c20406d28a53"&gt;&lt;/img&gt;&#xD;
        &lt;br&gt;&#xD;
        &lt;hr&gt;&lt;/hr&gt;&#xD;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;. &#xD;
&lt;/body&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/5nZsSH-SO0R1zazY8Zcsq6bvmkI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5nZsSH-SO0R1zazY8Zcsq6bvmkI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/5nZsSH-SO0R1zazY8Zcsq6bvmkI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5nZsSH-SO0R1zazY8Zcsq6bvmkI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=kzS7qVQp"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=aTdvpvIg"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=aTdvpvIg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=CCNnzGuG"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=CCNnzGuG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=mCfHYKkv"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=aaPTUo68"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=aaPTUo68" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=Hnue9lW0"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/wGCjNDAaSTc" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,3b181c8b-7787-4399-897b-c20406d28a53.aspx</comments>
      <category>Development</category>
      <category>Facebook</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/ASPNETFacebookStarterKitForVSNET2008UpdatedToV08.aspx</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.stevetrefethen.com/blog/Trackback.aspx?guid=866ca49d-ff82-4cb6-8039-dc0ae322ac1a</trackback:ping>
      <pingback:server>http://www.stevetrefethen.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.stevetrefethen.com/blog/PermaLink,guid,866ca49d-ff82-4cb6-8039-dc0ae322ac1a.aspx</pingback:target>
      <dc:creator>Steve Trefethen</dc:creator>
      <wfw:comment>http://www.stevetrefethen.com/blog/CommentView,guid,866ca49d-ff82-4cb6-8039-dc0ae322ac1a.aspx</wfw:comment>
      <wfw:commentRss>http://www.stevetrefethen.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=866ca49d-ff82-4cb6-8039-dc0ae322ac1a</wfw:commentRss>
      <slash:comments>4</slash:comments>
      <title>Hosting MIT's Simile Exhibit OS project</title>
      <guid isPermaLink="false">http://www.stevetrefethen.com/blog/PermaLink,guid,866ca49d-ff82-4cb6-8039-dc0ae322ac1a.aspx</guid>
      <link>http://feeds.stevetrefethen.com/~r/SteveTrefethensWeblog/~3/qVo19Q5jeEc/HostingMITsSimileExhibitOSProject.aspx</link>
      <pubDate>Mon, 22 Dec 2008 06:56:14 GMT</pubDate>
      <description>&lt;p&gt;
I’ve been working on an application that makes use of MIT’s &lt;a href="http://code.google.com/p/simile-widgets/" target="_blank"&gt;Simile
Exhibit&lt;/a&gt; Open Source project and the other day the MIT server hosting the related
JavaScript files went down. Exhibit is described thusly:
&lt;/p&gt;
&lt;blockquote&gt; 
&lt;p&gt;
Exhibit enables web site authors to create dynamic exhibits of their collections without
resorting to complex database and server-side technologies. The collections can be
searched and browsed using faceted browsing. Assorted views are provided including
tiles, maps, etc. 
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p&gt;
&lt;a href="http://simile.mit.edu/exhibit/examples/presidents/presidents.html" target="_blank"&gt;Here&lt;/a&gt; is
an example. Based on what I can glean from the &lt;a href="http://groups.google.com/group/simile-widgets/" target="_blank"&gt;Exhibit
newsgroup&lt;/a&gt; weather played a role but nonetheless it motivated me to investigate
moving the sources to my ISP which happens to be &lt;a href="http://www.discountasp.net/index.aspx?refcode=SDTREF" target="_blank"&gt;discountASP.NET&lt;/a&gt;.While
the main server appears to be back up and running at least one service needed for
the &lt;a href="http://simile.mit.edu/wiki/Exhibit/2.0/Map_View" target="_blank"&gt;map
view extension&lt;/a&gt; is still offline making it more or less just a plain map absent
the data points that make it interesting.
&lt;/p&gt;
&lt;p&gt;
There was a request on the newsgroups to explain what I did to "self-host" the code
so I figured I’d elaborate a bit. The main issue is that throughout the code there
are hardcoded references to an MIT server, namely static.simile.mit.edu.
&lt;/p&gt;
&lt;p&gt;
For starters, you’ll need to grab the Exhibit source code from SVN repository located
here:
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://simile-widgets.googlecode.com/svn/exhibit/trunk"&gt;http://simile-widgets.googlecode.com/svn/exhibit/trunk&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Fwiw, on Windows, I’m using &lt;a href="http://www.google.com/search?q=TortoiseSVN"&gt;TortoiseSVN&lt;/a&gt; as
my SVN client. Next, correct the URL references in the code that refer to the above
server. The source changes look like this:
&lt;/p&gt;
&lt;pre class="js" name="code"&gt;        /*
         *  Extensions (for backward compatibility)
         */
        if (includeTimeline) {
            scriptURLs.push(useLocalResources ?
                "http://127.0.0.1:8888/exhibit/extensions/time/time-extension.js" :
//                "http://static.simile.mit.edu/exhibit/extensions-2.0/time/time-extension.js");
                "http://www.stevetrefethen.com/simile/exhibit/webapp/extensions/time/time-extension.js");
        }
        if (includeMap) {
            scriptURLs.push(useLocalResources ?
                "http://127.0.0.1:8888/exhibit/extensions/map/map-extension.js" :
//                "http://static.simile.mit.edu/exhibit/extensions-2.0/map/map-extension.js");
                "http://www.stevetrefethen.com/simile/exhibit/webapp/extensions/map/map-extension.js");
        }
&lt;/pre&gt;
&lt;p&gt;
Basically, a simple search and replace for "static.simile.mit.edu will suffice to
identify the locations that need to be changed. I also made one additional change
I’m not sure is necessary which is the following query parameter on the script tag
that loads the widget:
&lt;/p&gt;
&lt;pre class="xml" name="code"&gt;    &lt;script src="http://www.stevetrefethen.com/simile/exhibit/webapp/api/exhibit-api.js?bundle=false" type="text/javascript"&gt;&lt;/script&gt;&lt;/pre&gt;
&lt;p&gt;
Bundling is not something I’ve examined closely though it’s in the interest of saving
bandwidth for the amount of Javascript that has to be downloaded. Here is the set
of files I modified with the type of changes described above:
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/HostingMITsSimileExhibitproject_12CE4/image_2.png"&gt;&lt;img style="border: 0px none ;" alt="Simile Exhibit modified files" src="http://www.stevetrefethen.com/blog/content/binary/WindowsLiveWriter/HostingMITsSimileExhibitproject_12CE4/image_thumb.png" border="0" height="168" width="319"&gt;&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
Once you’ve made these changes you’ll need to upload the following source directories
to your ISP:
&lt;/p&gt;
&lt;p&gt;
simile/exhibit/ajax&lt;br&gt;
simile/exhibit/webapp&lt;br&gt;
simile/exhibit/graphics
&lt;/p&gt;
&lt;p&gt;
Note, the above ajax and webapp directories each have a subdirectory called "site"
that contains an example and should not be uploaded. You should now be set to host
Exhibit from your own ISP. The &lt;a href="http://simile.mit.edu/wiki/Exhibit/2.0/Map_View" target="_blank"&gt;map
extension&lt;/a&gt; requires a Java servlet which you can also self host but since my ISP
doesn’t provide that support I’m still relying on MIT’s server for that portion. I’m
aware of one such &lt;a href="http://groups.google.com/group/simile-widgets/browse_thread/thread/adbd1c2a35405f2f/45bb35dd690d14d8?lnk=gst&amp;q=dan#45bb35dd690d14d8" target="_blank"&gt;alternative&lt;/a&gt; though
I couldn’t get that working in the five to ten minutes I spent trying but I’ll likely
revisit it as it’s clearly an important piece.
&lt;/p&gt;
[Updated: March 28] On a somewhat related note I've created a simple Exhibit for my
companies training engagements &lt;a href="http://training.falafel.com/"&gt;here&lt;/a&gt;.&lt;img width="0" height="0" src="http://www.stevetrefethen.com/blog/aggbug.ashx?id=866ca49d-ff82-4cb6-8039-dc0ae322ac1a" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
The original source for this content is &lt;a href="http://www.stevetrefethen.com/blog"&gt;stevetrefethen.com&lt;/a&gt;.
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ME_CRer-NTSksEHjIM97d48jgGg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ME_CRer-NTSksEHjIM97d48jgGg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ME_CRer-NTSksEHjIM97d48jgGg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ME_CRer-NTSksEHjIM97d48jgGg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=JNwFSP3A"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=41" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=p12eZThr"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=p12eZThr" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=vNxL4dmF"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=vNxL4dmF" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=iFEyNbuO"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=747" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=UEG4mriy"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?i=UEG4mriy" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.stevetrefethen.com/~f/SteveTrefethensWeblog?a=WfKtVXW3"&gt;&lt;img src="http://feeds.feedburner.com/~f/SteveTrefethensWeblog?d=52" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SteveTrefethensWeblog/~4/qVo19Q5jeEc" height="1" width="1"/&gt;</description>
      <comments>http://www.stevetrefethen.com/blog/CommentView,guid,866ca49d-ff82-4cb6-8039-dc0ae322ac1a.aspx</comments>
      <category>Open Source</category>
    <feedburner:origLink>http://www.stevetrefethen.com/blog/HostingMITsSimileExhibitOSProject.aspx</feedburner:origLink></item>
  </channel>
</rss>
