<?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>Jon Raasch&#039;s Blog &#187; webdev</title>
	<atom:link href="http://jonraasch.com/blog/category/web-development/feed" rel="self" type="application/rss+xml" />
	<link>http://jonraasch.com/blog</link>
	<description>Web development and design blog from Portland based developer Jon Raasch</description>
	<lastBuildDate>Thu, 29 Jul 2010 16:35:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
	<atom:link rel="next" href="http://jonraasch.com/blog/category/web-development/feed?page=2" />

		<item>
		<title>TranslateThis &#8211; A Javascript Translation Widget for Noobs and Nerds Alike</title>
		<link>http://jonraasch.com/blog/javascript-translation-widget</link>
		<comments>http://jonraasch.com/blog/javascript-translation-widget#comments</comments>
		<pubDate>Tue, 08 Dec 2009 23:16:38 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[front-end]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[cross-browser]]></category>
		<category><![CDATA[customization]]></category>
		<category><![CDATA[downloads]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[translation]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[widgets]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/?p=411</guid>
		<description><![CDATA[<a href="http://translateth.is/" target="_blank">TranslateThis</a> is a new Javascript widget that provides 52 languages of translation by leveraging the Google Language API.

Installing TranslateThis couldn't be easier&#8212;simply copy and paste the widget code anywhere on your website, you don't have to upload any files or change any settings.

Besides being easy to use, TranslateThis also provides many attractive features for developers.  First off, requests to the Language API run in Javascript, so the translation is pretty fast.  Additionally, the script is lightweight, weighing in at just over 11kb with another 7kb of imagery.   And since it doesn't depend on any Javascript library, TranslateThis can be implemented on any website without additional overhead.  Finally, TranslateThis has been tested in all modern browsers and its user interface is designed to be straightforward and seamless.

<a href="http://translateth.is/" target="_blank">Get your own TranslateThis Widget</a>

<a href="http://translateth.is/docs" target="_blank">Read the TranslateThis Documentation</a>

<h2>
What can you customize in TranslateThis?
</h2>]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/javascript-translation-widget/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 Advanced jQuery Performance Tuning Tips from Paul Irish</title>
		<link>http://jonraasch.com/blog/10-advanced-jquery-performance-tuning-tips-from-paul-irish</link>
		<comments>http://jonraasch.com/blog/10-advanced-jquery-performance-tuning-tips-from-paul-irish#comments</comments>
		<pubDate>Fri, 20 Nov 2009 01:55:12 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[webdev]]></category>
		<category><![CDATA[front-end]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[selectors]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/?p=382</guid>
		<description><![CDATA[<a href="http://jonraasch.com/blog/10-advanced-jquery-performance-tuning-tips-from-paul-irish" title="10 Advanced jQuery Performance Tuning Tips from Paul Irish"><div class="rightImg"><img src="http://jonraasch.com/blog/wp-content/uploads/2009/11/jquery-summit.png" width="450" height="122" alt="10 Advanced jQuery Performance Tuning Tips from Paul Irish" /></div></a>There were a lot of good speakers at today&#8217;s jQuery Summit, but Paul Irish&#8216;s talk on jQuery Anti-Patterns for Performance &#038; Compression was my stand-out favorite. Covering a number of advanced jQuery performance optimization techniques, this speech put my knowledge of jQuery optimization to shame. Before Paul&#8217;s talk my understanding of jQuery performance tuning was [...]]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/10-advanced-jquery-performance-tuning-tips-from-paul-irish/feed</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Yet Another Featured Posts Plugin for WordPress (YAFPP)</title>
		<link>http://jonraasch.com/blog/yet-another-featured-posts-plugin</link>
		<comments>http://jonraasch.com/blog/yet-another-featured-posts-plugin#comments</comments>
		<pubDate>Tue, 29 Sep 2009 14:27:14 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[webdev]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[WP plugins]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/?p=355</guid>
		<description><![CDATA[<a href="http://jonraasch.com/blog/yet-another-featured-posts-plugin" title="Yet Another Featured Posts Plugin for WordPress (YAFPP)"><div class="rightImg"><img src="http://jonraasch.com/blog/wp-content/uploads/2009/09/yafpp.png" width="300" height="256" alt="Yet Another Featured Posts Plugin for WordPress (YAFPP)" /></div></a>Yet Another Featured Posts Plugin provides an easy-to-use interface for featuring specific posts in a WordPress blog. After installing the plugin, you can feature and unfeature posts by clicking on each post&#8217;s &#8216;featured star&#8217; in the WordPress edit posts page. Yet Another Featured Posts Plugin has a variety configuration options, allowing you to control a [...]]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/yet-another-featured-posts-plugin/feed</wfw:commentRss>
		<slash:comments>49</slash:comments>
		</item>
		<item>
		<title>10 Things Every Good Web Developer Should Know (A Checklist)</title>
		<link>http://jonraasch.com/blog/10-things-every-web-developer-should-know-2</link>
		<comments>http://jonraasch.com/blog/10-things-every-web-developer-should-know-2#comments</comments>
		<pubDate>Wed, 12 Aug 2009 15:40:54 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[webdev]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[back-end]]></category>
		<category><![CDATA[best practices]]></category>
		<category><![CDATA[checklists]]></category>
		<category><![CDATA[cross-browser]]></category>
		<category><![CDATA[cyber law]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[front-end]]></category>
		<category><![CDATA[image processing]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[optimization]]></category>
		<category><![CDATA[regex]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[version control]]></category>
		<category><![CDATA[web standards]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/?p=299</guid>
		<description><![CDATA[My favorite thing about web development is the wide variety of skills it uses.  Being a good developer means staying on your toes and always learning, because there are so many important skills and these are constantly changing.

Here's a checklist of 10 skills that are some of the most important for good web developers to have.  These focus a bit on front-end skills, but they apply to all developers:

<span class="more-link"><a href="http://jonraasch.com/blog/10-things-every-web-developer-should-know-2#more-299" title="Continue reading this post" rel="nofollow">(more&#8230;)</a></span>]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/10-things-every-web-developer-should-know-2/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>QuickFlip 2: The jQuery Flipping Plugin Made Faster and Simpler</title>
		<link>http://jonraasch.com/blog/quickflip-2-jquery-plugin</link>
		<comments>http://jonraasch.com/blog/quickflip-2-jquery-plugin#comments</comments>
		<pubDate>Mon, 13 Jul 2009 21:15:45 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[webdev]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[front-end]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[web2.0]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/?p=114</guid>
		<description><![CDATA[I'm happy to announce the release of QuickFlip 2, a major reworking of the jQuery plugin that flips any piece of HTML markup over like a card.  The new version is faster and even easier to use&#8212;simply call the flip animation through a jQuery selector and the QuickFlip will flip the front panel to show its back.  The flip effect is similar to the UI animation on the iPhone

<a href="http://dev.jonraasch.com/quickflip/download" class="dlButton" rel="nofollow">Download QuickFlip 2 for jQuery</a>

<a href="http://dev.jonraasch.com/quickflip/docs">Read the QuickFlip documentation</a>

QuickFlip works by using an animation shortcut that is barely noticeable when flipped quickly (hence the name).  This shortcut improves performance while allowing the flip effect to work smoothly with any piece of markup regardless of images, backgrounds or CSS.   

It provides an attractive alternative to other slower and more resource heavy Flash and jQuery flip animations.  However if you want a smoother option with a depth effect try <a href="http://lab.smashup.it/flip/" rel="nofollow">jQuery Flip!</a>, although this only works with background colors (not images) and hides the panel content before flipping.]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/quickflip-2-jquery-plugin/feed</wfw:commentRss>
		<slash:comments>70</slash:comments>
		</item>
		<item>
		<title>Scrolling Parallax: A jQuery Plugin</title>
		<link>http://jonraasch.com/blog/scrolling-parallax-jquery-plugin</link>
		<comments>http://jonraasch.com/blog/scrolling-parallax-jquery-plugin#comments</comments>
		<pubDate>Tue, 02 Jun 2009 16:55:25 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[webdev]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[downloads]]></category>
		<category><![CDATA[front-end]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[parallax]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[web design]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/?p=59</guid>
		<description><![CDATA[Scrolling Parallax is a new jQuery plugin that binds a <a href="http://en.wikipedia.org/wiki/Parallax" rel="nofollow">parallax effect</a> to the scrollbars and mouse wheel.  This allows a background image or anything else to scroll at a different pace than the web page when a user scrolls around.  The parallax effect that results is an easy way to create an illusion of depth on your website.

Basic use of the Scrolling Parallax plugin is extremely easy.  Simply pass the path to an image, and the plugin takes the image and stretches it to the window width and 150% of the height.  The extra 50% of the height is scrolled down along with the document, smoothly reaching the end at the same time as the page.

The Scrolling Parallax plugin is also very versatile.  There are a wide variety of options including scrolling faster, slower, looping and reversing the animation and tiling the background to name a few.  Addtionally you can attach the parallax to any piece of markup, as well as pass an image path as described above.]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/scrolling-parallax-jquery-plugin/feed</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Contact-Pop: Contact Form Overlays with a Simple jQuery Plugin</title>
		<link>http://jonraasch.com/blog/contact-pop-jquery-plugin</link>
		<comments>http://jonraasch.com/blog/contact-pop-jquery-plugin#comments</comments>
		<pubDate>Thu, 07 May 2009 15:52:46 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[webdev]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[best practices]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[customization]]></category>
		<category><![CDATA[forms]]></category>
		<category><![CDATA[front-end]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[unobtrusive]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[web2.0]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/contact-pop-jquery-plugin</guid>
		<description><![CDATA[Contact-Pop is a jQuery plugin that makes contact forms with grayed out overlays incredibly easy.  The basic script grabs any links that point to your contact page and flags them for the Contact-Pop popup.  When these links are clicked, Contact-Pop grays out the page and pulls in the contact form using AJAX.  That means that with just a few lines of code, you can convert your site to use Contact-Pop's form and overlay rather than your current contact page.

While there are a lot of options for producing grayed out overlays in jQuery, Contact-Pop provides a more robust and specialized solution for in-page contact forms.  The main advantage is ease of use: simply flag any links to your current contact page by href or jQuery selector, and ContactPop does the rest.  Combining this simplicity with a plethora of customizable options, Contact-Pop is a useful plugin for newbies and seasoned developers alike.  

Additionally, Contact-Pop has the benefit of being totally unobtrusive.  Since the plugin replaces the normal contact links on your page, even if a user doesn't have Javascript enabled they will at least be routed to the normal contact page.

Finally, although Contact-Pop leverages a PHP file, this is just to make it easy to plug into your website.  If you want, you can easily write a custom PHP, ASP or any other backend page to serve and process the form as leveraged by Contact-Pop's AJAX.
]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/contact-pop-jquery-plugin/feed</wfw:commentRss>
		<slash:comments>49</slash:comments>
		</item>
		<item>
		<title>Flipbook Movies with jQuery</title>
		<link>http://jonraasch.com/blog/jquery-flipbook-movies</link>
		<comments>http://jonraasch.com/blog/jquery-flipbook-movies#comments</comments>
		<pubDate>Tue, 30 Dec 2008 17:54:01 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[webdev]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[downloads]]></category>
		<category><![CDATA[front-end]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[object oriented]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[unobtrusive]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/jquery-flipbook-movies</guid>
		<description><![CDATA[Flipbook is a jQuery plugin that produces a movie effect by running images in quick succession.  The concept is similar to something I always did in middle school: doodling in the margins of my notebooks to make short movies.  Times have changed and nowadays I use a Javascript object, pulling the images dynamically with jQuery's AJAX function and a PHP script ;).  But don't worry, it's just as easy to use as a <a href="http://www.haring.com/extras/flipbooks/index.html" rel="nofollow">real flipbook</a>.

The jQuery Flipbook Plugin is built around my <a href="/blog/a-simple-jquery-slideshow" rel="nofollow">jQuery slideshow tutorial</a>.  It's very flexible, providing great options for both new and seasoned developers alike.  You can easily make anything from a short film to an image slideshow to a text viewer.
]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/jquery-flipbook-movies/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>jQuery Video Game Remake: T&amp;C Surf</title>
		<link>http://jonraasch.com/blog/jquery-video-game-remake-tc-surf-designs</link>
		<comments>http://jonraasch.com/blog/jquery-video-game-remake-tc-surf-designs#comments</comments>
		<pubDate>Mon, 18 Aug 2008 16:21:12 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[webdev]]></category>
		<category><![CDATA[cross-browser]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[old school]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[unobtrusive]]></category>
		<category><![CDATA[video games]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/jquery-video-game-remake-tc-surf-designs</guid>
		<description><![CDATA[When I was seven, my all-time favorite video game was T&#38;C Surf Designs for the 8-bit Nintendo&#174; (NES).  Feeling nostalgic this weekend, I developed a version of this old school game using jQuery and Javascript.

Up and Down to move, Left and Right to skate faster or slower, Spacebar to jump

After playing <a href="http://blog.nihilogic.dk/2008/05/javascript-super-mario-kart.html" rel="nofollow">Javascript Mario Kart</a>, I've been wanting to develop a classic video game with jQuery.  T&#38;C seemed like a good fit because its motion and overall simplicity are ideal for jQuery's animation library (and it's really fun).  

I'm fairly pleased with the performance, which is vastly improved through the use of cell-based <a href="http://www.cs.unc.edu/~geom/collide/" rel="nofollow">collision detection</a>.  Instead of having to check for collision every pixel, it can be checked every 32, with huge processing savings.  Additionally, the use of CSS sprites greatly reduces the number of HTTP requests and the need to use the src attribute of any objects.

The main obstacle in development was cross-browser keyboard support.  Thankfully jQuery's <a href="http://docs.jquery.com/Events/keypress" rel="nofollow">keyboard event objects</a>, along with a little Javascript hacking makes it work in all browsers.
]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/jquery-video-game-remake-tc-surf-designs/feed</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>A Simple jQuery Slideshow</title>
		<link>http://jonraasch.com/blog/a-simple-jquery-slideshow</link>
		<comments>http://jonraasch.com/blog/a-simple-jquery-slideshow#comments</comments>
		<pubDate>Tue, 29 Jul 2008 17:14:00 +0000</pubDate>
		<dc:creator>Jon Raasch</dc:creator>
				<category><![CDATA[webdev]]></category>
		<category><![CDATA[animation]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[front-end]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://jonraasch.com/blog/a-simple-jquery-slideshow</guid>
		<description><![CDATA[In the interest of following jQuery's motto of "writing less and doing more," let's write a simple slideshow using jQuery, JavaScript and a bit of CSS.  

For starters, our main goal should be keeping the markup as clean as possible: &#60;div id="slideshow"> &#60;img src="img/img1.jpg" alt="" class="active" /> &#60;img src="img/img2.jpg" alt="" /> &#60;img src="img/img3.jpg" alt="" /> &#60;/div> Now let's use CSS to position the images on top of each other and bring the active image to the images on top of each other and bring the active image to the top level with z-index:]]></description>
		<wfw:commentRss>http://jonraasch.com/blog/a-simple-jquery-slideshow/feed</wfw:commentRss>
		<slash:comments>227</slash:comments>
		</item>
	</channel>
</rss>
