<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Squarespace Site Server v5.9.1 (http://www.squarespace.com/) on Tue, 09 Feb 2010 08:22:16 GMT--><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rss="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:cc="http://web.resource.org/cc/"><rss:channel rdf:about="http://www.mattie.net/blog/"><rss:title>Blog</rss:title><rss:link>http://www.mattie.net/blog/</rss:link><rss:description></rss:description><dc:language>en-US</dc:language><dc:date>2010-02-09T08:22:16Z</dc:date><admin:generatorAgent rdf:resource="http://www.squarespace.com/">Squarespace Site Server v5.9.1 (http://www.squarespace.com/)</admin:generatorAgent><rss:items><rdf:Seq><rdf:li rdf:resource="http://www.mattie.net/blog/2009/2/14/some-handy-bash-commands.html"/><rdf:li rdf:resource="http://www.mattie.net/blog/2007/5/31/using-second-life-to-create-movies.html"/><rdf:li rdf:resource="http://www.mattie.net/blog/2007/1/20/eventscripts-software-box.html"/><rdf:li rdf:resource="http://www.mattie.net/blog/2007/1/20/im-not-the-biggest-fan-of-exclamation-points.html"/><rdf:li rdf:resource="http://www.mattie.net/blog/2006/1/21/in-which-mattie-links-a-binary-teaching-exercise.html"/><rdf:li rdf:resource="http://www.mattie.net/blog/2005/9/16/in-which-mattie-discusses-the-pdc-overflow-trick.html"/><rdf:li rdf:resource="http://www.mattie.net/blog/2005/9/13/in-which-mattie-discusses-pdc-2005-day-1.html"/><rdf:li rdf:resource="http://www.mattie.net/blog/2005/7/29/in-which-mattie-admires-a-translators-intentional-omission.html"/><rdf:li rdf:resource="http://www.mattie.net/blog/2005/6/4/in-which-mattie-links-the-puretext-clipboard-tool.html"/></rdf:Seq></rss:items></rss:channel><rss:item rdf:about="http://www.mattie.net/blog/2009/2/14/some-handy-bash-commands.html"><rss:title>Some handy bash commands</rss:title><rss:link>http://www.mattie.net/blog/2009/2/14/some-handy-bash-commands.html</rss:link><dc:creator>Mattie</dc:creator><dc:date>2009-02-14T23:24:00Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>On Linux shells, I always feel pretty crummy about getting around quickly via <em>cd</em>. So, in the spirit of Daniel's up command, here's a few other quick-directory commands to add to your .bashrc:</p>
<pre># up somesubdir<br /># Find a directory below this that matches the word provided<br />#   (locate-based) <br />function down() {<br />    dir=""<br />    if [ -z "$1" ]; then<br />        dir=.<br />    fi<br />    dir=$(locate -n 1 -r $PWD.*/$1$)<br />    cd "$dir";<br />}<br /><br /># cdd someglobaldir<br /># quickly change to a directory anywhere that matches  the word you typed.<br />#    best if your locatedb is in good shape<br />function cdd() {<br />    dir=""<br />    if [ -z "$1" ]; then<br />        dir=.<br />    fi<br />    dir=$(locate -n 1 -r $1$)<br />    cd "$dir";<br />}</pre>
<p>Other variations that I tried:</p>
<pre><br /> # Not breadth-first, so less fun sometimes<br /> function down2()<br /> {<br />     dir=""<br />     if [ -z "$1" ]; then<br />         dir=.<br />     fi<br />     dir=$(find . -type d -iname $1 | head -n 1)<br />     cd "$dir";<br /> <br /> }<br /> <br /> # Breadth-first, but really slow<br /> function down3()<br /> {<br />         # create a list of all directories in the current folder<br />         dirlist=( $(find . -maxdepth 1 -type d) )<br />         dirlist=( ${dirlist[@]:1} )             # exclude .<br /> <br />         # loop through the list<br />         while [ $dirlist ]<br />         do<br />                 # check the head of the list to see if it matches needle<br />                 val=${dirlist[0]}<br />                 found=`expr match "$val" ".*$1.*"`<br />                 if [ $found -gt 0 ]; then<br />                         # change dirs, we found the first match<br />                         cd "$val";<br />                         break    # done<br />                 else<br />                         # not found!<br />                         # scan that new directory for subdirs<br />                         appendlist=( $(find $val -maxdepth 1 -type d) )<br />                         appendlist=( ${appendlist[@]:1} )    # exclude .<br />                         # add those subdirs to the tail of the dirlist<br />                         dirlist=( ${dirlist[@]:1} ${appendlist[@]} )<br /> <br />                         # rinse, repeat<br />                 fi<br />         done<br /> <br /> }<br /> </pre>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via web</a> from <a href="http://import-nnju.posterous.com/some-handy-bash-commands-0">Imported from http://mattie.net/blog</a></p>]]></content:encoded></rss:item><rss:item rdf:about="http://www.mattie.net/blog/2007/5/31/using-second-life-to-create-movies.html"><rss:title>Using Second Life to create movies</rss:title><rss:link>http://www.mattie.net/blog/2007/5/31/using-second-life-to-create-movies.html</rss:link><dc:creator>Mattie</dc:creator><dc:date>2007-05-31T22:24:00Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>Here's a silly video I created for a contest at work:<br />&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://youdeliver.citrix.com/Play/tabid/79/pid/1112/Default.aspx" target="_blank">http://youdeliver.citrix.com/Play/tabid/79/pid/1112/Default.aspx</a></p>
<p>Feel free to vote for it, because the top submissions get an iPhone.&nbsp;</p>
<p>Tools used:</p>
<ul>
<li><a href="http://www.secondlife.com" target="_self">Second Life</a> </li>
<li><a href="http://www.sonycreativesoftware.com/products/product.asp?pid=404" target="_self">Sony Vegas</a></li>
</ul>
<p>I must have spent 15-20 hours on that video, primarily on sound effects. While working on this, I discovered that sound effects are very essential, but if they're good no one will really notice them. I.e., making something look and feel natural is a lot harder than it looks and isn't appreciated unless there are no sound effects.</p>
<p>If you notice, Helen's voice is distorted in a way as to make it sound as if she's coming through a digital line. My voice is distorted to reflect the environment I'm in, there are environment sounds like splashes and vehicles, etc. This all required a lot of work, but you can barely 'notice' it while watching the video. You just expect these things to be present.</p>
<p>Second Life is a great tool for creating the stage and environment. Inside its interface, I used existing Second Life places (e.g. the <a href="http://nwn.blogs.com/nwn/2007/05/onders_game_mid.html" target="_self">Midgar Final Fantasy Island</a>) and dynamically created iPhone look-alikes (see if you can spot it). I also adapted an in-game laptop to display a fake webpage, and created a weird/fake server rack on the fly. I only scratched the surface, but you really can create just about any environment you imagine. This can be very helpful for fun videos.</p>
<p>I can't harp on Sony Vegas enough-- that tool is wonderful. I happen to have the $50 home version of the tool, but it's possible to get effect and codec plugins from the professional version and they work there, too. (The primary limitation being 3-4 video tracks, and 3-4 audio tracks, which I've always worked around. Professional versions allow unlimited tracks, I believe.) With Vegas, I was able to create overlays, manage sound effects, apply video rendering effects, pan/zoom, etc. If you enjoy video editing, I highly recommend it. I studied video editing in school for a few years (winning best editor awards, even), and I'm in awe of how far digital editing has come. I'm ten times more productive with this software than with a top-of-the-line editing deck from 8-10 years ago.</p>
<p>&nbsp;</p>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via web</a> from <a href="http://import-nnju.posterous.com/using-second-life-to-create-movies">Imported from http://mattie.net/blog</a></p>]]></content:encoded></rss:item><rss:item rdf:about="http://www.mattie.net/blog/2007/1/20/eventscripts-software-box.html"><rss:title>EventScripts Software "Box"</rss:title><rss:link>http://www.mattie.net/blog/2007/1/20/eventscripts-software-box.html</rss:link><dc:creator>Mattie</dc:creator><dc:date>2007-01-20T23:24:00Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>Over on digg recently I also saw <a href="http://tutorialblog.org/create-a-software-box/" target="_self">a tutorial for creating a fake software box using Photoshop</a>. I don't use Photoshop, but I do use <a href="http://getpaint.net" target="_self">Paint.NET</a>. So I decided to try the same thing using that tool, which is one of my favorite free tools.</p>
<p>There are a few features different from Photoshop, so it wasn't 100% trivial to do, but I did manage to emulate it pretty well. I may write a similar tutorial for Paint.NET users to follow. Take a look:</p>
<p><img src="http://mattie.net/images/esbox2.png" alt="" /> &nbsp;</p>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via web</a> from <a href="http://import-nnju.posterous.com/eventscripts-software-box">Imported from http://mattie.net/blog</a></p>]]></content:encoded></rss:item><rss:item rdf:about="http://www.mattie.net/blog/2007/1/20/im-not-the-biggest-fan-of-exclamation-points.html"><rss:title>I'm not the biggest fan of exclamation points.</rss:title><rss:link>http://www.mattie.net/blog/2007/1/20/im-not-the-biggest-fan-of-exclamation-points.html</rss:link><dc:creator>Mattie</dc:creator><dc:date>2007-01-20T23:24:00Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>Over on digg, I saw a very Mattie-like script for GreaseMonkey/Firefox-- it's used to <a href="http://www.zieak.com/2007/01/17/eliminate-extra-exclamation-points/" target="_self">eliminate extra exclamation points on webpages</a>. Using this, now I never have to look at web sites with painful exclamations. This is a comforting thought.</p>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via web</a> from <a href="http://import-nnju.posterous.com/im-not-the-biggest-fan-of-exclamation-points">Imported from http://mattie.net/blog</a></p>]]></content:encoded></rss:item><rss:item rdf:about="http://www.mattie.net/blog/2006/1/21/in-which-mattie-links-a-binary-teaching-exercise.html"><rss:title>In which Mattie links a binary teaching exercise</rss:title><rss:link>http://www.mattie.net/blog/2006/1/21/in-which-mattie-links-a-binary-teaching-exercise.html</rss:link><dc:creator>Mattie</dc:creator><dc:date>2006-01-21T23:24:00Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>Using the <a href="http://en.wikipedia.org/wiki/Socratic_method">Socratic method</a>, it seems that you can teach third-graders to do <a href="http://www.garlikov.com/Soc_Meth.html">binary arithmetic</a>. Very neat.</p>
<p>(Thanks to <a href="http://www.digg.com">digg</a> for the link.)</p>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via web</a> from <a href="http://import-nnju.posterous.com/in-which-mattie-links-a-binary-teaching-exerc">Imported from http://mattie.net/blog</a></p>]]></content:encoded></rss:item><rss:item rdf:about="http://www.mattie.net/blog/2005/9/16/in-which-mattie-discusses-the-pdc-overflow-trick.html"><rss:title>In which Mattie discusses the PDC 'overflow' trick</rss:title><rss:link>http://www.mattie.net/blog/2005/9/16/in-which-mattie-discusses-the-pdc-overflow-trick.html</rss:link><dc:creator>Mattie</dc:creator><dc:date>2005-09-16T22:23:00Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>At the PDC, whenever a session is too full, they have overflow rooms where they beam the presentation and a video of the speaker. This is a wonderful idea and it's very useful for people who would miss their favorite session otherwise. It's almost as good as being there since most of the sessions you sit far back and see screens of the speaker anyway.  Even cooler, though, is that some creative folks began camping the overflow rooms. The idea being that the most interesting sessions (with some 'sleepers') will overflow and with only a few footsteps you can view the best sessions.  Personally, I love it because I actually stand outside the overflow rooms and peer/listen through the doors-- bouncing from session to session. I'm much more interested in getting breadth over the cool tidbits than getting a deep pull into any one thing (probably the story of my life). When you sit in a session, you're a captive audience and you watch every second of people navigating their IDEs/demos/technical probs/etc.  Just a moment ago I watched a session on Microsoft Research's thoughts for future synchronization/concurrent (e.g. <a href="http://research.microsoft.com/research/pubs/view.aspx?tr_id=907">RaceTrack</a>, <a href="http://research.microsoft.com/displayArticle.aspx?id=1271">C&omega;</a>, etc) while I also watched an interesting panel on the future of RSS (with Microsoft, Newsgator, etc).  Now I'm waiting for overflow sessions to start for the next block. There's always the possibility that no sessions will overflow this late in the conference, but that simply means I can go and get a seat in any of the other rooms of my choice.  I spent a long night talking to the Windows Installer and WiX development teams. More on all of this later.</p>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via web</a> from <a href="http://import-nnju.posterous.com/in-which-mattie-discusses-the-pdc-overflow-tr">Imported from http://mattie.net/blog</a></p>]]></content:encoded></rss:item><rss:item rdf:about="http://www.mattie.net/blog/2005/9/13/in-which-mattie-discusses-pdc-2005-day-1.html"><rss:title>In which Mattie discusses PDC 2005 Day 1</rss:title><rss:link>http://www.mattie.net/blog/2005/9/13/in-which-mattie-discusses-pdc-2005-day-1.html</rss:link><dc:creator>Mattie</dc:creator><dc:date>2005-09-13T22:27:00Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>Today is the first day of PDC 2005. I'm here in Los Angeles with thousands of other developers listening to Microsoft's encouragement to develop on their new platforms.  I'm taking some detailed notes with the free copy of OneNote they gave us. Kinda handy, but I'm not totally sold yet.   Highlights from the first half of Day 1 in no particular order:</p>
<ul>
<li>Sidebar and Auxiliary displays
<ul>
<li>Sidebar is back in Vista (probably beta 2)</li>
<li>They're hyping the auxiliary displays for laptops/PCs. These are little color LCD and buttons on the outside of your laptop that lets you quickly check appointment data, email, etc, while the machine is off.</li>
<li>People can write things for sidebar/aux by visiting [url=http://microsoftgadgets.com/]microsoftgadgets.com[/url]</li>
</ul>
</li>
<li>They offered ~2000 very cool PDA phones which I was too late to buy. (cry)</li>
<li>I really want to try <strong>Office 12</strong> which they showed-off for the first time today. 
<ul>
<li>Really like the new menuing plans, though screen real estate is eaten.</li>
<li>They're redoing UI because 9/10 of features requested for Microsoft Office <em>already exist</em>, but users can't find them.</li>
<li>Outlook emails now have a very easy way to mark them as things to handle later. I like how it works/looks, though it's a small gain. Still, I want it <strong>now</strong>.</li>
<li>Outlook can replace FeedDemon/NewsGator as it has a lot of new RSS support.</li>
</ul>
</li>
<li>From the <em>what-in-the-world</em> department, they showed-off somehow using USB Memory sticks as virtual memory expansion in Vista. Very very cool especially combined with their virtual memory optimization additions ("superfetch"), but I have so many questions about this. It doesn't make sense and seems like an easy feature to cut from release.</li>
<li>I love <a href="http://www.microsoft.com/presspass/features/2005/sep05/09-13NETLanguage.mspx">LINQ</a>/DLINQ/XLINQ/etc. Basically, they showed-off very cool .NET language constructs for doing queries in the language itself, without a need for SQL, etc. These can be off of a database or you can actually query any collection of objects. I can't wait to play with it. At the moment, I rate this as the most interesting announcement.</li>
<li>We saw some really cool Avalon apps demo'd. One you can try yourself is <a href="http://www.microsoft.com/max/">Max</a>,  a photo sharing application. It was designed and managed by one of their Usability leads as a test of Avalon and XAML. I must say the application looks nice, but I can't try it because my laptop runs on Vista and it won't install. (They demo'd it on Vista, though.)</li>
</ul>
<p>That covers most of the things I've seen thus far. I've been to a couple of sessions, but neither of them seem very impressive compared to the keynotes and the overall cool atmosphere.  More soon!</p>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via web</a> from <a href="http://import-nnju.posterous.com/in-which-mattie-discusses-pdc-2005-day-1">Imported from http://mattie.net/blog</a></p>]]></content:encoded></rss:item><rss:item rdf:about="http://www.mattie.net/blog/2005/7/29/in-which-mattie-admires-a-translators-intentional-omission.html"><rss:title>In which Mattie admires a translator's intentional omission</rss:title><rss:link>http://www.mattie.net/blog/2005/7/29/in-which-mattie-admires-a-translators-intentional-omission.html</rss:link><dc:creator>Mattie</dc:creator><dc:date>2005-07-29T22:20:00Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p>In a translation I have of <a href="http://en.wikipedia.org/wiki/Seneca_the_Younger">Seneca the Younger</a>'s letters, I found myself laughing at a note by the translator. Seneca has one letter in which he rants about writers who waste time on rumors and superfluous knowledge. The last line below represents the translator's footnote from the letter:</p>
<blockquote>... To want to know more than is sufficient is a form of intemperence. Apart from which this kind of obsession with the liberal arts turns people into pedantic, irritating, tactless, self-satisfied bores, not learning what they need simply because they spend their time learning things they will never need. The scholar Didymus wrote four thousand works: I should feel sorry for him if he had merely read so many useless works. In these works he discusses such questions as Homer's origin, who was Aeneas' real mother, whether Anacreon's manner of life was that of a lecher or that of a drunkard, whether Sappho slept with anyone who asked her, and other things that would be better unlearned if one actually knew them! Don't you go and tell me now that life is long enough for this sort of thing! When you come to writers in our own school, for that matter, I'll show you plenty of works which could do with some ruthless pruning. It costs a person an enormous amount of time (and other people's ears an enormous amount of boredom) before he earns such compliments as 'What a learned person!' Let's be content with the much less fashionable label, 'What a good man!' ... [b]*[/b] &nbsp;&nbsp;&nbsp; What about thinking how much time you lose through constantly being taken up with official matters, private matters or ordinary everyday matters, through sleep, through ill health? [...]   
<hr />
<em><strong>*</strong> 15 lines (&sect;&sect;39 to 40, on further examples of worthless learning) are omitted.</em></blockquote>
<p>I don't imagine the irony was lost on the translator.</p>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via web</a> from <a href="http://import-nnju.posterous.com/in-which-mattie-admires-a-translators-intenti">Imported from http://mattie.net/blog</a></p>]]></content:encoded></rss:item><rss:item rdf:about="http://www.mattie.net/blog/2005/6/4/in-which-mattie-links-the-puretext-clipboard-tool.html"><rss:title>In which Mattie links the PureText clipboard tool</rss:title><rss:link>http://www.mattie.net/blog/2005/6/4/in-which-mattie-links-the-puretext-clipboard-tool.html</rss:link><dc:creator>Mattie</dc:creator><dc:date>2005-06-04T22:23:00Z</dc:date><dc:subject></dc:subject><content:encoded><![CDATA[<p><a href="http://stevemiller.net/PureText/" target="_self">PureText</a> is a simple little tool that could save me hours of my life. I searched for it today before I began to write such a tool for the third time. Here's a summary by the author (the guy who writes <a href="http://www.dependencywalker.com/" target="_self">DependencyWalker</a>):</p>
<blockquote>
<p><em><span>PureText is basically equivalent to opening Notepad, doing a PASTE, followed by a SELECT-ALL, and then a COPY.&nbsp; The benefit of PureText is performing all these actions with a single Hot-Key and having the result pasted into the current window automatically.</span> <br /> </em></p>
</blockquote>
<p>Basically, this describes what I do about 5-30 times a day. I grab something formatted and want to paste it into another document or email, but I rarely want to keep the formatting. Before this tool, I copied the text to the clipboard, then I hit this arcane sequence of keys: WindowsKey-N (my Notepad hotkey), Ctrl-V, Ctrl-A, Ctrl-C, Alt-F, x. Now that I've bound this tool to WindowsKey-Q, I've shortened 6 keystrokes (with slight delays) to 1 immediate keystroke.</p>
<p>It may seem silly, but it's worth it for me.</p>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via web</a> from <a href="http://import-nnju.posterous.com/in-which-mattie-links-the-puretext-clipboard">Imported from http://mattie.net/blog</a></p>]]></content:encoded></rss:item></rdf:RDF>