<?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>A Better Way &#187; Architecture</title>
	<atom:link href="http://www.thejacklawson.com/index.php/category/architecture/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.thejacklawson.com</link>
	<description>Finding a better way to get things done, a technical journey</description>
	<lastBuildDate>Tue, 24 Aug 2010 21:10:10 +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>HTML5 Site – Waterford Family Bowl (Part 1 of n)</title>
		<link>http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/</link>
		<comments>http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/#comments</comments>
		<pubDate>Sun, 04 Apr 2010 04:22:22 +0000</pubDate>
		<dc:creator>Jack Lawson</dc:creator>
				<category><![CDATA[Analytics]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[User Interface Design]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[Design of Everyday Things]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[google analytics]]></category>
		<category><![CDATA[Google Webmaster Tool]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[jquery 1.4]]></category>
		<category><![CDATA[Picasa]]></category>
		<category><![CDATA[Search]]></category>
		<category><![CDATA[user experience]]></category>
		<category><![CDATA[user interface]]></category>
		<category><![CDATA[Website]]></category>

		<guid isPermaLink="false">http://www.thejacklawson.com/?p=224</guid>
		<description><![CDATA[A little while ago, my aunt approached me- she needed a website for her bowling alley. &#8220;Sure,&#8221; I said. &#8220;Let&#8217;s go over what you want and we&#8217;ll build something that works for you.&#8221;  In the back of my mind, I was thinking &#8220;awesome! Perfect timing to flex my HTML5 muscles and try jQuery 1.4 in [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_225" class="wp-caption alignright" style="width: 310px"><a href="http://www.thejacklawson.com/wp-content/uploads/2010/04/wfb.png"><img class="size-full wp-image-225" title="WaterfordFamilyBowl.com" src="http://www.thejacklawson.com/wp-content/uploads/2010/04/wfb.png" alt="Waterford Family Bowl website" width="300" height="212" /></a><p class="wp-caption-text">Waterford Family Bowl website (www.waterfordfamilybowl.com)</p></div>
<p>A little while ago, my aunt approached me- she needed a website for her bowling alley. &#8220;Sure,&#8221; I said. &#8220;Let&#8217;s go over what you want and we&#8217;ll build something that works for you.&#8221;  In the back of my mind, I was thinking &#8220;awesome! Perfect timing to flex my HTML5 muscles and try jQuery 1.4 in a production environment; will it work?&#8221;</p>
<p>The site&#8217;s now completed, and in production. Go ahead and check it out at <a href="http://www.waterfordfamilybowl.com/">http://www.waterfordfamilybowl.com</a> (still waiting on a little alternate content <img src='http://www.thejacklawson.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ). I&#8217;m going to, over a series of 4 or 5 posts, go over how the site works- how and why I used PHP, jQuery, HTML 5, jQuery, WordPress, Picasa, Google Analytics and Webmaster tools, and Google Apps; and, how I merged them all to create a dynamic, easy to use and easy to edit website. I used principles from books like &#8220;The Design of Everyday Things&#8221; and &#8220;Don&#8217;t Make Me Think&#8221;, and I&#8217;ll explain how and where these came into play.   The process I took made even IE 6 compatibility a breeze!</p>
<p>Brief overview on how I plan to break it down:</p>
<p>1. Intro to series<br />
2. Design - architecturally and graphically<br />
3. Implementation of WordPress, Picasa, etc.<br />
4. &#8220;Contact Us&#8221;, finishing touches<br />
5. Google Analytics and Google Webmaster Tools overviews<br />
6. Wrap-up (maybe?)</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/d35a3219-74b2-437e-a142-5d65f1a49483/"><img class="zemanta-pixie-img" style="border: none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=d35a3219-74b2-437e-a142-5d65f1a49483" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em> </em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/&amp;title=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Del.icio.us"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Del.icio.us" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/&amp;title=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to digg"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to digg" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/&amp;title=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to reddit"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/reddit.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to reddit" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to reddit" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Technorati"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Technorati" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.newsvine.com/_wine/save?u=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/&amp;h=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Newsvine"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/newsvine.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Newsvine" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Newsvine" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/&amp;title=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Stumble Upon"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/stumbleupon.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Stumble Upon" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Stumble Upon" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/&amp;title=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Google Bookmarks"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Google Bookmarks" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/&amp;title=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Live-MSN"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Live-MSN" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://slashdot.org/bookmark.pl?title=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29&amp;url=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to SlashDot"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/slashdot.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to SlashDot" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to SlashDot" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/&amp;t=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to FaceBook"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to FaceBook" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Twitter"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Twitter" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/&amp;title=HTML5+Site+%E2%80%93+Waterford+Family+Bowl+%28Part+1+of+n%29&amp;srcURL=http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Google Buzz"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Google Buzz" alt="Add 'HTML5 Site – Waterford Family Bowl (Part 1 of n)' to Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>http://www.thejacklawson.com/index.php/2010/04/html5-site-waterford-family-bowl-part-1-of-n/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When is a Technology Dead?</title>
		<link>http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/</link>
		<comments>http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 16:33:12 +0000</pubDate>
		<dc:creator>Jack Lawson</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://www.thejacklawson.com/?p=87</guid>
		<description><![CDATA[Image via Wikipedia I wish I could call IE6 dead. I&#8217;ve spent hundreds of man-hours doing CSS fixes for it, and every day, I check Google Analytics to see how close we are to its death&#8230; and every day, I&#8217;m disappointed. Technically, it is dead. Most standards say the latest 2 versions (of course, that [...]]]></description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignright" style="width: 142px;">
<dt class="wp-caption-dt"><a href="http://en.wikipedia.org/wiki/Image:Internet_Explorer_logo_old.png"><img title="Previous logo of Microsoft Internet Explorer u..." src="http://upload.wikimedia.org/wikipedia/en/0/0f/Internet_Explorer_logo_old.png" alt="Previous logo of Microsoft Internet Explorer u..." width="132" height="139" /></a></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image via <a href="http://en.wikipedia.org/wiki/Image:Internet_Explorer_logo_old.png">Wikipedia</a></dd>
</dl>
</div>
</div>
<p>I wish I could call <a class="zem_slink" title="Internet Explorer 6" rel="wikipedia" href="http://en.wikipedia.org/wiki/Internet_Explorer_6">IE6</a> dead.</p>
<p>I&#8217;ve spent hundreds of <a class="zem_slink" title="Man-hour" rel="wikipedia" href="http://en.wikipedia.org/wiki/Man-hour">man-hours</a> doing <a class="zem_slink" title="Cascading Style Sheets" rel="wikipedia" href="http://en.wikipedia.org/wiki/Cascading_Style_Sheets">CSS</a> fixes for it, and every day, I check <a class="zem_slink" title="Google Analytics" rel="homepage" href="http://www.google.com/analytics">Google Analytics</a> to see how close we are to its death&#8230; and every day, I&#8217;m disappointed.</p>
<p>Technically, it is dead. Most standards say the latest 2 versions (of course, that got really big when <a class="zem_slink" title="Internet Explorer 8" rel="wikipedia" href="http://en.wikipedia.org/wiki/Internet_Explorer_8">IE8</a> came out, excellent excuse to drop it), and it&#8217;s 6 years old by now, well past the average lifespan of any technology. But, the problem is, for all of my idealism and complaints and loss of efficiency, we still have over 30% of our users on the ancient mind-breaker. So, unfortunately, for all of my complaints, for all of my IE6 specific cde and CSS fixes.. it&#8217;s not dead. It&#8217;s not defined by age, but by users. So until the time comes when IE updates become mandatory, or our users finally move on&#8230; it&#8217;s still very alive, in my nightmares and in my everyday coding experiences.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/8b545c24-c9b9-441a-8355-a73b8814e315/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=8b545c24-c9b9-441a-8355-a73b8814e315" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em> </em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/&amp;title=When+is+a+Technology+Dead%3F" title="Add 'When is a Technology Dead?' to Del.icio.us"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Add 'When is a Technology Dead?' to Del.icio.us" alt="Add 'When is a Technology Dead?' to Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/&amp;title=When+is+a+Technology+Dead%3F" title="Add 'When is a Technology Dead?' to digg"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Add 'When is a Technology Dead?' to digg" alt="Add 'When is a Technology Dead?' to digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/&amp;title=When+is+a+Technology+Dead%3F" title="Add 'When is a Technology Dead?' to reddit"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/reddit.png" title="Add 'When is a Technology Dead?' to reddit" alt="Add 'When is a Technology Dead?' to reddit" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/" title="Add 'When is a Technology Dead?' to Technorati"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Add 'When is a Technology Dead?' to Technorati" alt="Add 'When is a Technology Dead?' to Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.newsvine.com/_wine/save?u=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/&amp;h=When+is+a+Technology+Dead%3F" title="Add 'When is a Technology Dead?' to Newsvine"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/newsvine.png" title="Add 'When is a Technology Dead?' to Newsvine" alt="Add 'When is a Technology Dead?' to Newsvine" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/&amp;title=When+is+a+Technology+Dead%3F" title="Add 'When is a Technology Dead?' to Stumble Upon"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/stumbleupon.png" title="Add 'When is a Technology Dead?' to Stumble Upon" alt="Add 'When is a Technology Dead?' to Stumble Upon" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/&amp;title=When+is+a+Technology+Dead%3F" title="Add 'When is a Technology Dead?' to Google Bookmarks"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Add 'When is a Technology Dead?' to Google Bookmarks" alt="Add 'When is a Technology Dead?' to Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/&amp;title=When+is+a+Technology+Dead%3F" title="Add 'When is a Technology Dead?' to Live-MSN"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Add 'When is a Technology Dead?' to Live-MSN" alt="Add 'When is a Technology Dead?' to Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://slashdot.org/bookmark.pl?title=When+is+a+Technology+Dead%3F&amp;url=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/" title="Add 'When is a Technology Dead?' to SlashDot"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/slashdot.png" title="Add 'When is a Technology Dead?' to SlashDot" alt="Add 'When is a Technology Dead?' to SlashDot" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/&amp;t=When+is+a+Technology+Dead%3F" title="Add 'When is a Technology Dead?' to FaceBook"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Add 'When is a Technology Dead?' to FaceBook" alt="Add 'When is a Technology Dead?' to FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/" title="Add 'When is a Technology Dead?' to Twitter"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Add 'When is a Technology Dead?' to Twitter" alt="Add 'When is a Technology Dead?' to Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/&amp;title=When+is+a+Technology+Dead%3F&amp;srcURL=http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/" title="Add 'When is a Technology Dead?' to Google Buzz"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Add 'When is a Technology Dead?' to Google Buzz" alt="Add 'When is a Technology Dead?' to Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>http://www.thejacklawson.com/index.php/2009/06/when-is-a-technology-dead/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>APIs and Extensibility</title>
		<link>http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/</link>
		<comments>http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/#comments</comments>
		<pubDate>Fri, 05 Jun 2009 16:32:08 +0000</pubDate>
		<dc:creator>Jack Lawson</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[web services]]></category>

		<guid isPermaLink="false">http://www.thejacklawson.com/?p=85</guid>
		<description><![CDATA[Image via CrunchBase More and more often, it becomes obvious to me how important an external API is. What better way is there to share your product, then to let people build on top of your service layer and customize their own interface? If someone doesn&#8217;t like the look of your program, or how it [...]]]></description>
			<content:encoded><![CDATA[<div class="zemanta-img" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignright" style="width: 172px;">
<dt class="wp-caption-dt"><a href="http://www.crunchbase.com/product/flickr"><img title="Image representing Flickr as depicted in Crunc..." src="http://www.crunchbase.com/assets/images/resized/0001/0830/10830v1-max-450x450.png" alt="Image representing Flickr as depicted in Crunc..." width="162" height="63" /></a></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image via <a href="http://www.crunchbase.com">CrunchBase</a></dd>
</dl>
</div>
</div>
<p>More and more often, it becomes obvious to me how important an external <a class="zem_slink" title="Application programming interface" rel="wikipedia" href="http://en.wikipedia.org/wiki/Application_programming_interface">API</a> is. What better way is there to share your product, then to let people build on top of your <a class="zem_slink" title="Service layer" rel="wikipedia" href="http://en.wikipedia.org/wiki/Service_layer">service layer</a> and customize their own interface? If someone doesn&#8217;t like the look of your program, or how it feels, they may leave; but a missed opportunity can quickly turn into another user when they find someone else&#8217;s implementation of your <a class="zem_slink" title="Application software" rel="wikipedia" href="http://en.wikipedia.org/wiki/Application_software">application</a>. Or, other applications may pull your data into their product, giving you another <a class="zem_slink" title="Revenue stream" rel="wikipedia" href="http://en.wikipedia.org/wiki/Revenue_stream">revenue stream</a> (or just more users), more popularity, your name thrown around more; it&#8217;s free advertising and a great testimony to your product that someone liked it so much that they included it in their product.</p>
<p>I recently looked into <a class="zem_slink" title="Flickr" rel="homepage" href="http://www.flickr.com">Flickr</a>&#8216;s API, for integration into a project I was working on, which spawned this thought. It is absolutely fantastic that I can call a URL with some credentials, and bam, I have the file I need. The user doesn&#8217;t have to upload (or worse, download from Flickr and reupload) to another photo-sharing application; they can just point out a url, and I can display it. It&#8217;s really awesome. <a class="zem_slink" title="Twitter" rel="homepage" href="http://twitter.com">Twitter</a> has feeds, that I can pull into my blog; even my blog has an API that will allow other sites to post comments to me without ever loading my site. That&#8217;s pretty cool stuff.</p>
<p>For an information-hosting web app, this is one of the best things you can do to increase views and popularity. If you have a good service layer, expose some of it (with the right security, of course), let other people use your app. More users is never a bad thing.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/d95e66f8-f407-431d-ac9d-fab33225b4ff/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=d95e66f8-f407-431d-ac9d-fab33225b4ff" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em> </em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/&amp;title=APIs+and+Extensibility" title="Add 'APIs and Extensibility' to Del.icio.us"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Add 'APIs and Extensibility' to Del.icio.us" alt="Add 'APIs and Extensibility' to Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/&amp;title=APIs+and+Extensibility" title="Add 'APIs and Extensibility' to digg"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Add 'APIs and Extensibility' to digg" alt="Add 'APIs and Extensibility' to digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/&amp;title=APIs+and+Extensibility" title="Add 'APIs and Extensibility' to reddit"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/reddit.png" title="Add 'APIs and Extensibility' to reddit" alt="Add 'APIs and Extensibility' to reddit" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/" title="Add 'APIs and Extensibility' to Technorati"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Add 'APIs and Extensibility' to Technorati" alt="Add 'APIs and Extensibility' to Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.newsvine.com/_wine/save?u=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/&amp;h=APIs+and+Extensibility" title="Add 'APIs and Extensibility' to Newsvine"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/newsvine.png" title="Add 'APIs and Extensibility' to Newsvine" alt="Add 'APIs and Extensibility' to Newsvine" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/&amp;title=APIs+and+Extensibility" title="Add 'APIs and Extensibility' to Stumble Upon"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/stumbleupon.png" title="Add 'APIs and Extensibility' to Stumble Upon" alt="Add 'APIs and Extensibility' to Stumble Upon" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/&amp;title=APIs+and+Extensibility" title="Add 'APIs and Extensibility' to Google Bookmarks"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Add 'APIs and Extensibility' to Google Bookmarks" alt="Add 'APIs and Extensibility' to Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/&amp;title=APIs+and+Extensibility" title="Add 'APIs and Extensibility' to Live-MSN"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Add 'APIs and Extensibility' to Live-MSN" alt="Add 'APIs and Extensibility' to Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://slashdot.org/bookmark.pl?title=APIs+and+Extensibility&amp;url=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/" title="Add 'APIs and Extensibility' to SlashDot"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/slashdot.png" title="Add 'APIs and Extensibility' to SlashDot" alt="Add 'APIs and Extensibility' to SlashDot" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/&amp;t=APIs+and+Extensibility" title="Add 'APIs and Extensibility' to FaceBook"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Add 'APIs and Extensibility' to FaceBook" alt="Add 'APIs and Extensibility' to FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/" title="Add 'APIs and Extensibility' to Twitter"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Add 'APIs and Extensibility' to Twitter" alt="Add 'APIs and Extensibility' to Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/&amp;title=APIs+and+Extensibility&amp;srcURL=http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/" title="Add 'APIs and Extensibility' to Google Buzz"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Add 'APIs and Extensibility' to Google Buzz" alt="Add 'APIs and Extensibility' to Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>http://www.thejacklawson.com/index.php/2009/06/apis-and-extensibility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thinking Outside the Cube</title>
		<link>http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/</link>
		<comments>http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/#comments</comments>
		<pubDate>Fri, 17 Apr 2009 05:15:49 +0000</pubDate>
		<dc:creator>Jack Lawson</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[User Interface Design]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Cross-training]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[Education]]></category>
		<category><![CDATA[Learning]]></category>

		<guid isPermaLink="false">http://www.thejacklawson.com/?p=52</guid>
		<description><![CDATA[Learning outside of the workplace is, in my opinion, of the utmost importance. Whether it&#8217;s reading a book, going to a convention, visiting community websites, keeping a blog, doing freelance work, or just messing around with code for the heck of it- we must sharpen our saw. Image via Wikipedia I believe the key point [...]]]></description>
			<content:encoded><![CDATA[<p><a class="zem_slink" title="Learning" rel="wikipedia" href="http://en.wikipedia.org/wiki/Learning">Learning</a> outside of the workplace is, in my opinion, of the utmost importance. Whether it&#8217;s reading a book, going to a convention, visiting community websites, keeping a blog, doing freelance work, or just messing around with code for the heck of it- we must <a href="http://www.codinghorror.com/blog/archives/001236.html" target="_blank">sharpen our</a> saw.</p>
<div class="zemanta-img zemanta-action-dragged" style="margin: 1em; display: block;">
<div>
<dl class="wp-caption alignright" style="width: 210px;">
<dt class="wp-caption-dt"><a href="http://en.wikipedia.org/wiki/Image:CleancubicleSouth20050109.jpg"><img title="North view of cubicle" src="http://upload.wikimedia.org/wikipedia/en/thumb/6/63/CleancubicleSouth20050109.jpg/200px-CleancubicleSouth20050109.jpg" alt="North view of cubicle" width="200" height="120" /></a></dt>
<dd class="wp-caption-dd zemanta-img-attribution" style="font-size: 0.8em;">Image via <a href="http://en.wikipedia.org/wiki/Image:CleancubicleSouth20050109.jpg">Wikipedia</a></dd>
</dl>
</div>
</div>
<p>I believe the key point of this is that it must not feel like <em>work</em>. You shouldn&#8217;t feel pressured, or dread doing something; you should do it because you want to do it. The great thing about  our profession is that we can get away and do several things, all subject to our whims; if we spent all day in a chair at a desk, and we want to get up, go to a meeting like the <a href="http://www.dodn.org/" target="_blank">Day of .NET</a> (<a href="http://cinnug.org/cododn/default.aspx" target="_blank">Central Ohio this Saturday!</a>) If you like to read, do that instead; it&#8217;s good to keep a bookshelf full of interesting books. Go into some kind of technical <a class="zem_slink" title="Cross-training" rel="wikipedia" href="http://en.wikipedia.org/wiki/Cross-training">cross-training</a>, such as learning a new language. Do <a class="zem_slink" title="Design" rel="wikipedia" href="http://en.wikipedia.org/wiki/Design">design</a> if you&#8217;re a devleoper, or develop if you&#8217;re a designer. Just do <em>something</em>.</p>
<p>In this way, we can continue to work on our skills, learn new things and keep from being bored. And, at least in my experience, you can bring new skills and solutions to problems you&#8217;re already facing at work.</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Zemified by Zemanta" href="http://reblog.zemanta.com/zemified/ec7a9e0e-8d0b-4dd9-98bb-a9d2a97fbc42/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=ec7a9e0e-8d0b-4dd9-98bb-a9d2a97fbc42" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em> </em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/&amp;title=Thinking+Outside+the+Cube" title="Add 'Thinking Outside the Cube' to Del.icio.us"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Add 'Thinking Outside the Cube' to Del.icio.us" alt="Add 'Thinking Outside the Cube' to Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/&amp;title=Thinking+Outside+the+Cube" title="Add 'Thinking Outside the Cube' to digg"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Add 'Thinking Outside the Cube' to digg" alt="Add 'Thinking Outside the Cube' to digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/&amp;title=Thinking+Outside+the+Cube" title="Add 'Thinking Outside the Cube' to reddit"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/reddit.png" title="Add 'Thinking Outside the Cube' to reddit" alt="Add 'Thinking Outside the Cube' to reddit" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/" title="Add 'Thinking Outside the Cube' to Technorati"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Add 'Thinking Outside the Cube' to Technorati" alt="Add 'Thinking Outside the Cube' to Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.newsvine.com/_wine/save?u=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/&amp;h=Thinking+Outside+the+Cube" title="Add 'Thinking Outside the Cube' to Newsvine"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/newsvine.png" title="Add 'Thinking Outside the Cube' to Newsvine" alt="Add 'Thinking Outside the Cube' to Newsvine" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/&amp;title=Thinking+Outside+the+Cube" title="Add 'Thinking Outside the Cube' to Stumble Upon"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/stumbleupon.png" title="Add 'Thinking Outside the Cube' to Stumble Upon" alt="Add 'Thinking Outside the Cube' to Stumble Upon" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/&amp;title=Thinking+Outside+the+Cube" title="Add 'Thinking Outside the Cube' to Google Bookmarks"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Add 'Thinking Outside the Cube' to Google Bookmarks" alt="Add 'Thinking Outside the Cube' to Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/&amp;title=Thinking+Outside+the+Cube" title="Add 'Thinking Outside the Cube' to Live-MSN"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Add 'Thinking Outside the Cube' to Live-MSN" alt="Add 'Thinking Outside the Cube' to Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://slashdot.org/bookmark.pl?title=Thinking+Outside+the+Cube&amp;url=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/" title="Add 'Thinking Outside the Cube' to SlashDot"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/slashdot.png" title="Add 'Thinking Outside the Cube' to SlashDot" alt="Add 'Thinking Outside the Cube' to SlashDot" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/&amp;t=Thinking+Outside+the+Cube" title="Add 'Thinking Outside the Cube' to FaceBook"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Add 'Thinking Outside the Cube' to FaceBook" alt="Add 'Thinking Outside the Cube' to FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/" title="Add 'Thinking Outside the Cube' to Twitter"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Add 'Thinking Outside the Cube' to Twitter" alt="Add 'Thinking Outside the Cube' to Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/&amp;title=Thinking+Outside+the+Cube&amp;srcURL=http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/" title="Add 'Thinking Outside the Cube' to Google Buzz"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Add 'Thinking Outside the Cube' to Google Buzz" alt="Add 'Thinking Outside the Cube' to Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>http://www.thejacklawson.com/index.php/2009/04/thinking-outside-the-cube/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>User Controls Rock: Legos and Fake Ajax Master Pages</title>
		<link>http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/</link>
		<comments>http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/#comments</comments>
		<pubDate>Wed, 10 Sep 2008 01:13:35 +0000</pubDate>
		<dc:creator>Jack</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[IIS and Windows Technologies]]></category>
		<category><![CDATA[ajax control toolkit]]></category>
		<category><![CDATA[Ajax Master Pages]]></category>
		<category><![CDATA[asp.net 3.5]]></category>
		<category><![CDATA[user controls]]></category>

		<guid isPermaLink="false">http://www.thejacklawson.com/?p=25</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p>Let me start with a simple statement: user controls are absolutely fantastic.</p>
<p>If you haven&#8217;t delved into the realm of the .ascx, then let me briefly explain the two big benefits that have been relevant to me recently:</p>
<ul>
<li>Totally reusable code</li>
<li>Emulate master pages; only with this, you can use the Ajax control toolkit to do it</li>
</ul>
<p>On the first point, the reusable code point, this is the biggest. It&#8217;s the entire reason behind user controls. It lets you chunk out code that you use all over, and use it in several places; it&#8217;s a fundamental of object oriented development. Let&#8217;s do an example.</p>
<p>Say you have a piece of code that goes to the database and retrieves data on a member. That data is then put into a styled gridview, for the administration side of a website. But, you also have an area in a members section where a user can edit their own information (more like a formview); and, on the normal web display, casual users can browse through usernames and user roles in a paged gridview.</p>
<p>Don&#8217;t write the same code thrice! (or even twice!) Rather, make a user control to do all the work for you, and place it in each of your pages. This is how I&#8217;d do it:</p>
<p><i>For the sake of this article, I&#8217;m assuming you&#8217;re using a list of &#8220;Member&#8221; objects. Use whatever.</i></p>
<p>-Make a public class-level property in your control called &#8220;ReadOnly&#8221;, a bool.<br />-Make a public class-level method in your control called &#8220;Intialize&#8221;, which takes an IList of Member objects<br />-If the IList has one object, add a FormView to your control, and databind it. Otherwise, go the Gridview route (doing this all from the codebehind would keep your code cleaner and keep you from having an extra control rendered, although you could do this in the .ascx if you really wanted to; just set one to visible=&#8221;false&#8221; to the one you&#8217;re not using)<br />-Create all of the appropriate methods for your control for delete, update, insert, etc. and set up your formview or gridview accordingly (of course, only update for our member&#8217;s area FormView!)<br />-If ReadOnly is true, don&#8217;t add edit, insert, or delete buttons to your formview/gridview. (Easy enough; could set visible=&#8221;false&#8221; on the fields, or just not add them at all)</p>
<p>And, then, back on your three main pages, register and use your control.&nbsp; Set the ReadOnly property (if it&#8217;s a bool, you should even get IntelliSense for true/false), and then on Page_Load, call Intialize on the control, passing through the IList of Members that you pulled down.</p>
<p>The reason we&#8217;re calling the data on the page, rather than the control, is so that the control can remain &#8220;dumb&#8221; and doesn&#8217;t need to know whether it&#8217;s a member, admin, or web display control. The less logic in the control, the better; just spit out the lowest common denominator.</p>
<p>Ok. Now that we&#8217;ve hit the reusable control side, let&#8217;s hit the fake-an-ajax-master-page part.</p>
<p>As you may or may not know, even if you wrap the ContentTemplate in a MasterPage, it still reloads every page change. This is because the MasterPage gets loaded <i>after</i> the rest of the page, and is treated like a control. So, if you change pages.. it loads the page, and then says afterwards, &#8216;oh, yeah, that was Ajax. Oh well.&#8217;</p>
<p>The cool thing you can do, is make one default page, and inside of that have user controls in place of your pages, something like this:</p>
<p>-Make your default.aspx page<br />-Create user controls; however, rather than logic in Page_Load of the control, put it all in a public class-level method you call Initialize.You&#8217;ll see why soon.<br />-Put all of your controls into your default.aspx page, with visible=&#8221;false&#8221;.<br />-On the onclick of your navigation buttons, run the Initialize on the control, and set it&#8217;s <i>visible</i> property to <i>true</i>, and all the others to <i>false</i>.. I might alternately suggest using Command and a single method rather than Onclick and seperate methods for each button, so you can pass through a CommandName, which you can then use in a switch statement and know what button you hit.</p>
<p>Ok. Now that we have our fancy Ajaxy page, you may be wondering: why not just visiblity? Why this Initialize thing?</p>
<p>This is because ASP.NET will fully render the controls, visible or not. Which means that if you have 10 pages, it will load those 10 pages and display one; which is a big performance hit on the server, especially if you&#8217;re loading database data into each of those 10. Having to explicitly call Initialize avoids this. It also allows you to pass through a common parameter to each of the controls (say, a title string that displays at the top of each control) .</p>
<p>Controls can certainly do much more than this; but these are the biggies for me. Have any .ascx uses of your own?</p>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em> </em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/&amp;title=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Del.icio.us"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Del.icio.us" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/&amp;title=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to digg"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to digg" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://reddit.com/submit?url=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/&amp;title=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to reddit"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/reddit.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to reddit" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to reddit" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Technorati"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Technorati" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.newsvine.com/_wine/save?u=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/&amp;h=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Newsvine"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/newsvine.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Newsvine" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Newsvine" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit?url=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/&amp;title=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Stumble Upon"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/stumbleupon.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Stumble Upon" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Stumble Upon" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/&amp;title=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Google Bookmarks"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Google Bookmarks" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/&amp;title=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Live-MSN"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Live-MSN" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://slashdot.org/bookmark.pl?title=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages&amp;url=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to SlashDot"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/slashdot.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to SlashDot" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to SlashDot" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/&amp;t=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to FaceBook"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to FaceBook" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Twitter"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Twitter" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/&amp;title=User+Controls+Rock%3A+Legos+and+Fake+Ajax+Master+Pages&amp;srcURL=http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Google Buzz"><img src="http://www.thejacklawson.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Google Buzz" alt="Add 'User Controls Rock: Legos and Fake Ajax Master Pages' to Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>http://www.thejacklawson.com/index.php/2008/09/user-controls-rock-legos-and-fake-ajax-master-pages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
