<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>Suit My Mind</title>
 <link href="http://suitmymind.com/feed.xml" rel="self"/>
 <link href="http://suitmymind.com/"/>
 <updated>2011-12-02T10:30:05+01:00</updated>
 <id>http://suitmymind.com/</id>
 <author>
   <name>Thomas Balthazar</name>
   <email>hello@suitmymind.com</email>
 </author>

 
 <entry>
   <title>I'm joining the Kickoff team</title>
   <link href="http://suitmymind.com/blog/2011/11/24/i-m-joining-the-kickoff-team"/>
   <updated>2011-11-24T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2011/11/24/i-m-joining-the-kickoff-team</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://kickoffapp.com&quot;&gt;Kickoff&lt;/a&gt; is a Mac application that lets small groups collaborate on projects by sharing tasks, files, notes and a persistent group chat. It has been developed by &lt;a href=&quot;http://twitter.com/michaelvillar&quot;&gt;Michaël&lt;/a&gt; and designed by &lt;a href=&quot;http://twitter.com/bdc&quot;&gt;Benjamin&lt;/a&gt;, 2 fine Belgian geeks I've known for some time now and with whom I shared a fair amount of beers already.&lt;/p&gt;

&lt;p&gt;Starting today, I'll be working full-time on Kickoff, helping them to bring this awesome app one step further, and I couldn't be more excited! (&lt;a href=&quot;http://kickoffapp.com/blog/2011-11-24&quot;&gt;Read the announcement on the Kickoff Blog&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;It means I won't have the time to reboot the Cocoa Casts series, as I intended to. It was a fun ride, but I prefer to focus on Kickoff now. If you're looking for quality video courses, you should go to &lt;a href=&quot;http://ideveloper.tv/&quot;&gt;iDeveloper TV&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Follow &lt;a href=&quot;http://twitter.com/kickoffapp&quot;&gt;@kickoffapp&lt;/a&gt; and keep an eye on the &lt;a href=&quot;http://kickoffapp.com/blog&quot;&gt;Kickoff Blog&lt;/a&gt; to stay in the loop.&lt;br/&gt;
I can't wait to show you what we're up to!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Long Time No Read</title>
   <link href="http://suitmymind.com/blog/2011/05/30/long-time-no-read"/>
   <updated>2011-05-30T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2011/05/30/long-time-no-read</id>
   <content type="html">&lt;p&gt;A lot of things have changed for me since &lt;a href=&quot;/blog/2010/10/25/cocoacast-7-tapplace-part-7/&quot;&gt;I last posted here&lt;/a&gt; : I used to develop web applications, I now exclusively focus on iOS/Mac applications development.&lt;/p&gt;

&lt;p&gt;I started to learn Cocoa in early 2009. Since then, I attended conferences (WWDC 2009, 2010 and &lt;a href=&quot;http://ideveloper.tv/schedule/details?event_id=3&quot;&gt;NSConf 2011&lt;/a&gt;), met fellow Cocoa developers, read books, watched screencasts and shipped my &lt;a href=&quot;http://tapplaceapp.com&quot;&gt;first iOS app&lt;/a&gt;. My second iOS app (for a customer) is about to be shipped soon and I've been working fulltime on iOS projects for customers since last November.&lt;/p&gt;

&lt;p&gt;This bit of gained experience allowed me to take a step back from &lt;a href=&quot;https://github.com/suitmymind/CocoaCasts-episodes&quot;&gt;my own code&lt;/a&gt;, made me want to improve it and share it with you again. I'd like to take the time to reboot the &lt;a href=&quot;http://suitmymind.com/blog/category/cocoa-casts/&quot;&gt;Cocoa Casts&lt;/a&gt; serie I started almost &lt;a href=&quot;http://suitmymind.com/blog/2010/06/24/tapplace-an-iphone-application-documented-by-some-screencasts/&quot;&gt;a year ago&lt;/a&gt; and make some more episodes to cover the &lt;a href=&quot;http://tapplaceapp.com&quot;&gt;whole application&lt;/a&gt; development process. Though I can't commit to a specific date right now, my best guess is that I'll be able to publish my next screencast &lt;em&gt;sometimes in september&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;In the meantime, see you at WWDC 2011!&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Remark : please point your RSS reader of choice to &lt;a href=&quot;http://suitmymind.com/feed.xml&quot;&gt;http://suitmymind.com/feed.xml&lt;/a&gt; instead of the old FeedBurner URL.&lt;/em&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>CocoaCast #7 : TapPlace Part 7</title>
   <link href="http://suitmymind.com/blog/2010/10/25/cocoacast-7-tapplace-part-7"/>
   <updated>2010-10-25T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2010/10/25/cocoacast-7-tapplace-part-7</id>
   <content type="html">&lt;p&gt;In this episode, we'll process the information we receive from CoreLocation, and we'll use MapKit to get an address from a location.&lt;/p&gt;

&lt;h3&gt;Links :&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=325031379&amp;amp;mt=8&quot;&gt;iTunes link&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/library/ios/#documentation/CoreLocation/Reference/CLLocationManager_Class/CLLocationManager/CLLocationManager.html%23//apple_ref/occ/cl/CLLocationManager&quot;&gt;CLLocationManager Class Reference&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/library/ios/#documentation/CoreLocation/Reference/CLLocationManagerDelegate_Protocol/CLLocationManagerDelegate/CLLocationManagerDelegate.html&quot;&gt;CLLocationManagerDelegate Protocol Reference&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/library/ios/#documentation/MapKit/Reference/MKReverseGeocoder_Class/Reference/Reference.html%23//apple_ref/doc/uid/TP40008323&quot;&gt;MKReverseGeocoder Class Reference&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/library/ios/#documentation/MapKit/Reference/MKReverseGeocoderDelegate_Protocol/Reference/Reference.html%23//apple_ref/occ/intf/MKReverseGeocoderDelegate&quot;&gt;MKReverseGeocoderDelegate Protocol Reference&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>CocoaCast #6 : TapPlace Part 6</title>
   <link href="http://suitmymind.com/blog/2010/10/08/cocoacast-6-tapplace-part-6"/>
   <updated>2010-10-08T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2010/10/08/cocoacast-6-tapplace-part-6</id>
   <content type="html">&lt;p&gt;In this episode, we'll start using CoreLocation, we'll create a Singleton and we'll use a class continuation.&lt;/p&gt;

&lt;h3&gt;Links :&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=325031379&amp;amp;mt=8&quot;&gt;iTunes link&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Singleton_pattern&quot;&gt;The Singleton pattern&lt;/a&gt; on Wikipedia&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://cocoawithlove.com/2008/11/singletons-appdelegates-and-top-level.html&quot;&gt;Singletons, AppDelegates and top-level data&lt;/a&gt;, a very interesting article by Matt Gallagher of Cocoa with Love.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CocoaFundamentals/CocoaObjects/CocoaObjects.html%23//apple_ref/doc/uid/TP40002974-CH4-SW32&quot;&gt;Creating a Singleton Instance&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/library/ios/#documentation/CoreLocation/Reference/CLLocationManager_Class/CLLocationManager/CLLocationManager.html%23//apple_ref/occ/cl/CLLocationManager&quot;&gt;CLLocationManager Class Reference&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/library/ios/#documentation/CoreLocation/Reference/CLLocationManagerDelegate_Protocol/CLLocationManagerDelegate/CLLocationManagerDelegate.html&quot;&gt;CLLocationManagerDelegate Protocol Reference&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;li&gt;An example of class continuation in an &lt;a href=&quot;http://theocacao.com/document.page/516/&quot;&gt;excellent article&lt;/a&gt; by Scott Stevenson on Theocacao&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>CocoaCast #5 : TapPlace Part 5</title>
   <link href="http://suitmymind.com/blog/2010/09/20/cocoacast-5-tapplace-part-5"/>
   <updated>2010-09-20T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2010/09/20/cocoacast-5-tapplace-part-5</id>
   <content type="html">&lt;p&gt;In this episode, I'll show you how to update and delete a place using Core Data. You'll see how the &lt;em&gt;details&lt;/em&gt; viewController asks its delegate to perform those operations.&lt;/p&gt;

&lt;h3&gt;Links :&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=325031379&amp;amp;mt=8&quot;&gt;iTunes link&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>CocoaCast #4 : TapPlace Part 4</title>
   <link href="http://suitmymind.com/blog/2010/09/02/cocoacast-4-tapplace-part-4"/>
   <updated>2010-09-02T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2010/09/02/cocoacast-4-tapplace-part-4</id>
   <content type="html">&lt;p&gt;In this episode, I'll show you how to localize an iPhone app. We'll also create the &lt;em&gt;details&lt;/em&gt; screen, so you'll learn how to pass values between 2 view controllers.&lt;/p&gt;

&lt;h3&gt;Links :&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=325031379&amp;amp;mt=8&quot;&gt;iTunes link&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/iphone/library/documentation/Cocoa/Conceptual/LoadingResources/Strings/Strings.html#//apple_ref/doc/uid/10000051i-CH6-SW5&quot;&gt;Creating Strings Resource Files&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;/ul&gt;


&lt;h3&gt;Commands :&lt;/h3&gt;

&lt;pre&gt;$ mkdir en.lproj
$ genstrings -o en.lproj Classes/*.m
$ mkdir fr.lproj
$ genstrings -o fr.lproj Classes/*.m&lt;/pre&gt;

</content>
 </entry>
 
 <entry>
   <title>CocoaCast #3 : TapPlace Part 3</title>
   <link href="http://suitmymind.com/blog/2010/08/20/cocoacast-3-tapplace-part-3"/>
   <updated>2010-08-20T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2010/08/20/cocoacast-3-tapplace-part-3</id>
   <content type="html">&lt;p&gt;In this episode, I'll show you how to use a delegate to properly dismiss a view controller presented modally and I'll also show you how to observe the keyboard notifications to resize the text view when the keyboard appears.&lt;/p&gt;

&lt;h3&gt;Links :&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=325031379&amp;amp;mt=8&quot;&gt;iTunes link&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/iphone/library/featuredarticles/ViewControllerPGforiPhoneOS/ModalViewControllers/ModalViewControllers.html#//apple_ref/doc/uid/TP40007457-CH111-SW14&quot;&gt;Dismissing a Modal View Controller&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/iphone/library/documentation/uikit/reference/UIWindow_Class/UIWindowClassReference/UIWindowClassReference.html#//apple_ref/doc/uid/TP40006817-CH3-SW27&quot;&gt;Keyboard Notification User Info Keys&lt;/a&gt; in the Apple Online Documentation&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>CocoaCast #2 : TapPlace Part 2</title>
   <link href="http://suitmymind.com/blog/2010/08/05/cocoacast-2-tapplace-part-2"/>
   <updated>2010-08-05T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2010/08/05/cocoacast-2-tapplace-part-2</id>
   <content type="html">&lt;p&gt;This is the second episode of a serie of screencasts about Cocoa (and &lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt;).&lt;br/&gt;
In this episode, I'll explain how to create a new 'add' screen and present it modally.&lt;/p&gt;

&lt;p&gt;Remark: I'll be away from my computer for 2 weeks, but stay tuned, the next episode is coming!&lt;/p&gt;

&lt;h3&gt;Links :&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=325031379&amp;amp;mt=8&quot;&gt;iTunes link&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://weblog.bignerdranch.com/?p=129&quot;&gt;An article about the designated initializer of UIViewController, on the Big Nerd Ranch Weblog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/iphone/library/documentation/CoreData/Reference/NSFetchedResultsControllerDelegate_Protocol/Reference/Reference.html&quot;&gt;NSFetchedResultsControllerDelegate Protocol Reference&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>CocoaCast #1 : TapPlace Part 1</title>
   <link href="http://suitmymind.com/blog/2010/07/29/cocoacast-1-tapplace-part-1"/>
   <updated>2010-07-29T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2010/07/29/cocoacast-1-tapplace-part-1</id>
   <content type="html">&lt;p&gt;I've started to learn Cocoa about 18 months ago. &lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt; is my first Cocoa/iPhone application, and it just hit the &lt;a href=&quot;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=325031379&amp;amp;mt=8&quot;&gt;App Store&lt;/a&gt; today. I've decided to explain how I developed the application through some screencasts. I hope I can teach you what I learnt. I also hope I'll learn something from you. I'd love to get some feedback about my screencasts and my code, so I can improve them, and share my experience here.&lt;/p&gt;

&lt;p&gt;In this episode, I'll give you a brief overview of &lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt;, so you have an idea of what we'll develop.
We'll also create the project and setup the basics in Xcode.&lt;/p&gt;

&lt;h3&gt;Links :&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://tapplaceapp.com&quot;&gt;TapPlace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=325031379&amp;amp;mt=8&quot;&gt;iTunes link&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/iphone/library/documentation/CoreLocation/Reference/CLLocation_Class/CLLocation/CLLocation.html&quot;&gt;CLLocation Class Reference&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.apple.com/iphone/library/documentation/MapKit/Reference/MKPlacemark_Class/Reference/Reference.html&quot;&gt;MKPlacemark Class Reference&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>TapPlace, an iPhone application documented by some screencasts</title>
   <link href="http://suitmymind.com/blog/2010/06/24/tapplace-an-iphone-application-documented-by-some-screencasts"/>
   <updated>2010-06-24T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2010/06/24/tapplace-an-iphone-application-documented-by-some-screencasts</id>
   <content type="html">&lt;p&gt;It has been a long time since I last wrote on this blog. Please let me introduce the upcoming iPhone app that kept me busy, and try to explain why it took so long.&lt;/p&gt;

&lt;h3&gt;Learning Cocoa&lt;/h3&gt;

&lt;p&gt;I've wanted to learn how to program for the Mac for some years now. I first started to learn Cocoa indirectly by trying to teach the basics of the &lt;a href=&quot;http://cappuccino.org&quot;&gt;Cappuccino&lt;/a&gt; Web framework through my &lt;a href=&quot;/blog/category/cappuccino-casts&quot;&gt;Cappuccino Casts&lt;/a&gt;. I love improving my knowledge by trying to teach it to whoever is interested.&lt;/p&gt;

&lt;p&gt;The more I familiarized with Cocoa, the more I wanted to learn it, it is such a well-thought-out framework. I then read books, watched screencasts and attended the 2009 and 2010 editions of the Apple WWDC (which were invaluable sources of motivation and knowledge). It took time, I learned a lot, and still have so much to learn. This is really exciting.&lt;/p&gt;

&lt;h3&gt;An app idea&lt;/h3&gt;

&lt;p&gt;I had this idea of a simple yet handy application that would allow me to get started quickly. There's nothing like a real project to put what you learned into practice! What I learned from the &lt;a href=&quot;/blog/category/cappuccino-casts&quot;&gt;Cappuccino Casts&lt;/a&gt; is that when you know you're about to release and explain your code to the world, you tend to write better code which benefits both to you and to people interested in learning something from you. Since I love screencasts I thought it was a good idea to develop my first iPhone app and to document the development process with some (upcoming) screencasts.&lt;/p&gt;

&lt;h3&gt;Design&lt;/h3&gt;

&lt;p&gt;I really appreciate good design, but I'm a developer, not a designer.  I had the chance to meet a &lt;a href=&quot;http://deaxon.com&quot;&gt;talented designer&lt;/a&gt; and while we were chatting about our desire to make a kick ass app, I exposed him my project and I was lucky enough that he was as excited as I was about it.&lt;/p&gt;

&lt;h3&gt;Available soon&lt;/h3&gt;

&lt;p&gt;I'll keep you posted about the advancement of the project and the screencasts on this blog. You can also follow &lt;a href=&quot;http://twitter.com/tapplace&quot;&gt;@tapplace&lt;/a&gt; or &lt;a href=&quot;http://tapplaceapp.com&quot;&gt;leave your email address here&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (41)</title>
   <link href="http://suitmymind.com/blog/2010/03/02/this-week-in-edge-cappuccino-41"/>
   <updated>2010-03-02T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/03/02/this-week-in-edge-cappuccino-41</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2010/02/21/this-week-in-edge-cappuccino-40/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;February 18 - February 25, 2010 Edition&lt;/h3&gt;


&lt;p&gt;There were 82 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPTableView gets some refactoring/cleanup. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/82ac98ddc77bafb805f1723147f7f44c22df39d2&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c48d306195c0d754e4fe9501fed3f67852f39533&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/26df9e861f7b7757c1810103885f07b8f67fa908&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/629428739dcc7c7490680c8e7fd18b586c1e4bd1&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/25f45740933af852999c47bcc832f5a45a62d08e&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b24a78bdd599bbec430bef53cc07e12e222146df&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ef5aead17d2029485518099781be92f809322dd8&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix for the 'sprited images not loading' bug IE. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b7df6c1480d5745df1ae3f6bcf658e81955cc5d4&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;@each has been temporarily into &lt;a href=&quot;http://github.com/280north/cappuccino/commits/@each&quot;&gt;a separate branch&lt;/a&gt;. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7433c38d9225694a0348c8ca9d66fd1569b8b058&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (40)</title>
   <link href="http://suitmymind.com/blog/2010/02/21/this-week-in-edge-cappuccino-40"/>
   <updated>2010-02-21T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/02/21/this-week-in-edge-cappuccino-40</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2010/02/14/this-week-in-edge-cappuccino-39/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;February 11 - February 17, 2010 Edition&lt;/h3&gt;


&lt;p&gt;The jake branch has finally been merged into the master branch. There were 94 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPTableView and friends gets some bugfixes, some documentation, some new features (column sorting, resizing) and better nib2cib support. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ac3d035ce7aedf2823e381e0b1bd85aea227f950&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1eed1901e958d9f2b0bbc7daaa5860c41ad1cd62&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5131aff3525501438c42237c1d3283153f59927b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4237000fc9778a6b7bc176df3d58a67e5b82675c&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d413fbe0ede4fe8a02078c7f9c42644be1333546&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c36b8f22573dc899b406c1d727235f427974c947&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2564003c85a64aaae8f9e2067c5876f6981777ef&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2d8f2b328ff3007eebde37043476bacb71fa929b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8617990206883754cca8bad057136d5591a164a9&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3e40deba5f76b9dbeda70a815d4d94592671e83d&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f3257c0847170ae29e46d772e3bc9c5580b7d54f&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/95364b1d3148c88aa68751ca8fd19471d7782856&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/59756ff1b31a00820bc4ed9a8066c884dfa8fd78&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/72edd7376e6003516553bb1824730c15421f9ae6&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b0b19328a8dd56ff8070323f669ff274c085bbad&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3fad4635b016ac60a369baae94fca4726653572c&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fast enumeration has been added to Cappuccino. &lt;a href=&quot;http://groups.google.com/group/objectivej-dev/browse_thread/thread/e4d6274ae64160af&quot;&gt;Read the announcement&lt;/a&gt; on the dev mailing-list. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f95c3ca46aad916464bf848a4293f8f16fa57413&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/92d28e468e31fc7dff79f26c7cc4a7feef5031c1&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/db949728dd793d094c1260b96ed847dd15aecd6e&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/89291990822d302ee7df6b0867948bc7fd0a9c05&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ae357d1a2bb79746056a66a282752ceaa937a8b0&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/64fd9f615c70e1b19093c60381786f51c1582f1c&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/81110ddba7347710fdae0b62f3510efe879eb457&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/76da7466ec3b0467cd1572bcab9b415675934d90&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPCollectionView gets keyboard navigation support. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a77e67e578b3f24171c7ef5a51232daa3b4fb8f7&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;press gets some love, and even a --flatten option. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cb1d3168e359f34d0575a80ae5144cb08a9b4ce1&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/235d974ce161e3d7b212a027e064f3876f861d15&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7f31c0632dcb44f702efa06491488fe446c415d8&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPSegmentedControl gets some bugfixes. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a8b1c7bce15b0b7153985737fe561adbed106e3f&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (39)</title>
   <link href="http://suitmymind.com/blog/2010/02/14/this-week-in-edge-cappuccino-39"/>
   <updated>2010-02-14T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/02/14/this-week-in-edge-cappuccino-39</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2010/02/07/this-week-in-edge-cappuccino-38/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;February 4 - February 10, 2010 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 10 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPTableView gets some more improvements (styling, bugfixes, drag and drop, headers, documentation). The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/265a41034226e80992b87e8ef3a865fab1a5ecd7&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e8b74ece72207bbf00af950217df3da6ac18a678&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/47bd6e5ce3d87c361973b024f2b3c3ce396892c2&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/24e8f8aa437005867a0f064d1c581998624a6e82&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9034203a4fdfe8f014ca0a981da9cf74900d9a4a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/36a85e935b1e15c02b3ecb230c37d54c8f3b2304&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4a5e90b5cbc53de95da174b3a61e76579274e4bd&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (38)</title>
   <link href="http://suitmymind.com/blog/2010/02/07/this-week-in-edge-cappuccino-38"/>
   <updated>2010-02-07T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/02/07/this-week-in-edge-cappuccino-38</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2010/01/31/this-week-in-edge-cappuccino-37&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;January 28 - February 3, 2010 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 41 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPFlashView has been rewritten to be cross-browser and standards compliant. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5ccf6eefc0894f600a61c3d5a7cba8fadcc6d699&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/bda5ea1c591555d767b641b47c030f60290f745d&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPTableView gets several improvements (bugfixes, drag and drop, headers, documentation). The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/37fbeaad026479cf49319c7dc91c9fafdf234ff3&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/df98483b065a61cdd3b941ce2d86e4c94bfd595b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b9b2649db915683c58da2b6a4fb02dccddd425b7&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c423411639555525dbd2a60fe2e3cc21d0896074&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/86fa759f9fa49facedbdc2099f937c51ee3b274a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1d9e2f81699966fea79f2e94e1dc143d39fcf38a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/11d30566bfc71a6c152880fffb3d43c17d74c51d&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/26945bde4223518e15f13217d9932ccc70f9aa2f&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ecb88a87ad8a174dffcd415f2b48989f2ecd8cd1&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/146bff67665602f4cfaa0d1bca9135f8fa9bcb81&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/050a132bd52b0be9a75f0dd8265470fb3ac75bdd&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/35a74563026c25d4d2c074e579a338daeeb048f1&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/775c1c1c8b9665ea0ccb8762545e6c93db2c76b5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cc74f941c67233aa47a5802d9794dd8d42455763&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e88ec01fcac66b5de58ad087a611de1f47342537&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/6b58986ec38706f070dd602ad4d2d73e827ae99d&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2b87b9f3fca3265419c1ae35e799198ef5fadb9b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/28a00fff23d7794529fd26990d3e26a8dc938166&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e8ac94f8daab850dd1a753e9eb5ca76ca76035f8&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (37)</title>
   <link href="http://suitmymind.com/blog/2010/01/31/this-week-in-edge-cappuccino-37"/>
   <updated>2010-01-31T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/01/31/this-week-in-edge-cappuccino-37</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2010/01/21/this-week-in-edge-cappuccino-36/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;January 21 - January 27, 2010 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 47 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPTableView gets some background images for its CPTableHeaderView, a better drag and drop support, and a refactoring of the keyboard navigation. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/22aa4d359eb6c504e117c85e5c87b59e9e423497&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e40696a7afdf36af6ddbf98fa04a25979b749925&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/dd4735026a4f9bf56dd8888a269b23355e42ae1a&quot;&gt;here&lt;/a&gt;,
&lt;a href=&quot;http://github.com/280north/cappuccino/commit/c291ad83f17eeeb401abebad3b7706b1abf78fd4&quot;&gt;here&lt;/a&gt;,
&lt;a href=&quot;http://github.com/280north/cappuccino/commit/fb89450b902b630be9c9286a22e744f732fbd4a3&quot;&gt;here&lt;/a&gt;,
&lt;a href=&quot;http://github.com/280north/cappuccino/commit/1170673b92a1a12a63005275ca5443a92582899f&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The Cappuccino DOM load system gets some improvements. It now allows external libraries to add elements to the body during the onload process. Read the &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/da29af99163691a3&quot;&gt;announcement&lt;/a&gt; on the mailing-list. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7ce72a31c566c164ca3ab526dc117d7254d1c6ed&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/712a991c86ef130b28b0ecc23241b0b604195e88&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;There is a new CPViewAnimation class that should offer a convenient way to animate multiple views and windows. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c6a4eb28a88c04d49500f8ee582dab40dc65c623&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/34a5d9e61b6c913cefc931b29e76a8577e9fe48e&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPCollectionView items resizing/positioning behavior is now more Cocoa-like. See &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/59db94e45ff2a712/&quot;&gt;this thread&lt;/a&gt; on the mailing-list. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9b015611272691a41c0c3a43a76d4ca12516aae9&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The bootstrap process keeps on getting improved. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4e50244dcaac5fdd32b62e258688cdad9e8bdf56&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/27aca4c84a14952c17b28c16163f644552aacfc1&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9cb1e28ad15112641f2e29ea0742c789a50c0663&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8e87a4a94110e06c430d209501973ffbc0f4bab7&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;As well as press does. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/35adaee1bb4aa081bb98828aece7cb7d90fd69cb&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3ee63b754c274b6bb32d928fc056ac0c065ec16f&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7fe3b115f1318dc514631d5c17ed6429c759c998&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5478c640cc4e5c6524f4b1ee4e1c3ddba43c1311&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/60f2eaadf51d9775b255f168f7c7ebb1d35b2688&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/981132767230db0a76a3cc63d33a7d74f2206132&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>#13 Loading views from a CIB using CPViewController and Atlas</title>
   <link href="http://suitmymind.com/blog/2010/01/25/13-loading-views-from-a-cib-using-cpviewcontroller-and-atlas"/>
   <updated>2010-01-25T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/01/25/13-loading-views-from-a-cib-using-cpviewcontroller-and-atlas</id>
   <content type="html">&lt;p&gt;In this episode, I'll show you - in a single window application like iTunes or iPhoto - how you can load views from CIBs using a CPViewController (and Atlas).&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (36)</title>
   <link href="http://suitmymind.com/blog/2010/01/21/this-week-in-edge-cappuccino-36"/>
   <updated>2010-01-21T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/01/21/this-week-in-edge-cappuccino-36</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2010/01/14/this-week-in-edge-cappuccino-35/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;January 14 - January 20, 2010 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 13 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;jake install&lt;/em&gt; doesn't use sudo by default anymore. There's now a new task if needed : &lt;em&gt;jake sudo-install&lt;/em&gt;. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f1874eca8a3defdea94e5e50f5456d31c9b15453&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Make CPPanel -becomesKeyOnlyIfNeeded and CPView -needsPanelToBecomeKey
work. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/204df993753aaa41c56e29de751fb0afdff10b6a&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed: under certain circumstances controls would not be drawn despite a
call to setNeedsDisplay:YES. A typical symptom of this was custom CPViews'
drawRect never being called. The error was caused by _CPDisplayServer
throwing away its remaining work whenever the display code of a control
called setNeedsLayout. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ded413481c01aa122752eadaecf6b3eb08305928&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (35)</title>
   <link href="http://suitmymind.com/blog/2010/01/14/this-week-in-edge-cappuccino-35"/>
   <updated>2010-01-14T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/01/14/this-week-in-edge-cappuccino-35</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2010/01/07/this-week-in-edge-cappuccino-34/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;January 7 - January 13, 2010 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 60 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://twitter.com/me1000&quot;&gt;Randy&lt;/a&gt; showed CPTableView some love, he started implementing drag and drop, auto resizing columns, keyboard support, scrollToVisible for columns and rows, double click action, deselectAll, inline editing. &lt;strong&gt;[credits update]&lt;/strong&gt; : Highlightable rows thanks to &lt;a href=&quot;http://github.com/cacaodev&quot;&gt;Cacaodev&lt;/a&gt; and inline editing thanks to &lt;a href=&quot;http://twitter.com/rentzsch&quot;&gt;Rentzsch&lt;/a&gt;. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/aa309ef27c3479ca380256ad18d629258a7aac31&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/64063fb77de54c3702910d5ccdfd6955043a6aab&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9ac823833a4f1f8b3a37a964de616d9942326470&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c4b2cf939425a22449e2ec4a21ed3e2f52012ce0&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/bbc521a2f3357fffd0b341aa9b8fd41833df6c77&quot;&gt;here&lt;/a&gt;,
&lt;a href=&quot;http://github.com/280north/cappuccino/commit/c2282af8792f38a238772bcc42bd53a48f837fcc&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8f43f5a4a154a2612beeeb32fc1f5b02321d87a6&quot;&gt;here&lt;/a&gt;,
&lt;a href=&quot;http://github.com/280north/cappuccino/commit/24b495ca43c482fd52ee235e959afc252f4702d0&quot;&gt;here&lt;/a&gt;,
&lt;a href=&quot;http://github.com/280north/cappuccino/commit/82ce66af162b69ed791c353bf3c0ff2d782bdc8e&quot;&gt;here&lt;/a&gt;,
&lt;a href=&quot;http://github.com/280north/cappuccino/commit/211a7c7939592c02159102edc9ae049943eb20d6&quot;&gt;here&lt;/a&gt;,
&lt;a href=&quot;http://github.com/280north/cappuccino/commit/8de71663c22c48987dc7ad7d1eed2c0efb1142ec&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Support for HUD scrollbars. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d791a189bc31df19025ccbbeff170dfa79f3a1b1&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPFont now supports multiple font families which fall back on each other. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/34a6389a92c87eeee6f19503a0ef7acc237f5207&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPFlashView now handles flashVars and parameters. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/608853d4fa2c250949fd486042300aa292738556&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/066972ff758293843302a4aa51c0417e08d4528e&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Many nib2cib improvements for CPToolbar/CPToolbarItem. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1c89968b69346b464f88a900b619ea76b329d928&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/03eed5f4f9ace56587b7595a7f76a564c7bc2c63&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e76ee3c96eaf6a0cf41369fc7c166acc64a32ce5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e25a227e4d76b8d6e2e813d2d087c23540264edf&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c36f975bbff86728c55950923cf0e7dc60187daf&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (34)</title>
   <link href="http://suitmymind.com/blog/2010/01/07/this-week-in-edge-cappuccino-34"/>
   <updated>2010-01-07T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/01/07/this-week-in-edge-cappuccino-34</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/12/31/this-week-in-edge-cappuccino-33/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;December 31 - January 6, 2010 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 13 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fix for window overlapping the menu bar if the user dragged it up there. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5018df511b0c4bc2cb9ec0363d397874672e7fe6&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a3d168b646c30042b6b7bfed70faf941ce6a207e&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPTreeNode gets archiving support. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3cfd392e3e6777276713b7db4b045511d0122a38&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The jake branch should now build correctly. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/85c68f78dad0e8654b9405a88221b3e6325d5898&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPToolbarItem gets some more support in nib2cib. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7f85b8b33f427e1dd52d8dee04bca9882d036d50&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>devdiari.es : a sample Cappuccino/Rails application open sourced for your pleasure</title>
   <link href="http://suitmymind.com/blog/2010/01/07/devdiaries-a-sample-cappuccino-rails-application"/>
   <updated>2010-01-07T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2010/01/07/devdiaries-a-sample-cappuccino-rails-application</id>
   <content type="html">&lt;p&gt;As you &lt;a href=&quot;http://cashflowapp.com/blog/2009/11/19/what-happened-since-last-post.html&quot;&gt;may have read on the Cashflow blog&lt;/a&gt;, I'm gonna rewrite Cashflow App with Cappuccino and I wanted to get my hands a little dirty before starting the big rewrite.&lt;/p&gt;

&lt;p&gt;That's why I decided to write &lt;a href=&quot;http://devdiari.es&quot;&gt;devdiari.es&lt;/a&gt;, a Cappuccino + Rails app that collects the tweets of developers who chose to create a separate dev diary Twitter account.&lt;/p&gt;

&lt;h3&gt;devdiari.es : the goals&lt;/h3&gt;

&lt;p&gt;I find dev diaries interesting to read, but not necessarily on a daily basis. I don't want to &quot;pollute&quot; my Twitter feed with too much information, but I still sometimes want to read what other devs are doing. One of the goals of &lt;a href=&quot;http://devdiari.es&quot;&gt;devdiari.es&lt;/a&gt; is to aggregate and archive those tweets for further reading.&lt;/p&gt;

&lt;p&gt;The main purpose for me was to go deeper into Cappuccino by coding a small app from start to finish. The code can certainly be improved, I took shortcuts here and there and I made decisions that may not be optimal. But I wanted to ship. I hope I'll get some feedback (thomas at this domain) and hopefully &lt;a href=&quot;http://github.com/suitmymind/devdiari.es&quot;&gt;some contributions&lt;/a&gt;. It could become a collaborative Cappuccino app we could all use to learn and share our knowledge/best practices. It's up to you! I'll try to do a &lt;a href=&quot;http://cappuccinocasts.com&quot;&gt;screencast&lt;/a&gt; that explains how things work.&lt;/p&gt;

&lt;h3&gt;Technical details&lt;/h3&gt;

&lt;p&gt;devdiari.es is a Rails (2.3.5) app, it uses the &lt;a href=&quot;http://github.com/hayesdavis/grackle&quot;&gt;Grackle&lt;/a&gt; gem, &lt;a href=&quot;http://github.com/tobi/delayed_job&quot;&gt;delayed_job&lt;/a&gt;, the Cappuccino jake branch, and a slightly modified version of &lt;a href=&quot;http://github.com/nciagra/Cappuccino-Extensions/tree/master/CPActiveRecord/&quot;&gt;CPActiveRecord&lt;/a&gt;. The interface has mostly been done using &lt;a href=&quot;http://280atlas.com/&quot;&gt;Atlas&lt;/a&gt;. It is hosted on &lt;a href=&quot;http://heroku.com/&quot;&gt;Heroku&lt;/a&gt;, and new tweets are fetched daily via a cron task. The code is available on &lt;a href=&quot;http://github.com/suitmymind/devdiari.es&quot;&gt;Github&lt;/a&gt;. It currently doesn't work in Internet Explorer.&lt;/p&gt;

&lt;h3&gt;How to add a Twitter account to devdiari.es?&lt;/h3&gt;

&lt;p&gt;I first added a bunch of Twitter accounts I was following, then I decided to add &lt;a href=&quot;http://www.devdiaries.net/&quot;&gt;a list&lt;/a&gt; &lt;a href=&quot;http://twitter.com/pilky&quot;&gt;Martin Pilkington&lt;/a&gt; put together.
You can suggest other dev diaries that should be followed, and I'll consider adding them. Twitter accounts are not automatically added, because I'd like devdiari.es to be focused on dev diaries exclusively.&lt;/p&gt;

&lt;p&gt;Spread the word, I can't wait to get your feedback!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (33)</title>
   <link href="http://suitmymind.com/blog/2009/12/31/this-week-in-edge-cappuccino-33"/>
   <updated>2009-12-31T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/12/31/this-week-in-edge-cappuccino-33</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/12/25/this-week-in-edge-cappuccino-32/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;December 24 - December 30, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 7 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Observable arrays get 3 new methods : indexOfObject:, indexOfObjectIdenticalTo: and removeObjectIdenticalTo:. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/75fdfb5a0b55b15c20ffe13d0dc018f288f1bbde&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Added applyChange:toKeyPath: and inverseChangedDictionary to support &quot;automatic&quot; undo with KVO. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/dd999a29fd6c30da66903edb804c34dbfd0d232e&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (32)</title>
   <link href="http://suitmymind.com/blog/2009/12/25/this-week-in-edge-cappuccino-32"/>
   <updated>2009-12-25T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/12/25/this-week-in-edge-cappuccino-32</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/12/17/this-week-in-edge-cappuccino-31/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;December 17 - December 23, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 23 commits in the jake branch (which should be merged in the master branch one day).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fix for action being sent to disabled CPMenu items. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1411410f4e70c2b5c1a6215df333af985ce2740e&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a9bc949679db1be0785b1088162efcc26053425b&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;bootstrap.sh now asks if you want to delete your existing installations. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/aed52a78295588b7dd97f22769f0392428b296a9&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPView gets a new setSubviews: method that allows you to add multiple subviews. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7acfbb9eedbeb887d208834b1c3b89baf370ced3&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPDictionary gets better support for recursing in &lt;em&gt;dictionaryWithJSObject:recursively:&lt;/em&gt;. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cb1cfa4d9491fe1e91188b862050abe7826b3dd1&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPOperation has been added to Foundation. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/6cbaa35849ea7f35d9044c60ffa4b2209600b5b7&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;TextMate and Xcode files have been removed, since they now have their own repository. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2571b24f222c863afbe5778079da3dd9c10becb1&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (31)</title>
   <link href="http://suitmymind.com/blog/2009/12/17/this-week-in-edge-cappuccino-31"/>
   <updated>2009-12-17T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/12/17/this-week-in-edge-cappuccino-31</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/12/10/this-week-in-edge-cappuccino-30&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;December 10 - December 16, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 25 commits in the jake branch (which should be merged in the master branch one day).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPTextField get support for copy, paste, cut, selectRang and setSelectedRange. The PasteBoard gets several improvements. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/6ad62a6f2f60c0761f81cd52759448409f6be1d5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4d5cdcaeae6597b353e21d215b048bae68b4f9b5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c859ffd0f71c395ca7e0940f6901738312adb5c3&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Press gets a rewrite/cleanup. It is still a work in progress, but &lt;em&gt;press --flatten&lt;/em&gt; should work. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/6218bfaf9e5fd7569a09b6481bc596b82e6154ed&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Several improvements to CPUndoManager (and a new CPProxy class). The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/eb43e416ae1d6d5fa677dbcb2e80b002c0ad3882&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d200df3e9c66d992169a2286633ff2d4e7e890c3&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ac2c0d5d84cf855e6c4d1cc998003e656b9d1281&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Better key equivalents support in CPMenu. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5527e585f6dd459b7ce760b0606c6de9ea930cb5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/349de098af8a6b61105d07d6ea2b3f5c2baeea1a&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (30)</title>
   <link href="http://suitmymind.com/blog/2009/12/10/this-week-in-edge-cappuccino-30"/>
   <updated>2009-12-10T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/12/10/this-week-in-edge-cappuccino-30</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/12/03/this-week-in-edge-cappuccino-29/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;December 03 - December 09, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 34 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A lot of work has gone into the menus (positioning, unlimited submenus, nib2cib compatibility, new look (from &lt;a href=&quot;http://www.madebysofa.com/&quot;&gt;Sofa&lt;/a&gt;). Read &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/2c139246e435930c&quot;&gt;Francisco's announcement on the list&lt;/a&gt;. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f250373673ca90bdaec353d3734029c1b726e0aa&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cfc46edfb80ea9b48bbe5f6687ca73bb3f34cd10&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/565a017ebdf96f3cdf9f4551266af9b278ec3910&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/29963f74d6ba3cb05b8cc0e7017b5431ceb78225&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9ce4c7a4682986c0096ef069f0734fbadbda5119&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/506e3004b78a531c79d93f85521a50a21d55f8ea&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0eff4e2bc0346af7704bea3656ce0b31d5aae59a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/06b64c6a87f5d666b99d5b38602ec9f6cf712fd5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a64030ad933f03b12f4e82f5ae1cae8f709c5f4e&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/936d65291fc32d95d93bc323139269cf4a8ca854&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/becdf2bfeb8ebdb0b5c24cd96e3e50be615cb620&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ec41411675ee51d81b523c2306b646ddc09a62fe&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/629737cda33f28e26dad79118a21899b7985d536&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a30250f758d0ba4a6b448d0c58ec533965d9b452&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Cappuccino gets a CPCursor class, thanks to &lt;a href=&quot;http://github.com/cacaodev&quot;&gt;cocoadev&lt;/a&gt;. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c36c750c5dfe06f1880f04a28a8b3e2e8e63e3a4&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e1d3363ad901e80e94e04fbe5e35476d60515a78&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/dfb7599bb67326b0ed1ee8d0b0929bc42061253f&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1e723945f891c390d803d578d7329455f5da0a0c&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2351f73c76a80a006d949eb598346887cf74ed32&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1db2e0282a75668ba0d56dc118c683122023cce8&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;And a CPSearchField class thanks to &lt;a href=&quot;http://github.com/cacaodev&quot;&gt;cocoadev&lt;/a&gt; too. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/01d60ad4e9e613ffeff4e2e33e7fa24795fa5a11&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (29)</title>
   <link href="http://suitmymind.com/blog/2009/12/03/this-week-in-edge-cappuccino-29"/>
   <updated>2009-12-03T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/12/03/this-week-in-edge-cappuccino-29</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/11/26/this-week-in-edge-cappuccino-28&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;November 26 - December 02, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 14 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPString gets a new commonPrefixWithString method. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0575e96b60fd760e0994a574ed6c8fcf0410312c&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4fdddfb585ecec78e041706f9f6950f64c349098&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a4d5165a3dfe9297c26cca6b180ce562caf247ee&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;A lot of cleanup in the jake branch (can you feel the merge coming?) : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b592f6ae9205b96a59482ad15449b784ddd9e336&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/150e264f0dc6da89542829864bfaeeb74b44c940&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/feda903f2f2690c72b0f4320f881f0b20f1402a9&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4581fe4f226d8e1c529e48404066d35c9c78d83f&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b0dd3cd818a34ed0385039ab62b6c1168140844d&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPViewController does not load the same cibs lots of times anymore. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d58473c270171227a1d8b2426a3c6c6eca418302&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1381bb5c546b53d272fa00d8ebccea62df523b3c&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Keyboards event handling has been reworked, it now uses snippets from the Google Closure Library. &lt;a href=&quot;http://twitter.com/boucher&quot;&gt;Ross&lt;/a&gt; says : &amp;laquo;Previously, you had to manually blacklist keys which you wanted to use for keyboard events and which you did not want the browser to take action on. Now, this is inferred by whether or not your application returns YES from performKeyEquivalent:. Additionally, there’s a mechanism that will allow you to both perform a key equivalent and still allow the event to bubble up the browser if necessary. Another important fix is with copy/paste events. You’ve always been able to use the copy/paste events to interact with the native text clipboard, which allows applications like 280 Slides to copy and paste text without using a textfield. This broke in Safari 4, but is now fixed and should be even more robust&amp;raquo;. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/56a739655ffa787399a54de43f7a9fc7e8cdf67c&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3002acc8954e30f22723eca104272ba87d2c44cc&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (28)</title>
   <link href="http://suitmymind.com/blog/2009/11/26/this-week-in-edge-cappuccino-28"/>
   <updated>2009-11-26T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/11/26/this-week-in-edge-cappuccino-28</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/11/19/this-week-in-edge-cappuccino-27/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;November 19 - November 25, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 10 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can now choose to install Narwhal and its packages via &lt;em&gt;git clone&lt;/em&gt; (--clone option) instead of downloading the zip archives from Github. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ab49986238ab7e15cc6b17cf333a261c2b8dc087&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPApplication gets an About panel. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/72d01865ae695a460784a56e05517980ff562349&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fix for NSScrollView breaking nib2cib. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1e6fa93ea2e344dd6aa2db2ba0b3f305db33c9d0&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (27)</title>
   <link href="http://suitmymind.com/blog/2009/11/19/this-week-in-edge-cappuccino-27"/>
   <updated>2009-11-19T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/11/19/this-week-in-edge-cappuccino-27</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/11/12/this-week-in-edge-cappuccino-26&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;November 12 - November 18, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch, but there was 45 commits in the jake branch (which should be merged in the master branch anytime soon).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPTextField gets some changes so it behaves more like NSTextField. More info &lt;a href=&quot;http://groups.google.com/group/objectivej-dev/browse_thread/thread/4dc9583d9b5afc88/55ae6f239ea3d447&quot;&gt;in this thread&lt;/a&gt;. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/aaac5e429d021f9cd3f2164f396ea4841893a6cf&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e20311c25af7ef342627b72bb020ff216fb209a9&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;You don't have to call &lt;em&gt;sudo&lt;/em&gt; to run jake install, sudo is called by jake. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f4b37fbf3ba3282e51a35f978a1d8e10e292c49c&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPSavePanel gets some support for properties (like &lt;em&gt;isExtensionHidden, &lt;/em&gt;canSelectHiddenExtension, &lt;em&gt;allowsOtherFileTypes, &lt;/em&gt;canCreateDirectories) in desktop mode. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ec83a0f7790605581d1704865a83fd9ceaa47e0f&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPRadio gets support for target and action. See how it works &lt;a href=&quot;http://vimeo.com/7693495&quot;&gt;in this video&lt;/a&gt;. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ba01976151e4e0b020f2f60c2e377c104bcdeadd&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d584b4dccfb622f60f7fbceb5ef4843dccf24c92&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPToolbar got an almost complete rewrite. More info &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/33011e3dc85773c1/68c1e5bdd4f9f2d8&quot;&gt;in this thread&lt;/a&gt;. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8f1e56e398554b1c18250e0eb67f309daf8af2e1&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Built projects can now locate .j files in subfolders. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/49927fcfb7c6801abb6055ec21e43372cdab3b2a&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>#12 Playing with Atlas (beta)</title>
   <link href="http://suitmymind.com/blog/2009/11/17/12-playing-with-atlas-beta"/>
   <updated>2009-11-17T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/11/17/12-playing-with-atlas-beta</id>
   <content type="html">&lt;p&gt;&lt;strong&gt;[update] :&lt;/strong&gt; there is an error at 1:26 when I add a ScrollView then a CollectionView in it. In fact, there already is a ScrollView in the CollectionView, so you can simply skip the ScrollView. I've updated the code of the episode.&lt;/p&gt;

&lt;p&gt;In this episode, I'll try to show you the basics of &lt;a href=&quot;http://280atlas.com&quot;&gt;Atlas&lt;/a&gt; (which is available as a public beta since yesterday). I will assume that you already watched &lt;a href=&quot;/blog/2009/05/11/8-cappuccino-and-ruby-on-rails-the-weblog-application-part-1&quot;&gt;episodes #8&lt;/a&gt; and &lt;a href=&quot;/blog/2009/05/18/9-cappuccino-and-ruby-on-rails-the-weblog-application-part-2&quot;&gt;episode #9&lt;/a&gt;, cause in this screencast, I'll reuse part of the code that was written during those episodes. The small application written in this screencast is far from complete, but it will give you a taste of what you can do with Cappuccino and Atlas.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (26)</title>
   <link href="http://suitmymind.com/blog/2009/11/12/this-week-in-edge-cappuccino-26"/>
   <updated>2009-11-12T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/11/12/this-week-in-edge-cappuccino-26</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/11/05/this-week-in-edge-cappuccino-25/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;November 05 - November 11, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There haven't been any commit in the master branch.&lt;/p&gt;

&lt;p&gt;But it does not mean nothing happened.
The 280 guys were at &lt;a href=&quot;http://jsconf.eu/2009/&quot;&gt;JSConf EU&lt;/a&gt; where they showed off the new features coming in Cappuccino 0.8. They explained &lt;a href=&quot;http://cappuccino.org/discuss/2009/11/11/just-one-file-with-cappuccino-0-8/&quot;&gt;image spriting in a post on the Cappuccino blog&lt;/a&gt;. Commits this week were mainly bugfixes to the &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/7cdb19259bed2312&quot;&gt;jake branch&lt;/a&gt; (which &lt;a href=&quot;/blog/2009/11/04/cappuccino-building-the-jake-branch&quot;&gt;you should really try&lt;/a&gt; if you haven't yet).&lt;/p&gt;

&lt;p&gt;Also, remember that the &lt;a href=&quot;http://280atlas.com/&quot;&gt;Atlas Beta Program&lt;/a&gt; launches on November 15.
Exciting times!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (25)</title>
   <link href="http://suitmymind.com/blog/2009/11/05/this-week-in-edge-cappuccino-25"/>
   <updated>2009-11-05T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/11/05/this-week-in-edge-cappuccino-25</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/10/29/this-week-in-edge-cappuccino-24&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;October 29 - November 04, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 20 commits in the master branch.&lt;/p&gt;

&lt;p&gt;The jake branch will soon be merged into the master branch. &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/7cdb19259bed2312&quot;&gt;Read Francisco's post&lt;/a&gt; about those upcoming changes, and &lt;a href=&quot;http://suitmymind.com/blog/2009/11/04/cappuccino-building-the-jake-branch/&quot;&gt;read how to give this new branch a try&lt;/a&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Checkboxes get a new mixed state, and all existing controls get a disabled state. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2e26db5bf59506658778e928364417394c709206&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/de163e22d9a760857344b98aa349a659b4dfc354&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Documents/Windows get some love, with support for close warning for multiple windows per document and multiple documents per window, unsaved state for the close button on standard windows and recent file list support. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/04235464513d752953f213feaa35756e300ab3cb&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/df8c648d7030fcdd982ef352388c75002ad25080&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9ca96bc909ce752f0465f81e9feae4441deb56b8&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/874584310536f1bcc94415d4859c6c4556918eb9&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;nib2cib support for key equivalents. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/14ad8f6d6db356cc416e94706c32fcf89a810ff3&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2355cf4f6ce991b6122b37c89f38b965a724e14b&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>Cappuccino : building the jake branch</title>
   <link href="http://suitmymind.com/blog/2009/11/04/cappuccino-building-the-jake-branch"/>
   <updated>2009-11-04T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/11/04/cappuccino-building-the-jake-branch</id>
   <content type="html">&lt;p&gt;As &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/7cdb19259bed2312&quot;&gt;you may have already read&lt;/a&gt;, the Cappuccino jake branch will be merged soon into the master branch. This is a quick post that will try to recap all the steps required to install and test the jake branch.&lt;/p&gt;

&lt;h3&gt;Feedback needed&lt;/h3&gt;

&lt;p&gt;Please post your feedback here and I'll update the post accordingly. I'll post a &lt;a href=&quot;http://cappuccinocasts.com&quot;&gt;Cappuccino Cast&lt;/a&gt; based on this post, so the more accurate it is, the better the screencast will be.&lt;/p&gt;

&lt;h3&gt;Cleanup old install&lt;/h3&gt;

&lt;p&gt;If you already &lt;a href=&quot;http://cappuccinocasts.com/2009/10/25/10-build-cappuccino-from-the-source-on-snow-leopard/&quot;&gt;built Cappuccino from source&lt;/a&gt;, it's a good idea to cleanup the old install. If you never installed Cappuccino, you can skip this step.&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;$ sudo rm -Rf /usr/local/share/narwhal
$ cd /usr/local/bin
# those are old symlinks that referenced the /usr/local/share/narwhal/bin we just deleted
$ sudo rm activate activate.bash activate.cmd bake blend capp cplutil jackup js json narwhal narwhal.cmd nib2cib objj objjc ojtest press sea sea.cmd tusk tusk.cmd

# check if you have the $CAPP_BUILD env variable set
$ echo $CAPP_BUILD

# if it is set, make sure to remove the directory (it will be automatically recreated)
$ rm -Rf $CAPP_BUILD&lt;/pre&gt;
&lt;/div&gt;


&lt;h3&gt;Get the sources&lt;/h3&gt;

&lt;p&gt;If it's the first time you build Cappuccino, you have to set the CAPP_BUILD environment variable in your ~/.profile file and make sure to reload your environment :&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;export CAPP_BUILD=&quot;/your/path/of/choice&quot;
$ source ~/.profile&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Get the sources from Github, then switch to the jake branch&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;$ git clone git://github.com/280north/cappuccino.git
$ cd cappuccino
[master]$ git checkout -b jake origin/jake
[jake]$ # you are now in the jake branch&lt;/pre&gt;
&lt;/div&gt;


&lt;h3&gt;Install&lt;/h3&gt;

&lt;p&gt;Run the bootstrap script (answer &quot;yes&quot; to all questions, except if you are really sure you don't want to install a particular package) :&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;[jake]$ sudo ./bootstrap.sh
[jake]$ source ~/.profile # it reloads your environment so /usr/local/narwhal/bin will be available in your path&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Then you can choose to use Narwhal with Rhino or with JavaScriptCore (which is much more faster but still incomplete, for instance, the &quot;tusk&quot; package manager is not supported yet)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To use Narwhal with Rhino&lt;/strong&gt;, just run :&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;[jake]$ sudo env CAPP_BUILD=$CAPP_BUILD jake install&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Calling the &lt;em&gt;env&lt;/em&gt; command will make sure the &lt;em&gt;CAPP_BUILD&lt;/em&gt; variable is preserved while running the &lt;em&gt;sudo&lt;/em&gt; command. On Mac OS X 10.6, you could just run &lt;em&gt;sudo -E jake install&lt;/em&gt;, the -E flag would make sure your environment is preserved. But since it's not working with Mac OS X 10.5, I prefer to show you the command using &lt;em&gt;env&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;If you don't do that, the CAPP_BUILD environment variable won't be available to the jake script, and your CAPP_BUILD folder will remain empty.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To use Narwhal with JavaScriptCore&lt;/strong&gt;, you have to set the NARWHAL_ENGINE variable in your ~/.profile file and reload your environment :&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;# add this line to your ~/.profile file
export NARWHAL_ENGINE=jsc&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Then reload your environment :&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;$ source ~/.profile&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;And run :&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;[jake]$ sudo env CAPP_BUILD=$CAPP_BUILD NARWHAL_ENGINE=$NARWHAL_ENGINE jake install&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Again here, we make sure both the CAPP_BUILD and the NARWHAL_ENGINE variables are preserved.&lt;/p&gt;

&lt;h3&gt;Test it&lt;/h3&gt;

&lt;p&gt;If everything went smoothly, you should be able to create a brand new Cappuccino app and test it in your browser :&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;$ cd ~/Desktop
$ capp gen HelloJake&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;It is a good idea to test it with your existing apps too. Let's say you have a Cappuccino app in the MyApp folder :&lt;/p&gt;

&lt;div class=&quot;highlight&quot;&gt;
&lt;pre&gt;# we will overwrite the Frameworks directory, so it may be a good idea to backup your app
$ cp -R MyApp MyAppTestJake
$ capp gen -f MyAppTestJake --force&lt;/pre&gt;
&lt;/div&gt;


&lt;p&gt;Then test your app and please report any problem.
Thanks in advance for your feedback!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>#11 Playing with CPTableView</title>
   <link href="http://suitmymind.com/blog/2009/11/02/11-playing-with-cptableview"/>
   <updated>2009-11-02T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/11/02/11-playing-with-cptableview</id>
   <content type="html">&lt;p&gt;In this episode, I'll try to show you the basics of CPTableView. CPTableView is &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/9aaee3a13a850cb4&quot;&gt;quite young&lt;/a&gt; but it already represents a lot of work from the community, especially &lt;a href=&quot;http://twitter.com/me1000&quot;&gt;Randy Luecke&lt;/a&gt; who worked a lot on CPTableView for his forthcoming &lt;a href=&quot;http://www.timetableapp.com/&quot;&gt;TimeTable app&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I suggest you also read the &lt;a href=&quot;http://developer.apple.com/mac/library/DOCUMENTATION/Cocoa/Reference/ApplicationKit/Classes/NSTableView_Class/Reference/Reference.html&quot;&gt;NSTableView documentation&lt;/a&gt; for further information.&lt;/p&gt;

&lt;p&gt;Thanks for your feedback!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (24)</title>
   <link href="http://suitmymind.com/blog/2009/10/29/this-week-in-edge-cappuccino-24"/>
   <updated>2009-10-29T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/10/29/this-week-in-edge-cappuccino-24</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;/blog/2009/10/22/this-week-in-edge-cappuccino-23&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;October 22 - October 28, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 32 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Added support to nib2cib for specifying the &quot;Nib Name&quot; property of the View Controller palette to enable view controller initialization from cibs. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/25634a66cb2d300fa9d96245ff266488486e63a2&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d263c74d5def91f27cbaa529515f94afb7d72009&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/22c248454ef0bba9595d72a0a147cc23cbee6899&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;You now get an alert when you try to close unsaved CPDocument. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/82404265fbb583a5249f53e9aea920190e643b2b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b2d994bd66de498b7bc32148400c288cd5617736&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a0a81be042b06e7bf96948991ea84fc94c49eedc&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>Cashflow App goes Cappuccino</title>
   <link href="http://suitmymind.com/blog/2009/10/28/cashflow-app-goes-cappuccino"/>
   <updated>2009-10-28T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/10/28/cashflow-app-goes-cappuccino</id>
   <content type="html">&lt;p&gt;In case you missed it, &lt;a href=&quot;http://cashflowapp.com/blog/2009/10/23/what-s-going-on.html&quot;&gt;I'm co-developing a cash flow management application&lt;/a&gt; that will be a Webapp + iPhone app.&lt;/p&gt;

&lt;p&gt;We recently decided to &lt;a href=&quot;http://cashflowapp.com/blog/2009/10/27/regarding-the-user-interface.html&quot;&gt;rewrite the Webapp with Cappuccino&lt;/a&gt;. You can follow our development process on &lt;a href=&quot;http://cashflowapp.com/&quot;&gt;our new blog at cashflowapp.com&lt;/a&gt;. You can also &lt;a href=&quot;http://twitter.com/cashflowapp&quot;&gt;follow our updates&lt;/a&gt; via Twitter (&lt;a href=&quot;http://twitter.com/cashflowapp&quot;&gt;@cashflowapp&lt;/a&gt;).&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>#10 Build Cappuccino from the source on Snow Leopard</title>
   <link href="http://suitmymind.com/blog/2009/10/25/10-build-cappuccino-from-the-source-on-snow-leopard"/>
   <updated>2009-10-25T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/10/25/10-build-cappuccino-from-the-source-on-snow-leopard</id>
   <content type="html">&lt;p&gt;In this episode, I'll explain how to install Cappuccino from the source on a brand new Snow Leopard install. You'll also see how to link your application to the newly installed version of the framework, and how to update the framework.&lt;/p&gt;

&lt;p&gt;Here are some useful links about :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://hivelogic.com/articles/compiling-git-on-snow-leopard/&quot;&gt;Installing Git on Snow Leopard&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.gitready.com/&quot;&gt;Git Ready&lt;/a&gt;, &lt;a href=&quot;http://gitcasts.com/&quot;&gt;GitCasts&lt;/a&gt;, &lt;a href=&quot;https://peepcode.com/products/git&quot;&gt;Git on PeepCode&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://wiki.github.com/280north/cappuccino/capp&quot;&gt;More information about the capp command&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Your comments/remarks are welcome here!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (23)</title>
   <link href="http://suitmymind.com/blog/2009/10/22/this-week-in-edge-cappuccino-23"/>
   <updated>2009-10-22T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/10/22/this-week-in-edge-cappuccino-23</id>
   <content type="html">&lt;p&gt;It has been a long time since I wrote a &lt;a href=&quot;/category/cappuccino.html&quot;&gt;&quot;This Week in Edge Cappuccino&quot;&lt;/a&gt; post, so this one will try to sumarize 4 months of commits in the &lt;a href=&quot;http://github.com/280north/cappuccino&quot;&gt;master branch&lt;/a&gt;. Feel free to comment if I forgot something important.&lt;/p&gt;

&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/06/18/this-week-in-edge-cappuccino-22/&quot;&gt;post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;June 18 - October 21, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 309 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;There has been an incredible amount of work in CPTableView, including nib2cib support. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8beb71aa769892092aedb9847982a4a80751ab94&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1fecae3dc016efa0d1150f7a2ae029b17e3a4dae&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/dd4db720effb69ce45b4dbfd7fe17690596eb2f5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/849dda0725ef7d48bc17db49c49cf495825d82ff&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ac6c03f2c777d1bbad8515375513e6b97af596ff&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8c171e5a40cd16b04e0bf80e3e7f7ee33897360b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/714fc9d5bb1e2761e8b3342dc2a327714960444a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b12017cd51778f2ba252b444079150aa53bf55d9&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/528ef4394afc40b2dcf3ac0cbd92425c0fb61c30&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4086d37dac309f5210b2c03ed17fb27c06024ac0&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ddbc1e0e94734ef36e31d9670986a9fdc4835cb5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cb81eeed1596d48f44c3d2e0e1e196e58532a941&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/afba1909bb4dac215ebf53ad0b61d0cf40c95ab1&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/58aef6ef74b5367ea7b2900cdeb30eccaa3bf4c3&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1b8f2632248842f394fea025ecc1469674b36955&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/bd69683dc2d81c88a95b0d07e557d1527843b7e4&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2ee3b93e0d19211890a093b19c5dd9425f4d67d0&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3f7db4ca122dac18d26fb9f613d0547d8b3b90c0&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/824cd6d5f10fb7332e14d456a53304728295c7c8&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7528c452c43187abe6c09f9d5e0b8ccef4107fb6&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cdaa363a825ffec414646865a9b29fac8e9f624a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8990f6c3872f0448aef53d049cd5f7d7935796a7&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/14ba9c95eb23aaee9571584bb1d456dcdc0ec368&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d1c0237bf3fd2fb566a465ec25cabe60ce5f8df4&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/98e18340b7b8a1854b89dd75c47547645f06234f&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b77eef0cd3bb648a83a18ce1be87b4a578337355&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/46dbce0dbb0b3d01e9ecbd0268b846222e0a4c7b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2348a8ebd3fad50f35f303f8a9661094635633cb&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPIndexSet has been rewritten (including some tests). The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d16576174010876b2c5039f18e9c1f2e2ed012bd&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c97bb6cbdd2aca378b2f8135b0f14a21514b3ef2&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/bd07054a1bec531b0735b8c73ff3fc41ca5aa1be&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ab2cb3836262350256060e5c9aca743eb1de0822&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3b761ec55eaa74fc366b3221e1065a367a8299fa&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Emacs mode for Objective-J files. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9d64526f266d2184ab6b063f002cde3dcb1c1205&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;NSMutableString and NSMutableDictionary support in nib2cib. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a5b468bbeb1cd58112464682903a78485b41d1df&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPCollectionView support in nib2cib. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/215619e6e294889ab8b73f9326a50ac76f1874da&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9c226ae5743a7e6039fcaf1ccb1ea36a3f7bd98d&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/25d76c9510aef2ee2155a568d65dec67e812030b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0497888edf166ecc6caed900e53940f198402bfa&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPKeyValueObserving gets performance and memory improvement. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5ce96b45bb8ca28f3424bf8ddfb06d8745e08af1&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/43706041658e36ef8338c0c0bf515bad1c7d0bba&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0ef4e9bca5901602b9edc7519c54b48eccea3049&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Resources have been added/modified for CPButton, CPCheckbox, CPRadioButton, CPSearchField and CPScroller. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5ccc638bafbf22ca44d237e7965979c6f67c57f2&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/38e2ca3589dc8145875303ebf95c6460df5e7308&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/241cc2ac0662d16a0c157ca5d80b4a8e0a31b7ed&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/598411c072acc0b3644e4b17f2ed25afb8f3e9d6&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f51222dff635c58cefd17c92ced8658a78aaaa26&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a05ecd27593472b66990b8e14e0ccc3bd5763431&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/bbda6e6e77e6d694eaa7c779cb5c8232311d29bc&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d3bebfd064630c83771f3352652b474554f47cdd&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/dc8590078024de0b4d7159b48599b22a46b1a280&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cfd91b7a61ecd6e7a4c9efd826f2906ff07cc479&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Platform Windows support, &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/b2e5eb13fb2b8ce3/fbc859a5ecf879e1?lnk=gst&amp;amp;q=platform#fbc859a5ecf879e1&quot;&gt;as explained on the Google Group&lt;/a&gt;. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8382bb1ae85dc9a1e0828f2169231b7c98d411c8&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e69d770583c3d0db987717fb110e9fad84f58bd7&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ae7fbad2b977607082b65fa15c15a159049a36a0&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d53207efd511b7994c08f669d5a97ccebf6942ce&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d2b1df88e8a28ea1fc53109609d7427fa96898c7&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4d179b1db70661cf589727016901c444b0a617b5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/fa5352ad40a8352e28c2f376133d801556ebe378&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a34e23fa1cf880677f514f18a1f734d4ccc6c0ab&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/92594a7ef990e6bba55e2079e9d5536b512c4142&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2e37945b4f9680d30c4a3fbba094191a39c9e22a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/59bec06e6e295817de069b05c471d41aad1506f5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5bc92b686b4fae706bc12b8bb96b8ba2a30e1fb8&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/6a9804939e038ae8b72fe656505dd789c4154e65&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c850c0cf45e464772336ae1a28a874c4a1b936ae&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/07da83715bf44711122be93a35d8b79ed5486471&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7728d8abfbfacfafec9455982ee78c1b399055e0&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Native drag and drop support for Webkit/Safari (&lt;a href=&quot;http://www.alertdebugging.com/2009/08/16/on-html-5-drag-and-drop/&quot;&gt;read more about it on Francisco's blog&lt;/a&gt;). The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e8dd56bda70eb43a3be191e561f15f7674cd57f9&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPAccordionView added. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/744e78b7ada2433e1c404edd471c80458d2cee61&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/75060a3385c5e49205f2b9e488e1acc25c4d114a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/efcc5d10543837d3579d339303c007437b54c102&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPOutlineView added. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/041f8200dff3faf53734f7d625d471d74b6f55ec&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/96afa4b9506dfbf35e08902f273aca92457685db&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/fd62233960a8a22653e2da15d190a8d9972c308e&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/17273ecbfa10e374d1ede3041ea596d0c0fa80b8&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1bdea9ff450a6a04245c5d0ab86f39f812399060&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/abd3abdfeae6fd4ad94ea97dcc08ec027ac29d6c&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/dba418a93d6de82eed356d91c07884d6fe43abc7&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ee46ab23ba8fc4ae7932cd7caf4af16107c77e53&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/02907a599dc1b76ab395a74b36ad6e0a18f35824&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7205146e1b9b2c9cac504f8417919ccdb18d84c2&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPURL added, &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/6672dad0eebd3305/bcdcd18eb7d8d268?lnk=gst&amp;amp;q=cpurl#bcdcd18eb7d8d268&quot;&gt;as explained here&lt;/a&gt;. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/98df1859af444ca4c3bbc9864164a7f5e3128dce&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4f1d9fe83640efdb8b7bd2395771d6dc2d038a9d&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a32368f89a007d94c282e9f01706395d6c79767e&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c8ed0f543665a7bb686c31369841d4208c996af8&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPViewController and CPWebDavManager added. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/668540d0ce4fda583a4e8bda47db4f74a3935bb5&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPBox added (allows you to group, visually, some number of other views). The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/25f3d99732b81b8f1d3f811a9e7d1b1ed78bb846&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/317f1d356c61e24d10f0cb786f0687d75f7793f4&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Attached sheet (modal window) has been implemented. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d79ed12b5cc601215d8b4b6825cdb1c846f906b9#diff-1&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/570a2a56ffa25db172f2b2ab04b3ac74778eb7b7&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5b531b200543f96f5112506181716ccfa669f24f&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1d8cebd5be0f4659620a501d746f59c132a92bc5&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1fb9c973feeb3d7a53eeaca0f5c06dfc6e1ab98c&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;CPWindow now has support for minimization. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2338ca2fa22bea4e8aa0220aa553e92530185c62&quot;&gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (22)</title>
   <link href="http://suitmymind.com/blog/2009/06/18/this-week-in-edge-cappuccino-22"/>
   <updated>2009-06-18T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/06/18/this-week-in-edge-cappuccino-22</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/06/11/this-week-in-edge-cappuccino-21/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3 style=&quot;font-size: 1.17em;&quot;&gt;June 11 - June 17, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 9 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fix for superview's not remaining mouseEntered when mouse moves over subviews. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1e3b79de1798ea4f8a84b72792e66bb7e1aa5d79&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Added removeObjectsInArray: convinience method to CPMutableSet. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9bb9db760eccf2d6f9f2307b5b8aca2303826cc8&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title> This Week in Edge Cappuccino (21)</title>
   <link href="http://suitmymind.com/blog/2009/06/11/this-week-in-edge-cappuccino-21"/>
   <updated>2009-06-11T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/06/11/this-week-in-edge-cappuccino-21</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/06/04/this-week-in-edge-cappuccino-20/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;June 5 - June 10, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 14 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;CPToolbarItem gets a fix for its image view not displaying their image. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/886b4ef1188438ce9b3b8fdf982708c5de28df02&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;We now get a CPSearchField, thanks to &lt;a href=&quot;http://github.com/cacaodev&quot;&gt;cocoadev&lt;/a&gt;. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/fc74bba68c48c7b07b40cf369b7036d8758b22de&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a5c467fba5959e18966fdd3fe9beb58241a7de1b&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/927b94244ada46a660465a643af2f8f18c273021&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPImageView now accepts image drag and drop. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/eab4f4bf780e8d07d82a711f822f8bf70cc18899&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/90fe0d64f5457f30095d499c90ff4fc21aa7d077&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title> This Week in Edge Cappuccino (20)</title>
   <link href="http://suitmymind.com/blog/2009/06/04/this-week-in-edge-cappuccino-20"/>
   <updated>2009-06-04T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/06/04/this-week-in-edge-cappuccino-20</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/05/28/this-week-in-edge-cappuccino-19/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;May 28 - June 4, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 23 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;CPEvent gets some optimization for mouse event handling. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f4b4d381653ab11d6647435f750d79a4f8d51632&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0fff3bade6d0868d8a04712c10e6f8fe967dfaa1&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPJSObjectCreateJSON and CPJSObjectCreateWithJSON have been deprecated. You now have to use : JSON.stringify() and JSON.parse() instead. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cfda93d1e3a0c5279edffa6cf74743d14c9151be&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b0470ca2d7e43766f60b52b154ae3df693b8dc72&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>Deploying multiple environments on Heroku (while still hosting code on Github)</title>
   <link href="http://suitmymind.com/blog/2009/06/02/deploying-multiple-environments-on-heroku-while-still-hosting-code-on-github"/>
   <updated>2009-06-02T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/06/02/deploying-multiple-environments-on-heroku-while-still-hosting-code-on-github</id>
   <content type="html">&lt;p&gt;As mentioned in &lt;a href=&quot;http://suitmymind.com/2009/05/26/cashflow-app-a-preview-at-wwdc/&quot;&gt;an earlier post&lt;/a&gt;, &lt;a href=&quot;http://cashflowapp.com&quot;&gt;Cashflow App&lt;/a&gt; is now hosted on &lt;a href=&quot;http://heroku.com&quot;&gt;Heroku&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The main repository for my code is still hosted on Github. This is where I manage/version it.&lt;/p&gt;

&lt;p&gt;When you create an application on Heroku, it is automatically associated with a git repository hosted on Heroku. Deploying changes to your application is as simple as pushing your code to the associated git repository.&lt;/p&gt;

&lt;p&gt;&lt;a name=&quot;schema&quot;&gt;Here is a schema of what I want to achieve :&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3588391207/&quot;&gt;&lt;img class=&quot;alignnone&quot; title=&quot;Github/Heroku setup&quot; src=&quot;http://farm4.static.flickr.com/3320/3588391207_f7556fbce7_o.png&quot; alt=&quot;&quot; width=&quot;551&quot; height=&quot;203&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In this post, I will explain how I use Github to version my code and Heroku to deploy it, with 2 different environments. You may also read &lt;a href=&quot;http://jqr.github.com/2009/04/24/deploy-your-rails-application-in-2-minutes-with-heroku.html&quot;&gt;this article that explains how to deploy your application on Heroku&lt;/a&gt; and this one that also explain &lt;a href=&quot;http://jqr.github.com/2009/04/25/deploying-multiple-environments-on-heroku.html&quot;&gt;how to deal with multiple environments&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;Setup different environments on Github&lt;/h3&gt;


&lt;p&gt;On Github, I want to work with 2 branches : a master branch for production and a staging branch for testing. The master branch is what you get when you first clone your repository :&lt;/p&gt;

&lt;pre&gt;
git clone git@github.com:account_name/repository_name.git
cd repository_name
[master]$
&lt;/pre&gt;


&lt;p&gt;To create a staging branch, just do :&lt;/p&gt;

&lt;pre&gt;[master]$ git checkout -b staging
Switched to a new branch &quot;staging&quot;
[staging]$
&lt;/pre&gt;


&lt;p&gt;Then push your local staging branch to Github :&lt;/p&gt;

&lt;pre&gt;[staging]$ git push origin staging
Total 0 (delta 0), reused 0 (delta 0)
To git@github.com:account_name/repository_name.git
* [new branch]      staging -&gt; staging
[staging]$
&lt;/pre&gt;


&lt;p&gt;You should now have 2 branches on Github&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3589128090/&quot;&gt;&lt;img class=&quot;alignnone&quot; title=&quot;Github master/staging branch&quot; src=&quot;http://farm4.static.flickr.com/3152/3589128090_f4c4bdc710_o.png&quot; alt=&quot;&quot; width=&quot;202&quot; height=&quot;110&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;Create the Heroku Staging App&lt;/h3&gt;


&lt;p&gt;Now, I will create a Staging app on Heroku. This will create a git repository. I will only push code to this repository when I want to deploy modifications to the Staging app.&lt;/p&gt;

&lt;pre&gt;
[staging]$ heroku create myapp-staging --remote heroku-staging
Created http://myapp-staging.heroku.com/ | git@heroku.com:myapp-staging.git
Git remote heroku-staging added
[staging]$
&lt;/pre&gt;


&lt;p&gt;You'll notice that I specified a custom remote name : heroku-staging. It will allow you to specifically deploy your code to the Staging app.&lt;/p&gt;

&lt;p&gt;Your .git/config file should now look like this :&lt;/p&gt;

&lt;pre&gt;
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
[remote &quot;origin&quot;]
url = git@github.com:account_name/repository_name.com.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch &quot;master&quot;]
remote = origin
merge = refs/heads/master
[remote &quot;heroku-staging&quot;]
url = git@heroku.com:myapp-staging.git
fetch = +refs/heads/*:refs/remotes/heroku-staging/*
&lt;/pre&gt;




&lt;h3&gt;Create the Heroku Production App&lt;/h3&gt;


&lt;p&gt;Go back to the master branch :&lt;/p&gt;

&lt;pre&gt;
[staging]$ git checkout master
Switched to branch &quot;master&quot;
[master]$
&lt;/pre&gt;


&lt;p&gt;Create the heroku prod app :&lt;/p&gt;

&lt;pre&gt;
[master]$ heroku create myapp-prod --remote heroku-prod
Created http://myapp-prod.heroku.com/ | git@heroku.com:myapp-prod.git
Git remote heroku-prod added
[master]$
&lt;/pre&gt;


&lt;p&gt;Your .git/config file should now look like this :&lt;/p&gt;

&lt;pre&gt;
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
[remote &quot;origin&quot;]
url = git@github.com:account_name/repository_name.com.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch &quot;master&quot;]
remote = origin
merge = refs/heads/master
[remote &quot;heroku-staging&quot;]
url = git@heroku.com:myapp-staging.git
fetch = +refs/heads/*:refs/remotes/heroku-staging/*
[remote &quot;heroku-prod&quot;]
url = git@heroku.com:myapp-prod.git
fetch = +refs/heads/*:refs/remotes/heroku-prod/*
&lt;/pre&gt;




&lt;h3&gt;Deploy the Staging app&lt;/h3&gt;


&lt;p&gt;The Staging app on Heroku is linked to the heroku-staging remote. You'll want to push the code from your staging branch to the heroku-staging/master branch, &lt;a href=&quot;#schema&quot;&gt;as show in the first schema&lt;/a&gt; :&lt;/p&gt;

&lt;pre&gt;
[master]$ git push heroku-staging staging:master
...
To git@heroku.com:myapp-staging.git
* [new branch]      staging -&gt; master
[master]$
&lt;/pre&gt;


&lt;p&gt;staging:master means that you push your staging local branch to the master remote branch. Here, the remote branch is heroku-staging, which is linked to the staging app.&lt;/p&gt;

&lt;p&gt;Migrate the staging db :&lt;/p&gt;

&lt;pre&gt;
[master]$ git checkout staging
Switched to branch &quot;staging&quot;
[staging]$ heroku rake db:migrate --app myapp-staging
&lt;/pre&gt;




&lt;h3&gt;Deploy prod app&lt;/h3&gt;


&lt;pre&gt;
[staging]$ git checkout master
Switched to branch &quot;master&quot;
[master]$ git push heroku-prod master
...
To git@heroku.com:myapp-prod.git
* [new branch]      master -&gt; master
[master]$
&lt;/pre&gt;


&lt;p&gt;Migrate the prod db :&lt;/p&gt;

&lt;pre&gt;
[master]$ heroku rake db:migrate --app myapp-prod
&lt;/pre&gt;




&lt;h3&gt;Make some changes in staging and deploy them&lt;/h3&gt;


&lt;p&gt;First, switch to the staging branch, and make your changes.&lt;/p&gt;

&lt;pre&gt;
[master]$ git checkout staging
Switched to branch &quot;staging&quot;
[staging]$ make your change
[staging*]$ git commit -a -m &quot;test staging modification&quot;
&lt;/pre&gt;


&lt;p&gt;Then push your modifications to the staging branch on Github :&lt;/p&gt;

&lt;pre&gt;
[staging]$ git push origin staging
&lt;/pre&gt;


&lt;p&gt;Finaly, deploy your modifications to the heroku staging app&lt;/p&gt;

&lt;pre&gt;
[staging]$ git push heroku-staging staging:master
&lt;/pre&gt;




&lt;h3&gt;Make some changes in production and deploy them&lt;/h3&gt;


&lt;p&gt;Switch to the master branch, and make your changes.&lt;/p&gt;

&lt;pre&gt;
[staging]$ git checkout master
Switched to branch &quot;master&quot;
[master]$ make your change
[master*]$ git commit -a -m &quot;test production modification&quot;
&lt;/pre&gt;


&lt;p&gt;Then push your modifications to the master branch on Github :&lt;/p&gt;

&lt;pre&gt;
[master]$ git push origin master
&lt;/pre&gt;


&lt;p&gt;Finaly, deploy your modifications to the heroku prod app&lt;/p&gt;

&lt;pre&gt;
[master]$ git push heroku-prod master
&lt;/pre&gt;


&lt;p&gt;Feel free to comment this solution and to share your tips here.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (19)</title>
   <link href="http://suitmymind.com/blog/2009/05/28/this-week-in-edge-cappuccino-19"/>
   <updated>2009-05-28T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/05/28/this-week-in-edge-cappuccino-19</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/05/21/this-week-in-edge-cappuccino-18/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;May 21 - May 27, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 20 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;CPPanel is in the pipe. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5a3f1c81a0fd502d57af453c879a2ae789ad0bd4&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Theme improvement. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/aebbdbe0a335a7ae8b7bbeb5cc7f39062482d4b0&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/354fddf6b274baa17d8d398a21053109e1e2fc3d&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3523a9ff1239f70a19bd03eda2c9349668f8a75b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cfdb6b0df2af96652cba21d3553dd2d2e7e01516&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/bf21fbd000611dc663d50fca58050835d50a2dd2&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>Cashflow App : a preview at WWDC?</title>
   <link href="http://suitmymind.com/blog/2009/05/26/cashflow-app-a-preview-at-wwdc"/>
   <updated>2009-05-26T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/05/26/cashflow-app-a-preview-at-wwdc</id>
   <content type="html">&lt;p&gt;For those of you who were asking, here's a quick update about the &lt;a href=&quot;http://suitmymind.com/2009/04/17/an-update-about-cashflow-app/&quot;&gt;Cashflow App&lt;/a&gt; development.Things are going well, we took some infrastructure decisions, the presentation Website and the logo are almost done, we're refining the UI and we hope to have something to show at &lt;a href=&quot;http://developer.apple.com/WWDC/&quot;&gt;WWDC&lt;/a&gt; in 12 days.&lt;/p&gt;

&lt;h3&gt;About infrastructure&lt;/h3&gt;


&lt;p&gt;Initially, both Cashflow App's servers (Staging and Production) were 256Mb slices hosted at Slicehost set up with &lt;a href=&quot;http://suitmymind.github.com/ubuntu-machine/&quot;&gt;Ubuntu Machine&lt;/a&gt;. And then, a few weeks ago, we heard about &lt;a href=&quot;http://blog.heroku.com/archives/2009/4/24/commercial_launch/&quot;&gt;Heroku announcing their commercial launch&lt;/a&gt;.The timing was perfect and Heroku's technology seemed too interesting not to give it a chance. After some initial testing, I've migrated the 2 slices to 2 Heroku applications (Staging/Production). Even though Heroku offers git repository hosting, I do prefer to keep things separated, so the code is still hosted at &lt;a href=&quot;http://github.com&quot;&gt;Github&lt;/a&gt;. I'll explain in a later post how I manage the different git branches with the different Heroku applications.&lt;/p&gt;

&lt;p&gt;Talking about Github, we also migrated our issues from Lighthouse to Github, with &lt;a href=&quot;http://suitmymind.com/2009/04/18/move-your-tickets-from-lighthouse-to-github/&quot;&gt;this small piece of code I wrote&lt;/a&gt; some weeks ago. Github issues is a very simple and flexible solution that better suits our needs.&lt;/p&gt;

&lt;h3&gt;Presentation Website and Logo&lt;/h3&gt;


&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3567746538/&quot;&gt;&lt;img class=&quot;alignleft&quot; title=&quot;Cashflow App - Signup beta&quot; src=&quot;http://farm4.static.flickr.com/3611/3567746538_4e8850e4de_o.jpg&quot; alt=&quot;&quot; width=&quot;329&quot; height=&quot;102&quot; /&gt;&lt;/a&gt;We were lucky enough to work with &lt;a href=&quot;http://things.be&quot;&gt;a great designer&lt;/a&gt; who really understood our strong desire for simplicity. He did a great job with our logo and presentation Website.&lt;/p&gt;

&lt;p&gt;You'll soon be able to see it live and to signup for our beta release (we don't have a date yet).&lt;/p&gt;

&lt;h3&gt;Features and User Interface&lt;/h3&gt;


&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3564245790/&quot;&gt;&lt;img class=&quot;alignleft&quot; title=&quot;Cashflow App - iPhone mockups&quot; src=&quot;http://farm4.static.flickr.com/3645/3564245790_3bf8535e59_o.jpg&quot; alt=&quot;&quot; width=&quot;320&quot; height=&quot;450&quot; /&gt;&lt;/a&gt;It's interesting and hard at the same time to select the features that will made it to the first release.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://theocacao.com/document.page/296&quot;&gt;Scott Stevenson&lt;/a&gt;, from &lt;a href=&quot;http://theocacao.com/&quot;&gt;Theocacao&lt;/a&gt; had this &lt;a href=&quot;http://twitter.com/scottstevenson/status/1540034953&quot;&gt;interesting quote&lt;/a&gt; : &lt;em&gt;&quot;Once you've come up with a UI concept for a 1.0 version, try to imagine how 2.0 would look and work better, and consider making that 1.0.&quot;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Our aim for the first release is to provide a well thought app with a clean user interface and enough features and polishing so that people will find it useful and pleasant to use. We have many ideas about the app functionality, but we do not want to make too many assumptions before people really start to use it.&lt;/p&gt;

&lt;p&gt;We are really excited about the early feedback we will receive.&lt;/p&gt;

&lt;h3&gt;A preview release at WWDC?&lt;/h3&gt;


&lt;p&gt;We are working really hard to try to have a preview release at WWDC on June 8th. We'll first give access only to a few selected people, then we'll send some beta invitations in batch.&lt;/p&gt;

&lt;p&gt;In the meantime, follow us on Twitter : &lt;a href=&quot;http://twitter.com/cashflowapp&quot;&gt;@cashflowapp&lt;/a&gt; or &lt;a href=&quot;http://twitter.com/tbalthazar&quot;&gt;@tbalthazar&lt;/a&gt; to stay tuned.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title> This Week in Edge Cappuccino (18)</title>
   <link href="http://suitmymind.com/blog/2009/05/21/this-week-in-edge-cappuccino-18"/>
   <updated>2009-05-21T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/05/21/this-week-in-edge-cappuccino-18</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/05/14/this-week-in-edge-cappuccino-17/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As you surely have noticed, &lt;a href=&quot;http://cappuccino.org/discuss/2009/05/20/cappuccino-07-now-available/&quot;&gt;Cappuccino 0.7 has been released&lt;/a&gt;. This means that 0.7 is now in the &lt;a href=&quot;http://github.com/280north/cappuccino/commits/master&quot;&gt;master branch&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;May 14 - May 20, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 55 commits in the &lt;span style=&quot;text-decoration: line-through;&quot;&gt;0.7b&lt;/span&gt; master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;CPBezierPath has been added to the repository. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9c7f07979b3a228a64521a950e971820cf46fd8d&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/cfed10bbac26247e8523d4541be3798727203469&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Support for radion buttons and checkboxes has been added. See &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/7c41cbd9cbee9ea3/09f6df2f40826276?hl=en&amp;amp;lnk=gst&quot;&gt;Francisco's announcement&lt;/a&gt; for more information. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/94f83a92b7d356552f8c7ba484f3a1928160481c&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/67cfe69f3895986123683a7a14f21ec3da58b6e3&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/28da8ccacf101cacc32547c260bdbdccee717a6b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4ff6590e74f5d6492e917c3eb338070192045568&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8fc213a134f9bdac74cb4039d341bbd3b2a7f4b6&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/07ec530442793dcbaf095b0fb6a64ff1eeb58b18&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPURLConnection now has support for app: protocol, for use with &lt;a href=&quot;http://titaniumapp.com/&quot;&gt;Titanium&lt;/a&gt;, and it's delegate methods are now optional. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1d39235a45e8807f89462ad013655f18e6159c1e&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b9cbf8274efcb6aac430b35c3c5a12e530ed2cdd&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;The capp command gets some new options. Read &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/75b268a8543b5258/884aeef09e2a4979#884aeef09e2a4979&quot;&gt;Fancisco's announcement&lt;/a&gt; for more info. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a0cd03caa439f10f07e7853a632132351f22e12f&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/12cbbcd485fc1d9ebcf03ff92c07fdca3db93c79&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;HUD has been added to Aristo. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ea1783504decc58477a1487f421b8c8eb798d087&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d2be23e354134fa1c684902701d4447fe910e3eb&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>#9 Cappuccino and Ruby on Rails : the Weblog application (part 2)</title>
   <link href="http://suitmymind.com/blog/2009/05/18/9-cappuccino-and-ruby-on-rails-the-weblog-application-part-2"/>
   <updated>2009-05-18T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/05/18/9-cappuccino-and-ruby-on-rails-the-weblog-application-part-2</id>
   <content type="html">&lt;p&gt;In the &lt;a href=&quot;http://suitmymind.heroku.com/blog/2009/05/11/8-cappuccino-and-ruby-on-rails-the-weblog-application-part-1&quot;&gt;previous episode&lt;/a&gt; I showed you how to build the Cappuccino interface for the example Rails Weblog application.&lt;/p&gt;

&lt;p&gt;In this episode, we're gonna create the links between the front-end and the backend.&lt;/p&gt;

&lt;p&gt;You can learn more about the Rails Weblog application by &lt;a href=&quot;http://rubyonrails.org/screencasts&quot;&gt;watching this screencast&lt;/a&gt; by &lt;a href=&quot;http://railscasts.com/&quot;&gt;Ryan Bates&lt;/a&gt; (&lt;a href=&quot;http://twitter.com/rbates&quot;&gt;@rbates&lt;/a&gt;). The original code of the Rails Weblog application is hosted on &lt;a href=&quot;http://github.com/ryanb/blog-screencast/tree/master&quot;&gt;Ryan's Github page&lt;/a&gt;, but you'll find a slightly modified version in the &lt;a href=&quot;http://github.com/suitmymind/cappuccinocasts-episodes/tree/master/009&quot;&gt;episode source code&lt;/a&gt; for your convenience. Thanks to Ryan for letting me embed the code directly in my repository.&lt;/p&gt;

&lt;p&gt;Useful links :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://github.com/guides/providing-your-ssh-key&quot;&gt;create your SSH key&lt;/a&gt; (follow step 1 and 2)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://heroku.com/&quot;&gt;heroku.com&lt;/a&gt; : instant ruby platform (with a free plan)&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;The login / password for the Rails app are &lt;code&gt;admin / secret&lt;/code&gt;. This can be changed in app/controllers/posts_controller.rb, at line 99.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title> This Week in Edge Cappuccino (17)</title>
   <link href="http://suitmymind.com/blog/2009/05/14/this-week-in-edge-cappuccino-17"/>
   <updated>2009-05-14T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/05/14/this-week-in-edge-cappuccino-17</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/05/07/this-week-in-edge-cappuccino-16/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;May 7 - May 13, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 32 commits in the 0.7b branch.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPSegmentedControl has been added to Aristo. This class implements a horizontal button made of multiple segments. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3d2cf3f6b421ef9f4484f3c0150aeed932be95ec&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/41f3146c479398216c43c940c0b3a93af28410aa&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/78ec4046cc9d2eab7571a51a209407aa9fef8d65&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4c31b251102466f21a284ebe66db4ab98ea53cb8&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a71a984a03413aef001f997f5e8f9b1ab6fbfaf8&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;CPSecureTextField gets some love in IE. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0533ddcc3e129c603b67834dedcda4577b85b1b0&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;nib2cib gets some fixes too. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/645affad936176a366327c69a30a724ea076fa7d&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;The theme API has been finalized. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/862af9cbae6c1e89b474eda3c7728c27d5cc0f96&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/99c29c5e6173b5dd1f406a957178e071c2d416c3&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;The build tools now run on an abstraction layer called &lt;a href=&quot;http://github.com/tlrobinson/narwhal&quot;&gt;Narwhal&lt;/a&gt;. More information can be found in &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/e0d8cdddc2cf693e?hl=en&quot;&gt;Tom's announcement&lt;/a&gt; and of course in the commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ff23f320ac0b3bfd7de5783a3f99125f1095bdaa&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/6e11a66cb090c3c08031ddae74840fe88ee5e391&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/dcec480f080bf46242dc5c37d9da7ee5d4bda499&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0925d41db6057f6d084ca031cd340d77a081abfc&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;The capp command now uses CAP_BUILD if present. It still checks for STEAM_BUILD if CAPP_BUILD is not found. Can you feel 0.7&lt;span style=&quot;text-decoration: line-through;&quot;&gt;b&lt;/span&gt; coming? The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/43197b30995c0434a5e2839f224f257308d7bad8&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;CPURLConnection was calling didFailWithError for HTTP responses other than 200. didFailWithError is now called only if the request fails completely. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/issues/closed#issue/104&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>#8 Cappuccino and Ruby on Rails : the Weblog application (part 1)</title>
   <link href="http://suitmymind.com/blog/2009/05/11/8-cappuccino-and-ruby-on-rails-the-weblog-application-part-1"/>
   <updated>2009-05-11T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/05/11/8-cappuccino-and-ruby-on-rails-the-weblog-application-part-1</id>
   <content type="html">&lt;p&gt;In the next 2 screencasts, I will show you how to create a simple Cappuccino application and connect it with the example &lt;a href=&quot;http://rubyonrails.org/screencasts&quot;&gt;Ruby on Rails Weblog application&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In this episode, I will build the Cappuccino interface. I'll make the connections with the Rails application in the next episode.&lt;/p&gt;

&lt;p&gt;Thanks to &lt;a href=&quot;http://twitter.com/boucher&quot;&gt;Ross&lt;/a&gt; and &lt;a href=&quot;http://twitter.com/tolmasky&quot;&gt;Francisco&lt;/a&gt; who kindly reviewed my code for your pleasure.&lt;/p&gt;

&lt;p&gt;Your comments are welcome!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title> This Week in Edge Cappuccino (16)</title>
   <link href="http://suitmymind.com/blog/2009/05/07/this-week-in-edge-cappuccino-16"/>
   <updated>2009-05-07T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/05/07/this-week-in-edge-cappuccino-16</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/04/30/this-week-in-edge-cappuccino-15/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;April 30 - May 6, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 20 commits in the 0.7b branch.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPTexField gets some love : the placeholder string for CPSecureTextField no longer shows up as bullets, controlTextDidChange is now correctly fired, and there is also some bugfixes for IE (text selection) and Firefox. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/08b4bdada1f4b3646f9f34eafe4dcd0fbe4e6665&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/06947ef9d39f379773997d8d255e63bedbf66d0d&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c976557346c787eb3febe9bf49ede50544ba27d4&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/88d8a409bb2afe7c66998a616840b3e746a041fc&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;MainMenu.cib is now loaded automatically. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/390cf2c16c9785bf662466255c59b63ebd3b36c4&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;CPDictionary has 2 new methods : initWithObjectsAndKeys and dictionaryWithObjectsAndKeys. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2176785370dcd07058bb22157b9930e222320c54&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Windows are now forced to stay in the bounds of the browser window. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/6cd92e1278ab82ad04bcb232b7c1e943ead13bc1&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Highlight state and broken images resources have been fixed for CPMenu. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/fedf0ef7cefb1a97e8bca81462d28844d4ad6172&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/81d23aafabfeafc2597d3e1787de1ac26dbb8e1a&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;CPButton now has a sizeToFit method. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ae8fd0c2d401718778bda1963c448fc0521c9af6&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Tickets have been migrated from Lighthouse to &lt;a href=&quot;http://github.com/280north/cappuccino/issues&quot;&gt;Github&lt;/a&gt;, so, from now, browse them and report bugs on &lt;a href=&quot;http://github.com/280north/cappuccino/issues&quot;&gt;Github&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title> This Week in Edge Cappuccino (15)</title>
   <link href="http://suitmymind.com/blog/2009/04/30/this-week-in-edge-cappuccino-15"/>
   <updated>2009-04-30T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/30/this-week-in-edge-cappuccino-15</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/04/23/this-week-in-edge-cappuccino-14/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;April 23 - April 29, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 5 commits in the 0.7b branch.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;An incredible job has been done on the Webkit JavaScript profiler. The Webkit profiler now allows you to identify resource-consuming code much more acurately. &lt;a href=&quot;http://www.alertdebugging.com/2009/04/29/building-a-better-javascript-profiler-with-webkit/&quot;&gt;Read the extensive and very interesting article&lt;/a&gt; from &lt;a href=&quot;http://twitter.com/tolmasky&quot;&gt;@tolmasky&lt;/a&gt; for more information. It really helps to understand these 2 commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2f790c650338e235bab0af749a5a11edb3282704&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0e8e725f59daa041ebfed84d7173e39499617e25&quot;&gt;here&lt;/a&gt; (this second commit was &lt;a href=&quot;http://suitmymind.com/2009/04/16/this-week-in-edge-cappuccino-13/&quot;&gt;originally posted 2 weeks ago&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;Menu bars created in Interface Builder now show up when converted with nib2cib. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f887aca66f7d820627a7d21243c272a5531b7297&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title> This Week in Edge Cappuccino (14)</title>
   <link href="http://suitmymind.com/blog/2009/04/23/this-week-in-edge-cappuccino-14"/>
   <updated>2009-04-23T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/23/this-week-in-edge-cappuccino-14</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/04/16/this-week-in-edge-cappuccino-13/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;April 16 - April 22, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 14 commits in the 0.7b branch.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The color panel gets some love with a new opacity slider and some bugfixes. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7d0d01211b1802f741b6b0fa4c312f8c0d51a954&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a284275ffe01440bf7218c88a9177a038f27aaf6&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/6d8d4b59cc278af74d33c6c96d4cab1b2db3bce6&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;CPSlider now has a &lt;a href=&quot;http://github.com/280north/cappuccino/raw/df7fab7e032120c6360a2ee94116ea0f760f6b1a/AppKit/Themes/Aristo/Resources/CircularSliderBezel.png&quot;&gt;CPCircularSlider&lt;/a&gt; and some fixes (sliders now works with nib2cib). The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0eb86fd4b681147b95bda61a95ec97cfafdef933&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/df7fab7e032120c6360a2ee94116ea0f760f6b1a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f4e329f5defa13ee44ad3300f3204329b7db9d9f&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f9640fb99ebe89b6bbd7939e0863a0a385061dd4&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;CPSecureTextField has been added to nib2cib. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f9a1fb8d3fab863cd757c544708d867a1e6ca776&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1614855353e9e19c518a9d115f0200f7ac08adba&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;XCode now has syntax coloring and text completion. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a95aae22ab1d3e27e63aa9613391ddb379f23acd&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/120dcdac5421e5ab254e413fa0677b5005a260a6&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>#7 Understanding notifications (part 2)</title>
   <link href="http://suitmymind.com/blog/2009/04/20/7-understanding-notifications-part-2"/>
   <updated>2009-04-20T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/20/7-understanding-notifications-part-2</id>
   <content type="html">&lt;p&gt;In this Episode, I will illustrate how an observer object can listen to notifications sent by a particular object. I assume you have already watched &lt;a href=&quot;/blog/2009/04/06/6-understanding-notifications&quot;&gt;Episode #6&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As always, feel free to give some feedback about this episode!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>[updated] Move your tickets from Lighthouse to Github</title>
   <link href="http://suitmymind.com/blog/2009/04/18/move-your-tickets-from-lighthouse-to-github"/>
   <updated>2009-04-18T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/18/move-your-tickets-from-lighthouse-to-github</id>
   <content type="html">&lt;p&gt;Github has recently released an integrated &lt;a href=&quot;http://github.com/blog/411-github-issue-tracker&quot;&gt;issue tracking system&lt;/a&gt; which looks very promising. They also &lt;a href=&quot;http://github.com/blog/413-github-api-take-two&quot;&gt;updated their API&lt;/a&gt; (which now has an &lt;a href=&quot;http://develop.github.com/p/issues.html&quot;&gt;Issus API section&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;I decided to quickly write a small script that allows you to migrate your tickets from Lighthouse to the new GitHub issues tracker. This script will :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;search for open tickets in your Lighthouse project&lt;/li&gt;
&lt;li&gt;create a new issue for each Lighthouse ticket in your Github project&lt;/li&gt;
&lt;li&gt;apply the following labels to the each newly created Github issue :

&lt;ul&gt;
&lt;li&gt;the corresponding Lighthouse ticket tags&lt;/li&gt;
&lt;li&gt;the corresponding Lighthouse ticket milestone&lt;/li&gt;
&lt;li&gt;the corresponding Lighthouse ticket assignee&lt;/li&gt;
&lt;li&gt;the corresponding Lighthouse ticket state&lt;/li&gt;
&lt;li&gt;a &quot;from-lighthouse&quot; label&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Each newly created Github issue will also have a direct link to the corresponding Lighthouse ticket in its body.&lt;/p&gt;

&lt;p&gt;&lt;del&gt;Since the Github API does not currently allow to create issue comments, the Lighthouse ticket comments will simply be added in the Github issue's body (with some basic formatting to distinguish them from the initial ticket's body).&lt;/del&gt; &lt;a href=&quot;#update&quot;&gt;[1]&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;This script needs the &lt;a href=&quot;http://github.com/Caged/lighthouse-api/tree/master&quot;&gt;Lighthouse-api gem&lt;/a&gt; to be installed :&lt;/p&gt;

&lt;pre&gt;
$ gem sources -a http://gems.github.com
$ sudo gem install Caged-lighthouse-api
&lt;/pre&gt;


&lt;p&gt;Then, just download my script from here :&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://github.com/suitmymind/lighthouse-to-github/tree/master&quot;&gt;http://github.com/suitmymind/lighthouse-to-github/tree/master&lt;/a&gt;&lt;/p&gt;

&lt;pre&gt;
$ git clone git://github.com/suitmymind/lighthouse-to-github.git
&lt;/pre&gt;


&lt;p&gt;It is fairly easy to use and easy to configure, you'll find the following lines at the beginning of the script :&lt;/p&gt;

&lt;pre&gt;
# -------------------------
# --- Lighthouse configuration
LIGHTHOUSE_ACCOUNT      = 'YOUR_ACCOUNT_NAME'
LIGHTHOUSE_API_TOKEN    = 'YOUR_API_TOKEN'
LIGHTHOUSE_PROJECT_ID   = YOUR_PROJECT_ID
LIGHTHOUSE_TICKET_QUERY = &quot;state:open&quot;

# -------------------------
# --- Github configuration
GITHUB_LOGIN      = &quot;YOUR_ACCOUNT_NAME&quot;
GITHUB_API_TOKEN  = &quot;YOUR_API_TOKEN&quot;
GITHUB_PROJECT    = &quot;YOUR_GITHUB_PROJECT_NAME&quot;
&lt;/pre&gt;


&lt;p&gt;That's all you need to configure. You'll learn &lt;a href=&quot;http://github.com/blog/170-token-authentication&quot;&gt;how to get your Github token here&lt;/a&gt;, and &lt;a href=&quot;http://help.lighthouseapp.com/faqs/api/how-do-i-get-an-api-token&quot;&gt;how to get your Lighthouse token here&lt;/a&gt;. To find your Github project name, have a look at your Github URL :&lt;/p&gt;

&lt;pre&gt;
http://github.com/suitmymind/ubuntu-machine/tree/master
&lt;/pre&gt;


&lt;p&gt;Here 'ubuntu-machine' is the project name (it seems that Github project name with a dot in the name do not work for the moment).&lt;/p&gt;

&lt;p&gt;To find your Lighthouse account name and project ID, just have a look at a Lighthouse URL :&lt;/p&gt;

&lt;pre&gt;
https://suitmymind.lighthouseapp.com/projects/22483-ubuntu-machine/overview
&lt;/pre&gt;


&lt;p&gt;Here 'suitmymind' is the account name, and '22483' is the project ID.&lt;/p&gt;

&lt;p&gt;When you have downloaded and configured the script, all you have to do is to run :&lt;/p&gt;

&lt;pre&gt;
$ chmod 0755 migrate-lh-to-gh.rb
$ ruby migrate-lh-to-gh.rb
&lt;/pre&gt;


&lt;p&gt;It can take quite a long time denpending on the number of tickets you have to migrate.&lt;/p&gt;

&lt;p&gt;The script is surely not perfect, but I hope I can improve it with your feedback.&lt;/p&gt;

&lt;p&gt;Feel free to improve this script or to &lt;a href=&quot;http://github.com/suitmymind/lighthouse-to-github/issues&quot;&gt;post bug reports&lt;/a&gt;. Your feedback is more than welcome.&lt;/p&gt;

&lt;p&gt;I hope you'll find it useful!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a name=&quot;update&quot;&gt;[update 1]&lt;/a&gt;&lt;/strong&gt; : the Github API now allows to create comments, so Lighthouse comments are now migrated to Github comments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;[update 2]&lt;/strong&gt; : some more improvements and bugfixes :&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;the number of attachements in Lighthouse is now specified in the Github ticket's body&lt;/li&gt;
    &lt;li&gt;the dot (.) in label names is converted as •, since I cannot manage to create labels with dots through the API&lt;/li&gt;
    &lt;li&gt;
        there is a distinction for 'special' labels :
        &lt;ul&gt;
            &lt;li&gt;LH milestones now begins with |M| (e.g. : '|M| 0.7')&lt;/li&gt;
            &lt;li&gt;LH states now begins with |S| (e.g. : '|S| assigned')&lt;/li&gt;
            &lt;li&gt;LH assignees now begins with @ (e.g. : '@Thomas Balthazar')&lt;/li&gt;
            &lt;li&gt;LH tags that begins with @ now begins with #, to avoid confusion with the @assignee convention)&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/li&gt;
&lt;/ul&gt;



</content>
 </entry>
 
 <entry>
   <title>An update about Cashflow App</title>
   <link href="http://suitmymind.com/blog/2009/04/17/an-update-about-cashflow-app"/>
   <updated>2009-04-17T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/17/an-update-about-cashflow-app</id>
   <content type="html">&lt;p&gt;It has been &lt;a href=&quot;http://suitmymind.com/2009/01/21/from-mockup-to-screen/&quot;&gt;a while&lt;/a&gt; since I talked about Cashflow App. I've been really busy these days. I had lot of client work to do. I also &lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3447927770/&quot;&gt;spent&lt;/a&gt; a &lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3447114125/&quot;&gt;lot&lt;/a&gt; &lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3447114681/&quot;&gt;of&lt;/a&gt; &lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3447930600/&quot;&gt;time&lt;/a&gt; &lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3447115473/&quot;&gt;with&lt;/a&gt; &lt;a title=&quot;Le Baron5, from Brussles, Belgium&quot; href=&quot;http://www.myspace.com/lebaron5&quot;&gt;a terrific band from Brussels&lt;/a&gt;. I kept on improving &lt;a href=&quot;http://suitmymind.github.com/ubuntu-machine/&quot;&gt;Ubuntu Machine&lt;/a&gt; (which I of course used to setup the Staging server for Cashflow App) and I continued to &lt;a href=&quot;http://cappuccinocasts.com/&quot;&gt;contribute to Cappuccino&lt;/a&gt; (which ... hmm, I'll talk about that later). But I never stopped working on Cashflow App.&lt;/p&gt;

&lt;h3&gt;I'm not alone (anymore)&lt;/h3&gt;


&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3447196807/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3302/3447196807_907494a37c_o.jpg&quot; alt=&quot;Cashflow App - Lighthouse Ticket Bins&quot; /&gt;&lt;/a&gt;
It's sometimes hard to keep the focus when you work alone on a project, without any feedback but yours, without any encouragement but your cup of cofee in the morning. And it's hard to find the right person to work with, a person you trust and you share lots of opinions with. I'm pleased to announce that I now team with TMK, from &lt;a href=&quot;http://exidia.com/&quot;&gt;Exidia&lt;/a&gt;. TMK is a very kind person and a very talented fellow developer I met some years ago. He is the person who made me &lt;a href=&quot;http://www.apple.com/support/switch101/&quot;&gt;switch&lt;/a&gt; (it was &lt;a href=&quot;http://en.wikipedia.org/wiki/Mac_OS_X_v10.2&quot;&gt;Jaguar&lt;/a&gt; time, around 7 years ago). We now work together half a day each week, besides our alone work time. We use great tools such as &lt;a href=&quot;http://lighthouseapp.com/&quot;&gt;Lighthouse&lt;/a&gt; to get things done, stay focused, and deliver a beta version as soon as ... it is ready.&lt;/p&gt;

&lt;h3&gt;For iPhone too&lt;/h3&gt;


&lt;p&gt;Your read it, Cashflow App will be a Webapp + an iPhone app. We're very excited to work together to bring you a lean and easy way to manage your cashflow at your desk or directly in a restaurant/shop/...&lt;/p&gt;

&lt;p&gt;If you want to be informed how things are moving, you can follow &lt;a href=&quot;http://twitter.com/tbalthazar&quot;&gt;@tbalthazar&lt;/a&gt; (me) or &lt;a href=&quot;http://twitter.com/cashflowapp&quot;&gt;@cashflowapp&lt;/a&gt; on Twitter. I'll of course update this blog too, so you can subscribe to the &lt;a href=&quot;http://feeds2.feedburner.com/SuitMyMind&quot;&gt;RSS feed&lt;/a&gt; if you want, or &lt;a href=&quot;http://cashflowapp.com/&quot;&gt;signup to the newsletter&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (13)</title>
   <link href="http://suitmymind.com/blog/2009/04/16/this-week-in-edge-cappuccino-13"/>
   <updated>2009-04-16T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/16/this-week-in-edge-cappuccino-13</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/04/09/this-week-in-edge-cappuccino-12/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;April 9 - April 15, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 24 commits in the 0.7b branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;CPTextField and CPSecureTextField are being rewritten (There are still some issues in IE). They are now surrounded by a blue focus ring when they are selected. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/831bbef9e11d0e8ce663b11d2b67d11b9e4a60ea&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c55e1ac99cdbd224ca287748ea8fcd903c51b7af&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d01bc09b5bd2ce4147f6199dce4f2325478f059f&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b508ccab0873a986d1a51c1098b5bb5ba922b757&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Support for key views and tabbing has been added. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/db6c70215a8c08a74fe4393ddbe67bea5c0feb8e&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/822a4310cda9777507a2935cff516e5fba2dc220&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d2b5a7362eceea5e49e1ed88de362205eb6a8633&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/4ce0bbe1c034f372e713a5cc9f0e5180104fbd65&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Functions that showed up as anonymous in the Safari console now have a &quot;pretty&quot; name. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0e8e725f59daa041ebfed84d7173e39499617e25&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (12)</title>
   <link href="http://suitmymind.com/blog/2009/04/09/this-week-in-edge-cappuccino-12"/>
   <updated>2009-04-09T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/09/this-week-in-edge-cappuccino-12</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/04/02/this-week-in-edge-cappuccino-11/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;April 2 - April 8, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 15 commits in the 0.7b branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;CPView, CPClipView and CPDragServer now have support for autoscroll. It will allow the view to scroll while you are dragging an element beyond the document view. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/43af999d41b862304367f2a2319ed5e6582d75e1&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPColor gets some improvement with a new &lt;code&gt;isEqual&lt;/code&gt; method and some color caching. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b55140d50a5f82dec9082ff77dd87f0d4772814f&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/51b0231f68912ebda1cbd9f929754552a317b21d&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;You can now specify that CPCollectionView &lt;code&gt;allowsEmptySelection&lt;/code&gt;, which means that if you click anywhere in the CPCollectionView but on an item, the selection will be emptied. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ecee86cc6d66da5714db8babaa6b513f3de0e295&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Menus get some shadow support improvements. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/15b383886e9be1568c7dfd2970dd8c0887c3e8f2&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c61ba5f050a13b7f3ff89d7ca2615008a604ee26&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9c0777991b2f2fb900b08f188696667c7418a9cb&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>#6 Understanding notifications</title>
   <link href="http://suitmymind.com/blog/2009/04/06/6-understanding-notifications"/>
   <updated>2009-04-06T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/06/6-understanding-notifications</id>
   <content type="html">&lt;p&gt;In this episode, I will show you how notifications can be used by an object to inform an arbitrary number of observer objects of a particular action.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;[update] :&lt;/strong&gt; I renamed &lt;code&gt;_contentView&lt;/code&gt; &amp;rarr; &lt;code&gt;contentView&lt;/code&gt; and &lt;code&gt;_slider&lt;/code&gt; &amp;rarr; &lt;code&gt;slider&lt;/code&gt;. It is a good guideline &lt;em&gt;not&lt;/em&gt; to use the _ for the instance variables in your code to avoid conflict with Cappuccino super class instance variables. I've &lt;a href=&quot;http://github.com/suitmymind/cappuccinocasts-episodes/commit/0e91f8d62f657f7f24d9b4e23288673e892b40cd&quot;&gt;updated the eposide code&lt;/a&gt; to reflect those changes. Thanks to &lt;a href=&quot;http://twitter.com/boucher&quot;&gt;Ross&lt;/a&gt; for &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/56118e598f2ce1e5&quot;&gt;pointing this out&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (11)</title>
   <link href="http://suitmymind.com/blog/2009/04/02/this-week-in-edge-cappuccino-11"/>
   <updated>2009-04-02T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/02/this-week-in-edge-cappuccino-11</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/03/26/this-week-in-edge-cappuccino-10/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;March 25 - April 1, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 26 commits in the 0.7b branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;A default Cappuccino application now has a &quot;JavaScript is required&quot; message that &lt;a href=&quot;http://cappuccino.org/noscript/&quot;&gt;links here&lt;/a&gt; in case your browser doesn't support JavaScript. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a05e116ceb277f96cd70d250ddc82d599827bd6a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9420c22298e1e1699a1166925baa1ac23186d057&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/65593c520044dec0f3db74cfa99eb484a547c018&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPAttributedString's documentation has been improved. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f04a199f4ca288cbf04c49f5828fd95da18da362&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;shebang has been changed to bash in the tools shell scripts which should now run smoothly on Mac OS X and Linux. Shell scripts on Windows should soon be replaced by batch files. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/932aa87d8726091347e8a82f8d4f4a352b12664b&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;ojunit has been added as a git submodule. run &lt;code&gt;rake submodules&lt;/code&gt; then &lt;code&gt;rake test&lt;/code&gt; to run the tests. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/5b95ff5ff37d19e9b98656c990c9976036df0d6e#diff-2&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/2652ece82732bb975c6560b6a0cb3f848307b1b2&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d970bd58302113574c94a8e0d01f8cda832e1e3e&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPTextField which was broken in the initial 0.7b release has been improved (it is now editable again). The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/21ab1b7e062c599facbf87049f3afe0ec9843429&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Some bug fixes in drag and drop, the commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9ce20d50acd349be18bd31431296bbd8bfc6bd22&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/390208d16a61429025a1d0e579e796403d8e45c3&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>Search your Delicious bookmarks, a bookmarklet</title>
   <link href="http://suitmymind.com/blog/2009/04/01/search-your-delicious-bookmarks-a-bookmarklet"/>
   <updated>2009-04-01T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2009/04/01/search-your-delicious-bookmarks-a-bookmarklet</id>
   <content type="html">&lt;p&gt;I just wanted to share this small bookmarklet I created to search my Delicious bookmarks :&lt;/p&gt;

&lt;pre&gt;
javascript:var query = prompt('Search delicious :'); location.href='http://delicious.com/search?context=userposts&amp;amp;p=' + encodeURIComponent(query) + '&amp;amp;lc=1&amp;amp;u=USERNAME' ;
&lt;/pre&gt;


&lt;p&gt;You can drag and drop it on your bookmark bar from here : &lt;a href=&quot;javascript:var query = prompt('Search delicious :'); location.href='http://delicious.com/search?context=userposts&amp;amp;p=' + encodeURIComponent(query) + '&amp;amp;lc=1&amp;amp;u=USERNAME' ;&quot;&gt;seach delicious&lt;/a&gt;, then replace &lt;code&gt;USERNAME&lt;/code&gt; by your Delicous username.&lt;/p&gt;

&lt;p&gt;I hope you'll find it useful.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (10)</title>
   <link href="http://suitmymind.com/blog/2009/03/26/this-week-in-edge-cappuccino-10"/>
   <updated>2009-03-26T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/03/26/this-week-in-edge-cappuccino-10</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/03/19/this-week-in-edge-cappuccino-9/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;Cappuccino 0.7b&lt;/h3&gt;

&lt;p&gt;This week, &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/b513e1dc52ad1f89#&quot;&gt;Cappuccino 0.7b has been announced&lt;/a&gt;. It represents a lot of changes, a lot of commits. Unfortunately, I cannot find the time to go through all of them. So, what I'll do this week is recap what are the main changes and give you some pointers to the code. Next week, I'll start to go through the commits in the 0.7b branch as I usually do.&lt;/p&gt;

&lt;h3&gt;Theme support&lt;/h3&gt;

&lt;p&gt;As mentioned in the &lt;a href=&quot;http://wiki.github.com/280north/cappuccino/07-beta&quot;&gt;original 0.7b announcement&lt;/a&gt;, theme support is still very early and its difficult to not use the built in theme. Here are links to the Cappuccino theme implementation classes : &lt;a href=&quot;http://github.com/280north/cappuccino/blob/50ed22c63ca1f954d6c6d0fa63362d56d03135db/AppKit/CPTheme.j&quot;&gt;AppKit/CPTheme.j&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/blob/50ed22c63ca1f954d6c6d0fa63362d56d03135db/AppKit/CPThemedAttribute.j&quot;&gt;AppKit/CPThemedAttribute.j&lt;/a&gt;. With 0.7b, you also get an early version of the Aristo theme, designed by the &lt;a href=&quot;http://www.madebysofa.com/&quot;&gt;Sofa&lt;/a&gt; team. Here are some interesting threads on the mailing-list about themes : &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/d63d7f3b82b37af3/22d8ed2c0a03eb86?hl=en&amp;amp;lnk=gst&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/f634c134e3a25fd1/303751725fa7453c?lnk=gst&amp;amp;q=tolmasky+theme#303751725fa7453c&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;Platform support&lt;/h3&gt;


&lt;p&gt;Objective-J is now able to ship separate code for different platforms. This will allow low level frameworks, such as AppKit, to be implemented differently depending on the destination environment (iPhone, browser, command line, ...). This shouldn't have too much incidence on your code.&lt;/p&gt;

&lt;h3&gt;New build system&lt;/h3&gt;


&lt;p&gt;The build system now uses &lt;a href=&quot;http://rake.rubyforge.org/:Rake&quot;&gt;Rake&lt;/a&gt; instead of steam and ant. The new dependencies to build version 0.7b are java, gcc, ruby, rubygems and the plist gem. (You'll also need git installed if you want &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/d0fec8f13de96266&quot;&gt;automated setup for ojunit&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;On Mac OS X, java, ruby and rubygems are installed by default.
On Ubuntu Linux, you have to install them. &lt;a href=&quot;http://gist.github.com/83700&quot;&gt;Here are the commands&lt;/a&gt; that worked for me. I've also &lt;a href=&quot;http://cappuccinocasts.com/2009/03/23/5-playing-with-cappuccino-07b/&quot;&gt;published a screencast&lt;/a&gt; that explains how to build 0.7b.&lt;/p&gt;

&lt;h3&gt;Capp&lt;/h3&gt;


&lt;p&gt;Steam has now been replaced by &lt;a href=&quot;http://wiki.github.com/280north/cappuccino/capp&quot;&gt;capp&lt;/a&gt;. To create a new Cappuccino application, all you have to do is &lt;code&gt;capp my-app&lt;/code&gt;. You can also use the capp command to create a new Cappuccino project based on a Nib file : &lt;code&gt;capp my-app -t NibApplication&lt;/code&gt;. Here is an interesting &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/33d5ef51fc29aec6&quot;&gt;thread about Nib files&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;Beta&lt;/h3&gt;


&lt;p&gt;A lot of work has been accomplished for this release, but remember that it is still beta. You're more than welcome to help test it and &lt;a href=&quot;http://cappuccino.lighthouseapp.com/&quot;&gt;report bugs&lt;/a&gt;, discuss it on &lt;a href=&quot;http://groups.google.com/group/objectivej&quot;&gt;the mailing-list&lt;/a&gt; and on &lt;a href=&quot;irc://irc.freenode.net#cappuccino&quot;&gt;IRC&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Feel free to post your comment to this post if you think something important is missing.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>#5 Playing with Cappuccino 0.7b</title>
   <link href="http://suitmymind.com/blog/2009/03/23/5-playing-with-cappuccino-07b"/>
   <updated>2009-03-23T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/03/23/5-playing-with-cappuccino-07b</id>
   <content type="html">&lt;p&gt;In this episode, I'll explain how to install &lt;a href=&quot;http://wiki.github.com/280north/cappuccino/07-beta&quot;&gt;Cappuccino 0.7b&lt;/a&gt; and still be able to play with 0.6. I'll assume you went through the steps described in episode #2 : &lt;a href=&quot;/blog/2009/02/09/2-build-cappuccino-from-the-source&quot;&gt;Build Cappuccino from the source&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Here are some useful links about :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://rubygems.org/&quot;&gt;Rubygems&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://hivelogic.com/articles/2008/02/ruby-rails-leopard&quot;&gt;How to install Ruby and Rubygems on Leopard&lt;/a&gt;, by Dan Benjamin (just skip the parts you don't need)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://rake.rubyforge.org/&quot;&gt;Rake&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Git : &lt;a href=&quot;http://www.gitready.com/&quot;&gt;Git Ready&lt;/a&gt;, &lt;a href=&quot;http://gitcasts.com/&quot;&gt;GitCasts&lt;/a&gt;, &lt;a href=&quot;https://peepcode.com/products/git&quot;&gt;Git on PeepCode&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Here are the commands I run to completely remove Cappuccino 0.6 at the end of the screencast (watch out, those commands really delete files ...) :&lt;/p&gt;

&lt;pre&gt;sudo rm /usr/local/bin/bake
sudo rm /usr/local/bin/cplutil
sudo rm /usr/local/bin/nib2cib
sudo rm /usr/local/bin/objj
sudo rm /usr/local/bin/objjc
sudo rm /usr/local/bin/ojtest
sudo rm /usr/local/bin/press
sudo rm /usr/local/bin/steam
sudo rm -Rf /usr/local/share/objj&lt;/pre&gt;


&lt;p&gt;Your comments/remarks are welcome here!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (9)</title>
   <link href="http://suitmymind.com/blog/2009/03/19/this-week-in-edge-cappuccino-9"/>
   <updated>2009-03-19T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/03/19/this-week-in-edge-cappuccino-9</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/03/12/this-week-in-edge-cappuccino-8/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;March 12 - March 18, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 2 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;CPCollectionView is now selectable by default. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9f8ca93a577f879f66d1d225fd66178c18e471de&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;The CPString pathComponents method now matches the &lt;a href=&quot;http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html#//apple_ref/occ/instm/NSString/pathComponents&quot;&gt;Cocoa version&lt;/a&gt; : it returns an array of strings containing, in order, each path component. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b7b0ca40b09d7ea177d3b4c067d4e59c9a75525f&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (8)</title>
   <link href="http://suitmymind.com/blog/2009/03/12/this-week-in-edge-cappuccino-8"/>
   <updated>2009-03-12T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/03/12/this-week-in-edge-cappuccino-8</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/03/05/this-week-in-edge-cappuccino-7/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;March 5 - March 11, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 16 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;The Doxygen documentation is being improved. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/89e776281f2b4573a5d94f66b41a666f0c220544&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0508c5479934908b1ce0562d71f1e6861816e922&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt; The documentation for CPObject, the root class for most Cappuccino classes has been improved. It now explains how to override the &lt;code&gt;init&lt;/code&gt; and &lt;code&gt;description&lt;/code&gt; methods.The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/bbe1b58437eab5519f95498f59ecb7c931296644&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPControl now has support for tooltip. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/55fa6024dbade24c5263ded5aa61d471c22b825a&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/faac82287f43c57775b859f1e180e8b31e71aa88&quot;&gt;here&lt;/a&gt;. (But this change has been reverted for the moment, the commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/19d26f148f8ab57bca83c2807d12869abe85c234&quot;&gt;here&lt;/a&gt;).&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>#4 Understanding delegates</title>
   <link href="http://suitmymind.com/blog/2009/03/09/4-understanding-delegates"/>
   <updated>2009-03-09T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/03/09/4-understanding-delegates</id>
   <content type="html">&lt;p&gt;In this episode, I'll show you how to change a class behavior by implementing a delegate method.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Update :&lt;/em&gt; there was an error in this episode (thanks to Giulio Cesare for pointing this out), the movies and code have been updated. If  you already downloaded them, please download them again.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (7)</title>
   <link href="http://suitmymind.com/blog/2009/03/05/this-week-in-edge-cappuccino-7"/>
   <updated>2009-03-05T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/03/05/this-week-in-edge-cappuccino-7</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/02/26/this-week-in-edge-cappuccino-6/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;February 26 - March 4, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 7 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;CPDate now has support for UNIX epoch initialization. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1da9e93241740c1b4cfe3c0bfb30648db07cfa4f&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8da7b0ee911c4f9b0aa5f8b1ae195f9734941aed&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPColor now accepts 3 chars hex values. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/547ed38855691a472783320c6eded20bd8d6a6d5&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Keep them coming guys!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (6)</title>
   <link href="http://suitmymind.com/blog/2009/02/26/this-week-in-edge-cappuccino-6"/>
   <updated>2009-02-26T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/02/26/this-week-in-edge-cappuccino-6</id>
   <content type="html">&lt;div&gt;
&lt;div&gt;

See last &lt;a href=&quot;http://suitmymind.com/2009/02/19/this-week-in-edge-cappuccino-5/&quot;&gt;week post here&lt;/a&gt;.
&lt;h3&gt;February 19 - February 25, 2009 Edition&lt;/h3&gt;
There have been 2 commits in the master branch.

There hasn't been any significative change in the Cappuccino master branch this week, but as you may already know, the &lt;a href=&quot;http://280north.com/&quot;&gt;280 North&lt;/a&gt; guys made a big announcement this Tuesday at FOWA.

They announced &lt;a href=&quot;http://280atlas.com/&quot;&gt;Atlas&lt;/a&gt;. Watch the screencast which is more than self explanatory.

I'm pretty sure I'll have much more work to do for the This Week in Edge Cappuccino serie in the upcoming weeks. Guess what! I'm excited!&lt;/div&gt;
&lt;/div&gt;

</content>
 </entry>
 
 <entry>
   <title>#3 Play with the Twitter Search API and JSONP</title>
   <link href="http://suitmymind.com/blog/2009/02/23/3-play-with-the-twitter-search-api-and-jsonp"/>
   <updated>2009-02-23T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/02/23/3-play-with-the-twitter-search-api-and-jsonp</id>
   <content type="html">&lt;p&gt;Since Twitter clients seems to be kind of &lt;a href=&quot;http://twitter.com/lsinger/statuses/1193683066&quot;&gt;HelloWorld2.0&lt;/a&gt;, this episode will show you how to use JSONP and connect to the Twitter Search API.
For this episode, I've decided to copy/paste some chunks of code instead of typing them, to quickly go straight to the point. Please give me your feedback about the copy/paste thing.&lt;/p&gt;

&lt;p&gt;Some useful links :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://cappuccino.org/discuss/2008/10/08/xmlhttprequest-jsonp-cappuccino/&quot;&gt;XMLHTTPRequest, JSONP &amp;amp; Cappuccino&lt;/a&gt; on the Cappuccino Blog&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://bob.pythonmac.org/archives/2005/12/05/remote-json-jsonp/&quot;&gt;Remote JSON - JSONP&lt;/a&gt; on the Python Mac Blog&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://apiwiki.twitter.com/Search+API+Documentation&quot;&gt;The Twitter Search API documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (5)</title>
   <link href="http://suitmymind.com/blog/2009/02/19/this-week-in-edge-cappuccino-5"/>
   <updated>2009-02-19T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/02/19/this-week-in-edge-cappuccino-5</id>
   <content type="html">&lt;div&gt;

See last &lt;a href=&quot;http://suitmymind.com/2009/02/12/this-week-in-edge-cappuccino-4/&quot;&gt;week post here&lt;/a&gt;.
&lt;h3&gt;February 12 - February 18, 2009 Edition&lt;/h3&gt;
There have been 3 commits in the master branch.
&lt;ul&gt;
    &lt;li&gt;CPSplitView now has support for autoresizing its inner subviews. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0bd543b57b2dcedcfcf9439d500729372827a08d&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b7f2f315e28006504c1adb7729858b0a8b29ef98&quot;&gt;here&lt;/a&gt;. &lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;


&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Update :&lt;/strong&gt; There have been lots of commits in &lt;a href=&quot;http://github.com/tolmasky/cappuccino/tree/master&quot;&gt;Francisco's repository&lt;/a&gt; which means we can expect great improvements in the next weeks. Read more about the upcoming changes in &lt;a href=&quot;http://groups.google.com/group/objectivej/browse_thread/thread/d63d7f3b82b37af3&quot;&gt;this announcement&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (4)</title>
   <link href="http://suitmymind.com/blog/2009/02/12/this-week-in-edge-cappuccino-4"/>
   <updated>2009-02-12T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/02/12/this-week-in-edge-cappuccino-4</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/02/05/this-week-in-edge-cappuccino-3/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;February 5 - February 11, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There has been 1 commit in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;CPView now has convenience methods for full screen. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/48fb8f00caf29d28aaf0bea5045a5e22f220faa6&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>#2 Build Cappuccino from the source</title>
   <link href="http://suitmymind.com/blog/2009/02/09/2-build-cappuccino-from-the-source"/>
   <updated>2009-02-09T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/02/09/2-build-cappuccino-from-the-source</id>
   <content type="html">&lt;p&gt;This episode will first show you how to install the frameworks and tools.
Then you'll learn how to build Cappuccino from the source in order to profit from the last patches.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (3)</title>
   <link href="http://suitmymind.com/blog/2009/02/05/this-week-in-edge-cappuccino-3"/>
   <updated>2009-02-05T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/02/05/this-week-in-edge-cappuccino-3</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/01/29/this-week-in-edge-cappuccino-2/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;January 29 - February 4, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 16 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;The CPCollectionView gets new accessor methods for numberOfRows, numberOfColumns and verticalMargin. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d1977f148e3f9b4aa9dd72f587b5dc86fd538c41&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/66bbfbbb3ca17e96bb7743ece664b8f071379644&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPAlert can now be styled. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/d2b11a9ba44da566940ee8cc9baa0aab5f54f9fb&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/69cf9b34b181f967bc7cbb321236a629c8942370&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/471f6cb5e54b93869ff73fd992b884d22d1e8c57&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;The CPTextField placeholder string has been fixed. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a9034de9cd3e376eda95da001532e52293cd83a0&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;A CPView can now be centered according to a given point, and you can also get the center point of a given view. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/f671b89da558b89f68c938e65ddc3624f0d4172a&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/ecaab49c08d2a6738cf17fcece862bbcb62ad59d&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0e965f73b75cb2ad549ff157a8c7fa9c7fe8c6af&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPString now has a UUID (Universally Unique IDentifier) generator. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1758e18bd248cb07814bd4aabfbc0caa30fbffec&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c29b5f2fef6c4b4b06c5c2984aa8926908091aee&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino (2)</title>
   <link href="http://suitmymind.com/blog/2009/01/29/this-week-in-edge-cappuccino-2"/>
   <updated>2009-01-29T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/01/29/this-week-in-edge-cappuccino-2</id>
   <content type="html">&lt;p&gt;See last &lt;a href=&quot;http://suitmymind.com/2009/01/22/this-week-in-edge-cappuccino/&quot;&gt;week post here&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;January 22 - January 28, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 23 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;The CPCountedSet class has been created. A counted set is an unordered collection of elements that aren't necessarily distinct. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/928be8d8e71bf74ebc50049439b0ffea763bef34&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/06601ba5dfd6c2da2b6ba52a7041b1b1c0989a69&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;A close button has been added to the standart window look (_CPStandardWindowView). The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/289d0cac633651c894f3dec10ae65d53d4914555&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;_CPImageAndTextView now has support for vertical alignment, text shadows, and is being integrated into CPButton. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/b0d5ca2830fe2e19bb348d1cb2311f40e0034ec8&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9e7fd7f74f6cf705dc8c5b487eb604ac2344bc3c&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/10b34965bd12fe8ba6ab1b452ed77656f87b35bb&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Some placing and spacing issues have been fixed in CPPopUpButton. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/3ac6b3c1fb43b35e8a59d79b9acd74d1e695fd82&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c8101d481e70ca68e05328745a3ce5202c74d545&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>cappuccinocasts.com : free Cappuccino screencasts</title>
   <link href="http://suitmymind.com/blog/2009/01/29/cappuccinocastscom-free-cappuccino-screencasts"/>
   <updated>2009-01-29T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/01/29/cappuccinocastscom-free-cappuccino-screencasts</id>
   <content type="html">&lt;p&gt;I just launched &lt;a href=&quot;http://cappuccinocasts.com/&quot;&gt;cappuccinocasts.com&lt;/a&gt;, a free serie of Cappuccino screencasts.&lt;/p&gt;

&lt;p&gt;Your feedback is welcome!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Track files that are downloaded from you website with Google Analytics</title>
   <link href="http://suitmymind.com/blog/2009/01/28/track-files-that-are-downloaded-from-you-website-with-google-analytics"/>
   <updated>2009-01-28T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/01/28/track-files-that-are-downloaded-from-you-website-with-google-analytics</id>
   <content type="html">&lt;p&gt;This is just a small Javascript snippet I'd like to share. It allows you to track links that lead to file downloads (e.g. links to .mov, .m4v, .pdf, ... files) with Google Analytics (with the latest version of the tracking code, not the old urchin code).
It requires the &lt;a href=&quot;http://prototypejs.org/download&quot;&gt;prototype library&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Add this just before the &lt;code&gt;&amp;lt;/body&amp;gt;&lt;/code&gt; tag to track links to .mov and .m4v files :&lt;/p&gt;

&lt;pre&gt;

var links_to_track = $$('a').grep(/[(\.mov)|(\.m4v)]$/) ;

links_to_track.each(function(a) {
    a.observe('click', function() {
        pageTracker._trackPageview(a.href);
    });
}) ;
&lt;/pre&gt;


&lt;p&gt;Feel free to comment this solution.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>#1 Cappuccino sample application</title>
   <link href="http://suitmymind.com/blog/2009/01/26/1-cappuccino-sample-application"/>
   <updated>2009-01-26T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/01/26/1-cappuccino-sample-application</id>
   <content type="html">&lt;p&gt;This first screencast is an introduction to Cappuccino and is based on &lt;a href=&quot;http://cappuccino.org/learn/tutorials/starter-tutorial.php&quot;&gt;this tutorial&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>This Week in Edge Cappuccino</title>
   <link href="http://suitmymind.com/blog/2009/01/22/this-week-in-edge-cappuccino"/>
   <updated>2009-01-22T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/01/22/this-week-in-edge-cappuccino</id>
   <content type="html">&lt;p&gt;In an effort to learn &lt;a href=&quot;http://cappuccino.org&quot;&gt;Cappuccino&lt;/a&gt; and be an active member of its development community, I'd like to start a &quot;This Week in Edge Cappuccino&quot; serie on this blog. It has been inspired by the &quot;&lt;a href=&quot;http://weblog.rubyonrails.org/search?q=this+week+in+edge+rails&quot;&gt;This Week in Edge Rails&lt;/a&gt;&quot; serie.&lt;/p&gt;

&lt;p&gt;Since I'm quite new to Cappuccino, I hope some &lt;a href=&quot;http://twitter.com/tlrobinson&quot;&gt;more&lt;/a&gt; &lt;a href=&quot;http://twitter.com/tolmasky&quot;&gt;experimented&lt;/a&gt; &lt;a href=&quot;https://twitter.com/boucher&quot;&gt;developers&lt;/a&gt; will comment here and correct me if I'm wrong. I hope these posts will get better and better as I dig deeper into Cappuccino.&lt;/p&gt;

&lt;p&gt;I'll only comment the most interesting and significant changes in the code.&lt;/p&gt;

&lt;h3&gt;January 15 - January 21, 2009 Edition&lt;/h3&gt;


&lt;p&gt;There have been 27 commits in the master branch.&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;The rounded style CPTextField (CPTextFieldRoundedBezel) had incorrect positioning. It is now displayed correctly. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/03f1cf8ec4d3c10b8a56e2f8eb8c4bb7e07c0ff9&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c2ed5b68a162a4ef53304f706eab2e315fbdd50c&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0559bac7a93987d2fe12d7adaf9dc98089a39752&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Local documents can now be opened by Cappuccino document apps. CPURLConnection.j now has a method to test if the connection is established with a local file (&lt;code&gt;file:&lt;/code&gt;). The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e926aad568d1e73d6756c4081b9c21f02c8c904c&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e05e8788d6d2ecf3e471fa4bfa5737ee2c22c916&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Experimental support for dependent keys has been added to KVO (Key-Value Observing). Consider the case of a method that returns a person's full name by combining the first and last names. The &lt;code&gt;fullName&lt;/code&gt; property is dependent on both the&lt;code&gt;firstName&lt;/code&gt; property and the &lt;code&gt;lastName&lt;/code&gt; property. Anytime the value of &lt;code&gt;firstName&lt;/code&gt; or &lt;code&gt;lastName&lt;/code&gt; changes, an observer notification must be sent for the&lt;code&gt;fullName&lt;/code&gt; property (As explained &lt;a href=&quot;http://developer.apple.com/documentation/Cocoa/Conceptual/KeyValueObserving/Concepts/DependentKeys.html#//apple_ref/doc/uid/20002179-BAJEAIEE&quot;&gt;here&lt;/a&gt;). The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9d34f3d4e6c2399f3fcbe7fc84c5d8110ee8b1de&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/44e4af0f02d510178143a2ca5f55386a0d194908&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/e859e9efc0ad810a3397365813092be7e215aa74&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPBundle.j now load files much more efficiently. The commit : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/1ef0e1c0783c519cacfb29b5e7f42030f6bf5405&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;KVC (Key-Value Coding) + KVO (Key-Value Observing) support for &quot;To Many&quot; keys added. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/0b05b4b7d82e52391ed4756decc3aa8561844376&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/6291804775f76548a8af0414db1cac4365cce0cb&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;Changes were made to the Cappuccino Tools, and press (who was broken for a while) has been fixed. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/19a4140f7d79a5b75f023a57c566ccae7e873ed7&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/86cc38cd696014c145ab2fab9264187b405f744b&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/9ef4a9261364462bb7a08edee54d0ef22b831ec3&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/26b7d5fa8be42b6b7de97529bf2f682ad2e06751&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/a45869be49e12e95d16584ba3c3b51eae5ad18f1&quot;&gt;here&lt;/a&gt;.&lt;/li&gt;
    &lt;li&gt;CPButton fired actions and drawn the alternate image when disabled. The commits : &lt;a href=&quot;http://github.com/280north/cappuccino/commit/99f6492f29f2a7bd51a5cab62537e10c928cf825&quot;&gt;here&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/8de321c780305fc6dac1d266f6f008038bf29244&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://github.com/280north/cappuccino/commit/7c2e6875c6524b54d6343714e5184cfb16e78bd5&quot;&gt;here&lt;/a&gt;. &lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Feel free to comment, I'll be glad to update this post.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>From mockup to screen</title>
   <link href="http://suitmymind.com/blog/2009/01/21/from-mockup-to-screen"/>
   <updated>2009-01-21T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/01/21/from-mockup-to-screen</id>
   <content type="html">&lt;p&gt;About 1 month ago, I wrote about the mockup tools I use and showed &lt;a href=&quot;/2008/12/17/about-mockups/&quot;&gt;the first mockup for the Cashflow App&lt;/a&gt; I'm developing.&lt;/p&gt;

&lt;p&gt;Time has passed, and I've been pretty busy with &lt;a href=&quot;/2009/01/07/ubuntu-machine-released/&quot;&gt;Ubuntu Machine&lt;/a&gt;, &lt;a href=&quot;http://github.com/280north/cappuccino/commit/03f1cf8ec4d3c10b8a56e2f8eb8c4bb7e07c0ff9&quot;&gt;my&lt;/a&gt; &lt;a href=&quot;http://github.com/280north/cappuccino/commit/c2ed5b68a162a4ef53304f706eab2e315fbdd50c&quot;&gt;small&lt;/a&gt; &lt;a href=&quot;http://cappuccino.org/&quot;&gt;Cappuccino&lt;/a&gt; contributions, some client works, ...&lt;/p&gt;

&lt;p&gt;But I want to show you the first working screen of Cashflow App. It is very rough, not sexy at all, but allows me to test the app functionalities and the way of organizing them before I revamp this layout (it has already started, I'll talk about it later).&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://flickr.com/photos/tbalthazar/3214374527/&quot;&gt;&lt;img class=&quot;alignnone&quot; title=&quot;Cashflow App first screen&quot; src=&quot;http://farm4.static.flickr.com/3409/3214374527_3e4cd0445d_o.png&quot; alt=&quot;&quot; width=&quot;480&quot; height=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So stay tuned, more to come later.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Ubuntu Machine updated : v0.3.1</title>
   <link href="http://suitmymind.com/blog/2009/01/18/ubuntu-machine-updated-v031"/>
   <updated>2009-01-18T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/01/18/ubuntu-machine-updated-v031</id>
   <content type="html">&lt;p&gt;&lt;strong&gt;Here is the changelog :&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt; 0.3.1  : - Jan 18th 2009&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;REE is added to the default path (tickets : &lt;a href=&quot;http://suitmymind.lighthouseapp.com/projects/22483/tickets/12-add-ruby-to-the-path&quot;&gt;#12&lt;/a&gt; and &lt;a href=&quot;http://suitmymind.lighthouseapp.com/projects/22483/tickets/13-cap-deploy-with-migrations-fails&quot;&gt;#13&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;REE updated to the latest version : ruby-enterprise-1.8.6-20090113 (you should update your deploy.rb file accordingly or re-download it &lt;a href=&quot;http://gist.github.com/41297&quot;&gt;from here&lt;/a&gt;.)&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://github.com/suitmymind/ubuntu-machine/commit/047b4856dbb109ceb7cb36dd8646269c8770719c&quot;&gt;The GitHub commit&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;&lt;strong&gt;To update, to the latest version :&lt;/strong&gt;&lt;/p&gt;

&lt;pre&gt;
# Make sure you have already done this :
# Add GitHub to your gem sources
$ gem sources -a http://gems.github.com

# Then update the installed gem
$ sudo gem install suitmymind-ubuntu-machine
&lt;/pre&gt;

</content>
 </entry>
 
 <entry>
   <title>Ubuntu Machine updated : now working with Ubuntu 8.1</title>
   <link href="http://suitmymind.com/blog/2009/01/15/ubuntu-machine-updated-now-working-with-ubuntu-81"/>
   <updated>2009-01-15T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/01/15/ubuntu-machine-updated-now-working-with-ubuntu-81</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://suitmymind.github.com/ubuntu-machine/&quot;&gt;Ubuntu Machine&lt;/a&gt; has been update and now works with Ubuntu 8.1 (it still works with Ubuntu 8.0.4).&lt;/p&gt;

&lt;p&gt;There were some minor differences in the install process between 8.0.4 and 8.1.
You can see &lt;a href=&quot;http://github.com/suitmymind/ubuntu-machine/commit/86312ad9c022830e72c61a8c5eecf8eb9834db4f&quot;&gt;the modifications on Github&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;To update the gem, just run :&lt;/p&gt;

&lt;p&gt;$ sudo gem install suitmymind-ubuntu-machine&lt;/p&gt;

&lt;p&gt;The full installation instructions &lt;a href=&quot;http://suitmymind.github.com/ubuntu-machine/#download&quot;&gt;can be found here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Thanks everybody for the feedback, keep it coming.&lt;/p&gt;

&lt;p&gt;A quick reminder :&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://groups.google.com/group/ubuntu-machine&quot;&gt;the mailing-list&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://suitmymind.lighthouseapp.com/projects/22483-ubuntu-machine/overview&quot;&gt;the bug tracker&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://twitter.com/suitmymind&quot;&gt;updates on Twitter&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
 </entry>
 
 <entry>
   <title>Ubuntu Machine released</title>
   <link href="http://suitmymind.com/blog/2009/01/07/ubuntu-machine-released"/>
   <updated>2009-01-07T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2009/01/07/ubuntu-machine-released</id>
   <content type="html">&lt;p&gt;Ubuntu Machine is a set of Open Source Capistrano recipes - packaged as a gem - that allows you to automate the setup of a machine running Ubuntu Server 8.0.4. Those recipes allows you to easily install/setup : SSH, iptables, MySQL, Apache, PHP, Ruby (+ Ruby Enterprise Edition), Rails, Phusion Passenger, and Git.&lt;/p&gt;

&lt;p&gt;Ubuntu Machine is released as an Open Source project (as mentioned in &lt;a href=&quot;http://suitmymind.com/2008/12/30/the-decision-to-open-source-code/&quot;&gt;an earlier post&lt;/a&gt;) :&lt;/p&gt;

&lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://suitmymind.github.com/ubuntu-machine/&quot;&gt;The Ubuntu Machine page on GitHub&lt;/a&gt; (documentation, screencasts)&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;https://github.com/suitmymind/ubuntu-machine/&quot;&gt;The source code on GitHub&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://suitmymind.lighthouseapp.com/projects/22483-ubuntu-machine/overview&quot;&gt;The bug tracker&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://groups.google.com/group/ubuntu-machine&quot;&gt;The mailing-list&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://twitter.com/suitmymind&quot;&gt;Follow the updates on Twitter&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;It has been tested on a &lt;a href=&quot;http://www.slicehost.com/&quot;&gt;Slicehost slice&lt;/a&gt;, and on an &lt;a href=&quot;http://www.ovh.co.uk/individual/products/rps_offers.xml&quot;&gt;OVH RPS&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;You can watch the screencast here :&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://suitmymind.github.com/ubuntu-machine/#screencast&quot;&gt;&lt;img title=&quot;Unbuntu Machine Screencast&quot; src=&quot;http://farm2.static.flickr.com/1093/3174546620_b03bf01ea2.jpg&quot; alt=&quot;&quot; width=&quot;500&quot; height=&quot;384&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Download the &lt;a href=&quot;http://suitmymind.com.s3.amazonaws.com/screencasts/ubuntu-machine/ubuntu-machine-02.m4v.zip&quot;&gt;iPhone version&lt;/a&gt; or the &lt;a href=&quot;http://suitmymind.com.s3.amazonaws.com/screencasts/ubuntu-machine/ubuntu-machine-02.mov.zip&quot;&gt;full quality version&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I'll be glad to hear your feedback here or on the &lt;a href=&quot;http://groups.google.com/group/ubuntu-machine&quot;&gt;mailing-list&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>The decision to open source code</title>
   <link href="http://suitmymind.com/blog/2008/12/30/the-decision-to-open-source-code"/>
   <updated>2008-12-30T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2008/12/30/the-decision-to-open-source-code</id>
   <content type="html">&lt;p&gt;I've always used Open Source code. I've used Linux for a long time, I work with Ruby on Rails, I use Firefox, ...&lt;/p&gt;

&lt;p&gt;I've never released some of my work to the open source community. I personally think that this is not an easy task. I want to be proud of my code. I want it to be perfect, because other people will possibly see it, use it, modify it. I know this is not the best attitude to have, but it's not always easy to overcome this fear.&lt;/p&gt;

&lt;p&gt;Open-sourcing also requires time. You've got to extract the code from your project to open-source it. You've got to document it a little, if you want others to be able to use it, and to contribute.&lt;/p&gt;

&lt;p&gt;I've decided to release one of my small projects to the Open Source community. It is surely not perfect, it won't be useful to everyone, but it will be released soon (January, 2009).&lt;/p&gt;

&lt;p&gt;Right now, I'm documenting it, screencasting it.&lt;/p&gt;

&lt;p&gt;I'll keep you posted, on this blog and on Twitter :
&lt;a href=&quot;http://twitter.com/tbalthazar&quot;&gt;http://twitter.com/tbalthazar&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>About mockups</title>
   <link href="http://suitmymind.com/blog/2008/12/17/about-mockups"/>
   <updated>2008-12-17T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2008/12/17/about-mockups</id>
   <content type="html">&lt;p&gt;When I've an idea about a Webapp, it's always hard for me not to start coding directly. But it's always better to visualize the screen you want to build before firing up the text editor and start coding.&lt;/p&gt;

&lt;p&gt;Sometimes I use a paper and a pencil, sometimes I code directly the screens in goody old HTML + CSS.
While those solutions did the trick, I wasn't totally confortable with them. The paper solution works fine for me for the very first mockup, but it's not that handy when you want to move screen parts around.&lt;/p&gt;

&lt;p&gt;This is the very first mockup I did for Cashflow App :&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3115716533/&quot;&gt;&lt;img class=&quot;alignnone&quot; title=&quot;Cashflow App first paper mockup&quot; src=&quot;http://farm4.static.flickr.com/3061/3115716533_2a99bb1ab7_o.jpg&quot; alt=&quot;&quot; width=&quot;480&quot; height=&quot;421&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Building the early mockups in HTML do not work well for me neither because it take me too much time, and my hands are already too much &quot;in the code&quot;.&lt;/p&gt;

&lt;p&gt;A few weeks ago, I heard about &lt;a href=&quot;http://www.balsamiq.com/&quot;&gt;Balsamiq Mockups&lt;/a&gt;. It is an Adobe Air (which I usually don't like that much) application, but it's incredibly easy to use, easy to learn, and it gives you a quick and lean result. The guy behind this app is an Italian based in San Francisco, and he has a &lt;a href=&quot;http://www.balsamiq.com/blog/&quot;&gt;very interesting blog&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Here is the very first screen I designed for my Cashflow App :&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/tbalthazar/3115696069/&quot;&gt;&lt;img class=&quot;alignnone&quot; title=&quot;Cashflow App first mockup screen&quot; src=&quot;http://farm4.static.flickr.com/3127/3115696069_188534f1ae_o.png&quot; alt=&quot;&quot; width=&quot;654&quot; height=&quot;346&quot; /&gt;&lt;/a&gt;It was done in a few minutes (I thought about it a little longer than that).
It allowed me to quickly get real and start coding, having a clear and simple target.
It's priceless.&lt;/p&gt;

&lt;p&gt;Feel free to share your experience with mockup tools here.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Why a cashflow app?</title>
   <link href="http://suitmymind.com/blog/2008/12/14/why-a-cashflow-app"/>
   <updated>2008-12-14T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2008/12/14/why-a-cashflow-app</id>
   <content type="html">&lt;p&gt;Cashflow often sounds like a buzz word only used by big companies.
It isn't. The cashflow is the amount of money that you earn and that you spend. Your cashflow defines your liquidity.
Your liquidity is what pays your rent/loan. Your liquidity is what pays your food. It is a very important thing to care about. 
If you are freelance, if you run a company, you've got to keep an eye on your cashflow.&lt;/p&gt;

&lt;h3&gt;Why I pay attention to my cashflow?&lt;/h3&gt;


&lt;p&gt;&lt;a href=&quot;http://www.carsonified.com/&quot;&gt;Ryan Carson&lt;/a&gt; wrote &lt;a href=&quot;http://www.37signals.com/svn/archives2/small_biz_101_cash_flow.php&quot;&gt;an interesting article&lt;/a&gt; about the importance of the cashflow a few years ago. (The Excel file linked  in his article is no longer available, so &lt;a href=&quot;http://spreadsheets.google.com/ccc?key=ps7KyCHnZrEeaLcKDaZHYMQ&quot;&gt;I uploaded it as a Google Spreadsheet&lt;/a&gt;. You can download it freely by choosing File &amp;gt; Export &amp;gt; .xls)&lt;/p&gt;

&lt;p&gt;&lt;img class=&quot;alignnone&quot; title=&quot;Export the cashflow example&quot; src=&quot;http://farm4.static.flickr.com/3003/3107638228_3a32466c8d.jpg&quot; alt=&quot;&quot; width=&quot;418&quot; height=&quot;459&quot; /&gt;

I read this article at a time when I hadn't started my company yet. (I did 7 months after this article was published). 
I now really pay attention to my cashflow. It allows me to know if I've got to be anxious about the upcoming bills. It allows me to be more relax, knowing what I've got to do in the next few months.&lt;/p&gt;




&lt;h3&gt;Cashflow management tools&lt;/h3&gt;


&lt;p&gt;I've used Ryan's spreadsheet for some months. It was very handy to start paying attention to my liquidities, but I don't really enjoy using spreadsheets.
Later, I heard about &lt;a href=&quot;http://pulseapp.com/&quot;&gt;Pulse&lt;/a&gt;, a cashflow management Webapp. They did a great job building it and &lt;a href=&quot;http://onemonthapp.com&quot;&gt;blogging about&lt;/a&gt; their development process. I used it to manage my cashflow &lt;a href=&quot;http://onemonthapp.com/archives/2007/10/24/the-one-month-app-has-launched&quot;&gt;some times after they launched&lt;/a&gt;, but it is still not the best tool for me. 
I've been thinking about developing my own cashflow management app for quite a long time :
&lt;img class=&quot;alignnone&quot; title=&quot;cashflowapp.com whois&quot; src=&quot;http://farm4.static.flickr.com/3283/3107657102_debd016066_o.jpg&quot; alt=&quot;&quot; width=&quot;530&quot; height=&quot;312&quot; /&gt;
 
I think this time has come.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Why this blog?</title>
   <link href="http://suitmymind.com/blog/2008/12/11/why-this-blog"/>
   <updated>2008-12-11T00:00:00+01:00</updated>
   <id>http://suitmymind.com/blog/2008/12/11/why-this-blog</id>
   <content type="html">&lt;div&gt;I've created this blog &lt;a href=&quot;/blog/2008/05/27/about-software-complexity/&quot;&gt;some time ago&lt;/a&gt;, and I haven't paid much attention to it. It was not publicly available. I hadn't the time, and I hadn't that much to share.&lt;/div&gt;


&lt;div&gt;
&lt;div&gt;I've decided to give it a boost now.&lt;/div&gt;
&lt;div&gt;In fact, I've decided to use this blog to give a boost to one of my projects : I want to develop a Web application.&lt;/div&gt;
&lt;div&gt;As many developer, I've started several Web applications without finishing them (I mean without releasing them to the public).&lt;/div&gt;
&lt;div&gt;This happened for several reasons, between not being happy with the result and being overbooked with client works.&lt;/div&gt;
&lt;div&gt;This time, I want things to happen differently. I want to make this blog public very soon. I will talk about the Webapp I develop here.&lt;/div&gt;
&lt;div&gt;This Webapp will allow me to manage my cashflow.&lt;/div&gt;
&lt;/div&gt;

</content>
 </entry>
 
 <entry>
   <title>Talking Heads</title>
   <link href="http://suitmymind.com/blog/2008/08/28/talking-heads"/>
   <updated>2008-08-28T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2008/08/28/talking-heads</id>
   <content type="html">&lt;object width=&quot;425&quot; height=&quot;344&quot; data=&quot;http://www.youtube.com/v/FzEadbTCKDA&amp;amp;hl=en&amp;amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot; /&gt;&lt;param name=&quot;src&quot; value=&quot;http://www.youtube.com/v/FzEadbTCKDA&amp;amp;hl=en&amp;amp;fs=1&quot; /&gt;&lt;param name=&quot;allowfullscreen&quot; value=&quot;true&quot; /&gt;&lt;/object&gt;


&lt;p&gt;A &lt;a href=&quot;http://www.imdb.com/title/tt0092462/&quot;&gt;great video&lt;/a&gt;, a great show and a killing scenography!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Max Roach</title>
   <link href="http://suitmymind.com/blog/2008/08/17/max-roach"/>
   <updated>2008-08-17T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2008/08/17/max-roach</id>
   <content type="html">&lt;object width=&quot;425&quot; height=&quot;344&quot; data=&quot;http://www.youtube.com/v/cS-xiX64HGQ&amp;amp;hl=en&amp;amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot; /&gt;&lt;param name=&quot;src&quot; value=&quot;http://www.youtube.com/v/cS-xiX64HGQ&amp;amp;hl=en&amp;amp;fs=1&quot; /&gt;&lt;param name=&quot;allowfullscreen&quot; value=&quot;true&quot; /&gt;&lt;/object&gt;


&lt;p&gt;So long, &lt;a href=&quot;http://en.wikipedia.org/wiki/Max_Roach&quot;&gt;Max&lt;/a&gt;.
Keep one eye on us, son.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>About time</title>
   <link href="http://suitmymind.com/blog/2008/08/06/about-time"/>
   <updated>2008-08-06T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2008/08/06/about-time</id>
   <content type="html">&lt;blockquote&gt;Work expands to fill the time available.&lt;/blockquote&gt;


&lt;p&gt;— &lt;a href=&quot;http://en.wikipedia.org/wiki/Parkinson's_law&quot;&gt;Parkinson's law&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>About software complexity</title>
   <link href="http://suitmymind.com/blog/2008/05/27/about-software-complexity"/>
   <updated>2008-05-27T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2008/05/27/about-software-complexity</id>
   <content type="html">&lt;blockquote&gt;The most important rule of software engineering is also the least known: Complexity does not scale linearly with size… 2000 line program requires more than twice as much development time as one half the size.&lt;/blockquote&gt;


&lt;p&gt;— The Ganssle Group (&lt;a href=&quot;http://www.ganssle.com/articles/keepsmall.htm&quot;&gt;from Keep It Small&lt;/a&gt;)&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>A wide screen</title>
   <link href="http://suitmymind.com/blog/2008/05/27/a-wide-screen"/>
   <updated>2008-05-27T00:00:00+02:00</updated>
   <id>http://suitmymind.com/blog/2008/05/27/a-wide-screen</id>
   <content type="html">&lt;p&gt;&lt;img class=&quot;  alignnone&quot; title=&quot;Screen&quot; src=&quot;http://farm4.static.flickr.com/3156/3100362835_bd09bf4937.jpg&quot; alt=&quot;Screen&quot; width=&quot;360&quot; height=&quot;270&quot; /&gt;
I've been waiting for a long time before I made up my mind.
I've bought an external display to work with my MacBook Pro, and I definitely do &lt;strong&gt;not&lt;/strong&gt; regret it! It is a huge comfort I'd recommend to everybody!&lt;/p&gt;
</content>
 </entry>
 
 
</feed>
