<?xml version="1.0"?>
<rss version="0.92">
	<channel>
		<title>rentzsch.com: Tales from the Red Shed</title>
		<link>http://rentzsch.com</link>
		<description>Technical Journal of Jonathan 'Wolf' Rentzsch</description>
			<item>
				<title>Win Iron Coder, Win a Preloaded MacBook Air</title>
				<link>http://rentzsch.com/c4/2ironCoderMacBookAir</link>
				<description>
					&lt;p&gt;I&amp;#8217;ve been racking my brain trying to think of an awesome prize for C4[2]&amp;#8217;s upcoming Iron Coder contest. I didn&amp;#8217;t want to just go around begging random vendors for prizes, and I wasn&amp;#8217;t feeling last year&amp;#8217;s Golden Dogtag again. (Turns out bling and hackers don&amp;#8217;t really mix.)&lt;/p&gt;&lt;p&gt;I&amp;#8217;ve come up with something that I feel really good about, a prize that feeds back into the community.&lt;/p&gt;&lt;p&gt;I&amp;#8217;m going to award a shiny new &lt;a href='http://www.apple.com/macbookair/'&gt;MacBook Air&lt;/a&gt; to the 1st place winner of C4[2]&amp;#8217;s Iron Coder competition. Right there&amp;#8217;s a swell prize.&lt;/p&gt;&lt;p&gt;But I&amp;#8217;m much more excited about the next part: &lt;strong&gt;the winner&amp;#8217;s MacBook Air will be preloaded by C4[2] attendees&amp;#8217; own software&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;I&amp;#8217;m sending out an email asking C4[2] attendees to donate two licenses of the software they&amp;#8217;ve written to add to the prize. The first license will get loaded onto that MacBook Air. The second license will be part of the Runner-Up&amp;#8217;s software-only prize.&lt;/p&gt;&lt;p&gt;C4 is all about celebrating the indie community, and I can&amp;#8217;t think of a better prize than the results of our own handiwork.&lt;/p&gt;&lt;p&gt;Better get crankin&amp;#8217; on your Iron Coder entry. I bet this year&amp;#8217;s competition will be stiff.&lt;/p&gt;
				</description>
				<pubDate>Mon, 25 Aug 2008 23:46:36 -0500</pubDate>
			</item>
			<item>
				<title>C4[2] Scholarship Application Deadline</title>
				<link>http://rentzsch.com/c4/2scholarshipApplicationDeadline</link>
				<description>
					&lt;p&gt;This one&amp;#8217;s a quickie: the deadline for C4[2] scholarship applications is this Monday, Aug 11th.&lt;/p&gt;&lt;p&gt;Students: apply by sending your name, email address, website if you have one, and why you want to attend C4 (in Markdown format) to &lt;a href='mailto:c4@redshed.net'&gt;&amp;#099;&amp;#052;&amp;#064;&amp;#114;&amp;#101;&amp;#100;&amp;#115;&amp;#104;&amp;#101;&amp;#100;&amp;#046;&amp;#110;&amp;#101;&amp;#116;&lt;/a&gt;. Please put &amp;#8220;scholarship&amp;#8221; in the subject line.&lt;/p&gt;
				</description>
				<pubDate>Sat, 09 Aug 2008 12:52:32 -0500</pubDate>
			</item>
			<item>
				<title>PSIG 117 in September, Really This Time</title>
				<link>http://rentzsch.com/psig/117InSeptemberReallyThisTime</link>
				<description>
					&lt;p&gt;Remember when I said the next &lt;a href='http://rentzsch.com/psig/117inAugust'&gt;PSIG 117 would be in August&lt;/a&gt;? I forgot that DEFCON 16 begins Friday morning. I&amp;#8217;ll be flying out Thursday night to attend it, so I&amp;#8217;m bumping PSIG 117 back yet again to Sept 4th.&lt;/p&gt;&lt;p&gt;For those of your playing at home, that&amp;#8217;s the night before C4[2]. What could possibly go wrong?&lt;/p&gt;
				</description>
				<pubDate>Wed, 06 Aug 2008 09:38:40 -0500</pubDate>
			</item>
			<item>
				<title>C4[2] Registration Open</title>
				<link>http://rentzsch.com/c4/twoOpen</link>
				<description>
					&lt;p align='center'&gt;&lt;img src='http://rentzsch.com/images/c4-256.png' border='0' height='197' width='256' /&gt;&lt;/p&gt;&lt;p&gt;C4[2], scheduled for September 5-7 2008, is &lt;strike&gt;now open. &lt;a href='http://c4.rentzsch.com/2/attendee'&gt;Register now&lt;/a&gt;&lt;/strike&gt;. &lt;span style='color:darkred;font-weight:bold'&gt;Update: C4[2] sold out inside 40 hours.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Speakers&lt;/strong&gt;&lt;/p&gt;&lt;dl&gt;&lt;dt&gt;&lt;strong&gt;Alex Payne:&lt;/strong&gt; &lt;em&gt;Why Scala? How a serial language enthusiast settled down with a nice Swiss language&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;Alex Payne spent over a year researching the best language with which to approach the architectural challenges at Twitter, the popular social messaging platform on which he works. In this talk, he&amp;#8217;ll share for the first time in public why he settled on Scala. Learn about Scala&amp;#8217;s winning combination of object-oriented and functional programming, its robust concurrency model, and other sexy features. Get a quick tour of the Scala community, including standout apps and emerging best practices. Find out why Scala sets the standard for next generation languages. Even if you&amp;#8217;re happy with your language toolbox, you&amp;#8217;ll learn something from Scala you want to take back to your daily coding.&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Brent Simmons:&lt;/strong&gt; &lt;em&gt;On Going Free&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;NewsGator dropped a bombshell on the feed reader market by making the Brent&amp;#8217;s market-leading NetNewsWire free of charge. Brent will talk about what the transition was like and the mistakes he made with NetNewsWire Touch 1.0.&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Buzz Andersen:&lt;/strong&gt; &lt;em&gt;Apple to Indie&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;Buzz started out as an indie developer in Colorado, only to be lured to Cupertino for a spell. He&amp;#8217;s since returned to indiehood, and is eager to share with us about life after Apple.&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Craig Hockenberry:&lt;/strong&gt; &lt;em&gt;IPHONE ITS NOT A FRICKEN MINATURE LAPTOP OK&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;Follow Craig on a journey from DOS to a touch-based UI, learn about current best practices for iPhone development, and start to think about where this technology will take us in the future. Effective use of the CAPS LOCK key may also be discussed.&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Mike Lee:&lt;/strong&gt; &lt;em&gt;Pimp My App&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;After a while at Delicious Monster, Mike has gone on to co-found Tapulous, which got in early on the iPhone App Store game with three apps. Mike will take a volunteer (or two) with a preferably shipping Mac or iPhone app. He&amp;#8217;ll give it a complete makeover, from interface and interaction to having a graphic artist create new assets for it. He&amp;#8217;ll unveil the new design over the course of his talk.&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Rich Siegel&lt;/strong&gt;: &lt;em&gt;Red Meat and Gin&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;Rich Siegel opened the doors of Bare Bones Software 15 years ago, and has turned the company into one of the longest-running indie Mac shops in history. He&amp;#8217;ll share some of the lessons he learned along the way, and offer advice on how to make it big while staying small. And he promises not to yell at any of you #&amp;amp;@$ kids to get off of his lawn. This time.&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Richard Hipp:&lt;/strong&gt; &lt;em&gt;SELECT * FROM SQLite_internals&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;Hidden under the hood, SQLite powers modern software&amp;#8217;s data storage needs. It&amp;#8217;s built into each Mac, iPhone and copies of Firefox, PHP and Skype. Richard &amp;#8211; SQLite&amp;#8217;s original author &amp;#8211; will talk about the creation and evolution of SQLite, its internals, its testing system, the license controversy and common client mistakes.&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Thomas Ptacek:&lt;/strong&gt; &lt;em&gt;Everything an indie Mac developer needs to know about software security but didn&amp;#8217;t want to pay consultants to find out&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;Thomas has been in the security ring for over a decade, and can spot your exploitable code five miles away before you&amp;#8217;ve even written it. He&amp;#8217;ll provide a basic backgrounder on writing secure applications that every indie developer should know.&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Troy Gaul:&lt;/strong&gt; &lt;em&gt;Lightroom Exposed&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;In my mind, Lightroom is Adobe&amp;#8217;s most interesting product. A fairly new product, version 2 just shipped &amp;#8211; Adobe&amp;#8217;s first 64-bit application. Troy is Lightroom&amp;#8217;s lead and will talk about its evolution and unconventional architecture (large parts are written in Lua).&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Wil Shipley:&lt;/strong&gt; &lt;em&gt;Delicious Panel&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;Wil leads this year&amp;#8217;s panel discussion. He&amp;#8217;s threatening to bring booze and custom software. Enough said.&lt;/dd&gt;&lt;dt&gt;&lt;strong&gt;Iron Coder Live:&lt;/strong&gt; &lt;em&gt;Engineer Idol&lt;/em&gt;&lt;/dt&gt;&lt;dd&gt;Come show off your mad coding skillz. I&amp;#8217;ll give you an API and theme to code against. You&amp;#8217;ll present your wicked app live in front of all attendees. The audience will loudly judge you. This year the API is &lt;em&gt;Core Location&lt;/em&gt; and the theme is &lt;em&gt;paranoia&lt;/em&gt;.&lt;/dd&gt;&lt;/dl&gt;&lt;p&gt;And of course expect the standard C4 fare: lunch, dinner, late night poolside parties and Gino&amp;#8217;s East Chicago-style deep-dish pizza.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Registration&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;a href='http://c4.rentzsch.com/2/attendee'&gt;Register here&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;C4[2] costs $512 including meals and is held in downtown Chicago. Strive to arrive at the hotel by Fri Sep 5 at 5:30 pm. It all comes to an end Sun Sep 7 around 4 pm.&lt;/p&gt;&lt;p&gt;&lt;a href='http://doubletree.hilton.com/en/dt/groups/personalized/CHIMMDT-C4C-20080905/index.jhtml'&gt;The hotel&lt;/a&gt; (which I ask that you stay at if at all possible) runs ~$190/night until the group block runs out. &lt;span style='color:darkred'&gt;&lt;b&gt;Update:&lt;/b&gt; The hotel block is sold out. Feel free to book your room any way you'd like. Here's a &lt;a href='http://bit.ly/c42hotelscom'&gt;hotels.com starter link&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Scholarship&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Three lucky students will receive free admission to C4. Here&amp;#8217;s how it works:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Students: register by sending your name, email address, website if you have one, and why you want to attend C4 (in Markdown format) to &lt;a href='mailto:c4@redshed.net'&gt;&amp;#099;&amp;#052;&amp;#064;&amp;#114;&amp;#101;&amp;#100;&amp;#115;&amp;#104;&amp;#101;&amp;#100;&amp;#046;&amp;#110;&amp;#101;&amp;#116;&lt;/a&gt;. (View last year&amp;#8217;s essays &lt;a href='http://c4.rentzsch.com/1/vote.html?00000000'&gt;here&lt;/a&gt; and the winners &lt;a href='http://rentzsch.com/c4/1scholarshipWinnersAndHotelUpdate'&gt;here&lt;/a&gt;.)&lt;/li&gt;&lt;li&gt;C4 attendees will be given a list of potentials and three votes to spend.&lt;/li&gt;&lt;li&gt;The three top-voted students receive free admission.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;If you&amp;#8217;d like to sponsor an additional scholarship slot for $512, &lt;a href='mailto:c4@redshed.net'&gt;toss me an email&lt;/a&gt;.&lt;/p&gt;
				</description>
				<pubDate>Fri, 01 Aug 2008 00:00:00 -0500</pubDate>
			</item>
			<item>
				<title>PSIG 117 in August</title>
				<link>http://rentzsch.com/psig/117inAugust</link>
				<description>
					&lt;p&gt;Hey all, the next PSIG would occur on July 3rd. That&amp;#8217;s uncomfortably close to Indie Day (the Independent Mac Developer&amp;#8217;s national holiday), so the next PSIG will be in August. We&amp;#8217;ll talk about WWDC and what, if anything, dropped on our laps July 11th.&lt;/p&gt;
				</description>
				<pubDate>Wed, 02 Jul 2008 16:56:35 -0500</pubDate>
			</item>
			<item>
				<title>C4[2]: Sep 5-7 2008</title>
				<link>http://rentzsch.com/c4/2dates</link>
				<description>
					&lt;p&gt;More and more folks are poking me, asking if and when there will be a C4[2]. I&amp;#8217;m happy to report I&amp;#8217;ve decided to go for another round, and &lt;strong&gt;C4[2] is scheduled for September 5th through 7th&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;Same physical venue as last year, except was the &amp;#8220;Chicago City Centre&amp;#8221; has been totally renovated and is now &lt;a href=&quot;http://www.doubletreemagmile.com&quot;&gt;&amp;#8220;Doubletree Magnificent Mile&amp;#8221;&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;I&amp;#8217;m going to use WWDC 2008 to firm up speakers, so no announcements until after the big show. Just be sure to leave a hole in your schedule for the first weekend in September. It&amp;#8217;s going to be a blast.&lt;/p&gt;
				</description>
				<pubDate>Sat, 07 Jun 2008 00:00:00 -0500</pubDate>
			</item>
			<item>
				<title>PSIG 116: Thu Jun 5 2008</title>
				<link>http://rentzsch.com/psig/116</link>
				<description>
					&lt;dl&gt;	&lt;dt&gt;When:	&lt;dd&gt;Thursday, June 5th, 2008 @ 7pm 		&lt;dt&gt;Where:	&lt;dd&gt;&lt;a href=&quot;http://maps.google.com/maps?q=920+E+Northwest+Highway+60074&quot;&gt;Hotel Indigo&lt;/a&gt; (&lt;a href=&quot;http://www.ichotelsgroup.com/hotelmedia/repository/hotelimages/CHIPA/WELCM_EXTR_02_E.jpg&quot;&gt;pic&lt;/a&gt;, &lt;a href=&quot;http://maps.google.com/maps?saddr=2121+W+Northwest+Highway+60074&amp;daddr=920+E+Northwest+Highway+60074&quot;&gt;directions&lt;/a&gt; from the &lt;a href=&quot;http://metrarail.com/Sched/cnw_nw/arlington_park.shtml&quot;&gt;Arlington Park Metra station&lt;/a&gt;).		&lt;dt&gt;Schedule:	&lt;dd&gt;&lt;b&gt;Show &amp;amp; Tell&lt;/b&gt;	&lt;br&gt;We'll start out the meeting by going around the table and talking about what we're currently working on or learning about. Handouts are welcome, or bring along your Mac and we'll hook it up to the projector.	&lt;p&gt;&lt;b&gt;Book Reports&lt;/b&gt;	&lt;br&gt;Bring along the book you're currently reading, or one of your old favorites. Hopefully the book would have some relevance to programming, but we're fairly open-minded. Just give us an overview the book's topic, and what you liked (or disliked) about it.&lt;/p&gt;	&lt;p&gt;&lt;b&gt;Topics&lt;/b&gt;	&lt;br&gt;Bring your WWDC08 predictions &amp;#8212; we&amp;#8217;ll be following tradition and offering our best guesses along with our updates+book reports. For the main presentation, Jonathan &amp;#8216;Wolf&amp;#8217; Rentzsch will discuss how to add AppleScript support to your Cocoa applications.		&lt;p&gt;&lt;b&gt;Dinner&lt;/b&gt;	&lt;br&gt;If you want pizza, bring along three dollars and we'll all chip in.		&lt;dt&gt;Looking for Presenters:	&lt;dd&gt;I'm always on the look-out for folks to want to give a talk for a meeting. The talk doesn't need to be long (10 minutes is fine if your topic is small or you just want to tease the group) and you don't need to be an expert (just tell us why you think your topic is cool or your experiences). Toss me an email and I'll assign you a chunk of time.&lt;/dl&gt;
				</description>
				<pubDate>Tue, 03 Jun 2008 12:42:41 -0500</pubDate>
			</item>
			<item>
				<title>mogenerator v1.10</title>
				<link>http://rentzsch.com/code/mogenerator_v1.10</link>
				<description>
					&lt;p&gt;&lt;a href=&quot;http://rentzsch.com/code/mogenerator&quot;&gt;mogenerator&lt;/a&gt; is my little command-line tool that reads in &lt;code&gt;.xcdatamodel&lt;/code&gt; Core Data model files and spits out Objective C code following the Generation Gap codegen pattern.&lt;/p&gt;&lt;p&gt;Version 1.10 (&lt;a href=&quot;http://s3.amazonaws.com/rentzsch/mogenerator-1.10.dmg&quot;&gt;download&lt;/a&gt;, &lt;a href=&quot;http://rentzsch.com/trac/browser/trunk/cocoa/mogenerator&quot;&gt;source&lt;/a&gt;) is out &amp;#8212; here&amp;#8217;s what&amp;#8217;s changed since the &lt;a href=&quot;http://rentzsch.com/code/mogenerator_v1.5&quot;&gt;last time I wrote about it&lt;/a&gt;:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://rentzsch.com/trac/changeset/256&quot;&gt;Corrected generated code&lt;/a&gt; that got snagged on the messaging-nil-with-method-returning-float gotcha (thanks to Ruotger Skupin).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Adds &lt;code&gt;+[newInManagedObjectContext:]&lt;/code&gt; method to machine files. I can&amp;#8217;t live without this method and it&amp;#8217;s pretty much swiped from &lt;a href=&quot;http://rentzsch.com/trac/browser/trunk/cocoa/CoreData%2BJRExtensions&quot;&gt;&lt;code&gt;CoreData+JRExtensions&lt;/code&gt;&lt;/a&gt; so I don&amp;#8217;t have to include those extensions for every Core Data project.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Now supports ObjC2 property syntax (but retains 10.4 compatibility thanks to preprocessor magic).&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;mogenerator now support 10.5 Core Data transformable attributes (thanks again Ruotger Skupin). It uses &lt;code&gt;NSObject&lt;/code&gt; generically, but you can specify a different class name in the attributes user info under a &lt;code&gt;attributeValueClassName&lt;/code&gt; key.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Plays a better game of hide-and-seek with Xcode&amp;#8217;s installer and where it&amp;#8217;s decided to locate &lt;code&gt;momc&lt;/code&gt; this week. Handles Xcode 2.4, 3.0 and 3.1. Sadly, mogenerator still assumes &lt;code&gt;/Developer&lt;/code&gt; &amp;#8212; perhaps one day the installer will be enhanced to ask you which Xcode base to use. Patches welcome.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;For those of you using Core Data in a multithreaded environment, 1.10 now generates a per-entity subclass of &lt;code&gt;NSManagedObjectID&lt;/code&gt;. For example, if you had an entity named &lt;code&gt;Person&lt;/code&gt;, its class name will be &lt;code&gt;PersonMO&lt;/code&gt; and its managed object ID class name will be &lt;code&gt;PersonMOID&lt;/code&gt;. Previously, you had to pass around type-less &lt;code&gt;NSManagedObjectID&lt;/code&gt; when you wanted to handoff a managed object reference from one thread to another. Now you can pass a reference whose type will give you a clue as to what&amp;#8217;s going on.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;
				</description>
				<pubDate>Tue, 20 May 2008 14:17:54 -0500</pubDate>
			</item>
			<item>
				<title>PSIG 115: Thu May 1 2008</title>
				<link>http://rentzsch.com/psig/115</link>
				<description>
					&lt;dl&gt;	&lt;dt&gt;When:	&lt;dd&gt;Thursday, May 1st, 2008 @ 7pm 		&lt;dt&gt;Where:	&lt;dd&gt;&lt;a href=&quot;http://maps.google.com/maps?q=920+E+Northwest+Highway+60074&quot;&gt;Hotel Indigo&lt;/a&gt; (&lt;a href=&quot;http://www.ichotelsgroup.com/hotelmedia/repository/hotelimages/CHIPA/WELCM_EXTR_02_E.jpg&quot;&gt;pic&lt;/a&gt;, &lt;a href=&quot;http://maps.google.com/maps?saddr=2121+W+Northwest+Highway+60074&amp;daddr=920+E+Northwest+Highway+60074&quot;&gt;directions&lt;/a&gt; from the &lt;a href=&quot;http://metrarail.com/Sched/cnw_nw/arlington_park.shtml&quot;&gt;Arlington Park Metra station&lt;/a&gt;).		&lt;dt&gt;Schedule:	&lt;dd&gt;&lt;b&gt;Show &amp;amp; Tell&lt;/b&gt;	&lt;br&gt;We'll start out the meeting by going around the table and talking about what we're currently working on or learning about. Handouts are welcome, or bring along your Mac and we'll hook it up to the projector.	&lt;p&gt;&lt;b&gt;Book Reports&lt;/b&gt;	&lt;br&gt;Bring along the book you're currently reading, or one of your old favorites. Hopefully the book would have some relevance to programming, but we're fairly open-minded. Just give us an overview the book's topic, and what you liked (or disliked) about it.&lt;/p&gt;	&lt;p&gt;&lt;b&gt;Topics&lt;/b&gt;	&lt;br&gt;Jonathan &amp;#8216;Wolf&amp;#8217; Rentzsch will cover Cocoa, HTTP and You. More than ever, Cocoa applications need to communicate via HTTP (thank you Mr. iPhone), so Wolf will cover your current options and surprising pitfalls. Includes a tour of the open source landscape for HTTP libraries, for both vending and consuming HTTP.		&lt;p&gt;&lt;b&gt;Dinner&lt;/b&gt;	&lt;br&gt;If you want pizza, bring along three dollars and we'll all chip in.		&lt;dt&gt;Looking for Presenters:	&lt;dd&gt;I'm always on the look-out for folks to want to give a talk for a meeting. The talk doesn't need to be long (10 minutes is fine if your topic is small or you just want to tease the group) and you don't need to be an expert (just tell us why you think your topic is cool or your experiences). Toss me an email and I'll assign you a chunk of time.&lt;/dl&gt;
				</description>
				<pubDate>Wed, 30 Apr 2008 00:00:00 -0500</pubDate>
			</item>
			<item>
				<title>PSIG 114: Thu Apr 3 2008</title>
				<link>http://rentzsch.com/psig/114</link>
				<description>
					&lt;dl&gt;	&lt;dt&gt;When:	&lt;dd&gt;Thursday, April 3rd, 2008 @ 7pm 		&lt;dt&gt;Where:	&lt;dd&gt;&lt;a href=&quot;http://maps.google.com/maps?q=920+E+Northwest+Highway+60074&quot;&gt;Hotel Indigo&lt;/a&gt; (&lt;a href=&quot;http://www.ichotelsgroup.com/hotelmedia/repository/hotelimages/CHIPA/WELCM_EXTR_02_E.jpg&quot;&gt;pic&lt;/a&gt;, &lt;a href=&quot;http://maps.google.com/maps?saddr=2121+W+Northwest+Highway+60074&amp;daddr=920+E+Northwest+Highway+60074&quot;&gt;directions&lt;/a&gt; from the &lt;a href=&quot;http://metrarail.com/Sched/cnw_nw/arlington_park.shtml&quot;&gt;Arlington Park Metra station&lt;/a&gt;).		&lt;dt&gt;Schedule:	&lt;dd&gt;&lt;b&gt;Show &amp;amp; Tell&lt;/b&gt;	&lt;br&gt;We'll start out the meeting by going around the table and talking about what we're currently working on or learning about. Handouts are welcome, or bring along your Mac and we'll hook it up to the projector.	&lt;p&gt;&lt;b&gt;Book Reports&lt;/b&gt;	&lt;br&gt;Bring along the book you're currently reading, or one of your old favorites. Hopefully the book would have some relevance to programming, but we're fairly open-minded. Just give us an overview the book's topic, and what you liked (or disliked) about it.&lt;/p&gt;	&lt;p&gt;&lt;b&gt;Topics&lt;/b&gt;	&lt;br&gt;While embedded iPhone development is the current hotness, there exists an even deeper embedded environment available for Mac programmers: microcontrollers. Microcontrollers have clock speeds on the order of megahertz and memory on the order of kilobytes, but can still be used for all sorts of fun projects. Dave Dribin will talk about setting up a development environment for the popular &lt;a href=&quot;http://www.atmel.com/products/avr/default.asp&quot;&gt;Atmel AVR&lt;/a&gt; series of microcontrollers on your Mac. We&amp;#8217;ll go over some basic C code to light up LEDs, including how to dim them with pulse width modulation (PWM) and how to download the program to a real device (no certificate needed!). We&amp;#8217;ll also cover how to do some simple debugging with an oscilloscope.		&lt;p&gt;&lt;b&gt;Dinner&lt;/b&gt;	&lt;br&gt;If you want pizza, bring along three dollars and we'll all chip in.		&lt;dt&gt;Looking for Presenters:	&lt;dd&gt;I'm always on the look-out for folks to want to give a talk for a meeting. The talk doesn't need to be long (10 minutes is fine if your topic is small or you just want to tease the group) and you don't need to be an expert (just tell us why you think your topic is cool or your experiences). Toss me an email and I'll assign you a chunk of time.&lt;/dl&gt;
				</description>
				<pubDate>Tue, 01 Apr 2008 23:06:46 -0500</pubDate>
			</item>
			<item>
				<title>PSIG 113: Thu Mar 6 2008</title>
				<link>http://rentzsch.com/psig/113</link>
				<description>
					&lt;dl&gt;	&lt;dt&gt;When:	&lt;dd&gt;Thursday, March 6th, 2008 @ 7pm 		&lt;dt&gt;Where:	&lt;dd&gt;&lt;span style=&quot;color:darkred;font-weight:bold&quot;&gt;New Meeting Location:&lt;/span&gt; &lt;a href=&quot;http://maps.google.com/maps?q=920+E+Northwest+Highway+60074&quot;&gt;Hotel Indigo&lt;/a&gt; (&lt;a href=&quot;http://www.ichotelsgroup.com/hotelmedia/repository/hotelimages/CHIPA/WELCM_EXTR_02_E.jpg&quot;&gt;pic&lt;/a&gt;, &lt;a href=&quot;http://maps.google.com/maps?saddr=2121+W+Northwest+Highway+60074&amp;daddr=920+E+Northwest+Highway+60074&quot;&gt;directions&lt;/a&gt; from the &lt;a href=&quot;http://metrarail.com/Sched/cnw_nw/arlington_park.shtml&quot;&gt;Arlington Park Metra station&lt;/a&gt;).		&lt;dt&gt;Schedule:	&lt;dd&gt;&lt;b&gt;Show &amp;amp; Tell&lt;/b&gt;	&lt;br&gt;We'll start out the meeting by going around the table and talking about what we're currently working on or learning about. Handouts are welcome, or bring along your Mac and we'll hook it up to the projector.	&lt;p&gt;&lt;b&gt;Book Reports&lt;/b&gt;	&lt;br&gt;Bring along the book you're currently reading, or one of your old favorites. Hopefully the book would have some relevance to programming, but we're fairly open-minded. Just give us an overview the book's topic, and what you liked (or disliked) about it.&lt;/p&gt;	&lt;p&gt;&lt;b&gt;Topics&lt;/b&gt;	&lt;br&gt;&lt;strike&gt;Core Data makes it easy to persist your data to disk, but what happens when your data format changes? This used to entail lots of pain, but 10.5 has a bunch of tricks up its anthropomorphized sleeve to make upgrading your data model much easier. Jonathan &amp;#8216;Wolf&amp;#8217; Rentzsch will walk through Core Data&amp;#8217;s migration facilities.&lt;/strike&gt;		&lt;p&gt;Hey this iPhone SDK is a big deal, so we'll be going through it instead of the above topic tonight.&lt;/p&gt;		&lt;p&gt;&lt;b&gt;Dinner&lt;/b&gt;	&lt;br&gt;If you want pizza, bring along three dollars and we'll all chip in.		&lt;dt&gt;Looking for Presenters:	&lt;dd&gt;I'm always on the look-out for folks to want to give a talk for a meeting. The talk doesn't need to be long (10 minutes is fine if your topic is small or you just want to tease the group) and you don't need to be an expert (just tell us why you think your topic is cool or your experiences). Toss me an email and I'll assign you a chunk of time.&lt;/dl&gt;
				</description>
				<pubDate>Wed, 05 Mar 2008 00:00:00 -0600</pubDate>
			</item>
			<item>
				<title>PSIG 112: Thu Feb 7 2008</title>
				<link>http://rentzsch.com/psig/112</link>
				<description>
					&lt;dl&gt;	&lt;dt&gt;When:	&lt;dd&gt;Thursday, February 7th, 2008 @ 7pm 		&lt;dt&gt;Where:	&lt;dd&gt;&lt;span style=&quot;color:darkred;font-weight:bold&quot;&gt;New Meeting Location:&lt;/span&gt; &lt;a href=&quot;http://maps.google.com/maps?q=920+E+Northwest+Highway+60074&quot;&gt;Hotel Indigo&lt;/a&gt; (&lt;a href=&quot;http://www.ichotelsgroup.com/hotelmedia/repository/hotelimages/CHIPA/WELCM_EXTR_02_E.jpg&quot;&gt;pic&lt;/a&gt;, &lt;a href=&quot;http://maps.google.com/maps?saddr=2121+W+Northwest+Highway+60074&amp;daddr=920+E+Northwest+Highway+60074&quot;&gt;directions&lt;/a&gt; from the &lt;a href=&quot;http://metrarail.com/Sched/cnw_nw/arlington_park.shtml&quot;&gt;Arlington Park Metra station&lt;/a&gt;).		&lt;dt&gt;Schedule:	&lt;dd&gt;&lt;b&gt;Show &amp;amp; Tell&lt;/b&gt;	&lt;br&gt;We'll start out the meeting by going around the table and talking about what we're currently working on or learning about. Handouts are welcome, or bring along your PowerBook and we'll hook it up to the projector.	&lt;p&gt;&lt;b&gt;Book Reports&lt;/b&gt;	&lt;br&gt;Bring along the book you're currently reading, or one of your old favorites. Hopefully the book would have some relevance to programming, but we're fairly open-minded. Just give us an overview the book's topic, and what you liked (or disliked) about it.&lt;/p&gt;	&lt;p&gt;&lt;b&gt;Topics&lt;/b&gt;	&lt;br&gt;Ever wanted to write your own feed reader? PubSub is shorthand for Apple&amp;#8217;s new &amp;#8220;&lt;a href=&quot;http://developer.apple.com/documentation/InternetWeb/Conceptual/PubSub/Introduction/chapter_1_section_1.html&quot;&gt;Publication Subscription&lt;/a&gt;&amp;#8221; framework, included with Mac OS X Leopard 10.5. It consumes RSS 0.9, 1.0, 2.0 and Atom feeds and makes them available to your Cocoa application. &lt;a href=&quot;http://www.dribin.org/dave/blog/&quot;&gt;Dave Dribin&lt;/a&gt; has been tinkering with PubSub and will walk us through how it works and some of its cooler features.		&lt;p&gt;&lt;b&gt;Dinner&lt;/b&gt;	&lt;br&gt;If you want pizza, bring along three dollars and we'll all chip in.		&lt;dt&gt;Looking for Presenters:	&lt;dd&gt;I'm always on the look-out for folks to want to give a talk for a meeting. The talk doesn't need to be long (10 minutes is fine if your topic is small or you just want to tease the group) and you don't need to be an expert (just tell us why you think your topic is cool or your experiences). Toss me an email and I'll assign you a chunk of time.&lt;/dl&gt;
				</description>
				<pubDate>Tue, 05 Feb 2008 01:09:23 -0600</pubDate>
			</item>
			<item>
				<title>C4[1] Videos Available</title>
				<link>http://rentzsch.com/c4/c41VideosAvailable</link>
				<description>
					&lt;p&gt;Thanks to the volunteer work of Pat Hughes, Bob Frank, Mike Miley, Chuck Remes, Dave Dribin and Victoria Wang, I&amp;#8217;m pleased to finally offer videos of C4[1]&amp;#8217;s presentations.&lt;/p&gt;&lt;p&gt;I&amp;#8217;ll upload one video per week, updating this entry as I encode+upload the videos:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Wolf Rentzsch:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/3/&quot;&gt;Indie Ethos&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Wil Shipley:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/4/&quot;&gt;Monster Marketing&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Daniel Jalkut:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/5/&quot;&gt;Application Acquisition&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Shawn Morel:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/6&quot;&gt;Virtualization Vivisection&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Allan Odgaard:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/7&quot;&gt;Experiences from Creating TextMate&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Bobby Andersen:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/9&quot;&gt;Icon Intermission&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Bob Ippolito:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/8&quot;&gt;Exploring Erlang&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Adam Engst:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/12&quot;&gt;Hacking The Press&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Tim Burks:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/13&quot;&gt;Bridges and Beyond&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Cabel Sasser:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/14&quot;&gt;Coda Confidential&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;You can &lt;a href=&quot;http://rentzsch.com/c4/oneOpen&quot;&gt;peek at the schedule&lt;/a&gt; if you want the detailed presentation descriptions.&lt;/p&gt;&lt;p&gt;(Video geek tidbit: it takes my MacBook Pro six to seven hours to encode an hour of video. It then takes &lt;a href=&quot;http://www.viddler.com&quot;&gt;Viddler&lt;/a&gt; another hour or so to transcode it to Flash video. Many CPU cycles died to spare your precious bandwidth.)&lt;/p&gt;&lt;p&gt;Way back when I considered turning these videos in DVDs that I could sell to increase C4&amp;#8217;s budget. However online videos like &lt;a href=&quot;http://www.ted.com/talks&quot;&gt;TED&lt;/a&gt; and &lt;a href=&quot;http://video.google.com/googleplex.html&quot;&gt;Google Tech Talks&lt;/a&gt; have really driven home how great frictionless sharing of high-quality presentations can be. So spread these videos far and wide, all these are great speakers talking about subjects dear to their heart.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; Some folks have indicated they want to download the videos for sending to their Apple TVs or disconnected watching (say on a plane ride). That&amp;#8217;s easy: &lt;a href=&quot;http://www.viddler.com/signup/step1/&quot;&gt;sign up for Viddler account&lt;/a&gt; and then load the video&amp;#8217;s Viddler page again. Now you&amp;#8217;ll have a &amp;#8220;Download&amp;#8221; tab on the right side of the page that will allow you to download the original &lt;code&gt;.mov&lt;/code&gt; file I uploaded.&lt;/p&gt;&lt;p&gt;Mucho thanks to Viddler for the rockin&amp;#8217; site and the tons of bandwidth. I priced out the costs of vending these videos on Amazon&amp;#8217;s S3 &amp;#8212; renowned for its low prices &amp;#8212; and came up with a $12,000 bandwidth bill. Yeowch.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update Feb 8:&lt;/strong&gt; &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/4/&quot;&gt;Shipley&amp;#8217;s live&lt;/a&gt;. Guess that means I &lt;a href=&quot;http://twitter.com/rentzsch/statuses/516286212&quot;&gt;win&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://twitter.com/wilshipley/statuses/516288322&quot;&gt;the&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://twitter.com/wilshipley/statuses/516329122&quot;&gt;twitter&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://twitter.com/wilshipley/statuses/516469292&quot;&gt;fight&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update Feb 15:&lt;/strong&gt; Posted &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/5/&quot;&gt;Daniel Jalkut&amp;#8217;s talk&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update Feb 22:&lt;/strong&gt; Posted &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/6&quot;&gt;Shawn Morel&amp;#8217;s talk&lt;/a&gt;. Also added Allan Odgaard to the video list, somehow I accidently left him off. He&amp;#8217;s up next.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update Feb 29:&lt;/strong&gt; Posted &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/7&quot;&gt;Allan Odgaard&amp;#8217;s talk&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update Mar 7:&lt;/strong&gt; Posted &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/8&quot;&gt;Bob Ippolito&amp;#8217;s talk&lt;/a&gt; along with a surprise bonus of &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/9&quot;&gt;Bobby Andersen&amp;#8217;s impromptu icon talk&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update Mar 14:&lt;/strong&gt;  Posted &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/12&quot;&gt;Adam Engst&amp;#8217;s talk&lt;/a&gt;. Sorry I&amp;#8217;m late, had too much fun during &lt;a href=&quot;http://www.piday.org/&quot;&gt;Pi Day&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update Mar 21:&lt;/strong&gt; Posted &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/13&quot;&gt;Tim Burks&amp;#8217; talk on RubyCocoa and Nu&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update Mar 28:&lt;/strong&gt; Posted &lt;a href=&quot;http://www.viddler.com/explore/rentzsch/videos/14&quot;&gt;Cabel Sasser&amp;#8217;s talk&lt;/a&gt;. That&amp;#8217;s all she wrote, folks. Phew.&lt;/p&gt;
				</description>
				<pubDate>Sat, 02 Feb 2008 00:00:00 -0600</pubDate>
			</item>
			<item>
				<title>PSIG 111: Thu Jan 3 2008</title>
				<link>http://rentzsch.com/psig/111</link>
				<description>
					&lt;dl&gt;	&lt;dt&gt;When:	&lt;dd&gt;Thursday, January 3rd, 2008 @ 7pm 		&lt;dt&gt;Where:	&lt;dd&gt;&lt;span style=&quot;color:darkred;font-weight:bold&quot;&gt;New Meeting Location:&lt;/span&gt; &lt;a href=&quot;http://maps.google.com/maps?q=920+E+Northwest+Highway+60074&quot;&gt;Hotel Indigo&lt;/a&gt; (&lt;a href=&quot;http://www.ichotelsgroup.com/hotelmedia/repository/hotelimages/CHIPA/WELCM_EXTR_02_E.jpg&quot;&gt;pic&lt;/a&gt;, &lt;a href=&quot;http://maps.google.com/maps?saddr=2121+W+Northwest+Highway+60074&amp;daddr=920+E+Northwest+Highway+60074&quot;&gt;directions&lt;/a&gt; from the &lt;a href=&quot;http://metrarail.com/Sched/cnw_nw/arlington_park.shtml&quot;&gt;Arlington Park Metra station&lt;/a&gt;).		&lt;dt&gt;Schedule:	&lt;dd&gt;&lt;b&gt;Show &amp;amp; Tell&lt;/b&gt;	&lt;br&gt;We'll start out the meeting by going around the table and talking about what we're currently working on or learning about. Handouts are welcome, or bring along your PowerBook and we'll hook it up to the projector.	&lt;p&gt;&lt;b&gt;Book Reports&lt;/b&gt;	&lt;br&gt;Bring along the book you're currently reading, or one of your old favorites. Hopefully the book would have some relevance to programming, but we're fairly open-minded. Just give us an overview the book's topic, and what you liked (or disliked) about it.&lt;/p&gt;	&lt;p&gt;&lt;b&gt;Topics&lt;/b&gt;	&lt;br&gt;New in Mac OS X 10.5, &lt;em&gt;Scripting Bridge&lt;/em&gt; makes it easier for your Cocoa application to control and interoperate with other applications. Instead of embedding+executing AppleScripts, Scripting Bridge allows you to control scriptable applications with right in your Objective-C code. Jonathan &amp;#8216;Wolf&amp;#8217; Rentzsch will walk through how the technology works and provide a demo of it in action.		&lt;p&gt;&lt;b&gt;Dinner&lt;/b&gt;	&lt;br&gt;If you want pizza, bring along three dollars and we'll all chip in.		&lt;dt&gt;Looking for Presenters:	&lt;dd&gt;I'm always on the look-out for folks to want to give a talk for a meeting. The talk doesn't need to be long (10 minutes is fine if your topic is small or you just want to tease the group) and you don't need to be an expert (just tell us why you think your topic is cool or your experiences). Toss me an email and I'll assign you a chunk of time.&lt;/dl&gt;
				</description>
				<pubDate>Wed, 02 Jan 2008 00:00:00 -0600</pubDate>
			</item>
			<item>
				<title>PSIG 110: Thu Dec 6 2007</title>
				<link>http://rentzsch.com/psig/110</link>
				<description>
					&lt;dl&gt;	&lt;dt&gt;When:	&lt;dd&gt;Thursday, December 6th, 2007 @ 7pm 		&lt;dt&gt;Where:	&lt;dd&gt;Inverness Room &lt;i&gt;(downstairs rear)&lt;/i&gt; of the &lt;a href=&quot;http://maps.google.com/maps?q=3405+Algonquin+60008&quot;&gt;Holiday Inn Rolling Meadows&lt;/a&gt;		&lt;p style=&quot;color:darkred&quot;&gt;&lt;b&gt;Notice:&lt;/b&gt; this will be the last meeting at the Holiday Inn. Starting January 2008 we'll be meeting at &lt;a href=&quot;http://maps.google.com/maps?q=920+E+Northwest+Hwy+60074&quot;&gt;Hotel Indigo&lt;/a&gt;, which is within walking distance from the &lt;a href=&quot;http://metrarail.com/Sched/cnw_nw/arlington_park.shtml&quot;&gt;Arlington Park train station&lt;/a&gt;.&lt;/p&gt;		&lt;dt&gt;Schedule:	&lt;dd&gt;&lt;b&gt;Show &amp;amp; Tell&lt;/b&gt;	&lt;br&gt;We'll start out the meeting by going around the table and talking about what we're currently working on or learning about. Handouts are welcome, or bring along your PowerBook and we'll hook it up to the projector.	&lt;p&gt;&lt;b&gt;Book Reports&lt;/b&gt;	&lt;br&gt;Bring along the book you're currently reading, or one of your old favorites. Hopefully the book would have some relevance to programming, but we're fairly open-minded. Just give us an overview the book's topic, and what you liked (or disliked) about it.&lt;/p&gt;	&lt;p&gt;&lt;b&gt;Topics&lt;/b&gt;	&lt;br&gt;Mac OS X 10.5 introduces a new high-level framework for iCal data creation+mutation: &lt;a href=&quot;http://developer.apple.com/documentation/AppleApplications/Conceptual/CalendarStoreProgGuide/index.html#//apple_ref/doc/uid/TP40004334&quot;&gt;CalendarStore&lt;/a&gt;. Before CalendarStore, your only options for interoperating with the system&amp;#8217;s calendar were to use the potent-but-complex SyncServices or (shudder) grovel iCal files yourself. Now it&amp;#8217;s easy to add calendar support to your Cocoa application. &lt;a href=&quot;http://violasong.com/blog/&quot;&gt;Victoria Wang&lt;/a&gt; will demonstrate how she integrated iCal support into her application.		&lt;p&gt;&lt;b&gt;Dinner&lt;/b&gt;	&lt;br&gt;If you want pizza, bring along three dollars and we'll all chip in.		&lt;dt&gt;Looking for Presenters:	&lt;dd&gt;I'm always on the look-out for folks to want to give a talk for a meeting. The talk doesn't need to be long (10 minutes is fine if your topic is small or you just want to tease the group) and you don't need to be an expert (just tell us why you think your topic is cool or your experiences). Toss me an email and I'll assign you a chunk of time.&lt;/dl&gt;
				</description>
				<pubDate>Wed, 05 Dec 2007 01:17:18 -0600</pubDate>
			</item>
			<item>
				<title>Curing MacBook Pro 17&quot; Insomnia</title>
				<link>http://rentzsch.com/bugs/curingMacbookPro17Insomnia</link>
				<description>
					&lt;p&gt;Ever since I bought my MacBook Pro 17&amp;#34;, its had issues with unexpectedly waking from sleep. It&amp;#8217;s literally uncool when you pull your MBP out of your bag, and its entire case is hot to touch, fans blowing full speed, battery drained from its futile attempt to cool itself inside what amounts to a blanket.&lt;/p&gt;&lt;p&gt;My initial theory was that its sudden motion sensor was firing, and a bug in Mac OS X woke the machine when it shouldn&amp;#8217;t. The problem with this theory is my previous MacBook Pro 15&amp;#34; (Core Duo) never exhibited this problem.&lt;/p&gt;&lt;p&gt;I tried a number of techniques to cope, finally alternating between two undesirable choices: simply shutting down the entire machine when toting it around or attempting to time bag insertion with Safe Sleep&amp;#8217;s sizable delay when it is dumping RAM to disk (understandably, the machine is largely catatonic during this operation, and I discovered during those magic ~10 seconds the machine was impervious to being accidently re-awoken).&lt;/p&gt;&lt;p&gt;The latter technique was more desirable from a state-retention stand point, but still I would find my machine overheating in my bag. Worse, it&amp;#8217;s somewhat dangerous. That ~10 second delay is the result of a ~3GB write to the drive, so by stashing the machine into my bag during that temporal window, I&amp;#8217;m jostling the drive right when it&amp;#8217;s busiest. That&amp;#8217;s bad hardware karma.&lt;/p&gt;&lt;p&gt;Finally I just accepted the flaw and when I knew the machine would be in my bag for more than five minutes, I&amp;#8217;d just always completely shut down. Suck.&lt;/p&gt;&lt;p&gt;Quite by accident I stumbled upon &lt;a href=&quot;http://db.tidbits.com/article/8702&quot;&gt;Glenn Fleishman&amp;#8217;s TidBITS posting&lt;/a&gt;. I&amp;#8217;m not sure how I missed it in the first place &amp;#8212; I subscribe to their feed. Anyway, Glenn mentioned a power management setting I had previously overlooked: &lt;code&gt;lidwake&lt;/code&gt;. The man page for &lt;code&gt;pmset&lt;/code&gt; says this:&lt;/p&gt;&lt;blockquote&gt;  &lt;p&gt;lidwake - wake the machine when the laptop lid (or clamshell) is opened (value = 0/1)&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;I immediately gave it a shot and issued this command:&lt;/p&gt;&lt;p&gt;&lt;code&gt;sudo pmset lidwake 0&lt;/code&gt;&lt;/p&gt;&lt;p&gt;I&amp;#8217;m happy to report my MacBook Pro 17&amp;#34; now sleeps peacefully in my bag, even being after inserted + jostled + removed. Apparently the Sudden Motion Sensor was innocent after all, the genuine source of my insomniac angst being an oversensitive lid sensor.&lt;/p&gt;&lt;p&gt;My current theory is the 17&amp;#34;&amp;#8217;s sheer girth slightly bends its frame, tripping the lid sensor. &lt;a href=&quot;http://www.manoverboard.org&quot;&gt;A friend&lt;/a&gt; is sending his 17&amp;#34; in for service hoping to physically resolve the same issue on his machine. I&amp;#8217;ll update this entry, reporting back if he gets any satisfaction, but for me this simple &lt;code&gt;lidwake&lt;/code&gt; software work-around solves my issue.&lt;/p&gt;
				</description>
				<pubDate>Fri, 02 Nov 2007 21:44:16 -0500</pubDate>
			</item>
			<item>
				<title>PSIG 109: Thu Nov 1 2007</title>
				<link>http://rentzsch.com/psig/109</link>
				<description>
					&lt;DL&gt;	&lt;DT&gt;When:	&lt;DD&gt;Thursday, November 1st, 2007 @ 7pm 		&lt;DT&gt;Where:	&lt;DD&gt;Inverness Room &lt;i&gt;(downstairs rear)&lt;/i&gt; of the &lt;A HREF=&quot;http://maps.google.com/maps?q=3405+Algonquin+60008&quot;&gt;Holiday Inn Rolling Meadows&lt;/A&gt;		&lt;DT&gt;Schedule:	&lt;DD&gt;&lt;B&gt;Show &amp;amp; Tell&lt;/B&gt;	&lt;BR&gt;We'll start out the meeting by going around the table and talking about what we're currently working on or learning about. Handouts are welcome, or bring along your PowerBook and we'll hook it up to the projector.	&lt;P&gt;&lt;B&gt;Book Reports&lt;/B&gt;	&lt;BR&gt;Bring along the book you're currently reading, or one of your old favorites. Hopefully the book would have some relevance to programming, but we're fairly open-minded. Just give us an overview the book's topic, and what you liked (or disliked) about it.&lt;/P&gt;	&lt;P&gt;&lt;B&gt;Topics&lt;/B&gt;	&lt;BR&gt;Mac OS X 10.5 &amp;#8220;&lt;a href=&quot;http://www.simpsonspark.com/images/whitepages/leopold.jpg&quot;&gt;Leopold&lt;/a&gt;&amp;#8221; is finally shipping and it&amp;#8217;s a smorgasbord of developer delights. &lt;a href=&quot;http://www.dribin.org/dave/blog/&quot;&gt;Dave Dribin&lt;/a&gt; will provide and overview of what&amp;#8217;s new and what&amp;#8217;s better in the latest release of Mac OS X.		&lt;P&gt;&lt;B&gt;Dinner&lt;/B&gt;	&lt;BR&gt;If you want pizza, bring along three dollars and we'll all chip in.		&lt;DT&gt;Looking for Presenters:	&lt;DD&gt;I'm always on the look-out for folks to want to give a talk for a meeting. The talk doesn't need to be long (10 minutes is fine if your topic is small or you just want to tease the group) and you don't need to be an expert (just tell us why you think your topic is cool or your experiences). Toss me an email and I'll assign you a chunk of time.&lt;/DL&gt;
				</description>
				<pubDate>Tue, 30 Oct 2007 00:00:00 -0500</pubDate>
			</item>
			<item>
				<title>Block-level Parallels-Fusion Migration</title>
				<link>http://rentzsch.com/notes/blocklevelParallelsFusionMigration</link>
				<description>
					&lt;p&gt;I currently run my mail server under Debian running on Parallels Desktop 2. Unfortunately Parallels Desktop 2 is end-of-lifed and has USB issues with Mac OS X 10.4.10 and later. Sadness: I upgraded to Parallels Desktop 3 and found it incredibly unstable. What to do?&lt;/p&gt;&lt;p&gt;Fortunately VMware&amp;#8217;s Fusion has shipped and it seems even snappier than Parallels 2 &lt;em&gt;and&lt;/em&gt; completely stable. But how to migrate my mail server VM from Parallels to Fusion?&lt;/p&gt;&lt;p&gt;Unfortunately there&amp;#8217;s no official migration path if the &lt;a href=&quot;http://www.macworld.com/2007/09/secrets/parallels_to_fusion/index.php&quot;&gt;guest OS isn&amp;#8217;t Windows&lt;/a&gt;. I really didn&amp;#8217;t want to spend the time building up a brand-new Debian mail server with its the associated configuration headaches, so I decided to dig a little and see if I could migrate the disk image itself. Sure enough, you can. Here&amp;#8217;s how you do it:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;p&gt;Let&amp;#8217;s call the original Parallels virtual machine &amp;#8220;MyVM&amp;#8221;. First thing, open &lt;code&gt;~/Library/Parallels/MyVM/MyVM.pvs&lt;/code&gt; in a text editor and take note of the &lt;a href=&quot;http://en.wikipedia.org/wiki/Cylinder-head-sector&quot;&gt;cylinders+heads+sectors&lt;/a&gt; settings for your disk image. Mine looked like this:&lt;/p&gt;&lt;p&gt;&lt;code&gt;Disk 0:0 cylinders = 16254&lt;/code&gt; &lt;br /&gt;&lt;code&gt;Disk 0:0 heads = 16&lt;/code&gt; &lt;br /&gt;&lt;code&gt;Disk 0:0 sectors = 63&lt;/code&gt;&lt;/p&gt;&lt;p&gt;We&amp;#8217;re going to multiply all the numbers together to get a total sector count: 16384032 (16254 * 16 * 63). We&amp;#8217;ll need this number a little later on.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;Both Parallels and Fusion utilize sparse disk images by default, but I highly doubt their implementations are on-disk compatible. So convert the sparse image into a plain image using &lt;strong&gt;Parallels Image Tool&lt;/strong&gt;. Your input file will be something like &lt;code&gt;MyVM.hdd&lt;/code&gt;, while your output file will be &lt;code&gt;MyVM-plain.hdd&lt;/code&gt;. &lt;strong&gt;Note:&lt;/strong&gt; this step will temporarily burn disk space.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;We&amp;#8217;re done on the Parallels side &amp;#8212; we now have an unadorned file that&amp;#8217;s a block-for-block realization of the virtual machine&amp;#8217;s hard drive. Our next trick is to convince Fusion to play with this image file. I found a neat command-line tool stashed in Fusion&amp;#8217;s app package: &lt;code&gt;VMware Fusion.app/Contents/MacOS/diskCreate&lt;/code&gt;. We&amp;#8217;ll use it to create a new nonsparse blank image like so:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;diskCreate -t monoFlat -s 16384032 MyVM-plain.vmdk&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Except substitute &lt;code&gt;16384032&lt;/code&gt; with the total sector count you calculated from step 1.  &lt;strong&gt;Note:&lt;/strong&gt; again, this step will temporarily burn disk space.&lt;/p&gt;&lt;p&gt;This command yields two files in your working directory: a small textual &lt;code&gt;MyVM-plain.vmdk&lt;/code&gt; and a large &lt;code&gt;MyVM-plain-flat.vmdk&lt;/code&gt;. The big file is also an unadorned nonsparse disk image: the same format as our converted Parallels image. Now we just need to switcheroo the new empty file with the previously converted image:&lt;/p&gt;&lt;p&gt;&lt;code&gt;rm MyVM-plain-flat.vmdk&lt;/code&gt; &lt;br /&gt;&lt;code&gt;mv /path/to/MyVM-plain.hdd MyVM-plain-flat.vmdk&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;At this point, Fusion is ready to play with your Parallels image. Just create a new VM and &amp;#8220;use existing disk image&amp;#8221; and point it at &lt;code&gt;MyVM-plain.vmdk&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;One drawback is that the disk image is no longer sparse and thus wastes lots of disk space. I like to archive off my entire mail server image and a sparse image is the difference between ~600MB and ~8GB. Fortunately it&amp;#8217;s easy to convert the image back to a sparse image that works with Fusion. Again we&amp;#8217;ll use &lt;code&gt;diskCreate&lt;/code&gt;:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;diskCreate -C /path/to/MyVM-plain.vmdk MyVM.vmdk&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The &lt;code&gt;-C&lt;/code&gt; option clones from an existing disk image, and &lt;code&gt;diskCreate&lt;/code&gt; by defaults creates a sparse image that houses both the image metadata and image itself in a single file. Once the tool completes, you can create a new Fusion VM and point at &lt;code&gt;MyVM.vmdk&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;This technique isn&amp;#8217;t limited to just Debian or other Linuxes &amp;#8212; this should also work (&lt;a href=&quot;http://twitter.com/epicycle/statuses/319150402&quot;&gt;or not&lt;/a&gt;) with any guest operating system that works with both Parallels and Fusion and should be lossless. I do recommend you uninstall Parallels guest tools from your guest OS before attempting the transition to Fusion. Once you&amp;#8217;re up and running on Fusion, you can install VMware&amp;#8217;s guest integration tools.&lt;/p&gt;
				</description>
				<pubDate>Sat, 06 Oct 2007 00:00:00 -0500</pubDate>
			</item>
			<item>
				<title>apple's antiCAPSLOCK</title>
				<link>http://rentzsch.com/notes/applesantiCAPSLOCK</link>
				<description>
					&lt;p&gt;About a month ago I picked up a &lt;a href=&quot;http://www.apple.com/keyboard/&quot;&gt;new Apple keyboard&lt;/a&gt;. That&amp;#8217;s the new thin model, the wired variant.&lt;/p&gt;&lt;p&gt;I&amp;#8217;m rather pleased with it: like all keyboards, the previous model had a propensity of collecting debris+cruft. Unlike most other keyboards, the previous model showcased your cruft collection via its transparent sides. These things are &lt;a href=&quot;http://www.flickr.com/photos/jwight/sets/72157601461340453/&quot;&gt;hard to clean&lt;/a&gt;, so I hoped upgrading to the new thin model would keep my desk looking clean+swanky. So far so good.&lt;/p&gt;&lt;p&gt;But I did notice something odd. I rarely use the Caps Lock key, but often accidently bang it, missing the left Shift key. I would feel the mistake while typing, but then I&amp;#8217;d look down and see Caps Lock hadn&amp;#8217;t been engaged after all. Oh, I must have just &lt;em&gt;imagined&lt;/em&gt; my mis-strike.&lt;/p&gt;&lt;p&gt;Over the next few weeks, this kept happening to the point where I started questioning reality. I was &lt;em&gt;positive&lt;/em&gt; I hit it. This required scientifical investigation.&lt;/p&gt;&lt;p&gt;I&amp;#8217;ve discovered something shocking. An anti-Caps Lock conspiracy silently bubbling up from the darkest trenches inside Apple:&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Apple&amp;#8217;s Caps Lock key has undocumented anti-jab protection.&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Unique among the rest of the keys, Caps Lock doesn&amp;#8217;t activate &lt;em&gt;immediately&lt;/em&gt; upon strike. There&amp;#8217;s a very small time window &amp;#8212; perhaps a quarter of a second &amp;#8212; where if you release the key inside the window, the keystroke is ignored.&lt;/p&gt;&lt;p&gt;But that&amp;#8217;s only &lt;em&gt;part&lt;/em&gt; of the conspiracy. The Caps Lock key isn&amp;#8217;t just universally slow to react. If Caps Lock was already engaged, the keystroke is registered immediately, even before the upstroke.&lt;/p&gt;&lt;p&gt;So Apple&amp;#8217;s modern keyboards have a bias &lt;em&gt;against&lt;/em&gt; activating Caps Lock at all, and another bias to turn it off as soon as possible. That fits in perfectly with how I (mis)use Caps Lock, but I can&amp;#8217;t help thinking it&amp;#8217;s ALSO a subtle nudge to those to abuse Caps Lock to TONE IT DOWN A LITTLE.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://rentzsch.com/images/notes/applesantiCAPSLOCK.3g2&quot;&gt;Here&amp;#8217;s a crappy video&lt;/a&gt; I shot with my Treo showing off the Caps Lock delay. I quickly, firmly strike the Caps Lock key head-on three times in a row without activating it. Then I strike it three times somewhat more slowly and it Works As Expected. Finally, I show even a viper-quick stab will register if the Caps Lock is engaged.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Update Oct 7:&lt;/strong&gt; &lt;a href=&quot;http://www.engadget.com/2007/10/05/apples-new-metallic-keyboard-biased-against-caps-lock/&quot;&gt;This&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://mjtsai.com/blog/2007/10/04/caps-lock-anti-jab-protection/&quot;&gt;turned&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://arstechnica.com/journals/apple.ars/2007/10/05/apples-new-keyboard-protects-from-overzealous-typists&quot;&gt;out&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://www.tuaw.com/2007/10/07/new-apple-keyboard-has-protection-against-accidental-caps-lock/&quot;&gt;to&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://gizmodo.com/gadgets/peripherals/apples-new-aluminum-keyboard-features-built+in-anti+caps-lock-bias-307827.php&quot;&gt;be&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://blog.wired.com/gadgets/2007/10/apple-keyboard-.html&quot;&gt;a&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://daringfireball.net/linked/2007/october#thu-04-caps_lock&quot;&gt;popular&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://gadgets.boingboing.net/2007/10/05/apple-keyboards-new.html&quot;&gt;entry&lt;/a&gt;. Three follow-ups:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Wireless variant too:&lt;/strong&gt; I&amp;#8217;m getting conflicting reports, but the majority say the wireless version of the keyboard has the same behavior. I&amp;#8217;m inclined to think that&amp;#8217;s the case, and the folks with the wireless versions that aren&amp;#8217;t witnessing the behavior don&amp;#8217;t drink nearly as much coffee as I do.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Control key remapping:&lt;/strong&gt; A goodly number of you wrote in to say you remap Caps Lock to be an extra Control key (using the &amp;#8220;Keyboard &amp;amp; Mouse&amp;#8221; System Preferences pane, illustrated towards the end of &lt;a href=&quot;http://arstechnica.com/journals/apple.ars/2007/10/05/apples-new-keyboard-protects-from-overzealous-typists&quot;&gt;Ars Technica&amp;#8217;s coverage&lt;/a&gt;).&lt;/p&gt;&lt;p&gt;The main question was: &lt;em&gt;does this activation delay still take place if you remap the key?&lt;/em&gt; Unfortunately, yes &amp;#8212; the activation delay occurs in the keyboard itself, before the operating system even sees the key-down. So if you&amp;#8217;re an emacs fiend, you may want a different keyboard altogether. If this antiCAPSLOCK trend ends up extending to Apple&amp;#8217;s notebooks in the future, well then it may &lt;a href=&quot;http://brok3n.org/archivesextreme/2007/10/capslock_is_my.html&quot;&gt;suck to be you&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;strong&gt;Eject key delay:&lt;/strong&gt; I also received a number of email pointing out the Eject key also has a time-delay, so Caps Locks isn&amp;#8217;t &amp;#8220;unique among the rest of the keys&amp;#8221;.&lt;/p&gt;&lt;p&gt;Yes and no.&lt;/p&gt;&lt;p&gt;Yes: at the user level, Caps Lock and Eject work similarly, with the Eject key having a longer activation delay.&lt;/p&gt;&lt;p&gt;No: Caps Lock &lt;em&gt;is&lt;/em&gt; unique among the keys, because its activation delay takes place in the keyboard itself. The Eject key&amp;#8217;s activation delay was a &lt;a href=&quot;http://docs.info.apple.com/article.html?artnum=305268&quot;&gt;feature added to Mac OS X 10.4.9&lt;/a&gt;. Using &lt;a href=&quot;http://www.dribin.org/dave/blog/&quot;&gt;Dave Dribin&amp;#8217;s&lt;/a&gt; excellent HIDBrowser (part of &lt;a href=&quot;http://code.google.com/p/ddribin/&quot;&gt;DDHidLib&lt;/a&gt;), I verified the key-down is sent immediately (even on Apple&amp;#8217;s newest keyboards).&lt;/p&gt;&lt;p&gt;So the Eject key activation delay is optional and can be disabled in software, but I don&amp;#8217;t know of a way to do the same with the Caps Lock key. In fact it may be impossible to disable this &amp;#8220;feature&amp;#8221; short of hardware hacking.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;
				</description>
				<pubDate>Thu, 04 Oct 2007 00:00:00 -0500</pubDate>
			</item>
			<item>
				<title>-[NSWindow frame] lies</title>
				<link>http://rentzsch.com/cocoa/nswindowFrameLies</link>
				<description>
					&lt;p&gt;You&amp;#8217;d think Cocoa would get right something basic like &amp;#8220;what&amp;#8217;s the position of this window on the screen?&amp;#8221; You&amp;#8217;d be mistaken.&lt;/p&gt;&lt;p&gt;&lt;code&gt;-[NSWindow frame]&lt;/code&gt; is supposed to return the window&amp;#8217;s frame. And it mostly does. Unless you&amp;#8217;re dragging a window around, and then it just returns the window&amp;#8217;s saved-off drag &lt;strong&gt;starting&lt;/strong&gt; frame, not its actual &lt;strong&gt;current&lt;/strong&gt; frame. Until you stop moving the mouse. Then it&amp;#8217;s swell and reports reality again.&lt;/p&gt;&lt;p&gt;Uck.&lt;/p&gt;&lt;p&gt;I wrote a category for &lt;code&gt;NSWindow&lt;/code&gt; called &lt;a href=&quot;http://redshed.svn.sourceforge.net/viewvc/redshed/trunk/cocoa/NSWindow%2BliveFrame/&quot;&gt;&lt;code&gt;-liveFrame&lt;/code&gt;&lt;/a&gt;. It wraps a Carbon API that reports the window&amp;#8217;s current rectangle, like, all! the! time! Those Carbon APIs are so boring.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://rentzsch.com/share/NSWindow_liveFrame.zip&quot;&gt;Here&amp;#8217;s the compiled demo app&lt;/a&gt; if you want to bask in &lt;code&gt;-frame&lt;/code&gt;&amp;#8217;s duplicity for yourself. Drag the window around and watch &lt;code&gt;-frame&lt;/code&gt;&amp;#8217;s numbers not update until you stop moving the mouse. Then revel in &lt;code&gt;-liveFrame&lt;/code&gt;&amp;#8217;s consistent output sincerity.&lt;/p&gt;
				</description>
				<pubDate>Wed, 03 Oct 2007 14:41:33 -0500</pubDate>
			</item>
			
	</channel>
</rss>