<?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>blogt0sk1 &#187; Cappuccino</title>
	<atom:link href="http://blog.jerodsanto.net/category/cappuccino/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.jerodsanto.net</link>
	<description>with Jerod Santo</description>
	<lastBuildDate>Sat, 19 Jun 2010 14:34:45 +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>Cappuccino On Rails</title>
		<link>http://blog.jerodsanto.net/2010/01/cappuccino-on-rails/</link>
		<comments>http://blog.jerodsanto.net/2010/01/cappuccino-on-rails/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 03:16:32 +0000</pubDate>
		<dc:creator>Jerod</dc:creator>
				<category><![CDATA[Cappuccino]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[rails]]></category>

		<guid isPermaLink="false">http://blog.jerodsanto.net/?p=825</guid>
		<description><![CDATA[I&#8217;m happy to announce the release of CappuccinoResource (CR), a library dedicated to interfacing between a Cappuccino front-end and a Rails back-end. CR should feel very familiar to Rails developers. Its interface is akin to ActiveResource and it borrows heavily from the (very good) ObjectiveResource library for the iPhone. All basic CRUD operations are supported, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m happy to announce the release of <a href="http://github.com/sant0sk1/CappuccinoResource" rel="external">CappuccinoResource</a> (CR), a library dedicated to interfacing between a <a href="http://cappuccino.org" rel="external">Cappuccino </a>front-end and a <a href="http://rubyonrails.org" rel="external">Rails</a> back-end.</p>
<p>CR should feel very familiar to Rails developers. Its interface is akin to <a href="http://api.rubyonrails.org/classes/ActiveResource/Base.html" rel="external">ActiveResource</a> and it borrows heavily from the (very good) <a href="http://iphoneonrails.com/" rel="external">ObjectiveResource</a> library for the iPhone.</p>
<p>All basic CRUD operations are supported, and you can perform advanced finds with arbitrary parameters. A brief example of fetching a record, modifying it, and saving it:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> post <span style="color: #000;">=</span> <span style="color: #000;">&#91;</span>Post find<span style="color: #000;">:@</span><span style="color: #D14;">&quot;42&quot;</span><span style="color: #000;">&#93;</span><span style="color: #000;">;</span>
<span style="color: #000;">&#91;</span>post setTitle<span style="color: #000;">:@</span><span style="color: #D14;">&quot;Why X is Better than Y&quot;</span><span style="color: #000;">&#93;</span><span style="color: #000;">;</span>
<span style="color: #000;">&#91;</span>post save<span style="color: #000;">&#93;</span><span style="color: #000;">;</span></pre></div></div>

<p>Check out the README on the project&#8217;s page <a href="http://github.com/sant0sk1/CappuccinoResource" rel="external">on GitHub</a> for more details and usage examples.</p>
<h2>Live Demo</h2>
<p>I also created a demo application which is a simplified clone of OS X&#8217;s Address Book. The demo is <a href="http://capp-resource-example.heroku.com" rel="external">live on Heroku</a>. Check it out. The source for the demo is also <a href="http://github.com/sant0sk1/CappResourceExample" rel="external">on GitHub</a>.</p>
<p>If you&#8217;re a Rails developer waiting for a good opportunity to try out Cappuccino, there&#8217;s no better time than now.</p>
<p>If you&#8217;re a Cappuccino developer looking for an easy-to-use, powerful back-end for your applications, Rails might be the answer for you.</p>
<p>CR is a young project, but it drives one of my client applications that is production-ready (albeit not deployed), so I believe it is ready for prime time. Please try it and let me know how it goes. </p>
<p>Fork, <a href="http://github.com/sant0sk1/CappuccinoResource/issues" rel="external">report  issues</a>, et cetera.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jerodsanto.net/2010/01/cappuccino-on-rails/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>Testing Cappuccino Notifications</title>
		<link>http://blog.jerodsanto.net/2010/01/testing-cappuccino-notifications/</link>
		<comments>http://blog.jerodsanto.net/2010/01/testing-cappuccino-notifications/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 22:17:27 +0000</pubDate>
		<dc:creator>Jerod</dc:creator>
				<category><![CDATA[Cappuccino]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://blog.jerodsanto.net/?p=815</guid>
		<description><![CDATA[Writing a web app using Cappuccino has a lot of benefits, one of which is a really nice message passing system wherein certain objects can register to observe events and take action when other objects post notifications of those events. Here is a very basic way to test if your app is posting event notifications [...]]]></description>
			<content:encoded><![CDATA[<p>Writing a web app using <a href="http://cappuccino.org" rel="external">Cappuccino</a> has a lot of benefits, one of which is a really nice message passing system wherein certain objects can register to observe events and take action when other objects post notifications of those events.</p>
<p>Here is a very basic way to test if your app is posting event notifications as you expect it to. First, create an Observer class inside a test helper file, which will be included into your tests:<br />
<span id="more-815"></span></p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #6F6F6F;">// this is TestHelper.j</span>
<span style="color: #000;">@</span><span style="color: #003366; font-weight: bold;">import</span> <span style="color: #000;">&lt;</span>Foundation<span style="color: #000;">/</span>CPObject.<span style="color: #0086B3;">j</span><span style="color: #000;">&gt;</span>
&nbsp;
<span style="color: #000;">@</span>implementation Observer <span style="color: #000;">:</span> CPObject
<span style="color: #000;">&#123;</span>
    CPArray postedNotifications<span style="color: #000;">;</span>
<span style="color: #000;">&#125;</span>
&nbsp;
<span style="color: #000;">-</span> <span style="color: #000;">&#40;</span>id<span style="color: #000;">&#41;</span>init
<span style="color: #000;">&#123;</span>
    <span style="color: #000; font-weight: bold;">if</span> <span style="color: #000;">&#40;</span>self <span style="color: #000;">=</span> <span style="color: #000;">&#91;</span><span style="color: #003366; font-weight: bold;">super</span> init<span style="color: #000;">&#93;</span><span style="color: #000;">&#41;</span>
    <span style="color: #000;">&#123;</span>
        postedNotifications   <span style="color: #000;">=</span> <span style="color: #000;">&#91;</span>CPArray array<span style="color: #000;">&#93;</span><span style="color: #000;">;</span>
    <span style="color: #000;">&#125;</span>
    <span style="color: #000; font-weight: bold;">return</span> self<span style="color: #000;">;</span>
<span style="color: #000;">&#125;</span>
&nbsp;
<span style="color: #000;">-</span> <span style="color: #000;">&#40;</span><span style="color: #000; font-weight: bold;">void</span><span style="color: #000;">&#41;</span>startObserving<span style="color: #000;">:</span><span style="color: #000;">&#40;</span>CPString<span style="color: #000;">&#41;</span>aNotificationName
<span style="color: #000;">&#123;</span>
    <span style="color: #000;">&#91;</span><span style="color: #000;">&#91;</span>CPNotificationCenter defaultCenter<span style="color: #000;">&#93;</span> addObserver<span style="color: #000;">:</span>self
                                             selector<span style="color: #000;">:@</span>selector<span style="color: #000;">&#40;</span>notificationPosted<span style="color: #000;">:</span><span style="color: #000;">&#41;</span>
                                                 <span style="color: #0086B3;">name</span><span style="color: #000;">:</span>aNotificationName
                                               object<span style="color: #000;">:</span>nil<span style="color: #000;">&#93;</span><span style="color: #000;">;</span>
<span style="color: #000;">&#125;</span>
&nbsp;
<span style="color: #000;">-</span> <span style="color: #000;">&#40;</span><span style="color: #000; font-weight: bold;">void</span><span style="color: #000;">&#41;</span>notificationPosted<span style="color: #000;">:</span><span style="color: #000;">&#40;</span>id<span style="color: #000;">&#41;</span>sender
<span style="color: #000;">&#123;</span>
    <span style="color: #000;">&#91;</span>postedNotifications addObject<span style="color: #000;">:</span><span style="color: #000;">&#91;</span>sender <span style="color: #0086B3;">name</span><span style="color: #000;">&#93;</span><span style="color: #000;">&#93;</span><span style="color: #000;">;</span>
<span style="color: #000;">&#125;</span>
&nbsp;
<span style="color: #000;">-</span> <span style="color: #000;">&#40;</span>BOOL<span style="color: #000;">&#41;</span>didObserve<span style="color: #000;">:</span><span style="color: #000;">&#40;</span>CPString<span style="color: #000;">&#41;</span>aNotificationName
<span style="color: #000;">&#123;</span>
    <span style="color: #000; font-weight: bold;">return</span> <span style="color: #000;">&#91;</span>postedNotifications containsObject<span style="color: #000;">:</span>aNotificationName<span style="color: #000;">&#93;</span><span style="color: #000;">;</span>
<span style="color: #000;">&#125;</span>
&nbsp;
<span style="color: #000;">@</span>end</pre></div></div>

<p>This class can be configured to register for certain notifications via <span class="keyword">-startObserving</span> and when they are posted, it stores them in an array (postedNotifications). You can then ask it at any time if a notification has been observed using the <span class="keyword">-didObserve</span> method and it will respond with <span class="keyword">YES</span> or <span class="keyword">NO</span>.</p>
<p>So, to use this in your tests, do something like this:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #6F6F6F;">// This is MyTest.j</span>
<span style="color: #000;">@</span><span style="color: #003366; font-weight: bold;">import</span> <span style="color: #D14;">&quot;TestHelper.j&quot;</span>
&nbsp;
<span style="color: #000;">@</span>implementation MyTest <span style="color: #000;">:</span> OJTestCase
&nbsp;
<span style="color: #000;">-</span> <span style="color: #000;">&#40;</span><span style="color: #000; font-weight: bold;">void</span><span style="color: #000;">&#41;</span>setUp
<span style="color: #000;">&#123;</span>
    observer <span style="color: #000;">=</span> <span style="color: #000;">&#91;</span><span style="color: #000;">&#91;</span>Observer alloc<span style="color: #000;">&#93;</span> init<span style="color: #000;">&#93;</span><span style="color: #000;">;</span>
<span style="color: #000;">&#125;</span>
&nbsp;
<span style="color: #000;">-</span> <span style="color: #000;">&#40;</span><span style="color: #000; font-weight: bold;">void</span><span style="color: #000;">&#41;</span>testMyMethodDidPostNotification
<span style="color: #000;">&#123;</span>
    <span style="color: #000;">&#91;</span>observer startObserving<span style="color: #000;">:@</span><span style="color: #D14;">&quot;MyMethodDidFinishExecution&quot;</span><span style="color: #000;">&#93;</span><span style="color: #000;">;</span>
    <span style="color: #6F6F6F;">// do stuff that you would expect to get the notification posted</span>
    <span style="color: #000;">&#91;</span>self assertTrue<span style="color: #000;">:</span><span style="color: #000;">&#91;</span>observer didObserve<span style="color: #000;">:@</span><span style="color: #D14;">&quot;MyMethodDidFinishExecution&quot;</span><span style="color: #000;">&#93;</span><span style="color: #000;">;</span>
<span style="color: #000;">&#125;</span>
&nbsp;
<span style="color: #000;">@</span>end</pre></div></div>

<p>You could get more fancy with this (like allowing object observing and not just name observing), but the concept doesn&#8217;t change. Hope this helps anybody thinking about how to test their Capp apps!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jerodsanto.net/2010/01/testing-cappuccino-notifications/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>280 Atlas Introductory Screencast</title>
		<link>http://blog.jerodsanto.net/2009/11/280-atlas-introductory-screencast/</link>
		<comments>http://blog.jerodsanto.net/2009/11/280-atlas-introductory-screencast/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 19:03:01 +0000</pubDate>
		<dc:creator>Jerod</dc:creator>
				<category><![CDATA[Cappuccino]]></category>
		<category><![CDATA[atlas]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://blog.jerodsanto.net/?p=801</guid>
		<description><![CDATA[The much anticipated 280 Atlas developer beta is under way and I recorded a brief screencast introducing the basic concepts of creating applications with Atlas. In it I build a simplified version of the payment calculator from chapter 2 of Cocoa Design Patterns. Topics covered include creating a Cib-based project, laying out an interface and [...]]]></description>
			<content:encoded><![CDATA[<p>The much anticipated <a href="https://atlas-beta.heroku.com/" rel="external">280 Atlas developer beta</a> is under way and I recorded a brief screencast introducing the basic concepts of creating applications with Atlas.</p>
<p>In it I build a simplified version of the payment calculator from chapter 2 of <a href="http://www.amazon.com/gp/product/0321535022?ie=UTF8&#038;tag=standadeviat-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0321535022">Cocoa Design Patterns</a>.</p>
<p>Topics covered include creating a Cib-based project, laying out an interface  and binding outlets/actions to working code.</p>
<p>Hope it helps!</p>
<p><object width="640" height="360"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7646585&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=7646585&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="640" height="360"></embed></object>
<p><a href="http://vimeo.com/7646585">280 Atlas Introductory Screencast</a> from <a href="http://vimeo.com/sant0sk1">Jerod Santo</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
<p>Related Posts:</p>
<ul>
<li><a href="http://blog.jerodsanto.net/2009/11/learning-cappuccino-a-linked-list">Learning Cappuccino: Resource List</a></li>
<li><a href="http://blog.jerodsanto.net/2009/10/cappuccinoflow">CappuccinoFlow</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.jerodsanto.net/2009/11/280-atlas-introductory-screencast/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Learning Cappuccino: A Linked List</title>
		<link>http://blog.jerodsanto.net/2009/11/learning-cappuccino-a-linked-list/</link>
		<comments>http://blog.jerodsanto.net/2009/11/learning-cappuccino-a-linked-list/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 21:51:32 +0000</pubDate>
		<dc:creator>Jerod</dc:creator>
				<category><![CDATA[Cappuccino]]></category>

		<guid isPermaLink="false">http://blog.jerodsanto.net/?p=718</guid>
		<description><![CDATA[Picking up a new framework can be a daunting task, especially if you&#8217;re simultaneously learning a new language. I&#8217;ve done this before when I learned Ruby &#038; Rails all in one fell swoop. It was not easy. I&#8217;m doing it again with Objective-J and Cappuccino. Along the way I&#8217;ve compiled a list of valuable resources. [...]]]></description>
			<content:encoded><![CDATA[<p>Picking up a new framework can be a daunting task, especially if you&#8217;re simultaneously learning a new language. I&#8217;ve done this before when I learned Ruby &#038; Rails all in one fell swoop. It was not easy. I&#8217;m doing it again with Objective-J and <a href="http://cappuccino.org">Cappuccino</a>.</p>
<p>Along the way I&#8217;ve compiled a list of valuable resources. I believe many others will be taking this same journey in the coming days (especially once <a href="http://280atlas.com">Atlas</a> drops), so I&#8217;m sharing my findings for the benefit of all.</p>
<p><span id="more-718"></span></p>
<h2>Laying Foundation</h2>
<p><a href="http://www.amazon.com/gp/product/0596517742?ie=UTF8&#038;tag=standadeviat-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0596517742">JavaScript: The Good Parts</a> &#8211; <em>the</em> book to read on JavaScript</p>
<p><a href="http://www.amazon.com/gp/product/0321503619?ie=UTF8&#038;tag=standadeviat-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0321503619">Cocoa Programming for Mac OS X</a> &#8211; focus on the &#8220;how&#8221; of Cocoa</p>
<p><a href="http://www.amazon.com/gp/product/0321535022?ie=UTF8&#038;tag=standadeviat-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0321535022">Cocoa Design Patterns</a> &#8211; focus on the &#8220;why&#8221; of Cocoa</p>
<p><a href="http://cappuccino.org/learn/">Introduction to Cappuccino &#038; Objective-J</a> &#8211; you&#8217;ve probably already read this</p>
<p><a href="http://cappuccino.org/learn/tutorials/objective-j-tutorial.php">Learning Objective-J</a> &#8211; this too, but if you haven&#8217;t you absolutely should</p>
<p><a href="https://peepcode.com/products/objective-c-for-rubyists">Objective-C for Rubyists</a> &#8211; great ($9) screencast if you&#8217;re coming from a Ruby background like me</p>
<h2>Tutorials &#038; Walk-Thrus</h2>
<p><a href="http://cappuccino.org/learn/tutorials/scrapbook-tutorial-1">Scrapbook Tutorial</a> &#8211; first &#8220;real&#8221; tutorial on cappuccino.org</p>
<p><a href="http://www.nice-panorama.com/Programmation/cappuccino/">Nice-Panorama Tutorials</a> &#8211; great breadth of content here</p>
<p><a href="http://cappuccinocasts.com">CappuccinoCasts</a> &#8211; Thomas does a great job with these. Watch &#8216;em all</p>
<h2>Reference Material</h2>
<p><a href="http://cappuccino.org/learn/documentation/">Cappuccino Online Documentation</a> &#8211; Unfortunately these are often outdated</p>
<p><a href="http://www.icoretech.org/2009/10/installing-cappuccino-from-source/">Compiling from source</a> &#8211; includes how to compile a local version of the documentation</p>
<p><a href="http://www.devworld.apple.com/cocoa/">Apple&#8217;s Cocoa Documentation</a> &#8211; Often fills the voids in Capp&#8217;s documentation for certain topics</p>
<p><a href="http://github.com/sazameki/cocoa-browser-air">Cocoa Browser Air</a> &#8211; A great tool for browsing Apple&#8217;s documentation on a Mac</p>
<h2>Staying Informed</h2>
<p><a href="http://cappuccino.org/discuss/">Official Cappuccino Blog</a> &#8211; duh</p>
<p><a href="http://280north.com/blog/">280 North&#8217;s blog</a> &#8211; because they&#8217;re driving this train</p>
<p><a href="http://suitmymind.com/category/cappuccino.html">This Week in Edge Cappuccino</a> &#8211; summaries of recent changes &#038; additions</p>
<p><a href="http://cappuccinoflow.com">CappuccinoFlow</a> &#8211; a link blog with content provided by the community</p>
<p><a href="http://github.com/280north/cappuccino">GitHub repository</a> &#8211; if you&#8217;re hardcore you can watch every commit to the project</p>
<h2>Getting Help</h2>
<p><a href="http://groups.google.com/group/objectivej">Google Group</a> &#8211; good archives to search here as well</p>
<p><a href="irc://irc.freenode.net/cappuccino">IRC Channel</a> &#8211; direct IRC link</p>
<p><a href="https://wave.google.com/wave/?pli=1#restored:wave:googlewave.com!w%252Bu8FiBvxgC">Google Wave</a> &#8211; this is pretty new &#038; I haven&#8217;t personally used it much</p>
<p><br/><br />
That&#8217;s what I&#8217;ve found &#038; used so far. I plan on updating this page when I come across new helpful resources so come back from time to time and consider <a href="http://feeds.feedburner.com/nomeanblog">subscribing to my blog</a> as well.</p>
<p>Also, let me know in the comments of Cappuccino resources you&#8217;ve found valuable and I&#8217;ll add them to the list. Cheers!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jerodsanto.net/2009/11/learning-cappuccino-a-linked-list/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>CappuccinoFlow</title>
		<link>http://blog.jerodsanto.net/2009/10/cappuccinoflow/</link>
		<comments>http://blog.jerodsanto.net/2009/10/cappuccinoflow/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 13:38:30 +0000</pubDate>
		<dc:creator>Jerod</dc:creator>
				<category><![CDATA[Cappuccino]]></category>
		<category><![CDATA[Projects]]></category>

		<guid isPermaLink="false">http://blog.jerodsanto.net/?p=672</guid>
		<description><![CDATA[In Brief: I just launched CappuccinoFlow: a community driven link blog for the Cappuccino framework. If you&#8217;re at all interested in this amazing new technology out of 280north, make sure to subscribe to the RSS feed, follow along on Twitter, and post cool Cappuccino-related links to the flow! In Detail: It has been a little [...]]]></description>
			<content:encoded><![CDATA[<h3>In Brief:</h3>
<p><a href="http://cappuccinoflow.com"><img src="http://blog.jerodsanto.net/wp-content/uploads/2009/10/cf.png" style="margin-left:10px" alt="CappuccinoFlow" title="CappuccinoFlow" width="125" height="125" class="alignright size-full wp-image-678" /></a><br />
I just launched <a href="http://cappuccinoflow.com" rel="external">CappuccinoFlow</a>: a community driven link blog for the <a href="http://www.cappuccino.org" rel="external">Cappuccino</a> framework. If you&#8217;re at all interested in this amazing new technology out of <a href="http://280north.com/" rel="external">280north</a>, make sure to subscribe to the <a href="http://feeds.feedburner.com/cappuccinoflow">RSS feed</a>, follow along on <a href="http://twitter.com/cappuccinoflow" rel="external">Twitter</a>, and <a href="http://cappuccinoflow.com/items/new" rel="external">post</a> cool Cappuccino-related links to the flow!</p>
<h3>In Detail:</h3>
<p>It has been a little quiet around these parts lately. I blame Cappuccino.</p>
<p>For the uninitiated, Cappuccino is a framework for writing web applications (<a href="http://almost.at" rel="external">for example</a>). It is built on Objective-J, which is an Objective-C-esque superset of JavaScript. It is completely rad. Also, it&#8217;s all client-side so I still get to use Rails on the back-end. I believe the apt word is: woot.</p>
<p>I wanted a link blog to support the small, but growing, Cappuccino community. I&#8217;m a big fan of <a href="http://rubyflow.com" rel="external">RubyFlow</a> so I contacted its creator, <a href="http://peterc.org" rel="external">Peter Cooper</a>, and asked him if I could set one up for Cappuccino. He was gracious enough to say yes, and he had conveniently <a href="http://github.com/Sutto/rubyflow/" rel="external">open-sourced</a> an old version of his site awhile back. I <a href="http://github.com/sant0sk1/cappuccinoflow" rel="external">forked it</a> on GitHub and the result is <a href="http://cappuccinoflow.com" rel="external">CappuccinoFlow</a>.</p>
<p>I&#8217;ll probably have to modify my blog&#8217;s headline soon, because once I become proficient in Objective-J &#038; Cappuccino you&#8217;ll probably see some posts about it.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jerodsanto.net/2009/10/cappuccinoflow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
