<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Out to Lunch Productions</title>
	<atom:link href="http://www.outtolunchproductions.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.outtolunchproductions.com</link>
	<description>Silly name. Serious websites.</description>
	<lastBuildDate>Mon, 02 Jan 2012 19:00:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Woefully late and short update</title>
		<link>http://www.outtolunchproductions.com/woefully-late-and-short-update/</link>
		<comments>http://www.outtolunchproductions.com/woefully-late-and-short-update/#comments</comments>
		<pubDate>Mon, 02 Jan 2012 15:32:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=969</guid>
		<description><![CDATA[<p>I&#8217;ve had a very busy year, and between the redesign of this site and the actual work I&#8217;ve been doing I haven&#8217;t had time to update my portfolio.</p>
<p>Here&#8217;s a quick list of the things I&#8217;ve been working on, in&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve had a very busy year, and between the redesign of this site and the actual work I&#8217;ve been doing I haven&#8217;t had time to update my portfolio.</p>
<p>Here&#8217;s a quick list of the things I&#8217;ve been working on, in no particular order.</p>
<ul>
<li><a href="http://jobscout.caltrail.com">JobScout</a><br />
A digital literacy teaching platform. The plans and concept were done in conjunction with Christina and Stephanie at <a href="http://www.realpolitech.com">REALPOLITECH</a>, and I designed and developed the first phase of the app itself in two months. This is what will take up the majority of my time in 2012, hopefully.</li>
<li><a href="http://www.thedailydigi.com">The Daily Digi</a><br />
Ground up re-write of the member management software to fit the specific needs of Steph, the digital scrapbooking empress. Tons of custom functionality so that she can interact with her members precisely how she wants, all written to be compatible with the membership database of the old system without disrupting the users&#8217; experience.</li>
<li><a href="http://www.unacuhcp.org">UNAC/UHCP</a><br />
Another REALPOLITECH client, this site&#8217;s massive infrastructure has been steadily expanded to include a store with coupons, optional splash pages, an events calendar, and easy ways to manage the metric ton of information the site has.</li>
<li><a href="http://www.angelk-9.com">Angel-K9</a><br />
A dog training academy website with a customized class scheduler that automatically creates class rosters with information the trainers need and is easily manageable by the office staff.</li>
<li><a href="http://www.lgjf.org">LGJF</a><br />
A student-run online publication for the University of San Francisco. A content-first design, with cool little touches like pull-quotes and different types of tags for content. The content slider on the main page is also customizable for each post, making it easier for them to make each one look great.</li>
</ul>
<p>That&#8217;s all I have time to tell you about now. I have every intention of finishing the update to Out To Lunch&#8217;s layout and make it easier for me to add descriptions of the things I&#8217;ve been doing.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/woefully-late-and-short-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elkhouse Retreat</title>
		<link>http://www.outtolunchproductions.com/elkhouse-retreat/</link>
		<comments>http://www.outtolunchproductions.com/elkhouse-retreat/#comments</comments>
		<pubDate>Mon, 09 May 2011 15:21:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Portfolio]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=947</guid>
		<description><![CDATA[A beautiful property like this one deserves much more than an entry in VRBO.com (Vacation Rentals By Owner).]]></description>
			<content:encoded><![CDATA[<p><strong>Creative Brief:</strong> A site with an elegant look and a system to help the property manager handle reservations.</p>
<p>The houses available for rent in Colorado are, by and large, breathtaking. What I can&#8217;t understand is why so many of these magnificent properties are rented through stock-and-trade websites like VRBO. I don&#8217;t imagine the owners of these places are very happy with the bland taste left in their potential renters&#8217; mouths after they look through a few thumbnail pictures, surrounded by drab text and Google ads for ski rentals.</p>
<p>The Elk House owners wanted to stand out from the pack, and while they will still show up on sites like VRBO (their Google search ranking is simply too high to ignore) they now have a much better place to send potential renters: their <a href="http://www.elkhouseretreat.com">custom website</a> with a <a href="#">custom reservation system.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/elkhouse-retreat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Beebe &amp; Brahm</title>
		<link>http://www.outtolunchproductions.com/beebe-brahm/</link>
		<comments>http://www.outtolunchproductions.com/beebe-brahm/#comments</comments>
		<pubDate>Mon, 09 May 2011 15:19:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Portfolio]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=944</guid>
		<description><![CDATA[The mission - create a fun and unique wedding site that allows guests to RSVP electronically.

The result - a fun design coupled with a relaxed tone and a built-from-scratch RSVP system, complete with email alerts and downloadable spreadsheets.]]></description>
			<content:encoded><![CDATA[<p>A friend of mine from high school got married recently, and during the planning phase of the wedding she thought it prudent to investigate some eco-friendly ways of getting people to her wedding. The centerpiece to her plan was to replace the traditional snail-mail RSVPs with a website that could handle all of the RSVPs  and didn’t look like it was made by someone who would very clearly rather be doing almost anything other than web design.</p>
<p>Once the pictures from the wedding come in, the information about the wedding itself will be replaced with a slide-show, so anyone can re-visit the memories of the wedding anytime they choose.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/beebe-brahm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cove Side on Islesboro</title>
		<link>http://www.outtolunchproductions.com/cove-side-on-islesboro/</link>
		<comments>http://www.outtolunchproductions.com/cove-side-on-islesboro/#comments</comments>
		<pubDate>Fri, 04 Feb 2011 17:09:52 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=935</guid>
		<description><![CDATA[<p>A family friend owns a pair of cabins on a gorgeous island in Penobscot Bay. He saw the <a href="/elk-house">Elk House</a> website and asked me if I could create something similar for him.</p>
<p>Just a small change would be needed;&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>A family friend owns a pair of cabins on a gorgeous island in Penobscot Bay. He saw the <a href="/elk-house">Elk House</a> website and asked me if I could create something similar for him.</p>
<p>Just a small change would be needed; there are two cabins, which can be rented together or separately. I could add a little piece of functionality to the calendar, where someone could choose which cabin they wanted. Easy, right?</p>
<p>Whoo boy. Am I sorry I promised I could deliver quickly on that.</p>
<p>I wound up having to rebuild the system almost from scratch, doing some stream-lining and IE compatibility testing. (Did you know that if you use <code>counter</code> or <code>oneweek</code> as a global Javascript variable it breaks your site in IE? I didn&#8217;t.) Also, the price of each night is now dependent on your length of stay, <em>not</em> when you want to stay (which is how Elk House works). So there&#8217;s a list of suggested stay lengths over to the left, each of which is linked to the actual date in the calendar.</p>
<p>All told, the additional functionality took an extra 10 hours or so to build, but it did uncover a flaw in the way the calendar script knew what the next month was. Instead of selecting the literal &#8220;next month&#8221;, it would find the &#8220;month 30 days from now.&#8221; It worked most of the time, so long as the current day wasn&#8217;t the 28th &#8211; 31st day of the month. If it was, months would get skipped because they didn&#8217;t have that many days in them. Ridiculous.</p>
<p>Revealing this glitch helped fix the Elk House calendar, because they&#8217;re both based on the same script. Eternal learning, I guess.</p>
<p>Luckily, the back-end of the system is nearly identical and only required one small change.</p>
<p>Another lucky break &#8211; the place is beautiful and serene, and I was able to take the pictures myself. Good pictures can make any layout sing, and it&#8217;s hard to take bad pictures of that place.</p>
<p><a href="http://www.covesideonislesboro.com">Visit the site.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/cove-side-on-islesboro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eri Hawkins</title>
		<link>http://www.outtolunchproductions.com/eri-hawkins/</link>
		<comments>http://www.outtolunchproductions.com/eri-hawkins/#comments</comments>
		<pubDate>Fri, 04 Feb 2011 16:48:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=931</guid>
		<description><![CDATA[<p>This site layout is a couple of firsts for me. For one, it&#8217;s a single-page layout, which wound up not being that big a deal; WordPress sites work off a templating system, and since I like to keep the site&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>This site layout is a couple of firsts for me. For one, it&#8217;s a single-page layout, which wound up not being that big a deal; WordPress sites work off a templating system, and since I like to keep the site files to a minimum I&#8217;ll use the is_page() conditional to signify different pages.</p>
<p>Also, lots of bright colors in this layout. It&#8217;s not that I hate color, it&#8217;s just that I&#8217;m afraid of it. It scares me to death. The wrong colors can ruin an otherwise good layout, and my lack of experience with it was something that kept from using it a lot. I&#8217;m happy with where it wound up, so I guess next time I don&#8217;t have to be so a-skeered.</p>
<p>The last &#8220;new thing&#8221; I did for this site was come up with a JavaScript function for the animations. (They&#8217;re not on the site yet; we&#8217;re still working on them). Because Eri&#8217;s a stop-motion animator, I wanted a way to animate frames of transparent PNGs (GIF transparencies are just the worst).</p>
<p>By creating a transparent PNG with the frames evenly spaced and applying a JavaScript function to it, walk cycles are really easy to create. Check it out:</p>
<pre><code>$(function(){

	function getNextFrame(framePositions, selector, frames, width){
		var currentFrame = $(selector).find('img').css('left');
		var currentFrame = currentFrame.replace('px', '');
		var currentFrame = -(currentFrame)/width;

		var nextFrame = currentFrame + 1;

		if (direction == 0){

			newFrame = framePositions[nextFrame];

			if (newFrame == undefined){
				nextFrame = currentFrame -1;
				newFrame = framePositions[nextFrame];
				direction = 1;
			}

		} else {

			nextFrame = currentFrame -1;
			newFrame = framePositions[nextFrame];

			if (nextFrame == -1){
				nextFrame = currentFrame  + 1;
				newFrame = framePositions[nextFrame];
				direction = 0;
			}

		}

		$(selector).find('img').css({left: framePositions[nextFrame]});

	}

	function stopMotion(selector, frames, width, height, fps){

		var speed = 1000/fps;

		$(selector).css({overflow: 'hidden', height: height+'px', width: width+'px', position: 'absolute'});
		$(selector).find('img').css({position: 'absolute', left:0});

		var framePositions = Array();
		for (i=0; i<frames; i++){
			framePositions.push(-(i) * width);
		}

		direction = 0;

		setInterval(function(){getNextFrame(framePositions, selector, frames, width)}, speed);

	}

	stopMotion('#bird', 6, 212, 177, 5);

	$('#bird').everyTime(100, function(){

			$(this).animate({left: 1500, top: -50}, 8000).animate({left:-300, top: 0}, 1);

	});

	});</code></pre>
<p>The everyTime() function is a <a href="http://plugins.jquery.com/files/jquery.timers-1.2.js.txt">jQuery plugin</a> that cycles the left-to-right animation. If the character isn't moving across the page, I can leave it out.</p>
<p>I love Eri's work. It's terrific and terrifying. There's something off-putting and creepy about her work that speaks to me, and I think the website helps communicate some of that.</p>
<p><a href="http://www.erihawkins.com">Visit the site.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/eri-hawkins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nicholas Cambata</title>
		<link>http://www.outtolunchproductions.com/nicholas-cambata/</link>
		<comments>http://www.outtolunchproductions.com/nicholas-cambata/#comments</comments>
		<pubDate>Tue, 25 Jan 2011 17:19:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=940</guid>
		<description><![CDATA[<p>This is another referral, once again from Ross Nover. Nicholas is a filmmaker in DC, and he wanted a super-clean yet image-heavy site to display his work, talk about his press coverage, and keep a weblog.</p>
<p><a href="http://www.nicholascambata.com">Visit the site.</a></p>
<p>Blog&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>This is another referral, once again from Ross Nover. Nicholas is a filmmaker in DC, and he wanted a super-clean yet image-heavy site to display his work, talk about his press coverage, and keep a weblog.</p>
<p><a href="http://www.nicholascambata.com">Visit the site.</a></p>
<p>Blog design is one of those things that&#8217;s really easy, until you actually try to do it. I&#8217;m a firm believer in the notion that what you leave out of a design is just as, if not more, important as what you put in it, and there&#8217;s a lot of ways to crap up a blog right proper. So I went as minimalist as I could, leaving out everything I could think of.</p>
<p>Title, date, content, permalink, comments, share on Twitter and Facebook. That&#8217;s all.</p>
<p>Since Nicholas makes films, he needs to be able to put videos on his site. I recommended using Vimeo since YouTube&#8217;s support of H.264 is now in question. But actually getting the video on to the site was slightly complicated, since each video embed code would have to be modified so that the size is right.</p>
<p>So I wrote a JavaScript function that pulls the proper iFrame source out of the embed code and puts it into a pre-fabbed iFrame on the page. Like so:</p>
<pre><code>
$(function(){

		$('#magic-man').change(function(){

			var data = $('#magic-man').val();

			$('#assistant').html(data);

			var url = $('#assistant iframe').attr('src');

			var url = url.split("?");

			$('input[name="filmSrc"]').val(url[0]);

		});

	});
</pre>
<p></code></p>
<p>Easy-peasy. All Nick has to do is select the Vimeo embed code and paste it into a field. This function takes care of the rest.</p>
<p>This lives on the Add New Film Clip custom post type editor page. Hopefully, it's as future-proof as I think it is. I mean, for the foreseeable future, at least, Vimeo embed codes will create an iFrame, and those iFrames will have srcs, and those srcs will be what I want to get with this code.</p>
<p>At any rate, there's a manual entry field for fallback. Just in case I'm wrong.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/nicholas-cambata/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Showtime 2.0</title>
		<link>http://www.outtolunchproductions.com/showtime-2-0/</link>
		<comments>http://www.outtolunchproductions.com/showtime-2-0/#comments</comments>
		<pubDate>Tue, 23 Nov 2010 23:28:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=916</guid>
		<description><![CDATA[<p>After a long and harried development process (by which I mean two days with some Old Fashioneds and an inbox full of feature requests) I&#8217;ve released an update to the Showtime plugin I wrote for the <a href="http://www.wvau.org">WVAU.org</a> website.</p>
<p>I&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>After a long and harried development process (by which I mean two days with some Old Fashioneds and an inbox full of feature requests) I&#8217;ve released an update to the Showtime plugin I wrote for the <a href="http://www.wvau.org">WVAU.org</a> website.</p>
<p>I cleaned up the interface a little bit and added some new features, like the ability to attach pictures to each show slot and link the show titles to URLs.</p>
<p>Here are some screenshots of the new interface and functionality. <a href="http://wordpress.org/extend/plugins/showtime/">Download the plugin</a> from the WordPress Plugin Directory.<br />
<div id="attachment_917" class="wp-caption aligncenter" style="width: 452px"><a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/11/SafariScreenSnapz005.png"><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/11/SafariScreenSnapz005-442x300.png" alt="" title="SafariScreenSnapz005" width="442" height="300" class="size-medium wp-image-917" /></a><p class="wp-caption-text">Add images and links to your shows.</p></div></p>
<div id="attachment_918" class="wp-caption aligncenter" style="width: 452px"><a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/11/SafariScreenSnapz006.png"><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/11/SafariScreenSnapz006-442x300.png" alt="" title="SafariScreenSnapz006" width="442" height="300" class="size-medium wp-image-918" /></a><p class="wp-caption-text">View your schedule as a list of just the names/times...</p></div>
<div id="attachment_919" class="wp-caption aligncenter" style="width: 452px"><a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/11/SafariScreenSnapz007.png"><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/11/SafariScreenSnapz007-442x300.png" alt="" title="SafariScreenSnapz007" width="442" height="300" class="size-medium wp-image-919" /></a><p class="wp-caption-text">... or see the full listing, along with the attached image and link.</p></div>
<div id="attachment_920" class="wp-caption aligncenter" style="width: 452px"><a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/11/SafariScreenSnapz008.png"><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/11/SafariScreenSnapz008-442x300.png" alt="" title="SafariScreenSnapz008" width="442" height="300" class="size-medium wp-image-920" /></a><p class="wp-caption-text">The new display options page, along with the shortcodes you might want to use.</p></div>
<p>Tell your friends.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/showtime-2-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Evolution of TCG</title>
		<link>http://www.outtolunchproductions.com/evolution-of-tcg/</link>
		<comments>http://www.outtolunchproductions.com/evolution-of-tcg/#comments</comments>
		<pubDate>Tue, 12 Oct 2010 19:33:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=830</guid>
		<description><![CDATA[<p>It was, to put it mildly, unbelievably horrible in every conceivable way. The jokes were dumb, the art was of poor quality, and then there was the website itself; a discordant m&#233;lange of political rants, aimless blog posts and confusing&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>It was, to put it mildly, unbelievably horrible in every conceivable way. The jokes were dumb, the art was of poor quality, and then there was the website itself; a discordant m&eacute;lange of political rants, aimless blog posts and confusing complexity &#8211; an affront to all things good whose design thankfully doesn&#8217;t even haunt the Wayback Machine anymore.</p>
<div class="clr"></div>
<div class="inset"><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/09/No-4.png" alt="Mark Number 4" /></p>
<p>No. 4 : The fifth major iteration of The Crooked Gremlins website, or <a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Mark-4.jpg" class="blue">Mark 4</a> (<em>I no  longer count the Joomla! version</em>), was conceived and executed in about 6 days.</p>
<p>This rapid deployment is thanks, in large part, to how easy it was to hook into ComicPress.</p>
<p><a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Mark-4.jpg">Take a look</a>
</div>
<p>No doubt about it; during the initial months, the site was really bad. I was personally responsible for some really bad content and some really bad design.</p>
<p>And I wouldn&#8217;t have had it any other way.</p>
<p>You can&#8217;t fear failure to the point where you don&#8217;t even try something. If you do, you will never get any better at it. You also can&#8217;t fear the unknown; to allow whatever thing it is you&#8217;re doing to evolve, even if it&#8217;s into something completely different than what you initially planned.</p>
<h2>From Joomla! to WordPress + ComicPress</h2>
<p>After abandoning the initial concept for the site (see Some Gremlin History, bottom of <a href="http://www.outtolunchproductions.com/redesigning-the-store/">Rebuilding the Store</a>), the site needed to be re-built from scratch using WordPress instead of Joomla! I wish I could say it&#8217;s because I knew that Joomla! had certain limitations and I would stop using it in favor of WordPress for design/development reasons, but really it was because Joomla didn&#8217;t have a good solution for displaying comics.</p>
<p>I&#8217;m glad that was the case. WordPress is much easier for me to create templates/plugins for, and the administration back-end is something I&#8217;m actually comfortable asking a non-tech-savvy client to use. Of course, none of that mattered back then. I just went with the easiest solution for uploading/displaying comics. Turned out to be a good career move.</p>
<p>We only had about 15 comics at that point, so migrating the content wasn&#8217;t much of an issue. But I still didn&#8217;t know much about building websites, so I was stuck with whatever slight modifications I could make to the ComicPress 3 Column template.</p>
<p><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/09/The-Journey-Title.png" alt="The Journey so far" /></p>
<p><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/The-Journey-Comics.jpg" alt="The comics so far" /></p>
<p class="caption">A marked increase in the quality of the art over the last two years.</p>
<div id="previous-versions">
<h2>Previous Iterations</h2>
<div class="prev-rev">
<p>	<a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Mark-3.jpg"><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Mark-3-thumb.png" alt="Mark 3 thumbnail" /></a></p>
<p>	<img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/09/No-3-small.png" alt="#3" class="numerical" /></p>
<p>
		No real evolution since Mark 2. Still using the three columns sitting below the comic and the navigation. Just slightly cleaner and now implementing some jQuery just because I could.
	</p>
</p></div>
<div class="prev-rev">
<p>	<a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Mark-2.png"><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Mark-2-thumb.png" alt="Mark 2 thumbnail" /></a></p>
<p>	<img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/09/No-2-small.png" alt="#2" class="numerical" /></p>
<p>
		I was getting a better technical understanding of the underlying technologies, but I was still very limited in terms of what I could do. Even worse, I was still afraid to try anything new; if I broke the site, I probably couldn&#8217;t get it working again.
	</p>
</p></div>
<div class="prev-rev">
<p>	<a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Mark-1.jpg"><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Mark-1-thumb.png" alt="Mark 1 thumbnail" /></a></p>
<p>	<img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/09/No-1-small.png" alt="#1" class="numerical" /></p>
<p>
		Right after the Joomla! transition. At this point, I kind of understood CSS, but the WordPress templating system was still horrifyingly alien to me, so almost everything was just the stock 3-Column ComicPress template.
	</p>
</p></div>
<div class="rant">&#8220;I regret nothing, because all my mistakes led me to you.&#8221; <br/> &#8211; True in love; true in web design.</div>
</div>
<h2>The Long Goodbye</h2>
<p>The reason I mentioned fear and short-sightedness before is because I was still caught squarely in the grip of my own trepidation when developing Mark 1. As you can see, I was unwilling to simply jettison the stuff that wasn&#8217;t working.</p>
<p>The &#8220;Blog&#8221; and &#8220;Project&#8221; areas of the site would actually stick around for two more iterations. I just couldn&#8217;t wrap my head around the fact that having those areas on the site didn&#8217;t mean that I would ever actually write anything worth reading for them.</p>
<p>It wasn&#8217;t until Mark 4 that I finally erased the last surviving remnants of the old Joomla! site, allowing them to fade into Internet infamy where they belong.</p>
<p>Sidenote: I know it&#8217;s a little hypocritical to say that you should get rid of things that aren&#8217;t any good and keep doing a thing so you get better at it. It&#8217;s all about narrowing your focus so you keep improving the things you&#8217;re passionate about and not get bogged down by the things you didn&#8217;t really care about it in the first place.</p>
<h2>The New New Store</h2>
<p>After I rebuilt the store not all that long ago, something horrible happened; I accidentally uploaded a broken version of the store to the live site, overwriting the files and completely losing all functionality. Which was okay, because nobody was buying anything anyway. Also, it gave me an excuse to take another look at Javascript shopping cart scripts. JCart was too complex and I kept finding new ways to break it. I wound up using SimpleCart.js, and I&#8217;m <a href="http://www.crookedgremlins.com/shop/">really happy with it.</a></p>
<p>A really cool new feature is the Comic Preview for the prints. After someone selects the comic they want from the dropdown menu, a thumbnail of that comic (using the comic_archive() function from ComicPress) shows up. Clicking on that thumbnail fades in an overlay of the full-sized comic.</p>
<p>Paul and I are in the same physical ZIP code now, so we can both sign prints before sending them off to people. But since not everyone will want their beautiful $10 print scribbled on, there&#8217;s the option to not get it signed.</p>
<p>Using jQuery + SimpleCart.js, it was easy to add options like this to store items. Each item name tells us specifically what the person is looking for, and it&#8217;s super-easy to modify what&#8217;s available in the store (like when a particular size of tee shirt sells out) thanks to WordPress 3.0&#8242;s Custom Post Types.</p>
</div></div></div><div class="cutout"><div class="wrapper">
<div class="inset">
<a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Crooked-Gremlins.zip"><img src="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/source-download.png" alt="Download the app binary" /></a>
</div>
<h2>Going Mobile</h2>
<p><a href="http://itunes.apple.com/us/app/crooked-gremlins/id367527512?mt=8">The Crooked Gremlins iOS App</a> was one of the first available iPad apps in the Webcomic category. I don&#8217;t know that it brought us any extra attention, but the fact that our app has been approved (and again for an update) tickles me in a special way.</p>
<p>I mean, some poor Apple employee had to read at least a few of our comics in order to check that our self-assigned rating was appropriate. Right?</p>
<p>It reminded me of the feeling I had when I was trying to get the Sony people at CES to add The Crooked Gremlins to their content distribution network for their e-readers. Except, you know, this time we actually got in.</p>
<p>The app itself is super-simple. It&#8217;s just a UIWebView with some buttons that activate Javascript functions that are already on the site. You can <a href="http://www.outtolunchproductions.com/wp-content/uploads/2010/10/Crooked-Gremlins.zip">download the binary here</a> and take a look for yourself.</p>
<div class="clr"></div>
<p></div></div><div class="wrapper"><div class="post"><div class="article">
<h2>What&#8217;s next?</h2>
<p>The next year is going to be big for us. We&#8217;re going to start researching conventions for next year, during which time we&#8217;ll have a much larger array of merchandise. It&#8217;s for-serious time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/evolution-of-tcg/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The New RealPolitech</title>
		<link>http://www.outtolunchproductions.com/the-new-realpolitech/</link>
		<comments>http://www.outtolunchproductions.com/the-new-realpolitech/#comments</comments>
		<pubDate>Tue, 12 Oct 2010 15:46:25 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=813</guid>
		<description><![CDATA[<p>Man, did it ever take a while to <a href="http://www.realpolitech.com">get to this</a>.</p>
<p><a href="http://www.realpolitech.com">RealPolitech</a> is something I&#8217;ve been a part of for over 18 months now. The previous site design was <a href="http://www.outtolunchproductions.com/realpolitech/">based on a draft</a> that Christina, the CEO, put&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>Man, did it ever take a while to <a href="http://www.realpolitech.com">get to this</a>.</p>
<p><a href="http://www.realpolitech.com">RealPolitech</a> is something I&#8217;ve been a part of for over 18 months now. The previous site design was <a href="http://www.outtolunchproductions.com/realpolitech/">based on a draft</a> that Christina, the CEO, put together in iWeb.</p>
<p>I&#8217;m not a fan of WYSIWYG editors in general and iWeb in specific, but the design was acceptable and I didn&#8217;t have the time to re-do it until recently.</p>
<p>It&#8217;s really very difficult to design a site around a vague idea. Forgetting the enormous amount of web-related knowledge I&#8217;ve garnered in the last year and a half, it&#8217;s been even more important that RealPolitech has taken a more well-defined shape.</p>
<h2>WebKit and jQuery</h2>
<p>The content slider on the front page is something I spent a lot of time on. Instead of just implementing a stock Coda-style slider, I had very specific ideas about how the slider should work.</p>
<p>The first order of business was making sure the slider used WebKit transitions when viewed in a WebKit browser and jQuery transitions in others. The performance difference on mobile devices is unbelievable. I was able to avoid building the slider twice by using the scrollTo jQuery plugin, a PHP conditional based on the User Agent String and recycling Javascript functions.</p>
<p>Because of how ridiculously easy WebKit transitions are to implement, I also used them on the Team and Portfolio pages.</p>
<h2>Touch Me</h2>
<p>I may be the last person in the web development community to have figured this out, but jQuery can recognize touch events.</p>
<p>Typically, when you want jQuery to recognize user events, you&#8217;re talking about either hover() or click(). But on touch-based devices, there&#8217;s usually a slight delay in these kinds of interactions as the device tries to figure out if the user is trying to scroll, zoom, click or whatever. So something like this:</p>
<pre><code>$('.piece-of-work').click(function());</code></pre>
<p>will work on an iOS device, but there will be noticeable delay between the action and the result. Luckily, I happened upon something that I would have already known about if I were actually any good at my job:</p>
<pre><code>$('.piece-of-work').bind('touchstart', function());</code></pre>
<p>That&#8217;s it. That&#8217;s all it takes to use jQuery selectors and bind them to touch events. It was one of those genuine forehead-slapping moments that honestly made me question my manhood.</p>
<p>Once I figured that out, it was easy to get the slider on the front page to recognize when it had been &#8220;swiped.&#8221;</p>
<pre><code>$(document).ready (function () {
			$('.slides-container').bind('touchstart', function(event){
				startX = 0;
				curX = 0;
				var e = event.originalEvent;
			    startX = e.targetTouches[0].pageX;
			});
			$('.slides-container').bind('touchmove', function(event){
				var e = event.originalEvent;
			  	curX = e.targetTouches[0].pageX - startX;
			});
			$('.slides-container').bind('touchend', function(event){
				if (parseInt(curX) <= -200){
					nextSlide();
				} else if (parseInt(curX) >= 200){
					prevSlide();
				}
			});
		});</code></pre>
<p>The touchstart registers the starting point, the touchmove registers the end point, and the touchend gets the difference. Unbelievably simple.</p>
<h2>TypeKit and iOS</h2>
<p>I have one of the $50 a year accounts with TypeKit, allowing me to utilize their huge library of fonts on any of the websites I build. Unfortunately, they don&#8217;t work great on mobile devices. In fact, using more than one font style of any face will cause iOS devices to crash.</p>
<p>Obviously, this is unacceptable.</p>
<p>Re-using the User Agent String PHP conditional I set up for the moving parts, I used Font-Squirrel&#8217;s kit builder to put together the appropriate CSS and SVG fonts so that the League Gothic font would appear properly. Instead of Garamond for the body font, I switched to Baskerville, a font available on all iOS devices.</p>
<h2>The Next Thing</h2>
<p>It&#8217;s really an exciting time to be a web developer. All of the tools at our collective disposal means we&#8217;re seeing (and are able to create ourselves) some really cool things that work on a ton of different platforms in all kinds of ways.</p>
<p>After every site re-design, I wonder what the next thing I do for it is going to be. The web is never finished, and neither are websites.</p>
<p>I can&#8217;t wait to see what&#8217;s next.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/the-new-realpolitech/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quipfire!</title>
		<link>http://www.outtolunchproductions.com/quipfire/</link>
		<comments>http://www.outtolunchproductions.com/quipfire/#comments</comments>
		<pubDate>Fri, 16 Jul 2010 23:49:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.outtolunchproductions.com/?p=794</guid>
		<description><![CDATA[<p><strong>Creative Brief</strong>: Bring Princeton&#8217;s oldest comedy improv troupe out of the &#8217;90s.</p>
<p><a href="http://www.quipfire.com">Get Quippy!</a></p>
<p>In an apparent attempt to corner the Activities Groups from Princeton market, I found myself lucky enough to have the opportunity to work on a website&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p><strong>Creative Brief</strong>: Bring Princeton&#8217;s oldest comedy improv troupe out of the &#8217;90s.</p>
<p><a href="http://www.quipfire.com">Get Quippy!</a></p>
<p>In an apparent attempt to corner the Activities Groups from Princeton market, I found myself lucky enough to have the opportunity to work on a website for a group that no one I was related to was in.</p>
<p>This group already had some merchandise and branding, so that eliminated one of the trickier parts of my job.</p>
<p>My favorite piece of this job was figuring out one of WordPress 3.0&#8242;s newest features; custom post types. One of the things I&#8217;ve always hated about using Categories to place posts in WordPress is how easy it is to make a mistake and have the item end up in the wrong area of the site.</p>
<p>Now, it&#8217;s easy for <em>anyone</em> to see where a particular group of items live, and where to add new ones. In this case, Members is its own sub-section of posts, and adding new members is ridiculously easy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.outtolunchproductions.com/quipfire/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

