<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:gd="http://schemas.google.com/g/2005" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;CUMESHg7cCp7ImA9WhZXEUw.&quot;">
<id>http://blog.marksoper.net/</id>
<updated>2011-04-29T14:43:29.608-07:00</updated>
<title type="text">Mark Soper's Blog</title>
<subtitle type="html">Technology and Startups</subtitle>

<link href="http://blog.marksoper.net/" />
<author>
  <name>Mark Soper</name>
</author>

  
  <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/MarkSopersBlog" /><feedburner:info uri="marksopersblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry>
    <title>
      Top 10 TED Talks of 2011 To Inspire Tech Startups
    </title>
    <link>
      <link href="Top-10-TED-Talks-of-2011-to-Inspire-Tech-Startups.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="Top-10-TED-Talks-of-2011-to-Inspire-Tech-Startups.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/Y53ggVTm4xo/Top-10-TED-Talks-of-2011-to-Inspire-Tech-Startups.html" title="Top 10 TED Talks of 2011 To Inspire Tech Startups" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>Top-10-TED-Talks-of-2011-to-Inspire-Tech-Startups.xml</id>
    <updated>
      Wed Jan 04 2012 00:00:00 GMT-0500 (EST)
    </updated>
          <category term="TED" />
          <category term="technology" />
          <category term="startups" />
          <category term="creativity" />
          <category term="inspiration" />
        <content type="html">
      

&lt;p&gt;Startup folks, looking for inspiration for 2012?  TED talks are an awesome source of inspiration.  I listen to them on road trips while the kids are sleeping, and I started keeping a list of the talks that were most inspiring to me as an entrepreneur.&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/salman_khan_let_s_use_video_to_reinvent_education.html" title="Salman Khan: Let&amp;#039;s use video to reinvent education"&gt;10. Salman Khan: Let&amp;#039;s use video to reinvent education&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Khan recounts his story: recording math videos to tutor his cousins, he stumbles upon an opportunity to change the future of education.  Inspires us to believe that there is great latent opportunity in everyday situations and that by being creative, working hard, and focusing on helping people we can capitalize on it. &lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011/Blank/SalmanKhan_2011-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/SalmanKhan-2011.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1090&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=salman_khan_let_s_use_video_to_reinvent_education;year=2011;event=TED2011;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011/Blank/SalmanKhan_2011-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/SalmanKhan-2011.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1090&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=salman_khan_let_s_use_video_to_reinvent_education;year=2011;event=TED2011;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/tim_harford.html" title="Tim Harford: Trial, error and the God complex"&gt;9. Tim Harford: Trial, error and the God complex&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;This talk covers complex systems that evolve through trial-and-error.  Though you don&amp;#039;t often hear much about trial-and-error in the creation mythology of a successful company (there&amp;#039;s more mention of cocaine in &lt;em&gt;The Social Network&lt;/em&gt;), trial-and-error development is the process of doing a startup.  What can you learn about it from Tim Harford? &lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011G/Blank/TimHarford_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/TimHarford-2011G.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1190&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=tim_harford;year=2011;theme=unconventional_explanations;theme=tales_of_invention;theme=not_business_as_usual;event=TEDGlobal+2011;tag=Business;tag=Culture;tag=creativity;tag=society;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011G/Blank/TimHarford_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/TimHarford-2011G.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1190&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=tim_harford;year=2011;theme=unconventional_explanations;theme=tales_of_invention;theme=not_business_as_usual;event=TEDGlobal+2011;tag=Business;tag=Culture;tag=creativity;tag=society;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/harald_haas_wireless_data_from_every_light_bulb.html" title="Harald Haas: Wireless data from every light bulb"&gt;8. Harald Haas: Wireless data from every light bulb&lt;/a&gt; AND &lt;a href="http://www.ted.com/talks/cynthia_breazeal_the_rise_of_personal_robots.html" title="Cynthia Breazeal: The rise of personal robots"&gt;Cynthia Breazeal: The rise of personal robots&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;These talks independently cover two technology ideas awesome enough to deserves mention for of the awesomeness of domain creativity alone.  Want to do a startup?  Give Haas a call - he&amp;#039;s asking for help to productize his core technology that allows normal light bulbs to become a communication network.  Or Breazeal - she&amp;#039;s looking at ways to put a more human face (and body) on the machine-learning driven interaction that&amp;#039;s at the heart of so many tech startups.&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011G/Blank/HaraldHaas_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/HaraldHaas_2011G-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1202&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=harald_haas_wireless_data_from_every_light_bulb;year=2011;theme=what_s_next_in_tech;theme=the_creative_spark;theme=not_business_as_usual;event=TEDGlobal+2011;tag=Technology;tag=internet;tag=invention;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011G/Blank/HaraldHaas_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/HaraldHaas_2011G-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1202&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=harald_haas_wireless_data_from_every_light_bulb;year=2011;theme=what_s_next_in_tech;theme=the_creative_spark;theme=not_business_as_usual;event=TEDGlobal+2011;tag=Technology;tag=internet;tag=invention;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2010W/Blank/CynthiaBreazeal_2010W-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/CynthiaBreazeal-2010W.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1070&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=cynthia_breazeal_the_rise_of_personal_robots;year=2010;theme=what_s_next_in_tech;theme=what_makes_us_happy;theme=celebrating_tedwomen;event=TEDWomen;tag=Business;tag=Design;tag=Entertainment;tag=Technology;tag=communication;tag=robots;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2010W/Blank/CynthiaBreazeal_2010W-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/CynthiaBreazeal-2010W.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1070&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=cynthia_breazeal_the_rise_of_personal_robots;year=2010;theme=what_s_next_in_tech;theme=what_makes_us_happy;theme=celebrating_tedwomen;event=TEDWomen;tag=Business;tag=Design;tag=Entertainment;tag=Technology;tag=communication;tag=robots;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/richard_wilkinson.html" title="Richard Wilkinson: How economic inequality harms societies"&gt;7. Richard Wilkinson: How economic inequality harms societies&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;An MIT B-school professor once told a story about a former student who had a big startup exit.  The professor went to see him to ask for a donation to the university.  &amp;quot;Sorry, finances are a bit tight right now&amp;quot;, was the response he got, after hearing some enthusiastic stories about the what the guy had been up to on his new yacht. What are you going to do with your startup success?&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011G/Blank/RichardWilkinson_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/RichardWilkinson_2011G-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1253&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=richard_wilkinson;year=2011;theme=unconventional_explanations;theme=rethinking_poverty;theme=medicine_without_borders;theme=not_business_as_usual;event=TEDGlobal+2011;tag=Culture;tag=Global+Issues;tag=data;tag=money;tag=social+change;tag=visualizations;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011G/Blank/RichardWilkinson_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/RichardWilkinson_2011G-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1253&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=richard_wilkinson;year=2011;theme=unconventional_explanations;theme=rethinking_poverty;theme=medicine_without_borders;theme=not_business_as_usual;event=TEDGlobal+2011;tag=Culture;tag=Global+Issues;tag=data;tag=money;tag=social+change;tag=visualizations;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/lee_cronin_making_matter_come_alive.html" title="Lee Cronin: Making matter come alive"&gt;6. Lee Cronin: Making matter come alive&lt;/a&gt; AND &lt;a href="http://www.ted.com/talks/skylar_tibbits_can_we_make_things_that_make_themselves.html" title="Skylar Tibbits: Can we make things that make themselves"&gt;Skylar Tibbits: Can we make things that make themselves&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Cronin and Tibbits give independent talks about how lessons from the natural world can be used to establish systems that create and evolve themselves.  I included them here together because startups face a similar challenge of creating and evolving products (and organizations) through trial-and-error.  What can we learn from this kind of science about how to better automate the startup process?&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011G/Blank/LeeCronin_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/LeeCronin_2011G-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1218&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=lee_cronin_making_matter_come_alive;year=2011;theme=to_boldly_go;theme=evolution_s_genius;event=TEDGlobal+2011;tag=Science;tag=biology;tag=life;tag=nanoscale;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011G/Blank/LeeCronin_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/LeeCronin_2011G-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1218&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=lee_cronin_making_matter_come_alive;year=2011;theme=to_boldly_go;theme=evolution_s_genius;event=TEDGlobal+2011;tag=Science;tag=biology;tag=life;tag=nanoscale;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011U/Blank/SkylarTibbits_2011U-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/SkylarTibbits_2011-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1215&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=skylar_tibbits_can_we_make_things_that_make_themselves;year=2011;theme=what_s_next_in_tech;event=TED2011;tag=Design;tag=Technology;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011U/Blank/SkylarTibbits_2011U-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/SkylarTibbits_2011-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1215&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=skylar_tibbits_can_we_make_things_that_make_themselves;year=2011;theme=what_s_next_in_tech;event=TED2011;tag=Design;tag=Technology;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/morgan_spurlock_the_greatest_ted_talk_ever_sold.html" title="Morgan Spurlock: The greatest TED Talk ever sold"&gt;5. Morgan Spurlock: The greatest TED Talk ever sold&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Would you spend $7K to sponsor a TED talk, to have the filmaker behind &lt;em&gt;Super Size Me&lt;/em&gt; pitch your company in front of a bunch of influential people and to hundreds of thousands online?  Spurlock should have talked to more startups - nearly every established company laughed at the idea.  What can you learn about how to be creative in marketing your startup?&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011/Blank/MorganSpurlock_2011-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/MorganSpurlock-2011.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1114&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=morgan_spurlock_the_greatest_ted_talk_ever_sold;year=2011;theme=not_business_as_usual;theme=the_creative_spark;event=TED2011;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011/Blank/MorganSpurlock_2011-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/MorganSpurlock-2011.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1114&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=morgan_spurlock_the_greatest_ted_talk_ever_sold;year=2011;theme=not_business_as_usual;theme=the_creative_spark;event=TED2011;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/luis_von_ahn_massive_scale_online_collaboration.html" title="Luis von Ahn: Massive-scale online collaboration"&gt;4. Luis von Ahn: Massive-scale online collaboration&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Crowdsourcing, Wisdom of Crowds, Collective Intelligence, etc. - call it whatever you want, motivating individuals to work together in networks to produce valuable stuff is the prototypical internet startup mission.  CAPTCHA creator Luis von Ahn goes from a annoying text entry box to motivating a 100 million people to translate the web for free.&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011X/Blank/LuisVonAhn_2011X-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/LuisVonAhn_2011X-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1295&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=luis_von_ahn_massive_scale_online_collaboration;year=2011;theme=the_rise_of_collaboration;event=TEDxCMU;tag=Technology;tag=collaboration;tag=computers;tag=internet;tag=language;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011X/Blank/LuisVonAhn_2011X-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/LuisVonAhn_2011X-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1295&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=luis_von_ahn_massive_scale_online_collaboration;year=2011;theme=the_rise_of_collaboration;event=TEDxCMU;tag=Technology;tag=collaboration;tag=computers;tag=internet;tag=language;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/stefon_harris_there_are_no_mistakes_on_the_bandstand.html" title="Stefon Harris: There are no mistakes on the bandstand"&gt;3. Stefon Harris: There are no mistakes on the bandstand&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Stefon Harris says that &amp;quot;a musician&amp;#039;s idea can only fail if his bandmates allow it to fail&amp;quot;.  This holds true in jazz where the band doesn&amp;#039;t know in advance what it&amp;#039;s going to play.  Can the early stage startup, which also doesn&amp;#039;t know in advance what it&amp;#039;s going to build, learn a lesson from this?&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011S/Blank/StefonHarris_2011S-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/StefonHarris_2011S-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1298&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=stefon_harris_there_are_no_mistakes_on_the_bandstand;year=2011;theme=live_music;theme=the_creative_spark;theme=the_rise_of_collaboration;event=TEDSalon+NY2011;tag=Culture;tag=Entertainment;tag=jazz;tag=music;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011S/Blank/StefonHarris_2011S-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/StefonHarris_2011S-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1298&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=stefon_harris_there_are_no_mistakes_on_the_bandstand;year=2011;theme=live_music;theme=the_creative_spark;theme=the_rise_of_collaboration;event=TEDSalon+NY2011;tag=Culture;tag=Entertainment;tag=jazz;tag=music;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/bunker_roy.html" title="Bunker Roy: Learning from a barefoot movement"&gt;2. Bunker Roy: Learning from a barefoot movement&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;For many of us, doing a startup is akin to pursuing a dream that many well-informed and well-intentioned people think is foolish. Bunker Roy inspires you to keep going, that it can be done.&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011G/Blank/BunkerRoy_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/BunkerRoy_2011G-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1248&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=bunker_roy;year=2011;theme=not_business_as_usual;theme=how_we_learn;theme=master_storytellers;theme=the_creative_spark;event=TEDGlobal+2011;tag=Culture;tag=Global+Issues;tag=development;tag=education;tag=invention;tag=women;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011G/Blank/BunkerRoy_2011G-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/BunkerRoy_2011G-embed.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1248&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=bunker_roy;year=2011;theme=not_business_as_usual;theme=how_we_learn;theme=master_storytellers;theme=the_creative_spark;event=TEDGlobal+2011;tag=Culture;tag=Global+Issues;tag=development;tag=education;tag=invention;tag=women;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;

&lt;h2&gt;&lt;a href="http://www.ted.com/talks/jr_s_ted_prize_wish_use_art_to_turn_the_world_inside_out.html" title="JR&amp;#039;s TED Prize wish: Use art to turn the world inside out"&gt;1. JR&amp;#039;s TED Prize wish: Use art to turn the world inside out&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;Come up with a great idea that helps people and make sure that the product is the marketing.  JR tells you how to do it here.&lt;/p&gt;

&lt;p&gt;&lt;object width="526" height="374"&gt;
&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;
&lt;param name="allowFullScreen" value="true"&gt;
&lt;param name="allowScriptAccess" value="always"&gt;
&lt;param name="wmode" value="transparent"&gt;
&lt;param name="bgColor" value="#ffffff"&gt;
&lt;param name="flashvars" value="vu=http://video.ted.com/talk/stream/2011/Blank/JR_2011-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/JR-2011.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1085&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=jr_s_ted_prize_wish_use_art_to_turn_the_world_inside_ou;year=2011;theme=the_creative_spark;theme=ted_prize_winners;event=TED2011;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="526" height="374" allowFullScreen="true" allowScriptAccess="always" flashvars="vu=http://video.ted.com/talk/stream/2011/Blank/JR_2011-320k.mp4&amp;amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/JR-2011.embed_thumbnail.jpg&amp;amp;vw=512&amp;amp;vh=288&amp;amp;ap=0&amp;amp;ti=1085&amp;amp;lang=&amp;amp;introDuration=15330&amp;amp;adDuration=4000&amp;amp;postAdDuration=830&amp;amp;adKeys=talk=jr_s_ted_prize_wish_use_art_to_turn_the_world_inside_ou;year=2011;theme=the_creative_spark;theme=ted_prize_winners;event=TED2011;&amp;amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;"&gt;
&lt;/object&gt;&lt;/p&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/Top-10-TED-Talks-of-2011-to-Inspire-Tech-Startups.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      Node.js Client for Runkeeper's Health Graph API
    </title>
    <link>
      <link href="Nodejs-Client-For-Runkeeper-Health-Graph-Api.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="Nodejs-Client-For-Runkeeper-Health-Graph-Api.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/xccyb5rMhug/Nodejs-Client-For-Runkeeper-Health-Graph-Api.html" title="Node.js Client for Runkeeper's Health Graph API" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>Nodejs-Client-For-Runkeeper-Health-Graph-Api.xml</id>
    <updated>
      Thu Aug 25 2011 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="javascript" />
          <category term="node.js" />
          <category term="api" />
          <category term="fitness" />
          <category term="runkeeper" />
        <content type="html">
      

&lt;p&gt;&lt;a href="http://runkeeper.com" title="Runkeeper"&gt;Runkeeper&lt;/a&gt; is a service that improves your fitness experience through the mobile device you probably already carry when you go for a run,
bike ride, etc.  It tracks your workout in a bunch of helpful ways, but really excels at making solo sports 
training a more social experience.  Runkeeper is used heavily by a group of Boston tech cyclists and on a recent ride we cooked up
an idea for a service that combines charitable donation with fitness training in a new way.
With the recently announced &lt;a href="http://blog.runkeeper.com/new-feature/health-graph" title="Runkeeper Health Graph API"&gt;Health Graph API&lt;/a&gt;
opening Runkeeper to development, we set out to hack something up.&lt;/p&gt;

&lt;h2&gt;Why Node.js for a Startup Project?&lt;/h2&gt;

&lt;p&gt;Having used &lt;a href="http://blog.marksoper.net/Server-side-DOM-manipulation-in-Nodejs-with-JSDOM-JQuery-and-Mustache-Templates-April-25-2011.html" title="Server-side DOM manipulation in Node.js with JSDOM, JQuery, and Mustache Templates"&gt;Node.js for a couple of contract projects&lt;/a&gt;, it seemed well-suited for this,
a startupish side-project with a lot of uncertainty about the target we&amp;#039;re trying to hit.
&lt;a href="https://github.com/joyent/node" title="Node.js on Github"&gt;Node.js&lt;/a&gt; is great for this situation because it means I can think about the overall architecture for the service in a single,
javascript-based context.  Why is this valuable?  For example, decisions like whether to build a single-page app or a render 
pages more traditionally from the server can be made with less concern for future switching-costs because (if done carefully) 
most of the page-building logic can be re-used between browser and server.&lt;/p&gt;

&lt;h2&gt;Creating a Node.js Module for the API&lt;/h2&gt;

&lt;p&gt;We needed to create a way to bind to the &lt;a href="http://developer.runkeeper.com/healthgraph" title="Health Graph API Home"&gt;Health Graph API&lt;/a&gt; from Node.js, so it made sense to package this wrapper as an open-source Node.js module.  The &lt;a href="https://github.com/marksoper/node-runkeeper" title="Node.js Client for Runkeeper Health Graph API"&gt;Node.js Client for the Runkeeper Health Graph API&lt;/a&gt; is now available in an immature but functional state &lt;a href="https://github.com/marksoper/node-runkeeper" title="Install Node.js Client for Runkeeper from Github"&gt;via Github&lt;/a&gt;, with npm distribution likely to follow. I welcome comments, feedback, bug reports, enhancement pull requests, etc.&lt;/p&gt;

&lt;h2&gt;What&amp;#039;s the Startup Idea?&lt;/h2&gt;

&lt;p&gt;We&amp;#039;re keeping the idea very hush-hush.
The only thing we can talk about right now is that the user experience will not require
or even encourage the wearing of mobile phone outfits for long endurance workouts.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.runkeeper.com/" title="Jason Jacobs of Runkeeper"&gt;
&lt;img src="/media/images/Jason-Jacobs.png"&gt; &lt;br&gt;
&lt;/a&gt;&lt;/p&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/Nodejs-Client-For-Runkeeper-Health-Graph-Api.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      Node.js Analytics - Part 1 : State of the Art
    </title>
    <link>
      <link href="Nodejs-Analytics-Part-1-State-of-the-Art.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="Nodejs-Analytics-Part-1-State-of-the-Art.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/j15rcHuao6s/Nodejs-Analytics-Part-1-State-of-the-Art.html" title="Node.js Analytics - Part 1 : State of the Art" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>Nodejs-Analytics-Part-1-State-of-the-Art.xml</id>
    <updated>
      Thu Jun 02 2011 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="javascript" />
          <category term="node.js" />
          <category term="logging" />
          <category term="analytics" />
          <category term="real-time" />
        <content type="html">
      

&lt;p&gt;Part 1 in a series of articles exploring real-time and historical analytics for Node.js, covering analytics options currently available in the &lt;a href="https://github.com/joyent/node/wiki/modules" title="Node.js Module Directory"&gt;Node.js ecosystem&lt;/a&gt;.  I think there&amp;#039;s a need for better analytics in the Node.js ecosystem to support engineers and business folks.  I&amp;#039;m researching and writing to stimulate feedback on this, and to explore what if anything needs to be developed in terms of open source modules, APIs, etc.&lt;/p&gt;

&lt;p&gt;I&amp;#039;ve been working with server-side javascript and Node.js for about 6 months, including &lt;a href="http://news.ycombinator.com/item?id=2510671" title="Server-side DOM Manipulation in Node by Mark Soper on Hacker News"&gt;some work with server side DOM manipulation&lt;/a&gt; and &lt;a href="http://blog.marksoper.net/My-New-Blog-Using-Petrify-Static-Website-Generator-and-Nodejs.html" title="Post about Petrify Static Site Generator on Mark Soper&amp;#039;s Blog"&gt;static site generation&lt;/a&gt;.  I&amp;#039;ve been working on &lt;a href="http://rallyplan.com" title="Rally - Time-sensitive announcements from your Twitter friends - Summarized, prioritized, and delivered to your email inbox every morning"&gt;consumer internet startups&lt;/a&gt; for about 4 years, and before that I was in the business intelligence and analytics world.  Having not quite rid myself of the analytics bug, I&amp;#039;ve been thinking a lot about how the practice of analytics might evolve in the Node.js world and tinkering with two open source contributions toward analytics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/indexzero/winston/issues/11" title="Mark Soper&amp;#039;s addition of counters to winston logging by Nodejitsu"&gt;Adding event counters to the winston logging module&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/marksoper/analog" title="Instrumentation of Node.js request for analytics and logging"&gt;Instrumentation of Node.js request data to support analytics&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let&amp;#039;s go through what&amp;#039;s available currently to implement analytics in Node.js.&lt;/p&gt;

&lt;h3&gt;Logging&lt;/h3&gt;

&lt;p&gt;If you&amp;#039;re developing with Node.js, chances are you&amp;#039;re doing some kind of persistent logging.  You might be logging critical events to make troubleshooting and development testing easier, logging outcomes of test suites like &lt;a href="http://vowsjs.org" title="Vows - asynchronous javascript testing"&gt;Vows&lt;/a&gt;, or keeping logs of requests and responses to understand how your server(s) are being used.  You might be using a logging module like &lt;a href="http://nodejitsu.com" title="Nodejitsu Node.js"&gt;Nodejitsu&amp;#039;s&lt;/a&gt; &lt;a href="https://github.com/indexzero/winston" title="Winston Logging by Nodejitsu"&gt;Winston&lt;/a&gt; and/or PaaS offerings designed specifically for logging like &lt;a href="http://splunk.com" title="Splunk logging"&gt;Splunk&lt;/a&gt; or &lt;a href="http://loggly.com" title="Loggly Logging Platform"&gt;Loggly&lt;/a&gt;, or may have a customized approach to logging.  And hosting / deployment platforms like &lt;a href="http://blog.heroku.com/archives/2011/5/31/celadon_cedar/" title="Heroku Node.js Support"&gt;Heroku&lt;/a&gt;, &lt;a href="http://joyent.com" title="Joyent Node.js"&gt;Joyent&lt;/a&gt;, &lt;a href="http://nodejitsu.com" title="Nodejitsu Node.js Hosting"&gt;Nodejitsu&lt;/a&gt;, etc. often provide additional logging capabilities.&lt;/p&gt;

&lt;p&gt;How logs are retrieved and analyzed is dictated by the method in which the logs are written.  Developers analyze filesystem-based logs in an ad hoc way during development using &lt;em&gt;grep&lt;/em&gt; or other powerful basic methods.  Hosting environments may come with analysis tools, like &lt;a href="http://devcenter.heroku.com/articles/logging" title="Heroku Logging"&gt;Heroku&amp;#039;s revamped logging&lt;/a&gt; and &lt;a href="http://www.joyent.com/software/smartdatacenter/cloud-analytics/" title="Joyent Cloud Analytics"&gt;Joyent&amp;#039;s Cloud Analytics&lt;/a&gt;.  Cloud logging services provide APIs that are specialized for log retrieval and analysis, like &lt;a href="http://wiki.loggly.com/retrieve_events" title="Loggly Retrieve API"&gt;Loggly&amp;#039;s Retrieve API&lt;/a&gt;.  Analysis tools for log data primarily focus on serving engineering needs, like troubleshooting, performance tuning, provisioning, testing, etc. with two basic functions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;search&lt;/strong&gt; - search-engine-style query to retrieve log entries containing keywords&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;find&lt;/strong&gt; - database-style query to find or count log entries based on metadata such as date, server, severity level, etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The value of logs isn&amp;#039;t limited to engineering - there&amp;#039;s a long history of log data being used more broadly to make marketing and other business decisions - e.g. Apache logs providing an early foundation for the what would become the multi-billion dollar &lt;a href="http://en.wikipedia.org/wiki/Web_analytics#Web_server_logfile_analysis" title="Logfiles in Web Analytics"&gt;web analytics&lt;/a&gt; industry.  While this industry has evolved to rely more on client-side analytics and less on server-side data like logfiles, there&amp;#039;s an interesting case to be made for the importance of server-side approaches in Node.js applications, supported most obviously by widespread use of Node.js in API servers (e.g. serving JSON to other servers via REST) and other situations where &amp;quot;clients&amp;quot; don&amp;#039;t support client-side analytics.&lt;/p&gt;

&lt;h3&gt;Client-side Analytics on the Server&lt;/h3&gt;

&lt;p&gt;Because Node.js supports reuse of code between browser and server, Javascript developers can now embed some of the most popular client-based web analytics services into server applications to take advantage of many of the powerful features these services offer.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/ncb000gt/node-googleanalytics" title="Google Analytics for Node.js"&gt;Google Analytics&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/carlsverre/mixpanel-node" title="Mixpanel for Node.js"&gt;Mixpanel&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This approach does not seem to have taken off yet judging by the apparently limited adoption of these two modules.  The case for using Google Analytics in this way is diminished by the extent to which some of it&amp;#039;s key features rely on cookies that aren&amp;#039;t available in this server-side context.  I&amp;#039;m curious to learn more about why there doesn&amp;#039;t seem to be more interest in using Mixpanel, a more generalized approach to capturing javascript-defined events that  seems readily applicable to the server.&lt;/p&gt;

&lt;h3&gt;Server-side Analytics on the Server&lt;/h3&gt;

&lt;p&gt;The analytics (software that helps engineers and business people understand what&amp;#039;s happening with their product) available for Node.js is limited to the two categories above.  As far as I know.  If there are other options out there I&amp;#039;d love to hear about it.&lt;/p&gt;

&lt;p&gt;A new category that makes sense to me is software that&amp;#039;s designed specifically for the Node.js server with the following characteristics:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Makes the collection of metadata about the sending and receiving of data as automatic as possible, e.g. add three lines of code and it&amp;#039;s done&lt;/li&gt;
&lt;li&gt;This metadata is instrumented in a way that&amp;#039;s standardized and optimized for analytics&lt;/li&gt;
&lt;li&gt;A REST API exists on top of this metadata to support the use of this metadata in a variety of analytics clients&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I&amp;#039;ve made a small amount of progress toward this by taking a stab at the &lt;a href="https://github.com/marksoper/analog"&gt;instrumentation of a Node.js request object for analytics&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I&amp;#039;d love to hear feedback, corrections, etc. on my take on the state of analytics in the Node.js ecosystem and on this specific proposal for an additions to it.&lt;/p&gt;

&lt;p&gt;Stay tuned for coverage of real-time analytics next week.&lt;/p&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/Nodejs-Analytics-Part-1-State-of-the-Art.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      What I Learned from a JQuery Mobile Project - Pros and Cons
    </title>
    <link>
      <link href="What-I-Learned-From-A-JQuery-Mobile-Project-Pros-and-Cons.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="What-I-Learned-From-A-JQuery-Mobile-Project-Pros-and-Cons.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/FuTzjBDDJv8/What-I-Learned-From-A-JQuery-Mobile-Project-Pros-and-Cons.html" title="What I Learned from a JQuery Mobile Project - Pros and Cons" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>What-I-Learned-From-A-JQuery-Mobile-Project-Pros-and-Cons.xml</id>
    <updated>
      Wed May 04 2011 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="mobile web" />
          <category term="jquery mobile" />
        <content type="html">
      

&lt;p&gt;I used &lt;a href="http://jquerymobile.com" title="JQuery Mobile"&gt;JQuery Mobile&lt;/a&gt; in a 4-week project building a basic mobile web app on Node.js.  Here&amp;#039;s what I learned about it, what I liked and didn&amp;#039;t like.&lt;/p&gt;

&lt;p&gt;JQuery Mobile is a mobile interface system based on the JQuery UI and JQuery javascript libraries.  It&amp;#039;s main goals are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; &lt;b&gt;Device and Browser Independence&lt;/b&gt; - allow you to write one app that will run on any smartphone or tablet &lt;/li&gt;
&lt;li&gt; &lt;b&gt;Provide Touch Interaction&lt;/b&gt; - layer touch interaction on top of your app without hassle &lt;/li&gt;
&lt;li&gt; &lt;b&gt;CSS/HTML Markup Oriented&lt;/b&gt; - you can build powerful mobile web apps by modifying your HTML and CSS only with little Javasript coding required - if more flexibility is required, the underlying JQuery library makes for familiar Javascript customization.
&lt;/li&gt;&lt;/ul&gt;

&lt;p&gt;I found JQuery Mobile very easy to learn.  Getting started with a basic page is easy using a &lt;a href="http://jquerymobile.com/demos/1.0a4.1/#docs/pages/docs-pages.html" title="JQuery Mobile Boilerplate Template"&gt;boilerplate template&lt;/a&gt;.  The &lt;a href="http://jquerymobile.com/demos/1.0a4.1/" title="JQuery Mobile Demos &amp;amp; Docs"&gt;demos/docs section&lt;/a&gt; gives you an easy index to figuring out how to work with links, buttons, forms, etc.&lt;/p&gt;

&lt;p&gt;JQuery Mobile gave us a number of wins in this project:
&lt;ul&gt;
&lt;li&gt;The default page template gave us a decent-looking shell layout for the app&lt;/li&gt;
&lt;li&gt;The out-of-the-box forms, links, and buttons were easy to set up, have a standard iPhone-inspired aesthetic, and are easily customized &lt;/li&gt;
&lt;li&gt;Touch interaction worked out-of-the-box with no work required&lt;/li&gt;
&lt;ul&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/p&gt;

&lt;p&gt;During the course of the project, I developed a serious concern about the &lt;a href="http://jquerymobile.com/demos/1.0a4.1/#docs/pages/docs-navmodel.html" title="JQuery Mobile Navigation Docs"&gt;JQuery Mobile navigation and linking scheme&lt;/a&gt;.  The default in JQuery Mobile is that it will take over navigation and apply its own Ajax navigation to all links unless you do something like use a &lt;em&gt;rel=external&lt;/em&gt; attribute in the link tag.  Though this configuration is easy to do, in order to use JQuery Mobile as intended, you may have to rethink your navigation scheme and introduce a new organizational aspect involving how pages are grouped together for multi-page loads.&lt;/p&gt;

&lt;p&gt;At times I noticed unpredictable behavior in using the browser back button and in manually (by entering url in address bar) navigating to other pages on the site.
While writing this, I visited a half-dozen pages in the &lt;a href="http://jquerymobile.com/demos/1.0a4.1/" title="JQuery Mobile Demos"&gt;demos&lt;/a&gt; section and then tried to get back to the &lt;a href="http://jquerymobile.com" title="JQuery Mobile"&gt;root&lt;/a&gt; using the back button and manually entering the url using Chrome 11.  Neither method worked.  Either the root page redirected to the demos page, or the browser tried unsuccessfully to load the root page via an AJAX call.  I had to switch over to Safari to access the root page and get into the forum to submit &lt;a href="http://forum.jquery.com/topic/navigation-problem-on-jquery-mobile-website-s-root-page-after-visiting-demos-page" title="Mark Soper&amp;#039;s post on JQuery forum about root page navigation problem"&gt;a post about this problem&lt;/a&gt;.
I&amp;#039;d recommend taking a close look at the navigation and linking model for any site involving more that a couple of pages. 
My experience suggests that the model can cause some unexpected dependencies between pages that can make navigation problematic if not handled carefully.&lt;/p&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/What-I-Learned-From-A-JQuery-Mobile-Project-Pros-and-Cons.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      Requiem For A Startup
    </title>
    <link>
      <link href="Requiem-For-A-Startup-April-30-2011.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="Requiem-For-A-Startup-April-30-2011.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/3GQ-L7n8gyA/Requiem-For-A-Startup-April-30-2011.html" title="Requiem For A Startup" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>Requiem-For-A-Startup-April-30-2011.xml</id>
    <updated>
      Sat Apr 30 2011 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="startups" />
        <content type="html">
      

&lt;div style="margin:20px;text-align:left;width=100%"&gt;&lt;img class="articleHeaderImage" src="/media/images/prally.png"&gt;&lt;/div&gt;

&lt;div&gt;&lt;em&gt;Our business in this world is not to succeed, but to continue to fail, in good spirits.&lt;/em&gt;&lt;br&gt;
- Robert Louis Stevenson&lt;/div&gt;

&lt;p&gt;Three years ago I left my sales engineering job at an analytics software company to start an &lt;a href="http://rallyplan.com" title="Events, Plans, Deadlines - Time-sensitive announcements from your Twitter friends"&gt;internet company&lt;/a&gt;.
This is the story of what happened between then and now from a personal perspective, the stuff I might have been writing about along the way had I not been so busy trying to get a company going.&lt;/p&gt;

&lt;h2&gt;Starting a Startup&lt;/h2&gt;

&lt;p&gt;I&amp;#039;ve wanted to become an entrepreneur since starting a driveway sealing business called Dr. Driveway in high school with three friends.
It was an awesome experience.
I consider it a good day at work when I have half as much fun as we did in those days wearing a thrift-store jumpsuit and spreading stinking tar on 110 degree asphalt.&lt;/p&gt;

&lt;p&gt;After college I guess I assumed that circumstances like my high-school startup would occur again, that a group of friends and I would get together to start a company and have a ton of fun.
I joined a small tech company that seemed like a startup at the time (it wasn&amp;#039;t) and had an amazing ride on the dotcom rollercoaster.
We went through hypergrowth (250 people to 2500 in 3 years), an IPO, and a 5500% increase in stock value thereafter.
By the time the bubble bursted, SEC investigations for illegal revenue recognition had already removed any doubt among the folks on the stock market that a better valuation of the company would be just slightly above zero.&lt;/p&gt;

&lt;p&gt;I got off the rollercoaster broke (not to be confused with poor), but one thing I still had was my eligibility for the AMT tax designed to close loopholes for the wealthiest Americans.
I got a job at a more stable software company where I could do my job well without a lot of distractions, get out of debt to Uncle Sam, have a good work-life balance, and eventually build up savings for a startup.
As time went by it began to become clear that the circumstances, let alone the perfect circumstances, for doing a startup were not going to just happen.&lt;/p&gt;

&lt;p&gt;I got involved in the startup community in Boston nights and weekends, landing on a team entering the &lt;a href="http://www.mit100k.org/" title="MIT 100K"&gt;MIT 100K Business Plan Competition&lt;/a&gt;.
Around this time I began to feel physically, viscerally sick at my desk.  Not because the company or people were bad - they weren&amp;#039;t.
But because I badly wanted to make a change toward doing something I really enjoyed and felt a huge burden of the ongoing opportunity cost of not doing that.
This is one example of the circumstances under which a person might make an ill-advised (not to be confused with regrettable) decision to make a career change into a poorly conceived business venture with relative strangers, none of whom had startup experience or much work experience for that matter.&lt;/p&gt;

&lt;p&gt;In the Hollywood script version of this story, these might be the makings of the next Google.
In reality we really didn&amp;#039;t do too well at all.
We didn&amp;#039;t do much in the 100K, and our grand vision was best summarized by Paul Graham in his graciously delivered verdict on our 10-min Y-Combinator pitch: &amp;quot;Sorry, but I have no idea what you guys are doing&amp;quot;.&lt;/p&gt;

&lt;h2&gt;Going solo&lt;/h2&gt;

&lt;p&gt;The team fell apart shortly thereafter.  I didn&amp;#039;t realize the implications of going solo at this point.
Being a software engineer and being psyched about the technology challenges we&amp;#039;d been looking at, I figured a reasonable course of action would be to do a major pivot into a product vision more my own, build a prototype, and use it to motivate conversations with prospective founders and investors.
I sure as hell didn&amp;#039;t want to give up.
Despite the rocky start, I was really enjoying the experience, especially being able to spend my whole day thinking about and solving early-stage problems.
I was beginning to realize something that I believe strongly today:  Getting to work on early-stage problems is one of the great privileges available in life.&lt;/p&gt;

&lt;p&gt;Being a capable engineer is both a blessing and a curse in this situation.
Put another way: just because you can do something doesn&amp;#039;t mean you should.
Limiting development and focusing on finding a co-founder is the course I would advocate today for most folks in this situation.
Instead I went heads-down for over a year, evolving my startup from its origins in recommending investments (Alluvial Labs) based on blogs and other content you like, to recommending jobs (JobGravy) based on content you like, to recommending news and jobs based on content you like (Likematter).
Customers were reluctant to adopt when faced up-front with having to work (e.g. upload an OPML file) in order to get value.
Trying to tackle a huge problem like personalizing news, I began to appreciate the importance of sizing the project to fit the resources.&lt;/p&gt;

&lt;p&gt;Although it was becoming clear that being a solo founder was very difficult, a team was beginning to coming together.
I hiring a smart MIT student part-time and a very productive Python developer/entrepreneur in Mumbai.
And I had learned to compensate partially for the lack of co-founder by leaning heavily on advisors and members of the &lt;a href="http://betahouse.org Betahouse"&gt;Boston startup and tech communities&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I had about a year of runway left to make something happen, and decided to focus on a problem I was increasingly experiencing myself:  Being heads-down meant not staying on top of opportunities to socialize with friends.
I wanted a menu of what everone&amp;#039;s up to tonight, or this weekend.  There were services where you could announce what you&amp;#039;re doing (Twitter), or where you are (Foursquare), but nothing to announce what was going to happen in the future.
Coming out of a super-valuable &lt;a href="http://www.mitforumcambridge.org/events/concept-clinic-featuring-touted-com/" title="MIT Enterprise Forum Concept Clinic"&gt;MIT Enterprise Forum Concept Clinic&lt;/a&gt;, the vision began to crystallize around a service where people check-in their future plans a la Foursquare.&lt;/p&gt;

&lt;h2&gt;The Startup: Rally - Events, Plans, Reminders - Time-sensitive Announcements from your Twitter Friends&lt;/h2&gt;

&lt;p&gt;I had gotten hip to &lt;a href="http://theleanstartup.com/" title="Lean Startup"&gt;lean startup methodology&lt;/a&gt; and &lt;a href="http://steveblank.com" title="Steve Blank"&gt;customer development&lt;/a&gt;, so I started sourcing stories through Mechanical Turk about how people make plans and hanging out in coffee shops all over Boston engaging in customer development research with anyone willing to talk.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How do you find out what your friends are doing?  Have you ever missed out because of failed communication?&lt;/li&gt;
&lt;li&gt;How do you get your friends involved in something you want to do?  How well has this worked out for you?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The research yielded some very interesting observations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Predominantly, people used SMS, telephone, and email to make plans with friends.&lt;/li&gt;
&lt;li&gt;There was little mention of newer social media technologies like Twitter or Facebook in these conversations.&lt;/li&gt;
&lt;li&gt;Google Calendar was very popular, and was shared by groups of mainstream folks in advanced ways, like coordinating a group of six parents in determining who can best pick the kids up from soccer practice.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I was surprised at how emotional the conversation would become with many people I talked to.  Asking people to quantify and assess how they socialize with friends seemed in some situations to touch a nerve.  Perhaps for many of us our social lives might not be as filled with cool plans as we would like.&lt;/p&gt;

&lt;p&gt;I found it nearly impossible to interpret the spreadsheets of data and stories I collected.  I believed that it confirmed my initial hypotheses:
-There were many situations where a person&amp;#039;s friend(s) were doing something where the person would be welcome, but there was insufficient communication and no connection was made
-There were many situations where a person had a desire to do an activity or go to event but no one lined up to go with.  In some cases the person was able to surmount this problem in a number of ways.  In other cases, the problem remained unsolved, typically because of fear of social risk - e.g. getting rejected by everyone, friends knowing that the person doesn&amp;#039;t already have plans for this weeekend, etc.&lt;/p&gt;

&lt;p&gt;The coffee shop research also confirmed that most people rely on direct conversations via SMS, email, and phone to make plans with friends.
I decided on email, because of its unique one-to-many (Cc) capability.
I expected that people would simply Cc our service a la Tripit whenever making plans with friends.
The service would help the group coordinate by creating a persistent page to thread the conversation, look up location and venue information automatically, and optionally make the plan available to a broader set of friends - along the lines of what Group.me, Beluga, etc. are doing with SMS today.&lt;/p&gt;

&lt;p&gt;No one used the email functionality as intended, and only a few people shared plans via the web (an interface similar to Plancast, whose launch I learned about around this time) but I did use Twitter OAuth signup so I had access to users&amp;#039; Twitter accounts and ran a simple test:  what if I analyze people&amp;#039;s twitter stream looking for time-sensitive announcements and then send them a daily email saying &amp;quot;here&amp;#039;s the stuff going on today that you probably missed because you get like 100x as many tweets as you can read.&amp;quot;  Results were encouraging.  Aided by a &lt;a href="http://www.boston.com/business/technology/innoeco/2010/03/on_the_radar_rally_which_mines.html" title="Scott Kirsner on Rally"&gt;Boston Globe article by Scott Kirsner&lt;/a&gt;, the regular user base grew to several hundred people.  Clickthrough on the daily emails was around 4-5%, and users were telling me things like &amp;quot;I found out about the SXSW deadline using Rally and was able to submit my application in time - thanks!&amp;quot;.  Very cool!&lt;/p&gt;

&lt;p&gt;I embarked on a new major release by doubling down on the twitter-based daily email that had worked well.  I also estimated that if people were using the crappy initial version so much, they&amp;#039;d use so much more an improved version with a greatly improved email format that featured conversation threads providing a much more complete picture of who&amp;#039;s going and what&amp;#039;s being discussed.  Actually, clickthrough rates for the new version would turn out to be exactly the same as before despite months of engineering and design improvements.&lt;/p&gt;

&lt;p&gt;But the main thing the new release had to get right was customer acquisition.
People were discovering events and plans through Rally, but weren&amp;#039;t sharing them.
Which means that they weren&amp;#039;t using the service to share plans with friends in a way that also shared the service with prospective users.
I had not built functionality to do this in original version.
The new version would include a carefully designed way to do this.&lt;/p&gt;

&lt;p&gt;Take a look at the screenshot below.  If you were interested in the Founder Dating event, what would you do next?  &lt;/p&gt;

&lt;p&gt;&lt;img src="/media/images/rshot.png"&gt;&lt;/p&gt;

&lt;p&gt;If you answered anything other than &amp;quot;I would click on the bit.ly link in the tweet to find out more and maybe sign up&amp;quot;, then you&amp;#039;d be a major outlier among the Rally user population.  The calls to action I hoped people would use: add to calendar, reply via twitter, click title for more information, have seldom ever been used.  I&amp;#039;ve received some good advice post-release that I should have given people only one primary call to action and make it very large and easy to understand.&lt;/p&gt;

&lt;p&gt;Good advice.  That&amp;#039;s one of the next things I&amp;#039;d do if I were going to do more things.
But I&amp;#039;m not convinced this would help.
The fundamental problem would still exist:  People want the tweets they care about from the people they care about.  Rally helps them do this.  Once found, they want to engage directly with that person or answer the call to action in the message - &lt;a href="http://www.quora.com/What-percentage-of-tweets-have-links-in-them?q=percentage+tweets+contain+links Quora on % of Tweets Containing Links"&gt;25% of all tweets contain links&lt;/a&gt;, more than 40% for tweets found on Rally.&lt;/p&gt;

&lt;h2&gt;Future for the Rally Product&lt;/h2&gt;

&lt;p&gt;What I ended up building was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;an interactive search product - a way to discover events, plans, deadlines, and other time-sensitive information - that was not well-received&lt;/li&gt;
&lt;li&gt;plus a daily email of aggregate search results that was quite well received&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What I tried to position to the market was a more comprehensive tool to assist in the process of making plans with friends, going beyond discovery to include originating plans, announcing plans to friends via Twitter, integrating with your calendar, etc.&lt;/p&gt;

&lt;p&gt;I&amp;#039;m optimistic that there&amp;#039;s a market opportunity for the Rally product.  For example, the daily email could compliment content from daily email services like &lt;a href="http://thrillist"&gt;Thrillist&lt;/a&gt;, &lt;a href="http://dailycandy.com"&gt;DailyCandy&lt;/a&gt;, or &lt;a href="http://urbandaddy.com"&gt;UrbanDaddy&lt;/a&gt; with opportunities specific to your social graph.
But I don&amp;#039;t intend to keep hunting for it.  Time to move on.&lt;/p&gt;

&lt;h2&gt;Lessons learned about single-founder startups&lt;/h2&gt;

&lt;p&gt;I&amp;#039;ve hit the end of my runway, having invested almost $400K in savings and opportunity cost associated with foregoing salary in the Rally effort alone, much more if you count the previous startups.
And I&amp;#039;ve reached the limits of my willingness to keep thinking creatively about how to market this thing.
&lt;a href="http://www.paulgraham.com/founders.html" title="Paul Graham on Founder Success Factors"&gt;Paul Graham&amp;#039;s piece on what to look for in founders&lt;/a&gt; applies well to this situation: Determination is the #1 factor in startup success, but only when combined with the flexibility to adjust or change directions completely. &lt;/p&gt;

&lt;p&gt;Another huge success factor is quality of the team.  I think this was a major limitation to my startup succeeding.  I&amp;#039;ve got a lot of confidence in my own abilities, otherwise I wouldn&amp;#039;t have done all this.  But my company failed in large part because it lacked the foundational leadership needed to succeed.  There has thankfully been a good bit written about &lt;a href="http://ginzametrics.com/the-royal-we-single-founder-startups.html" title="Ray Grieselhuber on Single-Founder Startups"&gt;single-founder startups&lt;/a&gt; in recent years.  It&amp;#039;s a subject I&amp;#039;ve thought a lot about.  I think it can be boiled down into two points:
&lt;ol&gt;
&lt;li&gt;&lt;b&gt;Two heads is much, much better than one&lt;/b&gt; - spreading leadership across two capable &amp;amp; compatible leaders increases expected results while reducing risk in much the same way diversification does in investing - see modern portfolio theory.  Multiple people smooths out individual peaks and valleys of productivity and creativity. Two equivocal leaders means that each&amp;#039;s ideas have to pass the test of outcompeting the other&amp;#039;s.  Interestingly, there are a lot of startups with 2+ founders that don&amp;#039;t benefit from this effect.  The most common example of this involves a business founder representing like 85% of the juice in a situation paired with a technical founder who&amp;#039;s domain of owning the building of the product, while representing a potentially much bigger part of the value created, is really only carrying 15% of the burden in the key leadership issues that make or break the startup in the first 1-2 years.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;One head is better than one head + the wrong head&lt;/b&gt;  It pays to be very confident about the relationship with your co-founder.  The benefits only happen if both people are capable of working in the right way with each other.  There&amp;#039;s never been a better time to do a single-founder startup in industries that benefit from open-source and cloud-computing.  One person&amp;#039;s leverage is huge.  The main thing I would do differently in retrospect is to apply a very lean startup approch, cycling through short-duration projects/experiments testing specific parts on a problem while searching for a co-founder, instead of trying to forge straight ahead with a venture-sized concept.  Understanding what kinds of problems you have the resources to tackle is important for any startup, none more so than a single-founder startup.&lt;/li&gt;
And not to be overlooked is the fun factor.  Having a co-founder means you can go-on vacation without the company shutting down.  Being a part of a solid team that kicks ass is a lot of fun.  And working on something that&amp;#039;s bigger than myself has been something I&amp;#039;ve missed and am looking forward to getting back to.&lt;/ol&gt;&lt;/p&gt;

&lt;h2&gt;What I got out of doing a startup&lt;/h2&gt;

&lt;p&gt;I&amp;#039;m grateful that I had the opportunity to spend a few years trying to make my own ideas happen and I&amp;#039;m glad that I took it.
Of course I would have done a bunch of things differently with the benefit of hindsight.  There&amp;#039;s something very rewarding about doing what you want, maybe a startup or maybe something else, when it&amp;#039;s not clear how you&amp;#039;re going to succeed.
I&amp;#039;ve found that as I&amp;#039;ve had to strengthen my faith that I can make things work out and that the world is a place in which that can happen, profound changes have occurred.
I&amp;#039;m more confident in making instinctive decisions, especially about people, without much analyzing.
I have a much better understanding of how corporations and other businesses, such a huge part of American culture, get formed and operate at an executive level.
Perhaps counterintuitively, I put a lot less emphasis on money and certainly worry less about it now than I did when I had much more saved up.
And I&amp;#039;m in a much stronger position in terms of ability to develop technology and tech startups that will create new wealth in the years to come.
While I&amp;#039;m not sure I agree with it as a useful criteria for dichotomizing the human population, I&amp;#039;m glad that &lt;a href="http://cdixon.org/2011/04/26/there-are-two-kinds-of-people-in-the-world/" title="Chris Dixon Two Types of People"&gt;Chris Dixon wrote this piece about people taking real risk to build a company&lt;/a&gt;.  Working hard and sacrificing to save money, then investing all of it and all of your energy in a failed attempt to bootstrap a startup is something to be proud of.  And I am.&lt;/p&gt;

&lt;h2&gt;And most importantly ...&lt;/h2&gt;

&lt;p&gt;Startups often involve financial sacrifice and require a lot of work and attention around the clock.  I can&amp;#039;t imagine anyone more understanding and accepting of these realities than my wife.   Thank you for being that way.  I love you.&lt;/p&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/Requiem-For-A-Startup-April-30-2011.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      Server-side DOM manipulation in Node.js with JSDOM, JQuery, and Mustache Templates
    </title>
    <link>
      <link href="Server-side-DOM-manipulation-in-Nodejs-with-JSDOM-JQuery-and-Mustache-Templates-April-25-2011.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="Server-side-DOM-manipulation-in-Nodejs-with-JSDOM-JQuery-and-Mustache-Templates-April-25-2011.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/QCjkbHq8t2o/Server-side-DOM-manipulation-in-Nodejs-with-JSDOM-JQuery-and-Mustache-Templates-April-25-2011.html" title="Server-side DOM manipulation in Node.js with JSDOM, JQuery, and Mustache Templates" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>Server-side-DOM-manipulation-in-Nodejs-with-JSDOM-JQuery-and-Mustache-Templates-April-25-2011.xml</id>
    <updated>
      Tue Apr 26 2011 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="javascript" />
          <category term="node.js" />
          <category term="jsdom" />
          <category term="jquery" />
          <category term="mustache" />
          <category term="DOM" />
        <content type="html">
      

&lt;p&gt;I recently finished a mobile web development contract based on &lt;a href="http://nodejs.org" title="Node.js"&gt;Node.js&lt;/a&gt;.
Looking around for but not finding a javascript-compatible template system like python&amp;#039;s &lt;a href="http://makotemplates.com"&gt;Mako&lt;/a&gt;, I came 
across Nodejitsu&amp;#039;s &lt;a href="https://github.com/tmpvar/jsdom" title="server-side DOM implementation JSDOM"&gt;JSDOM&lt;/a&gt;-based &lt;a href="http://blog.nodejitsu.com/micro-templates-are-dead" title="Nodejitsu&amp;#039;s JSDOM-based Weld"&gt;Weld&lt;/a&gt; approach to rendering HTML content via DOM manipulation on the server.
What an awesome idea:  &lt;b&gt;Write your original rendering code in JQuery and the JQuery you&amp;#039;ll
need for AJAX in browser is already done&lt;/b&gt;.  Not much out there one this yet, so I&amp;#039;ll go through my process here.&lt;/p&gt;

&lt;p&gt;The &lt;a href="http://blog.nodejitsu.com/micro-templates-are-dead" title="Nodejitsu&amp;#039;s JSDOM-based Weld"&gt;Nodejitsu article&lt;/a&gt; mentioned above is a great place to start.  Weld adds a data-DOM mapper to &lt;a href="https://github.com/tmpvar/jsdom" title="server-side DOM implementation JSDOM"&gt;JSDOM&amp;#039;s server-side DOM implementation&lt;/a&gt;.  I chose a different JSDOM-based approach that maps data to HTML in atomic blocks and then places those blocks into the DOM - using a &lt;a href="http://mustache.github.com/" title="Mustache templates"&gt;Mustache template&lt;/a&gt; for each block of HTML I&amp;#039;d want to be replaceable (e.g. via AJAX on client).  With either approach, in order to realize the benefit of server/browser code re-use, such HTML blocks will have to be sent to the browser.  In the approach described here, that might involve using &lt;a href="http://icanhazjs.com/" title="ICanHaz.js client-side Mustache templates"&gt;ICanHaz.js&lt;/a&gt;, which I hope to cover this in a follow-up post.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blog.marksoper.net/media/demos/Server-Side-DOM-Manipulation-In-Nodejs.tar.gz" title="Download Server-side DOM manipulation in Node.js with JSDOM, JQuery, and Mustache"&gt;&lt;b&gt;Download this code&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://dev.marksoper.net/media/html/Album-Demo-Server-side-DOM-manipulation-in-Node.js-with-JSDOM-and-JQuery.html" title="Demo Output for Server-side DOM manipulation in Node.js with JSDOM, JQuery, and Mustache"&gt;&lt;b&gt;Demo Output&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;Handling the request in Node.js (product_demo.js)&lt;/h3&gt;

&lt;pre&gt;
require.paths.unshift(&amp;#039;/usr/local/lib/node_modules&amp;#039;);
var http = require(&amp;#039;http&amp;#039;),
    fs = require(&amp;#039;fs&amp;#039;),
    jsdom = require(&amp;#039;jsdom&amp;#039;),
    // correction made on May 4, 2011, removing this unnecessary require: flow = require(&amp;#039;flow&amp;#039;),
    mustache = require(&amp;#039;mustache&amp;#039;);

var products = require(&amp;#039;./fixtures/products_fixture&amp;#039;);

var productSummaryTemplate = fs.readFileSync(&amp;#039;component_templates/product_summary.html&amp;#039;,&amp;#039;utf-8&amp;#039;);

http.createServer(function(request,response) {
        var page_template = fs.readFileSync(&amp;#039;page_templates/product_list.html&amp;#039;,&amp;#039;utf-8&amp;#039;);
        var document = jsdom.jsdom(page_template);
        var window = document.createWindow();
        jsdom.jQueryify(window, &amp;#039;./jquery.js&amp;#039;, function() {
                window.$(&amp;#039;html&amp;#039;).html(page_template);
                window.$(&amp;#039;h2&amp;#039;).html(&amp;quot;Content Added to DOM by Node.js Server&amp;quot;);
                for (var i=0; i &amp;lt; products.length; i++) {
                    productSummaryHtml = mustache.to_html(productSummaryTemplate, products[i]);
                    window.$(&amp;#039;#productList&amp;#039;).append(productSummaryHtml);
                }
                response.writeHead(200, {&amp;#039;Content-Type&amp;#039;: &amp;#039;text/html&amp;#039;});
                response.end(&amp;quot;&amp;lt;!DOCTYPE html&amp;gt;\n&amp;quot; + window.$(&amp;#039;html&amp;#039;).html());
            });
    }).listen(8078);

&lt;/pre&gt;

&lt;h3&gt;Plain HTML template to be fleshed out via JQuery in the DOM (page_templates/product_list.html)&lt;/h3&gt;

&lt;pre&gt;
&amp;lt;html&amp;gt;
  &amp;lt;head&amp;gt;
    &amp;lt;title&amp;gt;                                                                                                 
      Album Demo - Server-side DOM manipulation in Node.js with JSDOM and JQuery                            
    &amp;lt;/title&amp;gt;
  &amp;lt;/head&amp;gt;
  &amp;lt;body&amp;gt;
    &amp;lt;h1&amp;gt;                                                                                                    
      Album Demo - Server-side DOM manipulation in Node.js with JSDOM and JQuery                            
    &amp;lt;/h1&amp;gt;
    &amp;lt;h2&amp;gt;                                                                                                    
      !!! This will be overwritten  !!!                                                                     
    &amp;lt;/h2&amp;gt;
    &amp;lt;ul id=&amp;quot;productList&amp;quot; style=&amp;quot;list-style:none&amp;quot;&amp;gt;
    &amp;lt;/ul&amp;gt;
  &amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;

&lt;/pre&gt;

&lt;h3&gt;Mustache template component to be applied to the DOM via JQuery (component_templates/product_summary.html)&lt;/h3&gt;

&lt;pre&gt;
&amp;lt;li style=&amp;quot;list-style:none&amp;quot;&amp;gt;
  &amp;lt;div class=&amp;quot;album&amp;quot; style=&amp;quot;width:360px&amp;quot;&amp;gt;
    &amp;lt;div class=&amp;quot;albumCover&amp;quot; style=&amp;quot;float:left;clear:left;width:100px;&amp;quot;&amp;gt;
      &amp;lt;img src=&amp;quot;{{ coverUrl }}&amp;quot; style=&amp;quot;width:100px&amp;quot;&amp;gt;
    &amp;lt;/div&amp;gt;
    &amp;lt;div class=&amp;quot;albumMeta&amp;quot; style=&amp;quot;float:right;clear:right;width:240px;&amp;quot;&amp;gt;
      &amp;lt;div class=&amp;quot;albumName&amp;quot;&amp;gt;
        &amp;lt;em&amp;gt;{{ name }}&amp;lt;/em&amp;gt;
      &amp;lt;/div&amp;gt;
      &amp;lt;div class=&amp;quot;albumArtist&amp;quot;&amp;gt;
        {{ artist }}
      &amp;lt;/div&amp;gt;
    &amp;lt;/div&amp;gt;
  &amp;lt;/div&amp;gt;
&amp;lt;/li&amp;gt;

&lt;/pre&gt;

&lt;h3&gt;Example data (fixtures/productsFixture.js)&lt;/h3&gt;

&lt;pre&gt;
exports.products_fixtures = module.exports =
    [{&amp;quot;id&amp;quot;:123,
      &amp;quot;name&amp;quot;:&amp;quot;Tried By 12&amp;quot;,
      &amp;quot;artist&amp;quot;:&amp;quot;East Flatbush Project&amp;quot;,
      &amp;quot;coverUrl&amp;quot;:&amp;quot;/media/images/flatbush.jpg&amp;quot;},
    {&amp;quot;id&amp;quot;:456,
     &amp;quot;name&amp;quot;:&amp;quot;Cymande&amp;quot;,
     &amp;quot;artist&amp;quot;:&amp;quot;Cymande&amp;quot;,
     &amp;quot;coverUrl&amp;quot;:&amp;quot;/media/images/cymande.jpg&amp;quot;},
    {&amp;quot;id&amp;quot;:789,
     &amp;quot;name&amp;quot;:&amp;quot;Rock&amp;#039;N&amp;#039;Roll Gumbo&amp;quot;,
     &amp;quot;artist&amp;quot;:&amp;quot;Professor Longhair&amp;quot;,
     &amp;quot;coverUrl&amp;quot;:&amp;quot;/media/images/longhair.jpg&amp;quot;}];

&lt;/pre&gt;

&lt;p&gt;A follow-up piece covering javascript-DOM code sharing between browser and server coming soon.&lt;/p&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/Server-side-DOM-manipulation-in-Nodejs-with-JSDOM-JQuery-and-Mustache-Templates-April-25-2011.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      My New Blog Using Static Website Generator Petrify and Node.js
    </title>
    <link>
      <link href="My-New-Blog-Using-Petrify-Static-Website-Generator-and-Nodejs.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="My-New-Blog-Using-Petrify-Static-Website-Generator-and-Nodejs.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/wPaNlR2n4eQ/My-New-Blog-Using-Petrify-Static-Website-Generator-and-Nodejs.html" title="My New Blog Using Static Website Generator Petrify and Node.js" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>My-New-Blog-Using-Petrify-Static-Website-Generator-and-Nodejs.xml</id>
    <updated>
      Mon Apr 25 2011 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="static site" />
          <category term="petrify" />
        <content type="html">
      

&lt;p&gt;I&amp;#039;ve been heads down on &lt;a href="http://rallyplan.com" title="Rally: Time-sensitive announcements from your Twitter friends"&gt;a startup&lt;/a&gt; for way too long.  It&amp;#039;s been a great learning experience - a piece about what was learned will be coming soon.  Now it&amp;#039;s time to move on.  I&amp;#039;m looking forward to getting into some new things and back into writing more regularly.  This shiny new blog will be a good place to do that.&lt;/p&gt;

&lt;p&gt;I made this blog using &lt;a href="https://github.com/caolan/petrify" title="A flexible static site generator for node.js"&gt;Petrify&lt;/a&gt;, a static site generator based on &lt;a href="http://nodejs.org" title="Node.js"&gt;Node.js&lt;/a&gt;. It seems an unusual application of Node, and with &lt;a href="https://github.com/mojombo/jekyll" title="Jekyll"&gt;Jekyll&lt;/a&gt;(Ruby), &lt;a href="http://ringce.com/hyde" title="Hyde"&gt;Hyde&lt;/a&gt;(Python), and others being more popular perhaps a bit riskier choice.  After digging in to it I found it very well made, satisfying the two major criteria for a static site generator:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Written in a language you like working in (&lt;a href="https://developer.mozilla.org/en/JavaScript/Reference" title="Javascript"&gt;Javascript&lt;/a&gt;) so you can enjoy customizing&lt;/li&gt;
&lt;li&gt;Makes good choices in key areas like markup language (&lt;a href="http://daringfireball.net/projects/markdown/syntax" title="Markdown"&gt;Markdown&lt;/a&gt;) and templates (&lt;a href="http://json-template.googlecode.com/svn/trunk/doc/Introducing-JSON-Template.html" title="JSON Templates"&gt;JSON Templates&lt;/a&gt;).&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;u&gt;Update&lt;/u&gt;: Petrify doesn&amp;#039;t have a lot of blogging features - e.g. there doesn&amp;#039;t seem to be anything built in that orders articles by date decreasing. This was easy enough to add to the example site&amp;#039;s home.js view:&lt;/p&gt;

&lt;pre&gt;
// wait until the navigation and articles views are complete                                                                       
exports.requires = [&amp;#039;navigation&amp;#039;, &amp;#039;articles&amp;#039;];
exports.run = function(view, context){
    // render the home template                                                                                                    
    var html = context.templates[&amp;#039;home.jsont&amp;#039;].expand({
            articles: context.data.sort(function(a, b) {
                    return b.date - a.date;
                }),
        partials: context.partials
    });
    view.emit(&amp;#039;index.html&amp;#039;, html);
};
&lt;/pre&gt;

&lt;p&gt;The blogging main blogging feature it does have, tagging, is handled nicely. In the default configuration the tag menu showed up where I would have wanted in the nav section, tags are nicely associated with articles, and basic pages listing articles under each tag are created automatically and look pretty good.  Adding sub-directories for tag and year list pages would make a lot of sense.&lt;/p&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/My-New-Blog-Using-Petrify-Static-Website-Generator-and-Nodejs.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      MIT-Enterprise-Forum-Concept-Clinic-Puts-My-Startup-On-The-Spot
    </title>
    <link>
      <link href="MIT-Enterprise-Forum-Concept-Clinic-Puts-My-Startup-On-The-Spot.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="MIT-Enterprise-Forum-Concept-Clinic-Puts-My-Startup-On-The-Spot.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/DZIEGW1wjsE/MIT-Enterprise-Forum-Concept-Clinic-Puts-My-Startup-On-The-Spot.html" title="MIT-Enterprise-Forum-Concept-Clinic-Puts-My-Startup-On-The-Spot" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>MIT-Enterprise-Forum-Concept-Clinic-Puts-My-Startup-On-The-Spot.xml</id>
    <updated>
      Mon Oct 19 2009 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="startups" />
        <content type="html">
      

&lt;p&gt;Touted was the featured company at the &lt;a href="http://www.mitforumcambridge.org/events/conceptclinic.html"&gt;MIT Enterprise Forum Concept Clinic&lt;/a&gt; on Thursday.  It was such a valuable experience.  I presented an overview to about 25 people, including 3 panelists, in a session moderated by &lt;a href="http://scratchesonmarketing.blogspot.com/"&gt;Lora Kratchounova of Scratch Media+Marketing&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;p style="text-align: center;"&gt;&lt;img src="/media/images/mark-soper-mit.jpg" alt="Mark Soper Speaking at MIT" width="500" height="375"&gt;&lt;br&gt; 
&lt;em&gt;Delivering a rigorous mathematical proof of why Touted is a good idea&lt;/em&gt;&lt;/p&gt;  
&lt;p&gt;Lora was incredibly helpful before and during the presentation in making sure we got the most out of it.  She provided some great ideas during the session - essentially a 4th panelist - including leading us in a discussion on business models dealing with perishable inventory like tickets and hotel rooms that was particularly valuable.&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;Panelists&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;&lt;a href="http://www.propelconsulting.com/aboutus.aspx"&gt;Alexis Kopekis of Propel Consulting&lt;/a&gt; - Alexis has great energy and provided a lot of insight on product features with a strong hook to get people excited as well as clever go-to-market strategies to build up awareness.&lt;/p&gt; 
&lt;p&gt;&lt;a href="http://406ventures.com/team/larry-begley"&gt;Larry Begley of .406 Ventures&lt;/a&gt; - Larry had good insights on crowdsourcing and pushed us to think about business model and competitive aspects.  His perspective as a VC made a big contribution because he has a broad view of the landscape, citing trends in the investor community and the kinds of things he&amp;#039;s seeing too much or not enough of in the startup community.&lt;/p&gt; 
&lt;p&gt;&lt;a href="http://scalableintimacy.com/"&gt;Mike Troiano of Holland-Mark Digital&lt;/a&gt; - Anything having to do with social, marketing, or mobile Mike covers as well as anyone, and he seems to have great instincts on just about about everything else.  My friend &lt;a href="http://www.google.com/profiles/russ.richmond"&gt;Russ Richmond&lt;/a&gt;, an advisor to the company and kind enough to try to record the conversation, said &amp;amp;#8220;I had a hard time capturing everything, especially when every time Mike opened his mouth, 4 or 5 great ideas would come out.&amp;amp;#8221;&lt;/p&gt; 
&lt;p&gt;A special thanks to &lt;a href="http://drync.com/blog/drync-blog/"&gt;Brad Rosen of Drync&lt;/a&gt;, who brought great advice on entrepreneurship and the intersection of mobile technology and local business.&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;Takeaways&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;1. The&lt;strong&gt; MIT Enterprise Forum Concept Clinic&lt;/strong&gt; program organized by Lora and Forum Executive Director Trish Fleming&lt;strong&gt; is an amazing program.&lt;/strong&gt; I strongly recommend it to any early stage startup.  It&amp;#039;s hard to imagine anything more valuable at the concept stage than a roomful of really smart people spending three hours of their time helping you develop your business.&lt;/p&gt; 
&lt;p&gt;2. There was a strong support for the idea that people would be willing to provide information on events with good incentives built into the experience.  Also good discussion on what might appeal to this person and how they might interact with the business.&lt;/p&gt; 
&lt;p&gt;3. A layer of abstraction on top of raw tweets is important.  People don&amp;#039;t want to sift through lots of individual messages.  Popular links shared is the most proven way (witness &lt;a href="http://tweetmeme.com/"&gt;Tweetmeme&lt;/a&gt;) of doing this.&lt;/p&gt; 
&lt;p&gt;4. Mobile is very, very, very important.  There are strong arguments for leading with a mobile app instead of web.  An great example of mobile success in local business realm is &lt;a href="http://foursquare.com/"&gt;Foursquare&lt;/a&gt;.&lt;/p&gt; 
&lt;p&gt;5. Emphasize the importance of doing real-time search on things for which people most need real-time information.  Events does fit this criteria well.&lt;/p&gt; 
&lt;p&gt;6. There is an interesting trade-off between expert opinions and wisdom of the crowd.  Which is the user looking for in a particular situation?&lt;/p&gt; 
&lt;p&gt;7. The notion of endorsement culture, originally suggested by &lt;a href="http://www.carltonprmarketing.com/"&gt;Bobbie Carlton&lt;/a&gt; and supported by Mike Troiano&amp;#039;s point that endorsement can come in many forms, is very important to keep in mind moving forward.&lt;/p&gt; 
&lt;p&gt;Thanks very much to everyone there for bring so much energy and creativity to this!&lt;/p&gt; 
&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;/p&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/MIT-Enterprise-Forum-Concept-Clinic-Puts-My-Startup-On-The-Spot.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      Quinn Amrich Soper Born May 26, 2009
    </title>
    <link>
      <link href="Quinn-Amrich-Soper-Born-May26-2009.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="Quinn-Amrich-Soper-Born-May26-2009.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/8Igf0qsVOE8/Quinn-Amrich-Soper-Born-May26-2009.html" title="Quinn Amrich Soper Born May 26, 2009" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>Quinn-Amrich-Soper-Born-May26-2009.xml</id>
    <updated>
      Sun Jul 26 2009 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="family" />
          <category term="personal" />
        <content type="html">
      

&lt;p&gt;It&amp;#039;s hard to believe Quinn was born only two months ago today.  Here&amp;#039;s a photo log of our lives since then.&lt;/p&gt;

&lt;p&gt;Some recent movie footage of you smiling and kicking as you&amp;#039;re going to bed.&lt;/p&gt; 
&lt;p&gt; 
&lt;object height="411" width="500" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="src" value="http://www.youtube.com/v/XguOjvwn7IU&amp;amp;rel=0&amp;amp;egm=0&amp;amp;showinfo=0&amp;amp;fs=1"&gt;&lt;embed height="411" width="500" src="http://www.youtube.com/v/XguOjvwn7IU&amp;amp;rel=0&amp;amp;egm=0&amp;amp;showinfo=0&amp;amp;fs=1" allowfullscreen="true" wmode="transparent" type="application/x-shockwave-flash"&gt;&lt;/object&gt; 
&lt;/p&gt; 

&lt;p&gt;Been smiling for less than a month now, but already seem like an old pro.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3443/3759947982_bdf9031123.jpg?v=1248658017" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;You seem to enjoy singing songs with your mom &amp;amp; dad - a couple of favorites are &lt;a href="http://arts.ucsc.edu/gdead/agdl/ripple.html"&gt;Ripple&lt;/a&gt;, &lt;a href="http://www.scribd.com/doc/13638873/Wishlist-Chords-by-Pearl-Jam"&gt;Wishlist&lt;/a&gt;, and &lt;a href="http://www.songsforteaching.com/folk/shellbecominroundthemountain.htm"&gt;She&amp;#039;ll be Coming around the Mountain&lt;/a&gt;.  Hopefully your dad&amp;#039;s singing and guitar playing will improve faster than does your ability to escape.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3489/3759151959_83e449eb0a.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;You also enjoy reading along with your mom.  You&amp;#039;re really focused on the book.  Your dad on the other hand &amp;amp;#8230;&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2426/3759150035_d91b084670.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;You&amp;#039;ve been hiking several times, at Middlesex Fells, and here at Estabrook near Concord, MA.  You usually enjoy checking out the trees.  This time you were mainly sleeping, an activity which you also enjoy a great deal.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3455/3759651862_81c8d1d051.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Your grandpa is a favorite with all the kids, and you took to him right away.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3433/3758852319_7f20a52d85.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;We went to Preston&amp;#039;s 1st Birthday party hosted by the Faris&amp;#039; just across the border in Michigan.  There was kickball, baseball, jungle-gyms, remote-control cars, pizza, cake, and of course, one of our favorite pastimes &amp;amp;#8230;&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2615/3721926693_1a71926d57.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Grandma&amp;#039;s and Grandpa&amp;#039;s 40th wedding anniversary celebration in Toledo.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2517/3721917863_c282101f78.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Dude, nice job keeping up with your cousin Preston in the goofy face department.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3512/3709385054_b1c16b704c.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Hey, your mom and I get to look cute sometimes too.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2674/3709383202_7034b7f550.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;So much love takes a little getting used to &amp;amp;#8230;&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2535/3722728704_e5165f805d.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;They&amp;#039;re not beating you up yet, but I have a feeling that very soon it will be on.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2458/3709387628_70f30faac7.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Your mom loves this one, thinks you look like a jaguar.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2558/3708566765_d040ea9c76.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Getting a tractor ride at Nana&amp;#039;s &amp;amp; Papa&amp;#039;s in Bright, IN.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2454/3709370066_429263ddde.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Your aunt Lisa was very excited to meet you.  And she just bought a very cool house in Cincinnati.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3418/3700664391_9696229516.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Your aunt Vera is totally crazy about you, too!&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3622/3700663455_c1455aba0c.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Here you are partying it up with your uncle Paul at the Northside Tavern in Cincinnati.  We&amp;#039;ve got to get you a hat like that.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3173/3701471218_64d6249b74.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Here you are at Nana&amp;#039;s and Papa&amp;#039;s place in Bright, IN, just coming in from playing in the pool with your mom&amp;#039;s friend Robin and her kids Madelyn and Jackson.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2543/3701558130_12a7ace96a.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;You and Uncle Craig in a relaxation contest.  You may have met your match here.  Notice that your stiff-arm doesn&amp;#039;t even phase him.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2508/3700688017_666fc0d993.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Your cousin Jade is so nice and sweet with you &amp;amp;#8230;&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3513/3701469760_f02b193ec7.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Uncle Craig and Aunt Lisa at Grandma&amp;#039;s &amp;amp; Grandpa&amp;#039;s in Bright, IN.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2540/3700649599_ebb92a8c0c.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Your cousin Brody was very impressed with how big his own hands and feet were after looking at yours.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2427/3701457796_beb5bdab2d.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Doesn&amp;#039;t get much cuter than your cousin Brooke holding you &amp;amp;#8230;&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2458/3701457244_0aed1a6057.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Your aunt Beth was so excited to see you after getting back from Venezuela.  I think we all had a few drinks that day, yourself included.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3505/3701455526_4df424d6e0.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Coming back from the beach at Fire Island, NY with Dierdre, Allison, Mom, and one of th e locals.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3321/3671533871_2d25f2cccd.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Meditating in your Buckeye gear with Mom&amp;#039;s friend Kate&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2597/3661722782_a2d83d5589.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;A first dip in the ocean - Jenness Beach, NH.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3607/3646029064_345005a6bd.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Warm and dry back on the beach.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3361/3645218635_e530884d81.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;First hiking trip - Middlesex Fells&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3619/3636876923_2bcfedc20f.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Meeting Nana and Papa for the first time.  Boy, were they excited!&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3416/3624897883_f402e4977c.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Your Papa loves you very much.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2434/3624896667_bb596e6f39.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;My personal favorite, this could be the permanent wallpaper on my cell phone.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3405/3625712338_6f5afac88e.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Your mom can&amp;#039;t get enough of you.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3416/3625712054_ab2a3d0702.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Your aunts Tara and Denise came to visit when you were 3 days old.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3606/3624891809_aba9eac9e9.jpg?v=0" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;This was your hungry face.  Notice the little bump under your tongue - a clogged salivary duct common for babies.   Went away after a couple of days.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2471/3600636729_c86ca00036.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Most people have been saying that you look more like your dad, but I&amp;#039;m not so sure &amp;amp;#8230;&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2484/3600632925_5b9d5f3cb0.jpg?v=0" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;I think this was your first walk around the neighborhood.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3354/3589478586_3c23b9b609.jpg" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;You developed an early talent for hand expressions.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3619/3607715091_77027f20f2.jpg" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Grandpa was there to help take care of you from the start.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3642/3589476408_81a44dd3f7.jpg" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Russ and Tracy couldn&amp;#039;t wait to meet you.  Too bad we don&amp;#039;t have any photos of you and Ruby.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3610/3589476194_8ee3a0d0d5.jpg" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Your Grandma helped in your delivery and in taking care of you during your first couple of days.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3651/3589476084_8b0cc46581.jpg" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;You were a big hit with the ladies from the beginning.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3376/3574341815_29acc040e9.jpg" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;The day you were born was so amazing!  Hard to put in words.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3583/3575150186_ff2154f2e9.jpg" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;There you are weighing in, still sporting some of the purple color and cone head you had when you arrived.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3415/3571754642_25e119d3b2.jpg" width="500" height="375"&gt;&lt;/p&gt; 
&lt;p&gt;Doesn&amp;#039;t your mom look beautiful after 16 hours of labor?&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2433/3570939579_da4069a20f.jpg" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Your mom liked to play with the football during labor.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3625/3571745946_c821ae378a.jpg" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;Here you were a few weeks before launch.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3601/3408068403_6e54e6c7e0.jpg" width="375" height="500"&gt;&lt;/p&gt; 
&lt;p&gt;At the beginning of the journey, here&amp;#039;s your mom showing off what back then seemed like a huge belly.&lt;/p&gt; 
&lt;p&gt;&lt;img src="http://farm4.static.flickr.com/3458/3241695685_7b4184c0b6.jpg" width="375" height="500"&gt;&lt;/p&gt; 

    </content>
  <feedburner:origLink>http://blog.marksoper.net/Quinn-Amrich-Soper-Born-May26-2009.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      Extending the Python Wrapper for OpenCalais to Support RDF
    </title>
    <link>
      <link href="Extending-The-Python-Wrapper-For-OpenCalais-To-Support-RDF.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="Extending-The-Python-Wrapper-For-OpenCalais-To-Support-RDF.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/yzvle0EALw0/Extending-The-Python-Wrapper-For-OpenCalais-To-Support-RDF.html" title="Extending the Python Wrapper for OpenCalais to Support RDF" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>Extending-The-Python-Wrapper-For-OpenCalais-To-Support-RDF.xml</id>
    <updated>
      Thu Apr 16 2009 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="python" />
          <category term="nlp" />
          <category term="opencalais" />
        <content type="html">
      

&lt;p&gt;We’ve been working for some time with Jordan Dimov&amp;#039;s &lt;a href="http://code.google.com/p/python-calais/" title="Python OpenCalais Wrapper"&gt;python-calais&lt;/a&gt;, a Python wrapper for the &lt;a href="http://opencalais.com" title="OpenCalais"&gt;OpenCalais Semantic Text Annotation Service&lt;/a&gt;.  For Likematter, we extended its native support for OpenCalais’ JSON response type to include support for OpenCalais’ RDF output.  Several people expressed interest in using rdflib with OpenCalais at last night’s Python meetup in Cambridge, MA - so I’ve packaged up our RDF extension as a starting point/example for folks looking to process OpenCalais RDF in Python apps.&lt;/p&gt;

&lt;p&gt;The reason to use RDF over JSON is that the RDF output contains a fuller representation of the analysis OpenCalais produces.   As just one minor example, the full de-referenceable URLs for each entity type (e.g. Country, Person, etc.) aren’t present in the JSON.  The drawback to using RDF is that it’s much harder to interpret and translate into Python objects than JSON.   The code here includes the SPARQL to obtain only part of what OpenCalais produces, entities and categories, but should serve as a starting point to working with OpenCalais’ RDF.
Our RDF extension has been  added to the python-calais google-code repository.  The key SPARQL queries for categories and entities are below.&lt;/p&gt;

&lt;pre&gt;
CATEGORY_QUERY = { ‘fields’ : [&amp;#039;docId&amp;#039;, &amp;#039;category&amp;#039;, &amp;#039;categoryName&amp;#039;, &amp;#039;score&amp;#039;],
‘SPARQL’ : “”&amp;quot;
PREFIX rdf: &lt;http:&gt;
PREFIX cp: &lt;http:&gt;&lt;/http:&gt;
SELECT ?docId ?category ?categoryName ?score
WHERE { ?doc cp:docId ?docId .
?doc cp:category ?category .
?doc cp:categoryName ?categoryName .
?doc cp:score ?score . }
“”&amp;quot;  }
&lt;/http:&gt;&lt;/pre&gt;

&lt;pre&gt;
ENTITY_QUERY = { ‘fields’ : [&amp;#039;entityId&amp;#039;, &amp;#039;name&amp;#039;, &amp;#039;type&amp;#039;, &amp;#039;relevance&amp;#039;, &amp;#039;resolves_to_uri&amp;#039;, &amp;#039;resolves_to_type&amp;#039;, &amp;#039;resolves_to_name&amp;#039;, &amp;#039;resolves_to_score&amp;#039;],
‘SPARQL’ : “”&amp;quot;
PREFIX rdf: &lt;http:&gt;
PREFIX cp: &lt;http:&gt;&lt;/http:&gt;
SELECT ?entity ?name ?type ?relevance ?res_uri ?res_type ?res_name ?res_score
WHERE {?entity cp:name ?name .
?entity rdf:type ?type .
?rel_uri cp:subject ?entity .
?rel_uri cp:relevance ?relevance .
OPTIONAL { ?res_uri cp:subject ?entity .
?res_uri rdf:type ?res_type .
?res_uri cp:name ?res_name . }
}
“”&amp;quot;  }
&lt;/http:&gt;&lt;/pre&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/Extending-The-Python-Wrapper-For-OpenCalais-To-Support-RDF.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      New Likematter Release Features Concept Clouds For Better Control and Understanding
    </title>
    <link>
      <link href="New-Likematter-Release-Features-Concept-Clouds-For-Better-Control-And-Understanding.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="New-Likematter-Release-Features-Concept-Clouds-For-Better-Control-And-Understanding.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/z2eVcQxBNfQ/New-Likematter-Release-Features-Concept-Clouds-For-Better-Control-And-Understanding.html" title="New Likematter Release Features Concept Clouds For Better Control and Understanding" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>New-Likematter-Release-Features-Concept-Clouds-For-Better-Control-And-Understanding.xml</id>
    <updated>
      Wed Apr 01 2009 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="nlp" />
          <category term="news reader" />
          <category term="personalization" />
          <category term="job search" />
          <category term="startups" />
        <content type="html">
      

&lt;p&gt;A new release of Likematter is available now.  The most common suggestions we&amp;#039;ve gotten from users to this point and the steps taken in this release to respond to them.&lt;/p&gt;

&lt;p&gt;&lt;img class="alignnone size-medium wp-image-112" title="Likematter" src="/media/images/likematter.png" alt="Likematter" width="700" height="373"&gt; &lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;1. I want more understanding and control of how new content is matched to the things I like.&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;The most noticeable aspect of the new interface is the color-highlighting of content based on it&amp;#039;s relevance to my interest profile - thanks to &lt;a href="http://jazkarta.com/news/aaron-vanderlip-joins-jazkarta"&gt;Aaron VanDerlip of Jazkarta&lt;/a&gt; for suggesting this enhancement.  Numeric scores are also displayed with a red score indicator - clicking on the score displays detail about the source and specific concepts that factored in to the score.  These improvements will make it easier to understand how content is prioritized for each user.&lt;/p&gt; 
&lt;p&gt;User also have more control over how the system works with this new interface.  As shown in the screenshot, the like button now offers a preview/edit window.  By default, the source and all key concepts are added to your profile.  You can edit these selections and tag the article with concepts we failed to capture automatically.  And each user&amp;#039;s profile now displays an overview of the collection and a tag cloud tracking the concept present in the material you&amp;#039;ve collected (see screenshot).  Concepts are sized to estimate the strength and uniqueness to this individual user, using a calculation based on &lt;a href="http://en.wikipedia.org/wiki/Tf-idf"&gt;term frequency-inverse document frequency(tf-idf)&lt;/a&gt; weighting.  In the near future, users will be able to use this cloud to modify their profiles, control how the system is working for them, and manage their collections to easily refer back to items they&amp;#039;ve bookmarked in the past.&lt;/p&gt; 
&lt;p&gt;&lt;strong&gt;2. As a new user, the experience is frustrating because I&amp;#039;m not seeing articles that I like fast enough - is this thing working?&lt;/strong&gt;&lt;/p&gt; 
&lt;p&gt;In the new release, we&amp;#039;ve increased the sensitivity of the matching algorithm so that results should appear immediately, and we&amp;#039;ll continue to make improvements in how well it performs with profiles that have only a few liked items.  The engine works better as profiles grow, sometimes requiring 10 or more items to reach a steady level.  To overcome this, we&amp;#039;re working on two new features that will make it easier to build up a new profile.&lt;/p&gt; 
&lt;p&gt;&lt;em&gt;Coming soon:&lt;/em&gt;&lt;/p&gt; 
&lt;ul&gt; 
&lt;li&gt;Search Box - A search box, which can be used to focus on specific topics and populate your profile with much wider range of concepts&lt;/li&gt; 
&lt;li&gt;Import Favorite Content - bring in your bookmarks and more from other sites you use to collect stuff you like&lt;/li&gt; 
&lt;/ul&gt; 

    </content>
  <feedburner:origLink>http://blog.marksoper.net/New-Likematter-Release-Features-Concept-Clouds-For-Better-Control-And-Understanding.html</feedburner:origLink></entry>

  
  <entry>
    <title>
      Find Breaking News And Jobs With Likematter
    </title>
    <link>
      <link href="Find-Breaking-News-And-Jobs-With-Likematter.xml" rel="self" />
    </link>
    <link rel="self" type="application/atom+xml" href="Find-Breaking-News-And-Jobs-With-Likematter.xml" />
    <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/MarkSopersBlog/~3/5exnegyf5T8/Find-Breaking-News-And-Jobs-With-Likematter.html" title="Find Breaking News And Jobs With Likematter" />
    <author>
      <name>Mark Soper</name>
    </author>
    <id>Find-Breaking-News-And-Jobs-With-Likematter.xml</id>
    <updated>
      Wed Mar 11 2009 00:00:00 GMT-0400 (EDT)
    </updated>
          <category term="python" />
          <category term="nlp" />
          <category term="opencalais" />
          <category term="job search" />
          <category term="startups" />
          <category term="personalization" />
          <category term="news reader" />
        <content type="html">
      

&lt;p&gt;I&amp;#039;m pleased to announce that the &lt;a title="Likematter" href="http://likematter.com"&gt;Likematter alpha&lt;/a&gt; is now available for open registration.  Likematter is a personal lens for the web.  It helps you stay on top of emerging content like breaking news and career opportunities.  In doing so, you automatically build a profile of your interests that you control and that will get better and better at filtering the latest information for you.&lt;/p&gt;

&lt;p style="text-align: center;"&gt;&lt;img src="/media/images/likematter_screenshot.png" alt="Likematter Screenshot" width="500" height="375"&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;With some good lessons learned from our limited-availability pilot, we&amp;#039;ve made big adjustments.  Most significantly, we&amp;#039;ve added breaking news to the personalized job listings that were the focus of the original JobGravy career site.  The most resounding feedback we got from a group of much-appreciated early users was that they should be able to apply their interest profile to content beyond job listings, especially breaking news, and that the process of building the profile should be easier.  The result is re-engineered service, called Likematter, that hits both of these points:  1)Your profile can be used to filter news and jobs today, with more content channels coming soon.  2)The main way to indicate what you like is by using the &lt;span class="like_button"&gt;&lt;img src="http://s3.amazonaws.com/jg_img/like_button.png" alt="" width="15"&gt; &lt;a title="Likematter" href="http://likematter.com"&gt; Like it!&lt;/a&gt;&lt;/span&gt; button highlighted in red in the screenshot above.  There will once again be support for import of bookmarks and favorites from other sources soon.&lt;/p&gt; 

&lt;p&gt;Likematter is easy to use:&lt;/p&gt; 

&lt;ol&gt; 
&lt;li&gt;&lt;a href="http://likematter.com/signup"&gt;&lt;strong&gt;Sign Up&lt;/strong&gt;&lt;br&gt; 
&lt;/a&gt;&lt;/li&gt; 
&lt;li&gt;&lt;strong&gt;Start reading&lt;/strong&gt; - start reading news or browsing jobs (jobs will be back online shortly).  Clicking an entry expands it to reveal additional information.&lt;/li&gt; 
&lt;li&gt;&lt;strong&gt;Like what you like&lt;/strong&gt; - Click the  &lt;span class="like_button"&gt;&lt;img src="http://s3.amazonaws.com/jg_img/like_button.png" alt="" width="15"&gt; &lt;a title="Likematter" href="http://likematter.com"&gt; Like it!&lt;/a&gt;&lt;/span&gt; button when something interests you.&lt;/li&gt; 
&lt;li&gt;&lt;strong&gt;Likematter learns&lt;/strong&gt; - the system learns from your choices over time, prioritizing your topics so that your unique interests are emphasized.&lt;/li&gt; 
&lt;li&gt;&lt;strong&gt;Find what you want automatically&lt;/strong&gt; - Likematter gets better and better at displaying content that relates to your interests as they evolve.  The red bars at the right of each line (see screenshot) indicate the strength of the match.  They make it easier to scan the page for good content.&lt;/li&gt; 
&lt;li&gt;&lt;strong&gt;Maintain control&lt;/strong&gt; - Likematter works well without any additional tweaking, but with the forthcoming release of profile management, you&amp;#039;ll be able to refer back to content you&amp;#039;ve liked in the past, adjust how your profile filters content, and have greater control over the content sources and publications you have access to.&lt;/li&gt; 
&lt;/ol&gt; 

&lt;p&gt;What does it do for you?&lt;/p&gt; 

&lt;ol&gt; 
&lt;li&gt;&lt;strong&gt;Helps you stay on top of real-time information across a wide range of interests, automatically &lt;/strong&gt;- As your profile grows, Likematter gets better at making sure the content on your page is the best, most current information across the whole range of diverse interests you have - without having to manually tell the system what you want.  So, in addition to being able to search for specific topics (search bar coming soon, along with controls like paging and a time window zoom control to point Likematter at the right ), you are able to sit back and let Likematter search for a range of things you&amp;#039;re likely to find interesting and put them in front of you in a format that&amp;#039;s easy to read and navigate.&lt;/li&gt; 
&lt;li&gt;&lt;strong&gt;Develops valuable information about your personal interests - data which you own and control - &lt;/strong&gt; Likematter also functions as a way to very easily bookmark and record what you&amp;#039;re interested in over time.  Eliminating the need for &lt;a title="Tagging" href="http://en.wikipedia.org/wiki/Tag_(metadata)"&gt;tagging&lt;/a&gt;, Likematter automatically extracts the key concepts from each item you like, using the powerful &lt;a title="Calais" href="http://opencalais.com"&gt;Calais Semantic Web Engine&lt;/a&gt;.  As the profile management capability currently under development becomes available, you&amp;#039;ll be able to refer back to the material you&amp;#039;ve saved, organize your information by topic, control how Likematter works on your behalf, and share your interests and the content your profile generates with friends.  You have complete control over your profile because your data belongs to you.  We commit to allow you to easily export your data at any time and agree to remove your data from Likematter at at your request - see full &lt;a href="http://likematter.com/policy"&gt;data policy&lt;/a&gt; for more information.&lt;/li&gt; 
&lt;li&gt;&lt;strong&gt;Links my news interests to career opportunities &lt;/strong&gt;- By using Likematter to find and read the latest news that you like, you develop a profile that carries over to help you in other areas like staying aware of good career opportunities in your field.  Switch over to the the Jobs tab and the interests built up from reading news will automatically apply to identifying good job listings.  In the future you&amp;#039;ll be able to use your profile to help you find good content in areas of your choice by pointing Likematter at real-time media like &lt;a title="Twitter" href="http://twitter.com"&gt;Twitter&lt;/a&gt;.&lt;/li&gt; 
&lt;/ol&gt; 

&lt;p&gt;&lt;a title="Twitter" href="http://twitter.com"&gt;&lt;/a&gt;&lt;/p&gt; 

&lt;p&gt;The development of Likematter is led by Denise Ichinco and &lt;a href="http://marksoper.net/"&gt;Mark Soper&lt;/a&gt; (&lt;a title="Mark" href="http://marksoper.net"&gt;personal&lt;/a&gt;, &lt;a title="Likematter" href="http://blog.likematter.com"&gt;work&lt;/a&gt;, &lt;a title="LinkedIn" href="http://www.linkedin.com/pub/0/899/381"&gt;LinkedIn&lt;/a&gt;, &lt;a title="Twitter" href="http://twitter.com/marksoper"&gt;Twitter&lt;/a&gt;).  We welcome &lt;a title="Contact Likematter" href="http://likematter.com/contact/"&gt;thoughts, questions, and other feedback&lt;/a&gt;.  Enjoy!&lt;/p&gt;
    </content>
  <feedburner:origLink>http://blog.marksoper.net/Find-Breaking-News-And-Jobs-With-Likematter.html</feedburner:origLink></entry>


</feed>

