

<?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/"
	>

<channel>
	<title>j.c. crosby</title>
	<atom:link href="http://john.realeyes.com/index.php?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://john.realeyes.com</link>
	<description>code propelled</description>
	<pubDate>Wed, 15 Apr 2009 15:31:45 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Extra Eclipse Tool Bars?</title>
		<link>http://john.realeyes.com/2009/04/15/extra-eclipse-tool-bars/</link>
		<comments>http://john.realeyes.com/2009/04/15/extra-eclipse-tool-bars/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 14:00:17 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[howto]]></category>

		<category><![CDATA[eclipse]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=384</guid>
		<description><![CDATA[I finally spent the time to figure out how to remove extraenous buttons in my Eclipse tool bar. The one that annoyed me the most was the CFEclipse toolbar - it is huge!

Don&#8217;t get me wrong CFEclipse rocks, but it shows up in every perspective that I use. So here is how to remove it [...]]]></description>
			<content:encoded><![CDATA[<p>I finally spent the time to figure out how to remove extraenous buttons in my Eclipse tool bar. The one that annoyed me the most was the CFEclipse toolbar - it is huge!</p>
<p><img class="alignnone size-full wp-image-386" title="01-toolbar" src="http://john.realeyes.com/wp-content/uploads/2009/04/01-toolbar.jpg" alt="01-toolbar" width="404" height="37" /></p>
<p>Don&#8217;t get me wrong CFEclipse rocks, but it shows up in every perspective that I use. So here is how to remove it from the Eclipse toolbar.</p>
<ol>
<li>Right-click on Eclipse&#8217;s main tool bar you should see the following menu:<br />
<img class="alignnone size-full wp-image-385" title="02-customize_perspective" src="http://john.realeyes.com/wp-content/uploads/2009/04/02-customize_perspective.jpg" alt="02-customize_perspective" width="297" height="113" /></li>
<li>Next select &#8220;Customize Perspective&#8221;. You&#8217;ll get a popup window.</li>
<li>Select the &#8220;Commands&#8221; tab.<br />
<img class="alignnone size-full wp-image-387" title="Commands Tab" src="http://john.realeyes.com/wp-content/uploads/2009/04/03-commands.jpg" alt="Commands Tab" width="243" height="77" /></li>
<li>In the left column, find CFEclipse and uncheck it.<br />
<img class="alignnone size-full wp-image-388" title="Uncheck Eclipse" src="http://john.realeyes.com/wp-content/uploads/2009/04/04-uncheck_cfeclipse.jpg" alt="Uncheck Eclipse" width="246" height="167" /></li>
<li>Click &#8220;OK&#8221; and check out your uncluttered toolbar!</li>
</ol>
<p>This will only change the settings for the current perspective, and if you miss your tool bar, just repeat teh steps except check CFEclipse and it is right back where is was.</p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2009/04/15/extra-eclipse-tool-bars/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Adobe Camp: 1 Day, 3 Camps: 5280 Reasons to Use the Flash Platform</title>
		<link>http://john.realeyes.com/2009/04/13/adobe-camp-open-for-registration/</link>
		<comments>http://john.realeyes.com/2009/04/13/adobe-camp-open-for-registration/#comments</comments>
		<pubDate>Mon, 13 Apr 2009 20:58:50 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[actionscript]]></category>

		<category><![CDATA[actionscript3]]></category>

		<category><![CDATA[adobe]]></category>

		<category><![CDATA[camp]]></category>

		<category><![CDATA[conference]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[elearning]]></category>

		<category><![CDATA[flash]]></category>

		<category><![CDATA[flex]]></category>

		<category><![CDATA[fms]]></category>

		<category><![CDATA[learning]]></category>

		<category><![CDATA[media]]></category>

		<category><![CDATA[rmaug]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=374</guid>
		<description><![CDATA[If you haven&#8217;t heard already, the first Rocky Mountain Adobe Camp is open for registration.
The first ever, one of a kind, Rocky Mountain Adobe Camp is right here in Denver on June 22, 2009.  Digital professionals at all experience levels are invited to this one-day event to participate in in-depth sessions, and unique hands-on [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://camp.rmaug.com"><img class="alignright size-full wp-image-377" title="Rocky Mountain Adobe Camp" src="http://john.realeyes.com/wp-content/uploads/2009/04/rmac_banner_125x125.jpg" alt="Rocky Mountain Adobe Camp" width="125" height="125" /></a>If you haven&#8217;t heard already, the first <strong>Rocky Mountain Adobe Camp</strong> is open for <strong><a title="Registrration - Rocky Mountain Adobe Camp" href="http://camp.rmaug.com/register" target="_blank">registration</a></strong>.</p>
<blockquote><p>The first ever, one of a kind, Rocky Mountain Adobe Camp is right here in Denver on June 22, 2009.  Digital professionals at all experience levels are invited to this one-day event to participate in in-depth sessions, and unique hands-on activities taught by some of the most influential speakers in the “Flash-o-sphere”.</p></blockquote>
<p><strong>Want more information? </strong><br />
Check out <a title="Rocky Mountain Adobe Camp" href="http://camp.rmaug.com" target="_blank">http://camp.rmaug.com</a> for event date and location as well as speaker and session info.</p>
<p><strong>Use twitter?</strong><br />
Follow <a title="Twitter - adobecamp " href="http://twitter.com/adobecamp" target="_blank">@adobecamp&#8217;s</a> updates for more information and news.</p>
<p>There are some interesting <strong><a title="Sessions - Rocky Mountain Adobe Camp" href="http://camp.rmaug.com/sessions" target="_blank">sessions</a></strong> that will be divided between 3 different &#8220;tracks&#8221;:</p>
<ul>
<li><strong>Flash Camp:</strong> Get ready to learn best practices, discover hidden features, and extend your abilities</li>
<li><strong>Dynamic Media Camp:</strong> Developers and content owners alike will expand their current knowledge of the Flash Media Server family</li>
<li><strong>eLearning Camp:</strong> Trainers, staff development managers, and Human Resource professionals will all gain valuable insight for eLearning development using tools such as Adobe Connect, Adobe Captivate, and Adobe Acrobat</li>
</ul>
<p>So pick one and <a title="Registrration - Rocky Mountain Adobe Camp" href="http://camp.rmaug.com/register/" target="_blank">register</a> for the First <strong>Rocky Mountian Adobe Camp</strong>!</p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2009/04/13/adobe-camp-open-for-registration/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Quick fun with AIR &amp; Dailymugshot.com</title>
		<link>http://john.realeyes.com/2009/04/13/quick-fun-with-air-dailymugshotcom/</link>
		<comments>http://john.realeyes.com/2009/04/13/quick-fun-with-air-dailymugshotcom/#comments</comments>
		<pubDate>Mon, 13 Apr 2009 15:00:44 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[actionscript]]></category>

		<category><![CDATA[actionscript3]]></category>

		<category><![CDATA[air]]></category>

		<category><![CDATA[code]]></category>

		<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=361</guid>
		<description><![CDATA[So i&#8217;ve been playing with DailyMugShot.com  for the past couple of months. DailyMugShot is just that - you take 1 picture every day of your mug. Well I wanted all my mugshots and there wasn&#8217;t a direct way of downloading them from the site. They have an RSS feed for your shots, but it [...]]]></description>
			<content:encoded><![CDATA[<p>So i&#8217;ve been playing with <a href="http://www.dailymugshot.com">DailyMugShot.com </a> for the past couple of months. DailyMugShot is just that - you take 1 picture every day of your mug. Well I wanted all my mugshots and there wasn&#8217;t a direct way of downloading them from the site. They have an RSS feed for your shots, but it only shows the current picture.</p>
<p>They do have a little flash based badge that you can post to your site.</p>
<div style="overflow: hidden ! important; position: relative ! important; width: 200px ! important; height: 220px ! important;"><object width="200" height="200" data="http://www.dailymugshot.com/swf/dms.swf?pathurl=http://www.dailymugshot.com/swf/paths.xml&amp;userid=14919" type="application/x-shockwave-flash"><param name="scale" value="noScale" /><param name="salign" value="TL" /><param name="src" value="http://www.dailymugshot.com/swf/dms.swf?pathurl=http://www.dailymugshot.com/swf/paths.xml&amp;userid=14919" /></object><a style="border: medium none  ! important; padding: 0pt ! important; background: transparent url(http://www.dailymugshot.com/images/snag.png) no-repeat scroll 0pt 0pt ! important; overflow: hidden ! important; display: block ! important; width: 200px ! important; height: 20px ! important; position: relative ! important; top: -3px ! important; text-indent: -1000em ! important; cursor: pointer ! important; text-decoration: none ! important;" title="Daily Mugshot" href="http://www.dailymugshot.com?r=1">Daily Mugshot</a></div>
<p>So with some hunting around in the firebug output I found where the little flash piece calls a service for the sequence of images. The dataservice is simple XML (Yay!), and I like ActionScript 3 and XML. So, I wrote an AIR app that downloads all my mugshot images. It is really basic and urls and final file locations are all hard-coded, but it was a fun 45 minutes and worked like a charm and I have all my past mug shots.</p>
<p>Here are a few of my favorites:<br />
<img class="size-thumbnail wp-image-364 alignnone" title="02-03-2009" src="http://john.realeyes.com/wp-content/uploads/2009/04/02-03-2009-150x150.jpg" alt="02-03-2009" width="150" height="150" /><img class="alignnone size-thumbnail wp-image-365" title="02-18-2009" src="http://john.realeyes.com/wp-content/uploads/2009/04/02-18-2009-150x150.jpg" alt="02-18-2009" width="150" height="150" /><img class="alignnone size-thumbnail wp-image-366" title="02-24-2009" src="http://john.realeyes.com/wp-content/uploads/2009/04/02-24-2009-150x150.jpg" alt="02-24-2009" width="150" height="150" /><img class="alignnone size-thumbnail wp-image-367" title="03-14-2009" src="http://john.realeyes.com/wp-content/uploads/2009/04/03-14-2009-150x150.jpg" alt="03-14-2009" width="150" height="150" /><img class="alignnone size-thumbnail wp-image-368" title="03-17-2009" src="http://john.realeyes.com/wp-content/uploads/2009/04/03-17-2009-150x150.jpg" alt="03-17-2009" width="150" height="150" /><img class="alignnone size-thumbnail wp-image-369" title="04-06-2009" src="http://john.realeyes.com/wp-content/uploads/2009/04/04-06-2009-150x150.jpg" alt="04-06-2009" width="150" height="150" /></p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2009/04/13/quick-fun-with-air-dailymugshotcom/feed/</wfw:commentRss>
		</item>
		<item>
		<title>360iDev - Total FTW!</title>
		<link>http://john.realeyes.com/2009/03/09/360idev-total-ftw/</link>
		<comments>http://john.realeyes.com/2009/03/09/360idev-total-ftw/#comments</comments>
		<pubDate>Mon, 09 Mar 2009 14:00:25 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[conference]]></category>

		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=313</guid>
		<description><![CDATA[Let me preface this post with I&#8217;m not an iPhone developer - I&#8217;m a Flash developer.
I spen last week days in San Jose at the 360iDev conference and I want to extend an HUGE congratulations to John and Tom who &#8220;Are 360 Conferences&#8221;. These 2 guys have put together another awesome conference (the other being [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_318" class="wp-caption alignright" style="width: 289px"><a href="http://www.flickr.com/photos/jccrosby/3327139640/"><img class="size-full wp-image-318" title="360iDev Preso" src="http://john.realeyes.com/wp-content/uploads/2009/03/idevpreso01.jpg" alt="Brian Flings &quot;idea&quot; preso" width="279" height="198" /></a><p class="wp-caption-text">Brian Flings &quot;ideas&quot; preso</p></div>
<p>Let me preface this post with I&#8217;m not an iPhone developer - I&#8217;m a Flash developer.<br />
I spen last week days in San Jose at the <a href="http://www.360idev.com/" target="_blank">360iDev</a> conference and I want to extend an HUGE congratulations to John and Tom who &#8220;Are 360 Conferences&#8221;. These 2 guys have put together another awesome conference (the other being <a href="http://www.360flex.com/" target="_blank">360Flex</a>) for the iPhone community. Being someone who has spent zero time in the iPhone Objective-C world, the 360iDev conference was the perfect event to attend. Here is a short list of why I think so:</p>
<ol>
<li>360Conferences strive to put together sessions and speakers from a wide range of backgrounds. From experienced to inexperienced users, there was something for everyone</li>
<li>The iPhone/Objective-C/Cocoa community is extremely friendly. Talking to some of the speakers and other attendees was one of the best things about this conference for me.</li>
<li>360Conferences wants to keep the cost low. I mean come on, less than $500 for a conference - yep that rocks.</li>
<li> John and Tom are just damn cool guys.</li>
</ol>
<p>I think it was time well spent in San Jose and I hope that 360Conferences keeps 360iDev around. Oh, and that thing about me not being an iPhone developer&#8230;.I am now - or at least I&#8217;m workin&#8217; on it! Make sure you check out a 360Conference weather it is at 360Flex or 360iDev - you won&#8217;t be sorry.</p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2009/03/09/360idev-total-ftw/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Adobe AIR - Issues with Command Line Arguments</title>
		<link>http://john.realeyes.com/2009/01/29/adobe-air-issues-with-command-line-arguments/</link>
		<comments>http://john.realeyes.com/2009/01/29/adobe-air-issues-with-command-line-arguments/#comments</comments>
		<pubDate>Thu, 29 Jan 2009 22:42:07 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[actionscript]]></category>

		<category><![CDATA[air]]></category>

		<category><![CDATA[flex]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=291</guid>
		<description><![CDATA[After working on a little automation tool for video encoding process we ran into an interesting issue with AIR applications and command line arguments. Here is the scenario:

Encoding process ends.
The encoding process passes a file path to the waiting AIR application via command line.
If the AIR app is not running, it starts up.
The AIR application [...]]]></description>
			<content:encoded><![CDATA[<p>After working on a little automation tool for video encoding process we ran into an interesting issue with AIR applications and command line arguments. Here is the scenario:</p>
<ol>
<li>Encoding process ends.</li>
<li>The encoding process passes a file path to the waiting AIR application via command line.</li>
<li>If the AIR app is not running, it starts up.</li>
<li>The AIR application then checks some data in a database updates some tracking info and possibly grabs the duration out of the file.</li>
<li>The AIR app waits for some more input.</li>
</ol>
<p>Here is the issue - when the application starts up via the command line call, subsequent calls fail to the AIR application. Our solution, the AIR app has to be running when the OS starts up - that way the initial command line call to start the application doesn't hold the process.</p>
<p>The command line looks something like in Windows:</p>
<div class="igBar"><span id="lvb-5"><a href="#" onclick="javascript:showCodeTxt('vb-5'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">Visual Basic:</span>
<div id="vb-5">
<div class="vb">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">C:/Program Files/ServerApplication/ServerApplication.<span style="color: #66cc66;">exe</span> <span style="color: #ff0000;">"D:/my/storagedir/vidfile.f4v"</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>The command line looks something like on a Mac:</p>
<div class="igBar"><span id="lvb-6"><a href="#" onclick="javascript:showCodeTxt('vb-6'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">Visual Basic:</span>
<div id="vb-6">
<div class="vb">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">/Applications/ServerApplication.<span style="color: #66cc66;">app</span>/Contents/MacOS/ServerApplication <span style="color: #ff0000;">"D:/my/storagedir/vidfile.f4v"</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>There has to be some way to start the application via the command line without holding everything up right? What am I missing?</p>
<p>Here is what I'm missing:<br />
The new command line looks something like in Windows (added the /b option):</p>
<div class="igBar"><span id="lvb-7"><a href="#" onclick="javascript:showCodeTxt('vb-7'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">Visual Basic:</span>
<div id="vb-7">
<div class="vb">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">C:/Program Files/ServerApplication/ServerApplication.<span style="color: #66cc66;">exe</span> /b <span style="color: #ff0000;">"D:/my/storagedir/vidfile.f4v"</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>The new command line looks something like on a Mac (added the '&#038;' at the end):</p>
<div class="igBar"><span id="lvb-8"><a href="#" onclick="javascript:showCodeTxt('vb-8'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">Visual Basic:</span>
<div id="vb-8">
<div class="vb">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">/Applications/ServerApplication.<span style="color: #66cc66;">app</span>/Contents/MacOS/ServerApplication <span style="color: #ff0000;">"D:/my/storagedir/vidfile.f4v"</span> &amp; </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Now our little automation AIR tool doesn't need to be running when the first call happens - it will actually start up - and it can stay open and successfully receive new command line arguments.</p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2009/01/29/adobe-air-issues-with-command-line-arguments/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The new Beatport.com has Launched</title>
		<link>http://john.realeyes.com/2009/01/21/the-new-beatportcom-has-launched/</link>
		<comments>http://john.realeyes.com/2009/01/21/the-new-beatportcom-has-launched/#comments</comments>
		<pubDate>Thu, 22 Jan 2009 06:28:15 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[actionscript]]></category>

		<category><![CDATA[flex]]></category>

		<category><![CDATA[realeyes]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=279</guid>
		<description><![CDATA[For quite some time now the Realeyes development queue has been taken up with the new Beatport.com site. Well, tonight it has launched!
Congratulations to everyone who worked on the project and thanks for all the hard work. Good job!
Get the details on the update.
Check out the new site at Beatport.com
]]></description>
			<content:encoded><![CDATA[<p><img class="size-full wp-image-280 alignright" style="border: 1px solid black; margin: 3px;" title="picture-3" src="http://john.realeyes.com/wp-content/uploads/2009/01/picture-3.jpg" alt="picture-3" width="312" height="188" />For quite some time now the Realeyes development queue has been taken up with the new <a href="http://beatport.com" target="_blank">Beatport.com</a> site. Well, tonight it has launched!</p>
<p>Congratulations to everyone who worked on the project and thanks for all the hard work. Good job!</p>
<p><a href="http://www.beatportal.com/feed/item/the-new-beatport-launches/#When:22:50:00Z" target="_blank">Get the details on the update.</a></p>
<p>Check out the new site at <a href="http://beatport.com" target="_blank">Beatport.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2009/01/21/the-new-beatportcom-has-launched/feed/</wfw:commentRss>
		</item>
		<item>
		<title>RMAUG Mini-Max Pixel Bender Presentation Files</title>
		<link>http://john.realeyes.com/2008/12/10/rmaug-mini-max-pixel-bender-presentation-files/</link>
		<comments>http://john.realeyes.com/2008/12/10/rmaug-mini-max-pixel-bender-presentation-files/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 17:09:09 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[presentations]]></category>

		<category><![CDATA[actionscript]]></category>

		<category><![CDATA[flash]]></category>

		<category><![CDATA[flex]]></category>

		<category><![CDATA[pixel bender]]></category>

		<category><![CDATA[presentation]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=258</guid>
		<description><![CDATA[Last night I gave an extremely fast run down on Pixel Bender to the Rocky Mountain Adobe User's Group Mini-Max meeting last night. The presentation was the bare minimum you need to get started playing with Pixel.
I've got to give props to Lee Brimelow and his other site gotoandlearn.com for information used in the presentaion [...]]]></description>
			<content:encoded><![CDATA[<p>Last night I gave an extremely fast run down on Pixel Bender to the <a href="http://rmaug.com" target="_blank">Rocky Mountain Adobe User's Group</a> Mini-Max meeting last night. The presentation was the bare minimum you need to get started playing with Pixel.</p>
<p>I've got to give props to <a href="http://theflashblog.com/" target="_blank">Lee Brimelow</a> and his other site <a href="http://gotoandlearn.com/" target="_blank">gotoandlearn.com</a> for information used in the presentaion as well as the start file for the PixelBender class file in the Flex project.</p>
<p>Resource Links from the preso:</p>
<ul>
<li>Download - Toolkit and PS Plugin<br />
<a href="http://is.gd/85ZB">http://is.gd/85ZB</a></li>
<li>Pixel Bender Exchange<br />
<a href="http://is.gd/ayed">http://is.gd/ayed</a></li>
<li>Pixel Bender Forums<br />
<a href="http://is.gd/aydZ">http://is.gd/aydZ</a></li>
<li>Go To And Learn (Lee Brimelow)<br />
<a href="http://www.gotoandlearn.com">http://www.gotoandlearn.com</a></li>
<li>Number Crunching<br />
<a href="http://www.boostworthy.com/blog/?p=243">http://www.boostworthy.com/blog/?p=243</a></li>
</ul>
<p>Downloads:<br />
<table style="border: 1px solid #CCC;" cellpadding="3" width="100%">
  <tr>
    <td width="35">
      <img src="http://john.realeyes.com/wp-content/plugins/downloads-manager/img/icons/winzip.gif" alt="http://john.realeyes.com/wp-content/plugins/downloads-manager/img/icons/winzip.gif">
    </td>
    <td>
      <b>download:</b> <a href="http://john.realeyes.com/?file_id=5">RMAUG PixelBender Slides and Sample Class file</a> <small>(562.24KB)</small><br />
      <b>added:</b> 12/10/2008 <br />
      <b>clicks:</b> 235 <br />
      <b>description:</b> The slides from the presentation as well as the sample class to load a shader file. <br />
    </td>
  </tr>
</table><br />
<table style="border: 1px solid #CCC;" cellpadding="3" width="100%">
  <tr>
    <td width="35">
      <img src="http://john.realeyes.com/wp-content/plugins/downloads-manager/img/icons/default.gif" alt="http://john.realeyes.com/wp-content/plugins/downloads-manager/img/icons/default.gif">
    </td>
    <td>
      <b>download:</b> <a href="http://john.realeyes.com/?file_id=6">RMAUG PixelBender Sample Flex Project</a> <small>(1.62MB)</small><br />
      <b>added:</b> 12/10/2008 <br />
      <b>clicks:</b> 249 <br />
      <b>description:</b> Sample Flex project that loads a PixelBender shader and applies it to an image. <br />
    </td>
  </tr>
</table></p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2008/12/10/rmaug-mini-max-pixel-bender-presentation-files/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Yammer and SVN post-commit hooks</title>
		<link>http://john.realeyes.com/2008/10/09/yammer-and-svn-post-commit-hooks/</link>
		<comments>http://john.realeyes.com/2008/10/09/yammer-and-svn-post-commit-hooks/#comments</comments>
		<pubDate>Thu, 09 Oct 2008 16:32:38 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[samples]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=241</guid>
		<description><![CDATA[If you don't know what Yammer is, it is a twitter like communication tool for your company:
Yammer is a tool for making companies and organizations more productive through the exchange of short frequent answers to one simple question: “What are you working on?”
Whats nice about Yammer is it is an internal tool that you can [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://john.realeyes.com/wp-content/uploads/2008/10/picture-3.jpg" rel="lightbox[241]"><img class="alignright size-medium wp-image-250" title="Yammer Desktop" src="http://john.realeyes.com/wp-content/uploads/2008/10/picture-3.jpg" alt="" width="176" height="184" /></a>If you don't know what <a title="Yammer.com" href="http://yammer.com" target="_blank">Yammer</a> is, it is a twitter like communication tool for your company:</p>
<blockquote><p>Yammer is a tool for making companies and organizations more productive through the exchange of short frequent answers to one simple question: “What are you working on?”</p></blockquote>
<p>Whats nice about Yammer is it is an internal tool that you can quickly communicate with everyone, well anyone listening, in your company. Answers to questions come quickly and from the appropriate party without much effort on either end and notifications to everyone are a snap.</p>
<p>The notifications is what got me thinking about Subversion and post-commit hooks. Subversion provides <a title="Implementing Repository Hooks" href="http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.reposadmin.create.hooks" target="_blank">hooks</a> that allow you to trigger scripts based on a repository event. So, I set up a script that retrieves information about the latest commit to the repository formats an email which is sent to Yammer and published. Now, when someone commits to the repository, everyone is automatically notified without the developer having to write an email and send it to everyone that needs to know about it.</p>
<p>Another unforeseen benefit of this system is that everyone has gotten much better at their SVN comments for their commit. I would imagine this is because they get instant feedback about inadequate comments when everyone see it in Yammer.</p>
<p><strong>On to the resources</strong> - SVN hooks are pretty easy to implement and provided by default. They reside in each repository you create in a 'hooks' directory {SVN_ROOT}/{REPOSITORY}/hooks. There is a provided template for each type of hook that SVN supports. The script can be any type of script (shell scripts, Python scripts etc), it just needs to have the same name as the supplied template file. For our Yammer script I dusted off the .bat script skills to retrieve the commit and send an email. To send the email I downloaded <a title="Blat - send emails" href="http://www.blat.net/" target="_blank">blat</a> to handle sending the email to Yammer. Finally we create an email for out SVN user and a yammer account using the svn user email.</p>
<p>So here is the list of what we have so far:</p>
<ul>
<li>SVN Repositoy and access to the hooks directory</li>
<li>Email address for the SVN user</li>
<li>Yammer account using the SVN user's email address</li>
<li>Some way to send an email (<a title="Blat - send emails" href="http://www.blat.net/" target="_blank">Blat</a>)</li>
<li>SVN post-commit hook script (post-commit.bat)</li>
</ul>
<p><strong>Now on to the contents of the script</strong> - The post commit hook receives 2 arguments, the name of the repository and the revision. The script uses <a title="svnlook" href="http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.reposadmin.maint.tk.svnlook" target="_blank">svnlook</a>, the repository name and revision to retrieve the details (message and author) of the commit. Then usign the commit details the script creates a text file that Blat uses as the email body and sends the email to Yammer.</p>
<p>Here is the actual script (names have been changed to protect the innocent):</p>
<div class="igBar"><span id="lcode-10"><a href="#" onclick="javascript:showCodeTxt('code-10'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">CODE:</span>
<div id="code-10">
<div class="code">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">@echo off</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">:::::::::::::::::::::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">::: <span style="">ARGUMENTS</span> :::::::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="">SET</span> REPOS=%<span style="color:#800000;color:#800000;">1</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">SET REV=%<span style="color:#800000;color:#800000;">2</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">:::::::::::::::::::::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">::: <span style="">GENERAL</span> INFO ::::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="">SET</span> DIR=%REPOS%/hooks</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">SET MESSAGE_FILE=%DIR%/message.<span style="">txt</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">:::::::::::::::::::::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">::: <span style="">SVN</span> INFO ::::::::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="">SET</span> DIR=%REPOS%/hooks</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">SET REPO_PATH=file:<span style="color:#FF9933; font-style:italic;">///%REPOS%</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">::: <span style="">Get</span> the author ::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="">For</span> /F <span style="color:#CC0000;">"Tokens=*"</span> %%I in <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#CC0000;">'svnlook author %REPOS% -r %REV%'</span><span style="color:#006600; font-weight:bold;">&#41;</span> Do Set author=%%I</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">::: <span style="">Get</span> the log messsage ::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="">For</span> /F <span style="color:#CC0000;">"Tokens=*"</span> %%I in <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#CC0000;">'svnlook log %REPOS% -r %REV%'</span><span style="color:#006600; font-weight:bold;">&#41;</span> Do Set log=%%I</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">::: <span style="">Set</span> the message body ::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="">ECHO</span> Commit - rev %REV% <span style="color:#006600; font-weight:bold;">&#40;</span>#%author%<span style="color:#006600; font-weight:bold;">&#41;</span>: <span style="color:#CC0000;">'%log%'</span> - %REPOS%&amp;gt; %MESSAGE_FILE%</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">:::::::::::::::::::::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">::: <span style="">EMAIL</span> INFO ::::::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="">set</span> to=-to yammer@yammer.<span style="">com</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">set subj=-s <span style="color:#CC0000;">"SVN Commit (Revision %REV%)"</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">set server=-server mail.<span style="">domain</span>.<span style="">com</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">set debug=-debug -log blat.<span style="">log</span> -timestamp</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">set auth=-u email@domain.<span style="">com</span> -pw yourpasswordhere</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">set from=-f email@domain.<span style="">com</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">:::::::::::::::::::::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">::: <span style="">SEND</span> THE EMAIL ::::::::::::::::::::::::::::::::::</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="">C</span>:/pathtoyourrepos/_tools/blat/blat %MESSAGE_FILE% %server% %to% %from% %subj% %auth% %debug% </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Or you can download the script:</p>
<p><table style="border: 1px solid #CCC;" cellpadding="3" width="100%">
  <tr>
    <td width="35">
      <img src="http://john.realeyes.com/wp-content/plugins/downloads-manager/img/icons/default.gif" alt="http://john.realeyes.com/wp-content/plugins/downloads-manager/img/icons/default.gif">
    </td>
    <td>
      <b>download:</b> <a href="http://john.realeyes.com/?file_id=4">post-commit.bat.zip</a> <small>(1.03KB)</small><br />
      <b>added:</b> 09/10/2008 <br />
      <b>clicks:</b> 316 <br />
      <b>description:</b> SVN post-commit hook .bat script to send an email to yammer. <br />
    </td>
  </tr>
</table></p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2008/10/09/yammer-and-svn-post-commit-hooks/feed/</wfw:commentRss>
		</item>
		<item>
		<title>ANT + Growl notifications = Happy Coder</title>
		<link>http://john.realeyes.com/2008/09/15/ant-growl-notifications-happy-coder/</link>
		<comments>http://john.realeyes.com/2008/09/15/ant-growl-notifications-happy-coder/#comments</comments>
		<pubDate>Mon, 15 Sep 2008 15:57:48 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[actionscript]]></category>

		<category><![CDATA[ant]]></category>

		<category><![CDATA[ant ant-growl flex build compile]]></category>

		<category><![CDATA[flex]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=237</guid>
		<description><![CDATA[We have a bunch of projects around here that we build with ANT. One of the biggest gripes with ANT builds and Flex is the amount of time it can take - Flex compiles can be slow. So whilst I'm building a project, I usually end up getting distracted for 10 or 15 minutes by [...]]]></description>
			<content:encoded><![CDATA[<p>We have a bunch of projects around here that we build with ANT. One of the biggest gripes with ANT builds and Flex is the amount of time it can take - Flex compiles can be slow. So whilst I'm building a project, I usually end up getting distracted for 10 or 15 minutes by something else, and my newly compiled Flex project sits there waiting for me to return. When I do return I have inevitably forgotten what I was doing.</p>
<p>Enter Growl and <a title="Growl + Ant = ant-growlnotify" href="http://code.google.com/p/ant-growlnotify/" target="_blank">ant-growlnotify</a> (thanks <a title="Jamie Rolfs" href="http://www.jrolfs.com/" target="_blank">Jamie</a>) with the ANT -listener argument. Using it is pretty simple:</p>
<ol>
<li>Download the ant-growllistener-0.4.jar from <a title="ant-growlnotify" href="http://code.google.com/p/ant-growlnotify/" target="_blank">google code</a></li>
<li>Drop the jar into your ant's lib directory</li>
<li>Run your ANT script with the -library arguement set to<tt> <a id="Using_the_Ant_Growl_Notifier"><tt>com.google.code.ant.growlnotify.GrowlListener<br />
or add -listener </tt></a></tt><a id="Using_the_Ant_Growl_Notifier"><tt></tt></a><tt><a id="Using_the_Ant_Growl_Notifier"><tt>com.google.code.ant.growlnotify </tt></a></tt>to ANT_ARGS</li>
<li>Now when you run your ANT script you should get nice Growl notifications.</li>
</ol>
<p>You'll need to make sure that you've installed growlnotify. growlnotify is in the Extras folder when you install Growl.</p>
<p>In the same notification vein, I also tracked down <a title="ImTask - IM Ant Tasks" href="http://imtask.sourceforge.net/" target="_blank">ImTask</a> last night and got build norifications going with an XMPP server. The project seems a little dated (released in 2003), but still works with OpenFire and Jabber.org.</p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2008/09/15/ant-growl-notifications-happy-coder/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mozilla Ubiquity - Useful and fun</title>
		<link>http://john.realeyes.com/2008/08/27/mozilla-ubiquity-useful-and-fun/</link>
		<comments>http://john.realeyes.com/2008/08/27/mozilla-ubiquity-useful-and-fun/#comments</comments>
		<pubDate>Wed, 27 Aug 2008 17:00:17 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[ubiquity]]></category>

		<category><![CDATA[FireFox]]></category>

		<category><![CDATA[javascript]]></category>

		<category><![CDATA[mozilla]]></category>

		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=222</guid>
		<description><![CDATA[So i've been checking out Ubiquity and playing with it a bit. Even in its "early, rough" state, it is fun stuff to play with and definitely useful!
I even had the time (about 2 min cause I just copied one of their commands) to create a custom command for is.gd the shorter URL service.
PLAIN TEXT
JavaScript:




CmdUtils.CreateCommand&#40;&#123;


name: [...]]]></description>
			<content:encoded><![CDATA[<p>So i've been checking out <a href="http://labs.mozilla.com/2008/08/introducing-ubiquity/">Ubiquity</a> and playing with it a bit. Even in its "early, rough" state, it is fun stuff to play with and definitely useful!</p>
<p>I even had the time (about 2 min cause I just copied one of their commands) to create a custom command for is.gd the shorter URL service.</p>
<div class="igBar"><span id="ljavascript-12"><a href="#" onclick="javascript:showCodeTxt('javascript-12'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">JavaScript:</span>
<div id="javascript-12">
<div class="javascript">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">CmdUtils.<span style="color: #006600;">CreateCommand</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#123;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #000066;">name</span>: <span style="color: #3366CC;">"isgd"</span>,</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">takes: <span style="color: #66cc66;">&#123;</span><span style="color: #3366CC;">"url to shorten"</span>: noun_arb_text<span style="color: #66cc66;">&#125;</span>,</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">preview: <span style="color: #3366CC;">"Replaces the selected URL with an is.gd URL."</span>,</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">execute: <span style="color: #003366; font-weight: bold;">function</span><span style="color: #66cc66;">&#40;</span> url <span style="color: #66cc66;">&#41;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #003366; font-weight: bold;">var</span> baseUrl = <span style="color: #3366CC;">"http://is.gd/api.php"</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #003366; font-weight: bold;">var</span> params = <span style="color: #66cc66;">&#123;</span>longurl: url.<span style="color: #006600;">text</span><span style="color: #66cc66;">&#125;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">jQuery.<span style="color: #006600;">get</span><span style="color: #66cc66;">&#40;</span> baseUrl, params, <span style="color: #003366; font-weight: bold;">function</span><span style="color: #66cc66;">&#40;</span> isgdUrl <span style="color: #66cc66;">&#41;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">CmdUtils.<span style="color: #006600;">setSelection</span><span style="color: #66cc66;">&#40;</span> isgdUrl <span style="color: #66cc66;">&#41;</span>;</div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span></div>
</li>
<li style="font-weight: bold;color:#26536A;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>To add this command jsut open up Ubiquity (opt/ctrl+Space) and type command-editor, then hit enter. Add the code (it automatically saves as you type). Then your good to go.</p>
<p>To use the new command, have some text selected in a new email or blog post, open Ubiquity type isgd, then the url, hit enter and the text that was selected will be replaced with the shortened URL.</p>
<div id="attachment_232" class="wp-caption alignnone" style="width: 310px"><a href="http://john.realeyes.com/wp-content/uploads/2008/08/picture-2.png" rel="lightbox[222]"><img class="size-medium wp-image-232" title="Ubiquity Screen Shot" src="http://john.realeyes.com/wp-content/uploads/2008/08/picture-2-300x167.png" alt="Shortening a URL with is.gd and Ubiquity" width="300" height="167" /></a><p class="wp-caption-text">Shortening a URL with is.gd and Ubiquity</p></div>
<p>Of course there are plenty of other ways you can use/play with Ubiquity.</p>
<p>Ubiquity's Intro: <a href="http://is.gd/1Wns">http://is.gd/1Wns</a></p>
<p>Custom Commands: <a href="http://is.gd/1Ydc">http://is.gd/1Ydc</a></p>
<p>That's right, I even used Ubiquity to create the links above.</p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2008/08/27/mozilla-ubiquity-useful-and-fun/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Some good things in life are free!</title>
		<link>http://john.realeyes.com/2008/07/22/some-good-things-in-life-are-free/</link>
		<comments>http://john.realeyes.com/2008/07/22/some-good-things-in-life-are-free/#comments</comments>
		<pubDate>Tue, 22 Jul 2008 21:50:00 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[general]]></category>

		<category><![CDATA[off topic]]></category>

		<category><![CDATA[offtopic iphone wordpress]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/index.php/2008/07/22/some-good-things-in-life-are-free/</guid>
		<description><![CDATA[So I just snagged the Wordpress iPhone app. And wanted to we how it worked. Yay. Now I can blog from just about anywhere - even the bathroom (not that I would of course)!

]]></description>
			<content:encoded><![CDATA[<p>So I just snagged the Wordpress iPhone app. And wanted to we how it worked. Yay. Now I can blog from just about anywhere - even the bathroom (not that I would of course)!</p>
<p><a href="http://john.realeyes.com/wp-content/uploads/2008/07/p-640-480-b203fa54-8fbb-4cf2-a229-5ec202e9a99a.jpeg" rel="lightbox[221]"><img src="http://john.realeyes.com/wp-content/uploads/2008/07/p-640-480-b203fa54-8fbb-4cf2-a229-5ec202e9a99a.jpeg" alt="photo" width="225" height="300" class="alignnone size-full wp-image-364" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2008/07/22/some-good-things-in-life-are-free/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mate &amp; Swiz - Other Flex Frameworks</title>
		<link>http://john.realeyes.com/2008/07/22/mate-swiz-other-flex-frameworks/</link>
		<comments>http://john.realeyes.com/2008/07/22/mate-swiz-other-flex-frameworks/#comments</comments>
		<pubDate>Tue, 22 Jul 2008 18:23:43 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=218</guid>
		<description><![CDATA[Jun Heider just pointed me to the Swiz Framework.
Swiz is a framework for Adobe Flex that aims to bring complete simplicity to RIA development. Swiz provides Inversion of Control, event handing, and simple life cycle for asynchronous remote methods. In contrast to other major frameworks for Flex, Swiz imposes no JEE patterns on your code, [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Jun Heider's blog" href="http://www.iheartair.com/" target="_blank">Jun Heider</a> just pointed me to the <a title="The Swiz Framework (Google code)" href="http://code.google.com/p/swizframework/" target="_blank">Swiz Framework</a>.</p>
<blockquote><p>Swiz is a framework for Adobe Flex that aims to bring complete simplicity to RIA development. Swiz provides Inversion of Control, event handing, and simple life cycle for asynchronous remote methods. In contrast to other major frameworks for Flex, Swiz imposes no JEE patterns on your code, no repetitive folder layouts, and no boilerplate code on your development.</p></blockquote>
<p>Looks very interesting! I'm right in the middle of a quick project that we are using <a title="Mate flex framework" href="http://mate.asfusion.com/" target="_blank">Mate</a> for, so I guess I'll have to check out the Swiz framework next. Hopefully I'll have the time to write out some of my thoughts on both frameworks as I finish playing with them.</p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2008/07/22/mate-swiz-other-flex-frameworks/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Status Update - what I&#8217;m doing and have done latley</title>
		<link>http://john.realeyes.com/2008/06/30/status-update-what-im-doing-and-have-done-latley/</link>
		<comments>http://john.realeyes.com/2008/06/30/status-update-what-im-doing-and-have-done-latley/#comments</comments>
		<pubDate>Mon, 30 Jun 2008 16:30:01 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=217</guid>
		<description><![CDATA[Its been a crazy busy summer so far! Here is quick status of the stuff that I've been doing.
Work
Lots of ActionScript 2 - oh yay! But, it is still needed for some clients. Not a whole lot of exciting stuff there, but it is keeping me busy!
A bit of fun with Flex and ActionScript 3 [...]]]></description>
			<content:encoded><![CDATA[<p>Its been a crazy busy summer so far! Here is quick status of the stuff that I've been doing.</p>
<p><strong>Work</strong></p>
<p>Lots of ActionScript 2 - oh yay! But, it is still needed for some clients. Not a whole lot of exciting stuff there, but it is keeping me busy!</p>
<p>A bit of fun with Flex and ActionScript 3 - we're working on some super secret code for a local company who is updating their site. I've been lucky enough to be able to squeeze in a few 'voids' between all the 'Voids' to create a cool component docking framework and SharedObject Manager class. I'll see what everyone here says about sharing the code and share what I can.</p>
<p><strong>Projects &amp; Ideas</strong></p>
<p>I've been playing around with lots of APIs and such lately. Trying to wrap my brain around the Social Graph - what is it good for, some really good ways to use it. So, I've signed up with tons of different Social Networks and services to see what is out there and what people are doing with it. You can check out the Social Links on the right for a list of those that I actually use regularly.</p>
<p>I've also got a couple of projects that I'll release to the wild when I actually get around to finishing them:</p>
<ul>
<li><a title="PingThem - Adobe AIR Application" href="http://john.realeyes.com/pingthem" target="_self">PingThem</a> - Adobe Air desktop application for <a title="Ping.fm" href="http://ping.fm" target="_blank">ping.fm</a></li>
<li><a title="Remember The Milk" href="http://rememberthemilk.com" target="_blank">Remember The Milk</a> - to-do list desktop application</li>
<li><a title="Remember The Milk" href="http://rememberthemilk.com" target="_blank">Remember The Milk</a> AS3 Library - this will probably end up on Google code</li>
</ul>
<p>The book that I was helping <a title="Chris Korhonen" href="http://sourcebottle.net/" target="_blank">Chris Korhonen</a> out with has been released. Yay Chris!<br />
<iframe src="http://rcm.amazon.com/e/cm?t=wwwvinecellac-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=1590599365&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;lc1=0000FF&#038;bc1=FFFFFF&#038;bg1=FFFFFF&#038;npa=1&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe><br />
<strong>Travel</strong></p>
<p>Just spent the last 2 weekends driving down to New Mexico so Aidan could spend a week with his Grams. Has a few good meals in Santa Fe and got to relax a bit - good stuff.</p>
<p>Pretty sure I'll be going to <a title="360Flex San Jose" href="http://www.360conferences.com/360flex/2008/04/360flex-san-jose-schedule.html" target="_blank">360Flex in San Jose</a> in August. From what I hear - it is a damn fine conference and one of the more fun/interesting conferences for Flex - so I'm excited!</p>
<p>Other than that, don't have much else planned. Possibly go out to Virginia to see my Dad and/or Austin to play a little.</p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2008/06/30/status-update-what-im-doing-and-have-done-latley/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Links: SQLLite, Peddle Pushers &amp; Music Mixing</title>
		<link>http://john.realeyes.com/2008/05/29/links-sqllite-peddle-pushers-music-mixing/</link>
		<comments>http://john.realeyes.com/2008/05/29/links-sqllite-peddle-pushers-music-mixing/#comments</comments>
		<pubDate>Thu, 29 May 2008 17:15:46 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[news]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=216</guid>
		<description><![CDATA[SQLite-manager
A very lightweight firefox extension (originally) to manage all your sqlite databases. This extension will be useful to developers who want to create and play with sqlite databases. Thanks Jun!
Clear Data Builder 3.0 becomes a free product
A code generator Clear Data Builder 3.0 will become available free of charge. Clear Data Builder (CDB) was released [...]]]></description>
			<content:encoded><![CDATA[<p><strong><a rel="nofollow" href="http://code.google.com/p/sqlite-manager/">SQLite-manager</a></strong></p>
<p class="notes">A very lightweight firefox extension (originally) to manage all your sqlite databases. This extension will be useful to developers who want to create and play with sqlite databases. Thanks Jun!</p>
<p><strong><a rel="nofollow" href="http://flexblog.faratasystems.com/?p=326">Clear Data Builder 3.0 becomes a free product</a></strong></p>
<p class="notes">A code generator Clear Data Builder 3.0 will become available free of charge. Clear Data Builder (CDB) was released as a command-line open source code generator a.k.a. DaoFlex.</p>
<p><strong><a rel="nofollow" href="http://www.protonotes.com/">Protonotes: Leave your mark.</a></strong></p>
<p class="notes">Protonotes are notes that you add to your prototype that allow project team members to discuss system functionality, design, and requirements directly on the prototype.</p>
<p><strong><a rel="nofollow" href="http://www.assembla.com/">Assembla</a></strong><a rel="nofollow" href="http://www.assembla.com/"><strong></strong></a><strong><a rel="nofollow" href="http://www.assembla.com/"> - Accelerating Software Development</a></strong></p>
<p class="notes">Use Assembla spaces for rapid software development, and agile team collaboration. Get free workspaces with unlimited team size and integrated tools like wiki, discussion, alerts, chat, ticketing, Trac, Git and Subversion.</p>
<p><strong><a rel="nofollow" href="http://www.mix2r.com/">Mix2r.fm</a></strong></p>
<p class="notes">Got the invite from Jun - Social network type site for music mixes.</p>
<p><strong><a rel="nofollow" href="http://mate.asfusion.com/">Mate Flex Framework — A tag-based event-driven Flex framework</a></strong></p>
<p class="notes">Mate framework has been created to make it easy to handle the events your Flex application creates. Mate allows you to define who is handling those events, whether data needs to be retrieved from the server, or other events need to be triggered.</p>
<p><strong><a rel="nofollow" href="http://www.scribblelive.com/">ScribbleLive...live blogging</a></strong></p>
<p class="notes">Welcome to on-the-spot live-blogging. Think of it as a media rich conference call.</p>
<p><strong><a rel="nofollow" href="http://www.google.com/reader/i/">Brand new Google Reader for iPhone</a> </strong><br />
W00t! I'm liking it so far!</p>
<p><strong><a rel="nofollow" href="http://code.google.com/apis/maps/documentation/flash/index.html">Google Maps API for Flash</a></strong></p>
<p class="notes">This API lets Flex developers embed Google Maps in Flash applications.</p>
<p><strong><a rel="nofollow" href="http://outforaride.com/">Out For A Ride</a></strong></p>
<p class="notes">Social networking for peddle pushers</p>
]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2008/05/29/links-sqllite-peddle-pushers-music-mixing/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WTF is JavaFX?!? (book review)</title>
		<link>http://john.realeyes.com/2008/05/29/wtf-is-javafx/</link>
		<comments>http://john.realeyes.com/2008/05/29/wtf-is-javafx/#comments</comments>
		<pubDate>Thu, 29 May 2008 17:00:09 +0000</pubDate>
		<dc:creator>John</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[book review]]></category>

		<category><![CDATA[code]]></category>

		<category><![CDATA[javafx]]></category>

		<category><![CDATA[programming]]></category>

		<category><![CDATA[tutorials]]></category>

		<guid isPermaLink="false">http://john.realeyes.com/?p=215</guid>
		<description><![CDATA[

JavaFX Script: Dynamic Java Scripting for Rich Internet/Client-side Applications (Paperback)




I didn't really know anything about JavaFX until I picked up this book. Now not only do I know what it is, I can use it too. If you're looking to understand what JavaFX is and where it might fit in your toolset then go grab [...]]]></description>
			<content:encoded><![CDATA[<div lang='en' class='hreview'>
<div class='item'>
<span class='fn'><a href='http://www.amazon.com/JavaFX-Script-Scripting-Client-side-Applications/dp/1590599454/ref=pd_bbs_sr_1?ie=UTF8&amp;s=books&amp;qid=1211651344&amp;sr=1-1' class='url'>JavaFX Script: Dynamic Java Scripting for Rich Internet/Client-side Applications (Paperback)</a></span>
</div>

<div class='stars' title='2/5'><img src='http://john.realeyes.com/wp-content/plugins/loudervoice-hreview-writing-plugin/images/2outof5.gif' alt='2/5' /></div>

<div class='description'><p>I didn't really know anything about JavaFX until I picked up this book. Now not only do I know what it is, I can use it too. If you're looking to understand what JavaFX is and where it might fit in your toolset then go grab the 216 page book "JavaFX Script: Dynamic Java Scripting for Rich Internet/Client-side Applications". This book will get you rolling quickly and simply and give you the basics you'll need to know to properly evaluate if it is right for you.</p>
<p>With that said - if your not familiar with programming concepts (conditionals, loops etc.) in general, or if you want an in-depth explanation of where JavaFX fits into the scheme of things, then I would not suggest this book.</p>
</div>

<div>Rated <span class='rating'>2</span>/5 on <span class='dtreviewed'>May 29 2008</span></div>
<div>Vote on <span class='reviewer vcard'><span class='fn'>John</span></span>&#8217;s reviews at <a href='http://www.loudervoice.com/people//'>LouderVoice</a></div>

<div class='review_tags'>LouderVoice review tags: <a href="http://www.loudervoice.com/tags/javafx+programming+code+tutorials" rel="tag">javafx programming code tutorials</a></div>


</div>]]></content:encoded>
			<wfw:commentRss>http://john.realeyes.com/2008/05/29/wtf-is-javafx/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
