<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Jon Lebensold</title>
	
	<link>http://lebensold.net</link>
	<description>thoughts on web development, technology and media</description>
	<lastBuildDate>Sun, 08 Nov 2009 15:05:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/Jlebensold" type="application/rss+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Facebook’s Encouraging Worst Practices</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/oF-9gqmr2v4/facebooks-encouraging-worst-practices</link>
		<comments>http://lebensold.net/commentary/facebooks-encouraging-worst-practices#comments</comments>
		<pubDate>Sun, 01 Nov 2009 03:17:57 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Commentary]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[Zend]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=372</guid>
		<description><![CDATA[I'm not a huge fan of Facebook to begin with, however they are an undeniable part of any online marketing strategy and are likely to remain as such for at least another 6-10 months (which is an eternity by web standards). I've recently been working on a Facebook application built on the Zend Framework. Our [...]]]></description>
			<content:encoded><![CDATA[<p>I'm not a huge fan of Facebook to begin with, however they are an undeniable part of any online marketing strategy and are likely to remain as such for at least another 6-10 months (which is an eternity by web standards). I've recently been working on a Facebook application built on the Zend Framework. Our team is sprinkled across the United States and Canada and we're all committing to an SVN repo and running updates from there to Facebook. While dev / test / staging / production is a typical approach to web development, Facebook's FBML and FBJS make local development practically impossible without a really fat development harness.</p>
<p>If you choose to use their iframe approach, you're putting the burden of maintaining the Facebook look &amp; feel entirely on your own shoulders. If Facebook decides to change their design (which they do pretty frequently), your application will be forced to play catch up. All this puts the developers at the mercy of the platform. At least with Microsoft, you could choose when to upgrade when you had the time and money to burn a hole in your wallet. Facebook unfortunately doesn't provide best practices for enterprise development. This is no surprise when one discovers that their testing model involves inflicting new changes to subsets of their user base rather than going through the trouble of creating a testable development environment.</p>
<p>In the longterm, I think this will hinder v2 versions of Facebook applications. If Facebook wants to see more powerful enterprise integration, they'll have to provide more than what's required to create a "grow your own bonzai" application.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/URw0D32Ht3GtOIOCOb9Dmn-_L2c/0/da"><img src="http://feedads.g.doubleclick.net/~a/URw0D32Ht3GtOIOCOb9Dmn-_L2c/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/URw0D32Ht3GtOIOCOb9Dmn-_L2c/1/da"><img src="http://feedads.g.doubleclick.net/~a/URw0D32Ht3GtOIOCOb9Dmn-_L2c/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/commentary/facebooks-encouraging-worst-practices/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://lebensold.net/commentary/facebooks-encouraging-worst-practices</feedburner:origLink></item>
		<item>
		<title>Getting ready for PHP6</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/hjTpc0KdqzI/getting-ready-for-php6</link>
		<comments>http://lebensold.net/video-tutorials/getting-ready-for-php6#comments</comments>
		<pubDate>Fri, 30 Oct 2009 05:48:44 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Video Tutorials]]></category>
		<category><![CDATA[killersites]]></category>
		<category><![CDATA[Screencasts]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=369</guid>
		<description><![CDATA[Stefan approached me awhile back to produce a short series of videos on what developers should be expecting as of PHP 5.3+. I try to keep the content of my tutorials in the context of trying to solve a specific problem. The project in this case is a home-grown MVC framework. I've borrowed some of [...]]]></description>
			<content:encoded><![CDATA[<p>Stefan approached me awhile back to produce a short series of videos on what developers should be expecting as of PHP 5.3+. I try to keep the content of my tutorials in the context of trying to solve a specific problem. The project in this case is a home-grown MVC framework. I've borrowed some of the nomenclature from the Zend Framework since I work with it on a regular basis. Hopefully the discussion on PHP namespaces, closures and autoloading will be interesting. Check out <a href="http://www.killerphp.com/articles/getting-into-php6-and-advanced-php-concepts-part-1/">Getting into PHP6 and Advanced PHP Concepts</a> on KillerPHP.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/piTu1blYq093pkRk-PYox-bpRgI/0/da"><img src="http://feedads.g.doubleclick.net/~a/piTu1blYq093pkRk-PYox-bpRgI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/piTu1blYq093pkRk-PYox-bpRgI/1/da"><img src="http://feedads.g.doubleclick.net/~a/piTu1blYq093pkRk-PYox-bpRgI/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/video-tutorials/getting-ready-for-php6/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://lebensold.net/video-tutorials/getting-ready-for-php6</feedburner:origLink></item>
		<item>
		<title>Interview with the Gang of Four</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/xm6-79rvujQ/interview-with-the-gang-of-four</link>
		<comments>http://lebensold.net/development/interview-with-the-gang-of-four#comments</comments>
		<pubDate>Mon, 26 Oct 2009 01:20:40 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Commentary]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[design patterns]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=366</guid>
		<description><![CDATA[My father sent this wonderful interview to me with the author's of the book "Design Patterns". I still find that it introducing people who aren't software engineers to the concept of web architecture, design patterns and software development workflow that it still takes a bit for someone to see how someone could appreciate the design [...]]]></description>
			<content:encoded><![CDATA[<p>My father sent <a href="http://www.informit.com/articles/article.aspx?p=1404056">this wonderful interview</a> to me with the author's of the book "Design Patterns". I still find that it introducing people who aren't software engineers to the concept of web architecture, design patterns and software development workflow that it still takes a bit for someone to see how someone could appreciate the design and elegance behind a particular architecture.</p>
<p>In the words of Ralph Johnson:</p>
<blockquote><p>Designing software is hard. That is what makes it so fun! People who are good at designing software enjoy solving hard problems, at bringing order to chaos, at overcoming difficulties. Things that used to be hard are now easy, but we have moved on to working on problems that would have been impossible 20 years ago. OO programming helps but does not eliminate the difficulty of design.</p></blockquote>
<p>I always assumed that Christopher Alexander's A Pattern Language was some source of inspiration for these gentlemen and I was surprised to find out that it wasn't in fact the case.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/1w94fGgQWyJcaIjGP8vFzE8X1bA/0/da"><img src="http://feedads.g.doubleclick.net/~a/1w94fGgQWyJcaIjGP8vFzE8X1bA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/1w94fGgQWyJcaIjGP8vFzE8X1bA/1/da"><img src="http://feedads.g.doubleclick.net/~a/1w94fGgQWyJcaIjGP8vFzE8X1bA/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/development/interview-with-the-gang-of-four/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://lebensold.net/development/interview-with-the-gang-of-four</feedburner:origLink></item>
		<item>
		<title>new jQuery set launched on KillerPHP</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/H-Y_FjZO0Ss/new-jquery-set-launched-on-killerphp</link>
		<comments>http://lebensold.net/video-tutorials/new-jquery-set-launched-on-killerphp#comments</comments>
		<pubDate>Sat, 10 Oct 2009 20:01:09 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Video Tutorials]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[killersites]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=361</guid>
		<description><![CDATA[Stefan's been a terrific resource for my own professional development and I've also had the opportunity to produce videos for his sites, KillerPHP and KillerJavascript. The latest video set will guide the viewer through developing a simple application with jQuery. I try and emphasize the software paradigm rather than building a particular controller since I [...]]]></description>
			<content:encoded><![CDATA[<p>Stefan's been a terrific resource for my own professional development and I've also had the opportunity to produce videos for his sites, KillerPHP and KillerJavascript. The latest video set will guide the viewer through developing a simple application with jQuery. I try and emphasize the software paradigm rather than building a particular controller since I think a strong understanding of the basics of AJAX, JSON and jQuery will put you in a good position to implement any component demanded of you. Towards the end of the video, I discuss how we can serialize objects from PHP into JSON for easy portability between the frontend and backend of your application. Check out the <a href="http://www.killerjavascript.com/beginners-jquery/">beginner jQuery video tutorials</a> on Killer Javascript!</p>

<p><a href="http://feedads.g.doubleclick.net/~a/KeMUCK3He_z0xhHb2RsvrY-5XX4/0/da"><img src="http://feedads.g.doubleclick.net/~a/KeMUCK3He_z0xhHb2RsvrY-5XX4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/KeMUCK3He_z0xhHb2RsvrY-5XX4/1/da"><img src="http://feedads.g.doubleclick.net/~a/KeMUCK3He_z0xhHb2RsvrY-5XX4/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/video-tutorials/new-jquery-set-launched-on-killerphp/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://lebensold.net/video-tutorials/new-jquery-set-launched-on-killerphp</feedburner:origLink></item>
		<item>
		<title>Flyt Foundation Site Launched</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/cwtndR_K7Z4/flyt-foundation-site-launched</link>
		<comments>http://lebensold.net/personal/flyt-foundation-site-launched#comments</comments>
		<pubDate>Tue, 06 Oct 2009 19:57:37 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[flyt]]></category>
		<category><![CDATA[launch]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=358</guid>
		<description><![CDATA[About a year ago, my friend (and former substitute teacher!) Mike Savatovsky told me about a wonderful organization that he was intent on starting. Mike is someone who's always been interested in providing people with education. I fondly remember sitting in class with Mike and remarking how apt a teacher he was.
When we started working [...]]]></description>
			<content:encoded><![CDATA[<p>About a year ago, my friend (and former substitute teacher!) Mike Savatovsky told me about a wonderful organization that he was intent on starting. Mike is someone who's always been interested in providing people with education. I fondly remember sitting in class with Mike and remarking how apt a teacher he was.</p>
<p>When we started working on the <a href="http://www.flytfoundation.org">Flyt Foundation</a> together, I asked Mike what he felt made him such a successful teacher. He told me that what made him successful was his ability to tell stories. As someone who produces online education resources, I thought of how fragmented my own work is and how it suffers from this very issue.</p>
<p>All this is to say that the Flyt Foundation just recently launched a preliminary site on a humble budget with the lofty goal of providing young people with the ability to tell stories that will change our world into a better one.</p>
<p>If you're interested in learning more, don't be shy and check out the <a href="http://www.flytfoundation.org">Flyt Foundation</a> website, or send <a href="mailto://mike@flytfoundation.org">Mike Savatovsky an email</a>.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/ttfPPHRwVWRkzbwrvo7CmoOMzWo/0/da"><img src="http://feedads.g.doubleclick.net/~a/ttfPPHRwVWRkzbwrvo7CmoOMzWo/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ttfPPHRwVWRkzbwrvo7CmoOMzWo/1/da"><img src="http://feedads.g.doubleclick.net/~a/ttfPPHRwVWRkzbwrvo7CmoOMzWo/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/personal/flyt-foundation-site-launched/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://lebensold.net/personal/flyt-foundation-site-launched</feedburner:origLink></item>
		<item>
		<title>NetBeans Code Template for Unit Testing</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/d0jn1Ud5q38/netbeans-code-template-for-unit-testing</link>
		<comments>http://lebensold.net/development/netbeans-code-template-for-unit-testing#comments</comments>
		<pubDate>Mon, 03 Aug 2009 18:46:33 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[freecode]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[phpunit]]></category>
		<category><![CDATA[unit testing]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=354</guid>
		<description><![CDATA[I've been taking the time to configure my installation of NetBeans recently and I've re-discovered my love for code templates. Code templates allow the developer to make a shortcut to boiler plate code snippets which usually have targetted keywords. In the latest Zendcast video tutorial, I started showing off a code template I made by [...]]]></description>
			<content:encoded><![CDATA[<p>I've been taking the time to configure my installation of NetBeans recently and I've re-discovered my love for code templates. Code templates allow the developer to make a shortcut to boiler plate code snippets which usually have targetted keywords. In the latest Zendcast video tutorial, I started showing off a code template I made by calling "zndtst" and then hitting TAB.</p>
<p>You can setup your own code templates in the PHP options in NetBeans:</p>
<p><img class="alignnone size-medium wp-image-355" title="Picture 5" src="http://lebensold.net/wp-content/uploads/2009/08/Picture-5-300x176.png" alt="Picture 5" width="300" height="176" /></p>
<p>Here's the code template I use for generating unit test cases:</p>
<pre class="php"><span style="color: #808080; font-style: italic;">/**
 * Test class for ${classname}
 * @author: jlebensold
 */</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">class</span> $<span style="color: #66cc66;">&#123;</span>classname<span style="color: #66cc66;">&#125;</span>
    <span style="color: #000000; font-weight: bold;">extends</span> ControllerTestCase
<span style="color: #66cc66;">&#123;</span>
    protected $$$<span style="color: #66cc66;">&#123;</span>obj<span style="color: #66cc66;">&#125;</span>;
&nbsp;
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> setUp<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#123;</span>
	parent::<span style="color: #006600;">setUp</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #0000ff;">$this</span>-&gt;$<span style="color: #66cc66;">&#123;</span>obj<span style="color: #66cc66;">&#125;</span> = <span style="color: #000000; font-weight: bold;">new</span> $<span style="color: #66cc66;">&#123;</span>class_to_test<span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
    <span style="color: #66cc66;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> tearDown<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#123;</span>
	<span style="color: #0000ff;">$this</span>-&gt;$<span style="color: #66cc66;">&#123;</span>obj<span style="color: #66cc66;">&#125;</span> = <span style="color: #000000; font-weight: bold;">null</span>;
    <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre>

<p><a href="http://feedads.g.doubleclick.net/~a/_JXBkYmeG9GQHE5cXh-VWA-sDBw/0/da"><img src="http://feedads.g.doubleclick.net/~a/_JXBkYmeG9GQHE5cXh-VWA-sDBw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/_JXBkYmeG9GQHE5cXh-VWA-sDBw/1/da"><img src="http://feedads.g.doubleclick.net/~a/_JXBkYmeG9GQHE5cXh-VWA-sDBw/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/development/netbeans-code-template-for-unit-testing/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://lebensold.net/development/netbeans-code-template-for-unit-testing</feedburner:origLink></item>
		<item>
		<title>Unit Testing within the NetBeans 6.7.1 UI</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/5koRYiOgiZw/unit-testing-within-the-netbeans-6-7-1-ui</link>
		<comments>http://lebensold.net/development/unit-testing-within-the-netbeans-6-7-1-ui#comments</comments>
		<pubDate>Sat, 01 Aug 2009 18:46:16 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[netbeans]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[phpunit]]></category>
		<category><![CDATA[unit testing]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=350</guid>
		<description><![CDATA[With Zend Studio for Eclipse 7 approaching its release date, I find myself once again comparing it to NetBeans, my previous development environment. I can safely say that I'm enjoying the code templates and intelligent PHP refactoring support. I finally feel like something in the PHP community is approaching what C# and Java developers have [...]]]></description>
			<content:encoded><![CDATA[<p>With Zend Studio for Eclipse 7 approaching its release date, I find myself once again comparing it to NetBeans, my previous development environment. I can safely say that I'm enjoying the code templates and intelligent PHP refactoring support. I finally feel like something in the PHP community is approaching what C# and Java developers have with ReSharper.</p>
<p>I even managed to get the unit testing environment to work with my Zend Framework installation with a little bash scripting. I realized that the PHPUnit test runner built into netbeans requires certain command line arguments, but because its designed to do single class tests instead of using the phpunit.xml file, I had to override it.</p>
<p>Here's my batchtest.sh file:</p>
<pre class="bash"><span style="color: #808080; font-style: italic;">#!/usr/bin/<span style="color: #c20cb9; font-weight: bold;">env</span> bash</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> ~/Sites/myproject/tests
phpunit --configuration phpunit.xml $<span style="color: #000000;">1</span> $<span style="color: #000000;">2</span>
<span style="color: #808080; font-style: italic;">#phpunit $<span style="color: #000000;">1</span> $<span style="color: #000000;">2</span> $<span style="color: #000000;">3</span></span></pre>
<p>with this file, I can set either to have phpunit behave like it normally would in NetBeans (line 4), or have it read my phpunit.xml file instead.</p>
<p>The result is a nice little test runner that's built into my development environment:</p>
<p><img class="size-medium wp-image-351 alignnone" title="Netbeans Configuration Options" src="http://lebensold.net/wp-content/uploads/2009/08/Picture-2-300x139.png" alt="Netbeans Configuration Options" width="300" height="139" /></p>
<p><img class="size-medium wp-image-352 alignnone" title="Unit Testing UI" src="http://lebensold.net/wp-content/uploads/2009/08/Picture-3-300x270.png" alt="Unit Testing UI" width="300" height="270" /></p>
<p>I'm still trying to integrate code coverage, but since I get HTML reports, I think I can handle switching to my web browser for that.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/uQn32zvH7G_OA8urGHsm9n_1O_o/0/da"><img src="http://feedads.g.doubleclick.net/~a/uQn32zvH7G_OA8urGHsm9n_1O_o/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/uQn32zvH7G_OA8urGHsm9n_1O_o/1/da"><img src="http://feedads.g.doubleclick.net/~a/uQn32zvH7G_OA8urGHsm9n_1O_o/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/development/unit-testing-within-the-netbeans-6-7-1-ui/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://lebensold.net/development/unit-testing-within-the-netbeans-6-7-1-ui</feedburner:origLink></item>
		<item>
		<title>METAphrenie website update</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/2NEQu7okmGc/metaphrenie-website-update</link>
		<comments>http://lebensold.net/creative-stuff/metaphrenie-website-update#comments</comments>
		<pubDate>Wed, 22 Jul 2009 01:51:38 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Creative stuff]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[clients]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=346</guid>
		<description><![CDATA[Last July I had the pleasure of working with METAphrenie, a design company based in Berlin (now Dubai Media City) on a zend-based application for handling client reviews. Recently they contacted me to do some work on their frontend, redo the javascript, UI layer and add a few sections. They do some fantastic work, so [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-347" title="METAphrenie title" src="http://lebensold.net/wp-content/uploads/2009/07/picture-1.png" alt="METAphrenie title" width="133" height="48" />Last July I had the pleasure of working with METAphrenie, a design company based in Berlin (now Dubai Media City) on a zend-based application for handling client reviews. Recently they contacted me to do some work on their frontend, redo the javascript, UI layer and add a few sections. They do some <a href="http://www.metaphrenie.com">fantastic work, so I invite you to check it out</a>.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/dMXhwuMFrY6_3xFNUJMjpEyfsB4/0/da"><img src="http://feedads.g.doubleclick.net/~a/dMXhwuMFrY6_3xFNUJMjpEyfsB4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/dMXhwuMFrY6_3xFNUJMjpEyfsB4/1/da"><img src="http://feedads.g.doubleclick.net/~a/dMXhwuMFrY6_3xFNUJMjpEyfsB4/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/creative-stuff/metaphrenie-website-update/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://lebensold.net/creative-stuff/metaphrenie-website-update</feedburner:origLink></item>
		<item>
		<title>Review of Learning Dojo</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/RvsLyG_1P0E/review-of-learning-dojo</link>
		<comments>http://lebensold.net/development/review-of-learning-dojo#comments</comments>
		<pubDate>Thu, 23 Apr 2009 19:21:43 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Commentary]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[book review]]></category>
		<category><![CDATA[dojo]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=339</guid>
		<description><![CDATA[Recently, Packt contacted me about doing a review of Learning Dojo.
The author, Peter Svennson, is probably one of the most qualified people in the world to be writing a book about Dojo, considering he's a contributor. The book takes plenty of time covering some of the more common Dijits and how best to apply them [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, Packt contacted me about doing a review of <a href="http://www.packtpub.com/tutorial-for-building-interactive-interfaces-with-dojo/book">Learning Dojo</a>.</p>
<p><a href="https://www.amazon.com/dp/1847192688?tag=lebensoldnet-20"><img class="alignright size-medium wp-image-340" title="Learning Dojo by Peter Svennson" src="http://lebensold.net/wp-content/uploads/2009/04/picture-3-231x300.png" alt="Learning Dojo by Peter Svennson" width="231" height="300" /></a>The author, Peter Svennson, is probably one of the most qualified people in the world to be writing a book about Dojo, considering he's a contributor. The book takes plenty of time covering some of the more common Dijits and how best to apply them in an application. Like any framework, knowledge of certain core components helps when extending that knowledge across the rest of the library.</p>
<p>As someone who's worked extensively with JQuery and Prototype, I appreciated the authors recognition of other frameworks, while being able to diplomatically keep the discussion focused on Dojo without diminishing the work done on the other site of the Javascript framework fence.</p>
<p>Before being totally entrenched in the various Dojo libraries, Svennson takes a couple pages to explain closures and Javascript's prototype based object model. I found his explanation enlightening and a good starting point for a conversation on Dojo. Svennson also sold me on Dojo's class building framework.</p>
<p>What kept me flipping through the pages was Svennson's passion for the technology. The writing style is informal and conveys his personal interest in Dojo's architecture. However sometimes I felt this same passionate writing starts to read more like a sales pitch and less like a serious technical reference.</p>
<p>If you're the type of person that likes to work through a practical application of the technology, Learning Dojo is probably not the best book for the job. Instead of figuring out how to build a form with client-side validation that showcases all the Dojo bells and whistles (which I don't think one app could truly do), you're invited to create custom events, learn how to build class structures with pseudo-inheritance, look at localization and ways of theming your application. Since a lot of these features are design-releated, they tend to feel disjoint.</p>
<p>Only in the last chapter are we introduced to "real-world Dojo". While the examples are great, they feel almost tacked on. Regardless, the multi-charting project and the CRUD application cover a lot of components that were already discussed previously. It's also nice to see that Svennson mentions how to unit test using DOH. Learning Dojo is by no means a book for beginners: as the book progresses, there are large chunks of markup that are loosely explained in passing.</p>
<p>If you're already married to Dojo, planning a site in Dojo or inheriting something written in Dojo, this book could be a great reference for getting familiar with the technology quickly. If this sounds like you, grab a copy from Amazon.</p>
<p>UPDATE: enjoy reading <a href="http://www.packtpub.com/files/learning-dojo-sample-chapter-6-layout.pdf">Chapter 6</a> for free online!<br />
<iframe src="http://rcm.amazon.com/e/cm?t=lebensoldnet-20&o=1&p=8&l=as1&asins=1847192688&md=10FE9736YVPPT7A0FBG2&fc1=000000&IS2=1&lt1=_blank&m=amazon&lc1=0000FF&bc1=000000&bg1=FFFFFF&f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>

<p><a href="http://feedads.g.doubleclick.net/~a/8cjZkgJKTt3S9YDwb9syCSCVOZA/0/da"><img src="http://feedads.g.doubleclick.net/~a/8cjZkgJKTt3S9YDwb9syCSCVOZA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/8cjZkgJKTt3S9YDwb9syCSCVOZA/1/da"><img src="http://feedads.g.doubleclick.net/~a/8cjZkgJKTt3S9YDwb9syCSCVOZA/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/development/review-of-learning-dojo/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://lebensold.net/development/review-of-learning-dojo</feedburner:origLink></item>
		<item>
		<title>Visualize Design Patterns Across Disciplines</title>
		<link>http://feedproxy.google.com/~r/Jlebensold/~3/HUZaT5As8dE/visualize-design-patterns-across-disciplines</link>
		<comments>http://lebensold.net/creative-stuff/visualize-design-patterns-across-disciplines#comments</comments>
		<pubDate>Wed, 22 Apr 2009 19:17:51 +0000</pubDate>
		<dc:creator>jon</dc:creator>
				<category><![CDATA[Creative stuff]]></category>
		<category><![CDATA[design patterns]]></category>
		<category><![CDATA[dpicon]]></category>
		<category><![CDATA[net.art]]></category>

		<guid isPermaLink="false">http://lebensold.net/?p=333</guid>
		<description><![CDATA[


I've always been interested in the idea that abstractions can help us discover new relationships that weren't
inherently visible in the implementation that we're trying to tackle. With that thinking in mind, I put together a little engine to help me visualize design patterns that I've drawn. You can navigate the interface with your arrow keys [...]]]></description>
			<content:encoded><![CDATA[<dl id="attachment_334" class="wp-caption alignright" style="width: 186px;">
<dt class="wp-caption-dt"><a href="http://www.dpicon.com"><img class="size-medium wp-image-334" title="DPIcon.com" src="http://lebensold.net/wp-content/uploads/2009/04/picture-1-176x300.png" alt="Visualize Design Patterns" width="176" height="300" /></a></dt>
</dl>
<p>I've always been interested in the idea that abstractions can help us discover new relationships that weren't</p>
<p>inherently visible in the implementation that we're trying to tackle. With that thinking in mind, I put together a little engine to help me visualize design patterns that I've drawn. You can navigate the interface with your arrow keys or the "ASDQWE" keys. Unfortunately, fullscreen flash doesn't support keyboard interactions. Without further blabbering, the project is called DPIcon and it's available to play with at <a href="http://www.dpicon.com">dpicon.com</a>.<br/><br/><br/><br/><br/></p>

<p><a href="http://feedads.g.doubleclick.net/~a/5mjvVAN2KTd5BIDc-39SAqGV0p8/0/da"><img src="http://feedads.g.doubleclick.net/~a/5mjvVAN2KTd5BIDc-39SAqGV0p8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/5mjvVAN2KTd5BIDc-39SAqGV0p8/1/da"><img src="http://feedads.g.doubleclick.net/~a/5mjvVAN2KTd5BIDc-39SAqGV0p8/1/di" border="0" ismap="true"></img></a></p>]]></content:encoded>
			<wfw:commentRss>http://lebensold.net/creative-stuff/visualize-design-patterns-across-disciplines/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://lebensold.net/creative-stuff/visualize-design-patterns-across-disciplines</feedburner:origLink></item>
	</channel>
</rss>
