<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Structure in the flow</title>
	<atom:link href="http://www.fsavard.com/flow/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.fsavard.com/flow</link>
	<description>Programming, personal knowledge management. Topics unstable.</description>
	<lastBuildDate>Thu, 29 Jul 2010 16:05:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Converting to old-style &#8216;website&#8217;</title>
		<link>http://www.fsavard.com/flow/2010/07/converting-to-old-style-website/</link>
		<comments>http://www.fsavard.com/flow/2010/07/converting-to-old-style-website/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 16:05:05 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Meta]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=608</guid>
		<description><![CDATA[I&#8217;ve gone through many posts along the lines of &#8220;oh I haven&#8217;t got time for this blog&#8221;, here&#8217;s another. Well in fact it&#8217;s the last one, as I won&#8217;t see this as a &#8220;blog&#8221; anymore. Let&#8217;s call this a &#8220;website&#8221;, like in the good old days when everything was edited manually and the concept of [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve gone through many posts along the lines of &#8220;oh I haven&#8217;t got time for this blog&#8221;, here&#8217;s another. Well in fact it&#8217;s the last one, as I won&#8217;t see this as a &#8220;blog&#8221; anymore. Let&#8217;s call this a &#8220;website&#8221;, like in the good old days when everything was edited manually and the concept of &#8220;timeline&#8221; wasn&#8217;t as important (Why would content like this be ordered chronologically anyway? It was trendy, I guess&#8230;). I&#8217;ve thought about doing this for a while, found a few hours to do it this morning, so here we go!</p>
<p>I&#8217;m still using WordPress, as it&#8217;s a good content management system anyway. Also, it&#8217;ll still allow for changes to be tracked in the sidebar.</p>
<p>I also changed the theme to something slightly more traditional; I find it easier on the eyes. It&#8217;s my first blog&#8217;s theme, in fact.</p>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=608" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2010/07/converting-to-old-style-website/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Small updates to Javascript speed reading app</title>
		<link>http://www.fsavard.com/flow/2010/04/small-updates-to-javascript-speed-reading-app/</link>
		<comments>http://www.fsavard.com/flow/2010/04/small-updates-to-javascript-speed-reading-app/#comments</comments>
		<pubDate>Fri, 02 Apr 2010 13:45:38 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[homebrew]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[reading]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=592</guid>
		<description><![CDATA[Just a note concerning two small new features I added to my Javascript speed reading (RSVP) app: You can now change the speed using your keyboard&#8217;s up/down arrows keys Text and background colors may now be selected using a color picker (based on JsColor) These were features some users asked for either on the blog [...]]]></description>
			<content:encoded><![CDATA[<p>Just a note concerning two small new features I added to my <a href="http://fsavard.com/code/speedread/">Javascript speed reading (RSVP) app</a>:</p>
<ul>
<li>You can now change the speed using your keyboard&#8217;s up/down arrows keys</li>
<li>Text and background colors may now be selected using a color picker (based on <a href="http://www.jscolor.com">JsColor</a>)</li>
</ul>
<p>These were features some users asked for either on the blog or in the comment form in the app. Thanks for the feedback!</p>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=592" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2010/04/small-updates-to-javascript-speed-reading-app/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Reader feed maker</title>
		<link>http://www.fsavard.com/flow/2010/03/google-reader-feed-maker/</link>
		<comments>http://www.fsavard.com/flow/2010/03/google-reader-feed-maker/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 00:45:22 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[pkm]]></category>
		<category><![CDATA[RSS]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=586</guid>
		<description><![CDATA[Just a quick post to underline a Google Reader feature which, though simple, may come in handy: creating a feed for &#8220;feed-less&#8221; sites. It basically tracks updates on pages by periodically checking the pages you choose. I need to mention that for table-based pages (or any page with recurring pattern but no feed) there are [...]]]></description>
			<content:encoded><![CDATA[<p>Just a quick post to underline a <strong>Google Reader feature</strong> which, though simple, may come in handy: <a href="http://googlereader.blogspot.com/2010/01/follow-changes-to-any-website.html">creating a <strong>feed for &#8220;feed-less&#8221; sites</strong></a>. It basically tracks updates on pages by <strong>periodically checking the pages you choose</strong>.</p>
<p>I need to mention that for <strong>table-based pages</strong> (or any page with recurring pattern but no feed) there are existing services such as <a href="http://www.dapper.net/open/">Dapper</a> which will allow you to create a more sophisticated and precise feed by creating a page scrapper on-the-fly.</p>
<p>It&#8217;s the kind of feature for which I tend to find more and more uses as  time goes on. One significant example I&#8217;m thinking of is <strong>personal homepages of friends and people</strong> who haven&#8217;t yet integrated a feed: it&#8217;d be nice to be alerted when they change.</p>
<p><strong>Update the next day</strong>: there seems to be plenty other similar  services. <a href="http://www.changedetection.com/">ChangeDetection.com</a> is an old  one, sending updates via email. For others, just Google for &#8220;monitor  page changes&#8221;.</p>
<p>(To be perfectly honest, from a programmer&#8217;s point of view, I guess you could do the same by having a list of URLs and setting up a script to periodically check whether significant changes have been made (i.e. using a &#8220;diff&#8221;). Yet I never took the time to do it, and now that&#8217;s it&#8217;s easily available&#8230;)</p>
<p>(Via this <a href="http://lifehacker.com/5456657/google-reader-gets-smart-tracks-updates-on-feedless-web-sites">LifeHacker article</a>)</p>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=586" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2010/03/google-reader-feed-maker/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple Javascript memory game</title>
		<link>http://www.fsavard.com/flow/2010/02/simple-javascript-memory-game/</link>
		<comments>http://www.fsavard.com/flow/2010/02/simple-javascript-memory-game/#comments</comments>
		<pubDate>Sat, 20 Feb 2010 18:24:53 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Clusterify]]></category>
		<category><![CDATA[pkm]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=582</guid>
		<description><![CDATA[Here&#8217;s a little memory game I just finished, using jQuery. It&#8217;s very bare bones, and I might add features to it, but it works, doesn&#8217;t have a bunch of ads floating around (like most do on the Web), and the board size can be changed (up to 60 total cards for the moment). For the [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a <a href="http://fsavard.com/code/pairsgame/">little memory game</a> I just finished, using jQuery. It&#8217;s very bare bones, and I might add features to it, but it works, doesn&#8217;t have a bunch of ads floating around (like most do on the Web), and the board size can be changed (up to 60 total cards for the moment).</p>
<p>For the context: when we launched <a href="http://clusterify.com/projects/">Clusterify</a>, one of the early projects I proposed was a <a href="http://clusterify.com/projects/list/fsavard/3/">simple &#8220;matching pairs&#8221; game</a>. Some almost-complete code I wrote up has been sitting on my computer ever since, just needing a few last fixes, and the addition of actual pictures. So I did those last fixes, adapted stock photos for it, and now <a href="http://fsavard.com/code/pairsgame/">here&#8217;s the game</a>.</p>
<h3>Changelog</h3>
<ul>
<li><strong>2010.02.22:</strong> as per a commenter&#8217;s (Jebadiah&#8217;s) suggestion, added a score and a timer. Also, images are now shuffled so the last ones (cats and birds) show up in the smaller grid.</li>
</ul>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=582" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2010/02/simple-javascript-memory-game/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>A few useful augmented reality apps</title>
		<link>http://www.fsavard.com/flow/2010/02/a-few-useful-augmented-reality-apps/</link>
		<comments>http://www.fsavard.com/flow/2010/02/a-few-useful-augmented-reality-apps/#comments</comments>
		<pubDate>Sat, 20 Feb 2010 15:50:27 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[pkm]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=576</guid>
		<description><![CDATA[Augmented reality is the concept of adding information to the stream your senses already provide about the surrounding scene. Concretely, these last few months, a lot of software has appeared for smartphones, taking advantage of the integration of a camera with a good-enough screen. Here are a few examples: The recent Google Goggles and Google [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://en.wikipedia.org/wiki/Augmented_reality">Augmented reality</a> is the concept of <strong>adding information to the stream your senses already provide about the surrounding scene</strong>. Concretely, these last few months, a lot of software has appeared for <strong>smartphones</strong>, taking advantage of the integration of a camera with a good-enough screen. Here are a few examples:</p>
<ul>
<li>The recent <a href="http://www.google.com/mobile/goggles/">Google Goggles</a> and <a href="http://www.google.com/mobile/shopper/">Google Shopper</a>. Goggles adds information to objects you take a picture of, or uses GPS to retrieve information about shops you walk by and add it to the picture (most AR apps I&#8217;ve seen focus on this). Shopper adds information about the current product.
<ul>
<li>Another feature of Goggles is the <a href="http://www.youtube.com/watch?v=ae01yz5z99E">instant translation of text in a picture</a>. This could be quite handy when travelling.</li>
</ul>
</li>
<li>There are <strong>augmented reality &#8220;browsers&#8221;</strong> which provide a platform to add features to. For example, <a href="http://www.youtube.com/watch?v=b64_16K2e08">Layar</a> lets you select <a href="http://layar.com/layers/">&#8220;Layers&#8221; of information</a> to add to the scene.
<ul>
<li>There&#8217;s also <a href="http://www.junaio.com/">Junaio</a>, a browser which allows the addition of 3D animations to the image, with lots of <a href="http://www.readwriteweb.com/start/2009/11/junaio-will-editable-3d-object.php">potential for entertainment apps</a>.</li>
</ul>
</li>
<li><a href="http://www.wikitude.org/">Wikitude</a> uses augmented reality to add traveller&#8217;s guide type information to the scene.</li>
<li><a href="http://www.youtube.com/watch?v=tb0pMeg1UN0">TAT augmented ID</a>: use the cam to get a good image of someone to identify, and this uses an online face recognition service to provide public information they want to share if they&#8217;ve set up their &#8220;public ID card&#8221; (Twitter profile etc.).</li>
</ul>
<p>Augmented reality appears a lot in science fiction. For the most part, though, it involves directly augmenting the field of view of a person. If you&#8217;ve ever seen Ghost in the shell (the movie, especially the second one), you&#8217;ll know what I mean. I remember being quite excited when I read about the possibility of added information through semi-transparent head-mounted displays (this <a href="http://www.youtube.com/watch?v=wJItdmumxYY">video demonstrates</a>, though in this case it&#8217;s not transparent at all, and obviously not something you&#8217;d walk with in your everyday life <img src='http://www.fsavard.com/flow/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  ). Cam-and-screen is more reachable for the moment, I guess, and a lot less cumbersome.</p>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=576" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2010/02/a-few-useful-augmented-reality-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Organizing documents for easy retrieval</title>
		<link>http://www.fsavard.com/flow/2010/02/organizing-documents-for-easy-retrieval/</link>
		<comments>http://www.fsavard.com/flow/2010/02/organizing-documents-for-easy-retrieval/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 17:00:55 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[pkm]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=569</guid>
		<description><![CDATA[Given the original topic of this blog (personal knowledge management), it&#8217;s been a while since I should have addressed the issue of filing documents for easier retrieval. I haven&#8217;t done it yet because the issue is just so large (many options). To solve this, I&#8217;ll just start small, with what I do personally, and grow [...]]]></description>
			<content:encoded><![CDATA[<p>Given the original topic of this blog (personal knowledge management), it&#8217;s been a while since I should have addressed the issue of filing documents for easier retrieval. I haven&#8217;t done it yet because the issue is just so large (many options). To solve this, I&#8217;ll just start small, with what I do personally, and grow the topic as time goes on.</p>
<p>By the way, the following are <strong>just simple tips</strong> I use. Some will seem <strong>obvious maybe, but they lay ground work</strong> for (potential) next posts.</p>
<h2>Motivation and (*ahem*) philosophical considerations</h2>
<p>Since I started graduate studies, I&#8217;ve been accumulating a lot of documents, mostly PDFs of research papers (which, btw, I annotate heavily with PDF XChange Viewer, see <a href="http://www.fsavard.com/flow/2009/03/pdf-annotation-under-linux-with-wine-and-pdf-xchange-viewer/">this post</a>). Yet it&#8217;s easy to forget where I&#8217;ve put one of them.</p>
<p>Now, for academic documents, there are dedicated solutions for document management, such as <a href="http://www.zotero.org/">Zotero</a>. These obviously offer lots of options for filing, searching (and citing).</p>
<p>Yet I have a <strong>tendency to prefer lightweight solutions</strong>, based on <strong>basic filesystem principles (filenames and directories)</strong>. This simplifies incremental backups, never becomes obsolete, and will always be cross-platform <img src='http://www.fsavard.com/flow/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Also, from a programmer perspective, it&#8217;s easy to use such a structure with scripts, too, if the need ever arises (e.g. for backup scripts).</p>
<h2>Using plain old filenames with &#8220;tags&#8221;</h2>
<p>My current system is simply a hierarchy of documents in directories (dah, but bear with me). Yet I&#8217;m careful in the way I name the documents. A <strong>basic problem with hierarchies</strong> is that a given <strong>document can often be placed in multiple places</strong>. In turn, a common solution is to place it somewhere that nevertheless makes sense, even though there might be other classification options, and then use tags (keywords) for those other options. Then you can <strong>list by tags (see Virtual folders) and get it in multiple places</strong>.</p>
<p>Concretely, <strong>I name my documents this way: &#8220;title, authors, date, tags .extension&#8221;</strong>. For example, &#8220;Learning representations by back-propagating errors, Rumelhart Hinton Williams, 1986, neural networks, machine learning.pdf&#8221;.</p>
<p>Yet hierarchies are also highly intuitive, so most of the time I can locate the document by browsing the filesystem, not searching. So, the final solution is: <strong>1) try hierarchy, if that doesn&#8217;t work, 2) search filenames</strong> for keywords, authors, dates, etc.</p>
<p>This might seem quite obvious, actually, but it requires planning. Notably, <strong>consistency is required for tags</strong>. If applicable, I try to use <strong>directory names as tags</strong>. For example, a document might be relevant to &#8220;signal processing&#8221; and &#8220;machine learning&#8221;. So I&#8217;d use the tag &#8220;digital signal processing&#8221; if I filed it under the &#8220;machine learning&#8221; directory.</p>
<h2>Virtual folders</h2>
<p>Now the <strong>fun part of being consistent in tags</strong> and naming: if you&#8217;re using this convention, you can then use <a href="http://en.wikipedia.org/wiki/Virtual_folder">the <strong>Virtual folder</strong> principle</a> to <strong>group documents</strong> by tags, <strong>as if they were in a real directory</strong>, which would otherwise be in <em>different</em> directories. That way, in my &#8220;signal processing&#8221; directory, I can create a saved search which will grab the document I put in the &#8220;machine learning&#8221; directory automatically.</p>
<p>Basically, instead of typing a query each time, you just save it like a file, and the results now behave like a new directory. This is available on all OSes, see this <a href="http://en.wikipedia.org/wiki/Virtual_folder">Wikipedia page</a>.</p>
<h2>Searching in the files themselves</h2>
<p>I use <strong>filename search because it&#8217;s fast</strong> and very easy, and makes &#8220;virtual folders&#8221; work real swift. It&#8217;s also possible to search inside the files, of course. I won&#8217;t say much about this, except mention the essential: <strong>for content search to be fast, files need to be indexed in advance</strong>.</p>
<p>There are many programs which can do this, and some of them <strong>now come integrated with operating systems</strong> (Explorer does it on Windows, Spotlight for Mac OS, and there are a variety of options for Linux, notably Beagle). For more advanced functionality and to handle more information sources (e.g. emails, IMs&#8230;), <a href="http://desktop.google.com/"><strong>Google Desktop</strong></a> must be mentioned.</p>
<h2>Musings and relation to other posts</h2>
<ul>
<li>The &#8220;lightweight&#8221; principle starts to come back often in my posts. It&#8217;s one <a href="http://www.fsavard.com/flow/2008/09/personal-wiki-wikidpad-from-a-programmers-point-of-view/">strength, to me, of Wikidpad</a>: wiki entries are plain text files.</li>
<li>The hierarchy-and-tags principle is the idea behind might <a href="http://www.fsavard.com/flow/2008/10/repetition-and-my-wikidpad-dynamic-search-extension/">Wikidpad &#8220;saved search&#8221; extension</a>.</li>
</ul>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=569" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2010/02/organizing-documents-for-easy-retrieval/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Memorization software database, updates</title>
		<link>http://www.fsavard.com/flow/2010/02/memorization-software-database-updates/</link>
		<comments>http://www.fsavard.com/flow/2010/02/memorization-software-database-updates/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 18:40:49 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[pkm]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=563</guid>
		<description><![CDATA[A quick link to this very comprehensive flashcard/memorization software database, with very detailed reviews (see their rating criteria). I personally have been using Mnemosyne for a few months (to study a new language &#8212; spaced repetition is very well suited for the task). This really does seem to work on this timescale. I have yet [...]]]></description>
			<content:encoded><![CDATA[<p>A quick link to this very <a href="http://learn.how.to/">comprehensive flashcard/memorization software database</a>, with very detailed reviews (see their <a href="http://www.quingle.com/softarea/flash-cr.htm">rating criteria</a>).</p>
<p>I personally have been using Mnemosyne for a few months (to study a new language &#8212; spaced repetition is very well suited for the task). This really does seem to work on this timescale. I have yet to discover if after 5, 10&#8230; years the knowledge still sticks (if using only that schedule).</p>
<p>&#8212;</p>
<p>Also, following this <a href="http://lifehacker.com/5467037/add-universal-keyword-control-to-all-of-your-browsers-with-quix">Lifehacker article</a>, I updated the <a href="http://www.fsavard.com/flow/2010/01/quix-a-bookmarklet-and-toolbox-of-web-oriented-commands/">recent post on Quix</a>.</p>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=563" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2010/02/memorization-software-database-updates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quix, a bookmarklet and toolbox of web-oriented commands</title>
		<link>http://www.fsavard.com/flow/2010/01/quix-a-bookmarklet-and-toolbox-of-web-oriented-commands/</link>
		<comments>http://www.fsavard.com/flow/2010/01/quix-a-bookmarklet-and-toolbox-of-web-oriented-commands/#comments</comments>
		<pubDate>Thu, 28 Jan 2010 15:55:17 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[pkm]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=557</guid>
		<description><![CDATA[Quix is a new tool that allows you to unclutter you bookmarklets by using a &#8220;command-line&#8221; like syntax. You simply drag-and-drop their bookmarklet to your bookmarks and invoke its prompt by clicking it on the page you need it. For example, if you&#8217;re on this page and type &#8220;gs wiki&#8221;, it will Google Site Search [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://quixapp.com/" target="_blank">Quix</a> is a new tool that allows you to <strong>unclutter you bookmarklets</strong> by using a <strong>&#8220;command-line&#8221; like syntax</strong>. You simply drag-and-drop their bookmarklet to your bookmarks and <strong>invoke its prompt by clicking it</strong> on the page you need it. For example, if you&#8217;re on this page and type &#8220;gs wiki&#8221;, it will Google Site Search this page for the term &#8220;wiki&#8221; (see video below).</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="285" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=8540763&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="400" height="285" src="http://vimeo.com/moogaloop.swf?clip_id=8540763&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Two <strong>very concrete uses</strong> of this I see here is accessing a <strong>wider variety of search engines and dictionaries</strong> and <strong>submitting to social sites</strong>. The webmaster tools seem very interesting too, if you&#8217;re into that.</p>
<p>By the way, this is <strong>similar to the Firefox &#8220;bookmark keyword&#8221;</strong> feature, which, combined with the &#8220;Add a keyword for this search&#8230;&#8221; feature gives a similar functionality (see <a href="http://lifehacker.com/196779/hack-attack-firefox-and-the-art-of-keyword-bookmarking">Lifehacker guide</a>). Yet, Quix has a <strong>wide range of integrated commands</strong> (just reading the list I made a bunch of fun discoveries) and the <strong>replacements are more flexible</strong>.</p>
<p>Sure earlier there were &#8220;command lines for the Web&#8221; such as, notably, <a href="http://yubnub.org/">YubNub</a>. But Quix is different in that it executes in the context of the current page, allowing it to be a portal to other bookmarklets. YubNub is interesting for the wide variety of commands it already has, by the way (and it could be integrated through Quix easily, I guess).</p>
<p>You can also add <strong>custom commands to use in the Quix prompt</strong>. To do this, you have to <a href="http://quixapp.com/help/syntax/">understand its syntax</a>, but it&#8217;s very simple. As an example, I added a command to clean up the current page for easier reading with the <a href="http://www.instapaper.com/text">&#8220;Instapaper Text&#8221; tool</a> (which is similar to Readability, which <a href="http://www.fsavard.com/flow/2009/04/clean-up-webpages-for-easier-reading-with-readability/">I posted about about a year ago</a>). The basic command structure is:</p>
<pre>command  "bookmarklet code or url"  "description"</pre>
<p>To <a href="http://quixapp.com/extend/">use your own extension</a> (go there for form), you&#8217;ll have to put up a text file somewhere on the Web. I suggest using <a href="http://www.pastie.org">Pastie</a>, and clicking on the &#8220;Raw&#8221; link. Here&#8217;s the <a href="http://pastie.org/798866.txt">textfile for the above Instapaper command</a>.</p>
<p><strong>Update</strong>: as this new <a href="http://lifehacker.com/5467037/add-universal-keyword-control-to-all-of-your-browsers-with-quix">Lifehacker guide</a> suggests, you can even get the Quix prompt quicker by setting up a keyword/keybinding in Firefox, or similarly in other browsers. See the <a href="http://quixapp.com/browsers/firefox/">guidelines for each browser</a>. Also, Lifehacker points to <a href="http://www.kungfugrippe.com/search/quix">Merlin Mann&#8217;s own extensions</a>.</p>
<p>Via <a href="http://www.readwriteweb.com/">ReadWriteWeb</a>.</p>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=557" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2010/01/quix-a-bookmarklet-and-toolbox-of-web-oriented-commands/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Weekly log: December 12, 2009</title>
		<link>http://www.fsavard.com/flow/2009/12/weekly-log-december-12-2009/</link>
		<comments>http://www.fsavard.com/flow/2009/12/weekly-log-december-12-2009/#comments</comments>
		<pubDate>Sat, 12 Dec 2009 15:56:02 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[lisa report]]></category>
		<category><![CDATA[machine learning]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=549</guid>
		<description><![CDATA[This is a &#8220;weekly report&#8221; for the lab I study in, mostly intended for other lab members. See the first one for further explanations. Lab-related projects As I had written I might do in an earlier post, I reimplemented the convolutional net for COIL-100 based on Torch, by &#8220;filling the easy parts/blanks&#8221; in code Hossein [...]]]></description>
			<content:encoded><![CDATA[<p><em>This is a &#8220;weekly report&#8221; for the lab I study in, mostly intended for other lab members. See <a href="http://www.fsavard.com/flow/2009/09/494/">the first one</a> for further explanations.</em></p>
<p><strong>Lab-related projects</strong></p>
<ul>
<li>As I had written I might do in an earlier post, I <strong>reimplemented the convolutional net</strong> for COIL-100 based on <strong>Torch</strong>, by &#8220;filling the easy parts/blanks&#8221; in code Hossein Mobahi had sent me. I learned some Lua along the way. I&#8217;m quite surprised (but then should I be?) to see that it seems to work for 30 objects: it reached ~30% before I killed it to try on 100 objects. ~9 hours later, tho, error is still around 100%&#8230; I&#8217;ll need to relaunch that test for on a longer period.</li>
<li>Last week, I implemented a very (very) <strong>lilliputian version of the similarity-based cost</strong>, with a custom <strong>one-neuron-followed-by-tanh</strong> &#8220;net&#8221;. Following Hossein suggestion, I had used two classes based on overlapping Gaussians. I first used only two &#8220;incorrect&#8221; (off-center and very misleading) points for supervised training, then &#8220;corrected&#8221; using the similarity-based cost. It indeed <strong>reduced the error by ~3%</strong> (35% vs 38%, mean over many, many tests).</li>
</ul>
<p><strong>Misc</strong></p>
<ul>
<li>I went to a Montreal Python meeting on Wednesday, and someone named <a href="http://www.barneso.com/">Jeremy Barnes</a> happened to be (very quickly) presenting a <a href="http://bitbucket.org/jeremy_barnes/jml/">library he&#8217;s coding</a> for machine learning tasks, which is using a Python-C bridge (boost::python).</li>
</ul>
<p><strong>Readings</strong></p>
<p>I&#8217;m trying to read more on <strong>recurrent networks</strong>. To start off, I&#8217;ve finished reading:</p>
<ul>
<li>D. E. Rumelhart, G. E. Hinton, and R. J. Williams, &#8220;<strong>Learning internal representation by error propagation</strong>,&#8221; in <em>Parallel Distributed Processing</em>, D. E. Rumelhart and J. L. McClelland, Eds. Cambridge MA: MIT Press, Bradford Books, vol. 1, 1986, pp. 318-362</li>
</ul>
<p>and I&#8217;ve read about the first half of this paper:</p>
<ul>
<li>J. L. Elman, &#8220;<strong>Finding structure in time</strong>,&#8221; Cognitive Science, vol. 14, pp. 179-211, 1990</li>
</ul>
<p>For a class project, I&#8217;ve read a bit of:</p>
<ul>
<li>P. Simard, D. Steinkraus, J. C. Platt, <strong>&#8220;Best Practices for Convolutional Neural Networks Applied to Visual Document Analysis&#8221;</strong>. ICDAR 2003: 958-962</li>
</ul>
<p><strong>Course work</strong></p>
<ul>
<li>I&#8217;ve implemented the <strong>elastic distortion</strong> method proposed in<strong> Simard et al. 2003</strong> (see above) for the 4th assignment for the <strong>ML class</strong>. So using their settings (800 hidden units, about same learning rate schedule) I seem to obtain <strong>~1.1% validation error</strong> on MNIST. I still haven&#8217;t reached the minimum, so I&#8217;ll maybe let it continue (requires very few effort on my part, at this point!).</li>
</ul>
<p><strong>Plan for next few weeks<br />
</strong></p>
<ul>
<li>I need to do (none of it done yet) the last assignement for my NLP class, which involves classifying documents according to author (should be short, which is the intention of the teacher).</li>
<li>I&#8217;ll continue reading on recurrent nets for a while, when I have time.</li>
<li>I need to relaunch the Torch-based test for 100 objects, make sure what I&#8217;m doing is all right, and if it indeed works, figure out what&#8217;s the difference with my Python/PyLearn implementation.</li>
</ul>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=549" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2009/12/weekly-log-december-12-2009/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Log for last few weeks: November 27, 2009</title>
		<link>http://www.fsavard.com/flow/2009/11/log-for-last-few-weeks-november-27-2009/</link>
		<comments>http://www.fsavard.com/flow/2009/11/log-for-last-few-weeks-november-27-2009/#comments</comments>
		<pubDate>Fri, 27 Nov 2009 22:35:48 +0000</pubDate>
		<dc:creator>Francois</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[lisa report]]></category>
		<category><![CDATA[machine learning]]></category>

		<guid isPermaLink="false">http://www.fsavard.com/flow/?p=542</guid>
		<description><![CDATA[This is a &#8220;weekly report&#8221; for the lab I study in, mostly intended for other lab members. See the first one for further explanations. Lab-related projects Over the last few weeks, I&#8217;ve been quite absorbed in trying to get the embedding cost to work. I&#8217;ve tested numerous variations of hyperparameters, optimization loop configuration, I tried [...]]]></description>
			<content:encoded><![CDATA[<p><em>This is a &#8220;weekly report&#8221; for the lab I study in, mostly intended for other lab members. See <a href="http://www.fsavard.com/flow/2009/09/494/">the first one</a> for further explanations.</em></p>
<p><strong>Lab-related projects</strong></p>
<ul>
<li>Over the last few weeks, I&#8217;ve been quite absorbed in trying to get the embedding cost to work. I&#8217;ve tested numerous variations of hyperparameters, optimization loop configuration, I tried different costs (the one they used is linear, I tried quadratic), etc.
<ul>
<li>Through Yoshua, I asked the authors for help with the parameters, but even after their replies it won&#8217;t work. This seems to point to a bug in my code, obviously. Code which I&#8217;ve reviewed quite a few times, though&#8230;</li>
</ul>
</li>
<li>Together with James, I&#8217;ve tried debugging an implementation I did for a toy problem, with a similar architecture. Even in such a simple case, we found the learning rate to be quite hard to tune correctly, and in no case did the additional cost help. That&#8217;s quite strange, as conceptually it <em>should</em> help.
<ul>
<li>Still, James gave me interesting ideas to reuse when debugging neural nets in the future.</li>
</ul>
</li>
<li>One thing I might try when I get the time is to reimplement the toy problem with Torch. After taking a quick look in the doc, it seems quite easy to set up this kind of architecture/cost, so given the time this is ending up taking, it might be worthwhile a shot (to see if the result is the same).</li>
</ul>
<p><strong>Course work</strong></p>
<ul>
<li>We&#8217;ve handed in our second assignement in the NLP class, the one where we needed to translate terms based on relevant Wikipedia pages.</li>
</ul>
<p><strong>Plan for next few weeks<br />
</strong></p>
<ul>
<li>This weekend and the best part of next week I&#8217;ll devote to studying for my NLP exam and the presentation/report for my project in ML.
<ul>
<li>If some time remains, I&#8217;ll try to get as far as I can in the last assignment for the ML class, to get this off the TODO list as soon as possible.</li>
</ul>
</li>
<li>After that point, I&#8217;ll resume working on trying to get the embedding cost to work. I need to resume readings, too, which have been suffering last two or so weeks.</li>
</ul>
 <img src="http://www.fsavard.com/flow/wp-content/plugins/feed-statistics.php?view=1&post_id=542" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://www.fsavard.com/flow/2009/11/log-for-last-few-weeks-november-27-2009/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
