<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Solutoire.com</title>
	
	<link>http://solutoire.com</link>
	<description>Publicing platform</description>
	<pubDate>Fri, 28 Mar 2008 18:45:57 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/solutoire" type="application/rss+xml" /><feedburner:emailServiceId>616247</feedburner:emailServiceId><feedburner:feedburnerHostname>http://www.feedburner.com</feedburner:feedburnerHostname><item>
		<title>Mootools Puzzle Game</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/259801123/</link>
		<comments>http://solutoire.com/2008/03/28/mootools-puzzle-game/#comments</comments>
		<pubDate>Fri, 28 Mar 2008 18:45:57 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Mootools]]></category>

		<category><![CDATA[about]]></category>

		<category><![CDATA[Javascript]]></category>

		<category><![CDATA[puzzle]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/03/28/mootools-puzzle-game/</guid>
		<description><![CDATA[
I wrote a pretty useless puzzle game that makes use of Mootools. I was updating the &#8216;about&#8217; page on this blog, and I was looking for an original way to show a picture of myself. So take a look at the the about page and play around with it.



Play with me

]]></description>
			<content:encoded><![CDATA[<p>
I wrote a pretty useless puzzle game that makes use of Mootools. I was updating the &#8216;about&#8217; page on this blog, and I was looking for an original way to show a picture of myself. So take a look at the the <a href="http://www.solutoire.com/about" title="About Bas Wenneker">about page</a> and <a href="http://www.solutoire.com/about#puzzle" title="Puzzle with me">play around</a> with it.
</p>
<div class="img">
<a href="http://solutoire.com/about#puzzle" title="Puzzle Game"><img src="http://solutoire.com/blog/wp-content/uploads/2008/03/puzzle-game.png" style="border:0px;" alt="Puzzle Game" /></a><br />
<i>Play with me</i>
</div>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=bhnqRm"><img src="http://feeds.feedburner.com/~a/solutoire?i=bhnqRm" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=uui6PlF"><img src="http://feeds.feedburner.com/~f/solutoire?i=uui6PlF" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=NPkDaYf"><img src="http://feeds.feedburner.com/~f/solutoire?i=NPkDaYf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=JA7Qlof"><img src="http://feeds.feedburner.com/~f/solutoire?i=JA7Qlof" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=JTQYVLf"><img src="http://feeds.feedburner.com/~f/solutoire?i=JTQYVLf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=rQrCUMF"><img src="http://feeds.feedburner.com/~f/solutoire?i=rQrCUMF" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=c0ffwrf"><img src="http://feeds.feedburner.com/~f/solutoire?i=c0ffwrf" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/259801123" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/03/28/mootools-puzzle-game/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F03%2F28%2Fmootools-puzzle-game%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/03/28/mootools-puzzle-game/</feedburner:origLink></item>
		<item>
		<title>HTML Conditional Comments</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/256620722/</link>
		<comments>http://solutoire.com/2008/03/23/html-conditional-comments/#comments</comments>
		<pubDate>Sun, 23 Mar 2008 19:12:17 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Other]]></category>

		<category><![CDATA[conditional comments]]></category>

		<category><![CDATA[html]]></category>

		<category><![CDATA[internet explorer]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/03/23/html-conditional-comments/</guid>
		<description><![CDATA[
Ever used conditional statements/comments in your html? I do, actually, use the technique quite a lot (this site, Flotr). With HTML conditional comments you can detect browser type and version. Now don&#8217;t get too excited, because it&#8217;s only supported by Internet Explorer 5+ on Windows. Nevertheless, this way of browser detection is really elegant compared [...]]]></description>
			<content:encoded><![CDATA[<p>
Ever used conditional statements/comments in your html? I do, actually, use the technique quite a lot (this site, <a href="http://www.solutoire.com/flotr" title="Flotr Project Page">Flotr</a>). With HTML conditional comments you can detect browser type and version. Now don&#8217;t get too excited, because it&#8217;s only supported by Internet Explorer 5+ on Windows. Nevertheless, this way of browser detection is really elegant compared to nasty css hacks or javascript user agent detection. This article is shows you how you can use the conditional comments for several handy purposes.
</p>
<h2>Different types of statements</h2>
<p>
There are two types of conditional statements. The first type is the so-called <strong><i>downlevel-hidden</i></strong> statement, which hides the statement from browsers that don&#8217;t support conditional comments:
</p>
<pre><code class="html">&lt;!-- This is a regular HTML comment --&gt;
&lt;!--[if IE]&gt;
&lt;p&gt;This is a downlevel-hidden conditional statement.
Browsers that don't support conditional comments,
think this is a HTML comment.&lt;/p&gt;
&lt;![endif]--&gt;</code></pre>
<p>
IE browsers will render the paragraph, but others &#8216;ll omit it, because they think it&#8217;s a HTML comment.
</p>
<p>The next type of conditional comment is the <strong><i>downlevel-revealed</i></strong> statement. The statement is rendered by browsers that don&#8217;t support conditional statements, and of course, IE 5+ browsers only render the statement when they pass the condition.</p>
<pre><code class="html">&lt;![if (gte IE 6)&amp;(lt IE 8)]&gt;
&lt;p&gt;This paragraph is shown by IE6, IE7 and all browsers
that don't support conditional comments.&lt;/p&gt;
&lt;![endif]&gt;</code></pre>
<h2>The conditions</h2>
<p>
<abbr title="Microsoft Developer Network">MSDN</abbr> has a nice list of <a href="http://msdn2.microsoft.com/en-us/library/ms537512.aspx#syntax" title="MSDN Conditional Comments">possible conditions</a>, so I&#8217;m not going to repeat that, I&#8217;ll just give some examples with an explanation.
</p>
<pre><code class="html">&lt;!--[if IE 5]&gt;&lt;p&gt;IE 5&lt;/p&gt;&lt;![endif]--&gt;
&lt;!--[if gte IE 5]&gt;&lt;p&gt;IE 5+&lt;/p&gt;&lt;![endif]--&gt;
&lt;!--[if gt IE 5]&gt;&lt;p&gt;IE 6+&lt;/p&gt;&lt;![endif]--&gt;
&lt;!--[if !(IE)]&gt;&lt;p&gt;Never shown&lt;/p&gt;&lt;![endif]--&gt;
&lt;!--[if (IE 6)|(IE 7)]&gt;&lt;p&gt;IE6 and IE7&lt;/p&gt;&lt;![endif]--&gt;
&lt;!--[if (gte IE 5)&amp;!(IE 5.5)]&gt;&lt;p&gt;IE5+ except IE5.5&lt;/p&gt;&lt;![endif]--&gt;
&lt;!--[if true]&gt;
&lt;![if IE 6]&gt;&lt;p&gt;IE6&lt;/p&gt;&lt;![endif]&gt;
&lt;![if IE 7]&gt;&lt;p&gt;IE7&lt;/p&gt;&lt;![endif]&gt;
&lt;![endif]--&gt;
&lt;![if !(IE)]&gt;&lt;p&gt;All non IE browsers&lt;/p&gt;&lt;![endif]&gt;
</code></pre>
<h2>The uses</h2>
<p>
If you take a look in the source of this page you can see the following conditional tag in between the <code>header</code> tags.
</p>
<pre><code class="html">&lt;!--[if lt IE 7]&gt;
&lt;link type=&quot;text/css&quot; rel=&quot;stylesheet&quot; href=&quot;http://solutoire.com/blog/wp-content/themes/v8.gene/styles/ie6.css&quot; /&gt;
&lt;![endif]--&gt;
</code></pre>
<p>
This conditional comment helps me with keeping my original css file free of hacks. This means that all non-IE browsers render this page just fine, but IE6- messes up most of the positioned elements. Non IE and IE7+ browsers think it&#8217;s just a HTML comment, so the css file is not loaded, but IE6- browsers load the css file that corrects the css styles.
</p>
<p>The same thing can be done for javascript files. My javascript plotting library <a href="http://solutoire.com/flotr/" title="Flotr Project Page">Flotr</a> needs <a href="http://excanvas.sourceforge.net/" title="Excanvas Project Page">Excanvas</a> to treat <a href="http://en.wikipedia.org/wiki/Vector_Markup_Language" title="Wikipedia Vector Markup Language">VML</a> as a canvas element. Excanvas is only needed for IE browsers, because most popular non IE browsers support the canvas element.</p>
<pre><code class="html">&lt;!--[if IE]&gt;&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;path/to/excanvas.js&quot;&gt;&lt;/script&gt;&lt;![endif]--&gt;
&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;path/to/prototype-x.x.x.x.js&quot;&gt;&lt;/script&gt;
&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot; src=&quot;path/to/flotr.js&quot;&gt;&lt;/script&gt;
</code></pre>
<h2>Further reading</h2>
<p>
I recommend reading the article on MSDN about <a href="http://msdn2.microsoft.com/en-us/library/ms537512.aspx">conditional statements</a> if this post didn&#8217;t make any sense to you. Also, Peter-Paul Koch wrote a <a href="http://www.quirksmode.org/css/condcom.html">nice roundup</a> on conditional comments at his website <a href="http://www.quirksmode.org/" title="QuirksMode">quirksmode.org</a>.</p>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=nwrUMW"><img src="http://feeds.feedburner.com/~a/solutoire?i=nwrUMW" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=G91CIxF"><img src="http://feeds.feedburner.com/~f/solutoire?i=G91CIxF" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=r06NoYf"><img src="http://feeds.feedburner.com/~f/solutoire?i=r06NoYf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=E5D47lf"><img src="http://feeds.feedburner.com/~f/solutoire?i=E5D47lf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=smR9WJf"><img src="http://feeds.feedburner.com/~f/solutoire?i=smR9WJf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=INTa65F"><img src="http://feeds.feedburner.com/~f/solutoire?i=INTa65F" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=gn6ZxMf"><img src="http://feeds.feedburner.com/~f/solutoire?i=gn6ZxMf" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/256620722" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/03/23/html-conditional-comments/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F03%2F23%2Fhtml-conditional-comments%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/03/23/html-conditional-comments/</feedburner:origLink></item>
		<item>
		<title>What’s in your feed reader?</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/255668315/</link>
		<comments>http://solutoire.com/2008/03/21/whats-in-your-feed-reader/#comments</comments>
		<pubDate>Fri, 21 Mar 2008 19:01:00 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Other]]></category>

		<category><![CDATA[feeds]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/03/21/whats-in-your-feed-reader/</guid>
		<description><![CDATA[
Despite of the fact I&#8217;m always hungry for new feeds with interesting articles, I&#8217;m not able to find any new feeds lately. I asked for help from Google Alerts, which notifies me when the GoogleBot hits something I defined an alert for. Though it doesn&#8217;t come up with great content I&#8217;m looking for. That&#8217;s the [...]]]></description>
			<content:encoded><![CDATA[<p>
Despite of the fact I&#8217;m always hungry for new feeds with interesting articles, I&#8217;m not able to find any new feeds lately. I asked for help from Google Alerts, which notifies me when the GoogleBot hits something I defined an alert for. Though it doesn&#8217;t come up with great content I&#8217;m looking for. That&#8217;s the reason I&#8217;d like to ask you for helping me out, because obviously I&#8217;m looking at the wrong spot. In exchange I show you 10 of my favorite feeds.
</p>
<div class="img">
<a style="border: 0px; background:#D2E8FF;" href="http://feeds.feedburner.com/solutoire" title="Grab the Solutoire.com feed"><img  style="border: 0px;" src='http://solutoire.com/blog/wp-content/uploads/2008/03/feed-icon.png' alt='Feed icon' /></a><br />
<a href="http://feeds.feedburner.com/solutoire" title="Grab the Solutoire.com feed">Grab the Solutoire.com feed!</a>
</div>
<h2>My Feeds</h2>
<p>
I use Google Reader as my feed reader (never tried something else). I never read all feed entries, most of the time I&#8217;ve more than 1000 unread articles. Here&#8217;s an unordered list of the ones I&#8217;m dedicated to:
</p>
<h2><a href="http://www.thinkvitamin.com/" title="Vitamin">Vitamin</a> (<a href="http://feeds.feedburner.com/vitaminmasterfeed" title="Vitamin feed">feed</a>)</h2>
<p>
Vitamin is a resource for web designers, developers and entrepreneurs. The online magazine serves great content written by top authors from the web industry.</p>
<h2><a href="http://www.shauninman.com/" title="ShaunInman.com">ShaunInman.com</a> (<a href="http://www.shauninman.com/feeds/plus" title="ShaunInman.com feed">feed</a>)</h2>
<p>
Shaun Inman is a successful designer and developer. He&#8217;s also the founder of <a href="http://haveamint.com/" title="Mint">Mint</a>, the web site analytics program.</p>
<h2><a href="http://ajaxian.com/" title="Ajaxian">Ajaxian</a> (<a href="http://feeds.feedburner.com/ajaxian" title="Ajaxian feed">feed</a>)</h2>
<p>My daily piece of Ajax.</p>
<h2><a href="http://www.devlounge.net/" title="Devlounge">Devlounge</a> (<a href="http://www.devlounge.net/" title="Devlounge feed">feed</a>)</h2>
<p>Online magazine for designers and developers.</p>
<h2><a href="http://www.lifehack.org/" title="Lifehack.org">Lifehack.org</a> (<a href="http://feeds.lifehack.org/Lifehack" title="Lifehack.org feed">feed</a>)</h2>
<p>Daily digest and pointers on productivity, getting things done and lifehacks.</p>
<h2><a href="http://lifehacker.com/" title="Lifehacker">Lifehacker</a> (<a href="http://feeds.gawker.com/lifehacker/full" title="Lifehacker feed">feed</a>)</h2>
<p>Tech tricks, tips and downloads for getting things done. This site delivers up to 10 articles a day!</p>
<h2><a href="http://www.simplebits.com/" title="SimpleBits">SimpleBits</a> (<a href="http://www.simplebits.com/xml/rss.xml" title="SimpleBits feed">feed</a>)</h2>
<p>The blog/company website of designer and author Dan Cederholm.</p>
<h2><a href="http://snook.ca/jonathan/" title="Snook.ca">Snook.ca</a> (<a href="http://feeds.feedburner.com/snookca" title="Snook.ca feed">feed</a>)</h2>
<p>
Snook.ca is the site of web designer, developer, writer and speaker, Jonathan Snook. The articles on the site focus on web development, design, and freelance.
</p>
<h2><a href="http://andrewdupont.net/" title="Painfully Obvious">Painfully Obvious</a>  (<a href="http://andrewdupont.net/feed/atom/" title="Painfully Obvious feed">feed</a>)</h2>
<p>The weblog of Andrew Dupont, web interface developer and writer.</p>
<h2><a href="http://web20show.com/episodes" title="The Web 2.0 Show">The Web 2.0 Show</a> (<a href="http://feeds.feedburner.com/web20Show" title="The Web 2.0 Show feed">feed</a>)</h2>
<p>The Web 2.0 Show is a podcast about emerging technologies commonly referred to as &#8220;Web 2.0&#8243;, and is hosted by Adam Stacoviak and Josh Owens.</p>
<p style="font-size: 1.5em;font-weight:bold; text-align:center">Now, the crucial question is, what&#8217;s in your feed reader?</p>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=vBR6oJ"><img src="http://feeds.feedburner.com/~a/solutoire?i=vBR6oJ" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=5BOUXCF"><img src="http://feeds.feedburner.com/~f/solutoire?i=5BOUXCF" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=7J7yKbf"><img src="http://feeds.feedburner.com/~f/solutoire?i=7J7yKbf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=b6hm2yf"><img src="http://feeds.feedburner.com/~f/solutoire?i=b6hm2yf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=RkzX7ff"><img src="http://feeds.feedburner.com/~f/solutoire?i=RkzX7ff" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=tIL8pQF"><img src="http://feeds.feedburner.com/~f/solutoire?i=tIL8pQF" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=IQTyLzf"><img src="http://feeds.feedburner.com/~f/solutoire?i=IQTyLzf" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/255668315" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/03/21/whats-in-your-feed-reader/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F03%2F21%2Fwhats-in-your-feed-reader%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/03/21/whats-in-your-feed-reader/</feedburner:origLink></item>
		<item>
		<title>Update: Mootools CSS Styled Scrollbar</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/249746368/</link>
		<comments>http://solutoire.com/2008/03/11/update-mootools-css-styled-scrollbar/#comments</comments>
		<pubDate>Tue, 11 Mar 2008 07:16:30 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Mootools]]></category>

		<category><![CDATA[css]]></category>

		<category><![CDATA[Javascript]]></category>

		<category><![CDATA[scrollbar]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/03/11/update-mootools-css-styled-scrollbar/</guid>
		<description><![CDATA[
I&#8217;ve updated my previous post Mootools CSS Styled Scrollbar. I&#8217;ve added instructions about how to make it work with Mootools version 1.11. Also the example is updated. On the Mootools forums someone called &#8216;horseweapon&#8217; wrote a simple function that used my code to make scrollbars. I used his function to work with the example. You [...]]]></description>
			<content:encoded><![CDATA[<p>
I&#8217;ve updated my previous post <a href="http://solutoire.com/2008/03/10/mootools-css-styled-scrollbar/" title="Mootools CSS Styled Scrollbar">Mootools CSS Styled Scrollbar</a>. I&#8217;ve added instructions about how to make it work with Mootools version 1.11. Also the example is updated. On the Mootools forums someone called &#8216;horseweapon&#8217; wrote a <a href="http://forum.mootools.net/viewtopic.php?pid=43321#post-43311" title="Mootools Forums">simple function</a> that used my code to make scrollbars. I used his function to work with the example. You can see the updated example <a href="http://solutoire.com/experiments/scrollbar/index.html" title="Mootools Scrollbar Example">over here</a>.</p>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=1qynWM"><img src="http://feeds.feedburner.com/~a/solutoire?i=1qynWM" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=q3a10UF"><img src="http://feeds.feedburner.com/~f/solutoire?i=q3a10UF" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=7aePpGf"><img src="http://feeds.feedburner.com/~f/solutoire?i=7aePpGf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=PmV91Xf"><img src="http://feeds.feedburner.com/~f/solutoire?i=PmV91Xf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=gO0lYUf"><img src="http://feeds.feedburner.com/~f/solutoire?i=gO0lYUf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=mA4Ot1F"><img src="http://feeds.feedburner.com/~f/solutoire?i=mA4Ot1F" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=iq3V7Ff"><img src="http://feeds.feedburner.com/~f/solutoire?i=iq3V7Ff" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/249746368" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/03/11/update-mootools-css-styled-scrollbar/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F03%2F11%2Fupdate-mootools-css-styled-scrollbar%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/03/11/update-mootools-css-styled-scrollbar/</feedburner:origLink></item>
		<item>
		<title>Mootools CSS Styled Scrollbar</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/249746369/</link>
		<comments>http://solutoire.com/2008/03/10/mootools-css-styled-scrollbar/#comments</comments>
		<pubDate>Mon, 10 Mar 2008 21:59:35 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Mootools]]></category>

		<category><![CDATA[css]]></category>

		<category><![CDATA[Javascript]]></category>

		<category><![CDATA[scrollbar]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/03/10/mootools-css-styled-scrollbar/</guid>
		<description><![CDATA[
I wrote a small piece of javascript that creates a css styled scrollbar from the Mootools (version 1.2b2) Slider class. I know there is a scrollbar class for Mootools but it&#8217;s more than 100 lines of code. If you only need one or two bars, try my solution instead. The example page shows three div [...]]]></description>
			<content:encoded><![CDATA[<p>
I wrote a small piece of javascript that creates a css styled scrollbar from the Mootools (version 1.2b2) Slider class. I know there is <a href="http://mootools.net/uploads/scrollbar/" title="Mootools Scrollbar Class">a scrollbar class</a> for Mootools but it&#8217;s more than 100 lines of code. If you only need one or two bars, try my solution instead. <a href="http://www.solutoire.com/experiments/scrollbar/index.html" title="Mootools Scrollbar Example">The example page</a> shows three div elements with a styled horizontal and/or vertical scrollbars.
</p>
<div class="img">
<a href="http://www.solutoire.com/experiments/scrollbar/index.html" title="Mootools Scrollbar"><img src="http://solutoire.com/blog/wp-content/uploads/2008/03/scrollbar.png" alt="Mootools Scrollbar" /></a><br />
<i>Mootools Powered Scrollbar</i>
</div>
<h2>Update: making it work with Mootools 1.11</h2>
<p>
It&#8217;s easy to get his working under Mootools 1.11. The syntax for getting the <code>scrollsizes</code> and <code>sizes</code> in Mootools 1.2b2 has changed a bit:
</p>
<pre><code class=""javascript">// => Mootools 1.2b2, elements' size and vertical scrollsize
var size = element.getSize().y;
var scrollSize = element.getScrollSize().y;
// => Mootools 1.11, elements' size and vertical scrollsize
var size = element.getSize().size.y;
var scrollSize = element.getSize().scrollSize.y;
</code></pre>
<p>
For the scrollbars, I&#8217;ve used the size and scrollsize of the content element. So to get the scrollbars working under Mootools 1.11, you have to change only one line per scrollbar (see the <code>steps</code> option):
</p>
<pre><code class=""javascript">// => For vertical scrollbars
...
new Slider(scrollbar, handle, {
	steps: content.getSize().scrollSize.y - content3.getSize().size.y,
	mode: 'vertical',
...
// => For horizontol scrollbars
...
new Slider(scrollbar, handle, {
	steps: content.getSize().scrollSize.x - content3.getSize().size.x,
	mode: 'vertical',
...
</code></pre>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=LK3Qr2"><img src="http://feeds.feedburner.com/~a/solutoire?i=LK3Qr2" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=eKNgF6F"><img src="http://feeds.feedburner.com/~f/solutoire?i=eKNgF6F" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=HM3j3wf"><img src="http://feeds.feedburner.com/~f/solutoire?i=HM3j3wf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=MC3Swvf"><img src="http://feeds.feedburner.com/~f/solutoire?i=MC3Swvf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=Xth9Ksf"><img src="http://feeds.feedburner.com/~f/solutoire?i=Xth9Ksf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=hrfzyJF"><img src="http://feeds.feedburner.com/~f/solutoire?i=hrfzyJF" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=qVQjiHf"><img src="http://feeds.feedburner.com/~f/solutoire?i=qVQjiHf" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/249746369" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/03/10/mootools-css-styled-scrollbar/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F03%2F10%2Fmootools-css-styled-scrollbar%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/03/10/mootools-css-styled-scrollbar/</feedburner:origLink></item>
		<item>
		<title>New Flotr Example: Drawing series with JSON data</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/249746370/</link>
		<comments>http://solutoire.com/2008/03/07/new-flotr-example-drawing-series-with-json-data/#comments</comments>
		<pubDate>Fri, 07 Mar 2008 18:33:17 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Flotr]]></category>

		<category><![CDATA[Javascript]]></category>

		<category><![CDATA[json]]></category>

		<category><![CDATA[Prototype]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/03/07/new-flotr-example-drawing-series-with-json-data/</guid>
		<description><![CDATA[
I added an example to the Flotr example section. This example shows how to use requested JSON data to draw a graph. Go to the example section or take a look at the example directly. To learn more about handling JSON with Prototype, read Introduction to JSON
]]></description>
			<content:encoded><![CDATA[<p>
I added an example to the <a href="http://www.solutoire.com/flotr/" title="Flotr Project Page">Flotr</a> example section. This example shows how to use requested JSON data to draw a graph. Go to the <a href="http://solutoire.com/flotr/docs#examples" title="Flotr Examples">example section</a> or take a look at <a href="http://www.solutoire.com/experiments/flotr/examples/json-data.html" title="Flotr JSON Data Example">the example</a> directly. To learn more about handling JSON with Prototype, read <a href="http://prototypejs.org/learn/json" title="Introduction to JSON">Introduction to JSON</a></p>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=Zyq5fi"><img src="http://feeds.feedburner.com/~a/solutoire?i=Zyq5fi" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=v7D3J5F"><img src="http://feeds.feedburner.com/~f/solutoire?i=v7D3J5F" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=38uBihf"><img src="http://feeds.feedburner.com/~f/solutoire?i=38uBihf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=EtCxczf"><img src="http://feeds.feedburner.com/~f/solutoire?i=EtCxczf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=mlG1zAf"><img src="http://feeds.feedburner.com/~f/solutoire?i=mlG1zAf" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=2lP7sQF"><img src="http://feeds.feedburner.com/~f/solutoire?i=2lP7sQF" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=mUE7mnf"><img src="http://feeds.feedburner.com/~f/solutoire?i=mUE7mnf" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/249746370" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/03/07/new-flotr-example-drawing-series-with-json-data/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F03%2F07%2Fnew-flotr-example-drawing-series-with-json-data%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/03/07/new-flotr-example-drawing-series-with-json-data/</feedburner:origLink></item>
		<item>
		<title>Flotr Javascript Plotting Library</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/249746371/</link>
		<comments>http://solutoire.com/2008/02/27/flotr-javascript-plotting-library/#comments</comments>
		<pubDate>Wed, 27 Feb 2008 21:05:57 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Flotr]]></category>

		<category><![CDATA[graph]]></category>

		<category><![CDATA[Javascript]]></category>

		<category><![CDATA[Prototype]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/02/27/flotr-javascript-plotting-library/</guid>
		<description><![CDATA[
I&#8217;m proud to announce Flotr 0.1.0 alpha, a javascript plotting library based on the Prototype Javascript Framework (version 1.6.0.2 at the moment). This new (22kb) piece of javascript enables you to draw appealing graphs in most modern browsers. It replaces my older (and deprecated) plotting library Plotr. This time I took some more time to [...]]]></description>
			<content:encoded><![CDATA[<p>
I&#8217;m proud to announce <a href="http://www.solutoire.com/flotr/" title="Flotr Project Page">Flotr</a> 0.1.0 alpha, a javascript plotting library based on the <a href="http://www.prototypejs.org" title="Prototype JS">Prototype Javascript Framework</a> (version 1.6.0.2 at the moment). This new (22kb) piece of javascript enables you to draw appealing graphs in most modern browsers. It replaces my older (and deprecated) plotting library <a href="http://www.solutoire.com/plotr" title="Plotr Javascript Plotting Library">Plotr</a>. This time I took some more time to write documentation and examples, see the result on the <a href="http://www.solutoire.com/flotr/" title="Flotr Project Page">Flotr project page</a>.
</p>
<p>
Flotr is actually a rewrite of <a href="http://code.google.com/p/flot/" title="Flot Google Project Page">Flot (by Ole Laursen)</a>, a javascript plotting engine for jQuery. I (partially) rewrote it to use Prototype and added some new features like event hooks and mouse tracking.
</p>
<div class="img">
<img src='http://solutoire.com/blog/wp-content/uploads/2008/02/flotr-teaser.png' alt='Flotr Teaser' /><br />
<i>A graph generated by Flotr</i>
</div>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=n45gxZ"><img src="http://feeds.feedburner.com/~a/solutoire?i=n45gxZ" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=0iuP2uE"><img src="http://feeds.feedburner.com/~f/solutoire?i=0iuP2uE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=ryHw27e"><img src="http://feeds.feedburner.com/~f/solutoire?i=ryHw27e" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=eULPtEe"><img src="http://feeds.feedburner.com/~f/solutoire?i=eULPtEe" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=OH7uHye"><img src="http://feeds.feedburner.com/~f/solutoire?i=OH7uHye" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=BJjyPME"><img src="http://feeds.feedburner.com/~f/solutoire?i=BJjyPME" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=txDK3af"><img src="http://feeds.feedburner.com/~f/solutoire?i=txDK3af" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/249746371" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/02/27/flotr-javascript-plotting-library/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F02%2F27%2Fflotr-javascript-plotting-library%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/02/27/flotr-javascript-plotting-library/</feedburner:origLink></item>
		<item>
		<title>Top 3 website speed up tips</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/249746372/</link>
		<comments>http://solutoire.com/2008/02/18/top-3-website-speed-up-tips/#comments</comments>
		<pubDate>Mon, 18 Feb 2008 21:03:12 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Other]]></category>

		<category><![CDATA[htaccess]]></category>

		<category><![CDATA[Javascript]]></category>

		<category><![CDATA[optimization]]></category>

		<category><![CDATA[yslow]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/02/18/top-3-website-speed-up-tips/</guid>
		<description><![CDATA[
I&#8217;m optimizing this blog at the moment, and I&#8217;m learning quite some new things about compression, gzipping and other optimization techniques. I&#8217;m using the Yahoo! YSlow extension for Firefox to see if I&#8217;m heading in the right direction. In this article I&#8217;ll explain the three best techniques I used to speed up solutoire.com.

Setting up a [...]]]></description>
			<content:encoded><![CDATA[<p>
I&#8217;m optimizing this blog at the moment, and I&#8217;m learning quite some new things about compression, gzipping and other optimization techniques. I&#8217;m using the <a href="http://developer.yahoo.com/yslow/" title="Yahoo! YSlow extionsion">Yahoo! YSlow extension</a> for Firefox to see if I&#8217;m heading in the right direction. In this article I&#8217;ll explain the three best techniques I used to speed up solutoire.com.
</p>
<h2>Setting up a CDN</h2>
<p>
First thing I created a <abbr title="Content Delivery Network">CDN</abbr>. Most browsers support only a few persistent requests to the same domain. By placing static files (css/js/images) to a cdn subdomain, visitors can load content with twice the allowed amount of persistent requests. I asked my hosting provider (and employer) <a href="http://solware.nl/en/uk/cases/testimonials/stichting-opleidingsfonds-groothandel" title="Solware, my hosting provider">Solware</a> to create a new subdomain called &#8220;cdn&#8221; (cdn.solutoire.com). Then I moved all static files to the cdn subdomain. Without configuring YSlow, it doesn&#8217;t have impact on the score, but by adding the <a href="http://developer.yahoo.com/yslow/faq.html#faq_cdn" title="YSlow FAQ">cdn domain to your YSlow configuration</a>, the score should be higher, and the YSlow rule 2 should be graded &#8216;A&#8217;.
</p>
<p>
<b>Note 1</b>: the .htaccess file that&#8217;s in the root of your domain doesn&#8217;t configure Apache in for the subdomain, so create an other .htaccess for your cdn.
</p>
<p>
When you have a large site with lots of visitors and/or a huge amount of static files, a nice alternative is moving your files to <a href="http://www.amazon.com/gp/browse.html?node=16427261" title="Amazon S3 Service">Amazon S3</a>. Amazon S3 is a paid (but cheap) storage provider service. I&#8217;m a big fan of their initiative:
</p>
<blockquote><p>
Amazon S3 provides a simple web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web. It gives any developer access to the same highly scalable, reliable, fast, inexpensive data storage infrastructure that Amazon uses to run its own global network of web sites. The service aims to maximize benefits of scale and to pass those benefits on to developers.
</p></blockquote>
<p>
<b>Note 2</b>: having to many cdn domains results in more DNS lookups. According to Yahoo! a DNS lookup approximately takes 20-120 ms. DNS lookups are cached by most browsers, so there&#8217;s a delay only for first-time visitors.
</p>
<h2>Compressing *.js and *.css using the YUI Compressor</h2>
<p>
A week ago John Resig posted a very interesting article called <a href="http://ejohn.org/blog/library-loading-speed/" title="John Resig: Javascript Library Loading Speed">&#8220;JavaScript Library Loading Speed&#8221;</a> in which he wrote the following:
</p>
<blockquote><p>When distributing a piece of JavaScript code it&#8217;s traditional to think that the smallest (byte-size) code will download and load the fastest. This is not true - and is a fascinating result of this survey. Looking at the speed of loading jQuery in three forms: normal, minified (using Yahoo Min), and packed (using Packer). By order of file size, packed is the smallest, then minifed, then normal. However, the packed version has an overhead: It must be uncompressed, on the client-side, using a JavaScript decompression algorithm. This unpacking has a tangible cost in load time. This means, in the end, that using a minifed version of the code is much faster than the packed one - even though its file size is quite larger.</p></blockquote>
<p>
While I knew about the fact that <a href="http://dean.edwards.name/packer/" title="Dean Edwards: Javascript Packer">packed</a> files had a delay because of the evaluation time, I never thought it took a significant amount of time. Anyway, I stopped packing my files, and started minifying them, using the <a href="http://developer.yahoo.com/yui/compressor/" title="Yahoo! YUI Compressor">YUI Compressor</a>. A great thing about this tool is that it&#8217;s able to compress both javascript files and css files. The downside of using this compressor is that it&#8217;s written in Java, and there doesn&#8217;t seem to be a decent online YUI Compressor service. So I started looking around for <a href="http://ant.apache.org/" title="Apache Ant Project Page">Apache Ant</a> build scripts. I found an excellent explanation about <a href="http://www.julienlecomte.net/blog/2007/09/16/" title="Julien Lecomte about compressing files using YUI Compressor and Ant">compressing files using the YUI Compressor and Ant</a>, written by the Yahoo! engineer <a href="http://www.julienlecomte.net/" title="Julien Lecomte">Julien Lecomte</a>. I&#8217;m not going to explain how to do this, because I would tell you the same as Julien. I can push you in the right direction by referring to a previous post on this blog called <a href="http://solutoire.com/2007/05/31/automate-aptana-with-ant/" title="Automating the Aptana IDE with Apache Ant">&#8220;Automate builds with Ant&#8221;</a> in which I explain how to set up the <a href="http://www.aptana.com/" title="Aptana Webdevelopment IDE">Aptana IDE</a> to use Apache Ant.
</p>
<h2>Configuring the .htaccess file</h2>
<p>
The <a href="http://en.wikipedia.org/wiki/Htaccess" title="Wikipedia .htaccess">.htaccess file</a> is the Apache configuration file for the folder the file resides in. It&#8217;s better to change the httpd.conf file, but most of you won&#8217;t have access to that file (because of shared hosting).
</p>
<p><b>Removing ETags and Last-Modified headers</b></p>
<p>ETags, or Entity tags, are a mechanism used by servers and browsers to compare cached files with files from the server. Yahoo! explains <a href="http://developer.yahoo.com/performance/rules.html#etags" title="Yahoo! about ETags">the problem</a> with ETags:</p>
<blockquote><p>The problem with ETags is that they typically are constructed using attributes that make them unique to a specific server hosting a site. ETags won&#8217;t match when a browser gets the original component from one server and later tries to validate that component on a different server, a situation that is all too common on Web sites that use a cluster of servers to handle requests.</p></blockquote>
<p>
When the ETags and Last-Modified headers are removed, files will stay in cache till the header expires, and there are no checks performed to see if the file on the server-side has changed. So I also remove the Last-Modified header in my .htaccess.
</p>
<p><b>Gzipping content</b></p>
<p>
Gzipping your content before it&#8217;s sent to the browser, may reduce the filesizes with 70%. Almost 90% of internet traffic goes through browsers that support gzipped content. This speeds up your website quite a bit and saves bandwidth, especially when you have serve a lot of javascript and css files. Gzip doesn&#8217;t compress images.
</p>
<p><b>Add Expire headers</b></p>
<p>
When expire headers are set, the browser caches content from the server on the clientside. First-time visitors make lots of requests, the second time visitors visit the page, the browser uses the cached content. So when you set the expire headers for files, the browser knows when to throw away the cached files, and fetch new ones. I use different expire headers for different filetypes.
</p>
<p>
<b>Note</b>: it should be obvious you should only set expire headers for static content. Because the browser caches dynamic content, it&#8217;s only refreshed when the header expires. When you do set headers for dynamic content, make sure the expire period is small.
</p>
<p>
My .htaccess looks something like this, it&#8217;s made from examples from <a href="http://www.askapache.com/htaccess/apache-htaccess.html">several articles at AskApache.com</a>:
</p>
<pre><code>Header unset ETag
FileETag None

# Cache for quite some time
&lt;FilesMatch &quot;\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$&quot;&gt;
Header set Cache-Control &quot;public&quot;
Header set Expires &quot;Thu, 15 Apr 2010 20:00:00 GMT&quot;
Header unset Pragma
Header unset Last-Modified
&lt;/FilesMatch&gt;

# Cache for 2 days
&lt;FilesMatch &quot;\.(xml|txt)$&quot;&gt;
Header set Cache-Control &quot;max-age=172800, public, must-revalidate&quot;
Header unset Pragma
Header unset Last-Modified
&lt;/FilesMatch&gt;

# Cache for 2 hours
&lt;FilesMatch &quot;\.(html|htm)$&quot;&gt;
Header set Cache-Control &quot;max-age=7200, must-revalidate&quot;
Header unset Pragma
&lt;/FilesMatch&gt;

# Gzip compression
&lt;FilesMatch &quot;\.(js|css)$&quot;&gt;
SetOutputFilter DEFLATE
&lt;/FilesMatch&gt;
</code></pre>
<h2>YSlow gives me grade D</h2>
<p>
While I can notice the speed increase after the optimization steps, YSlow still gives me grade D (67). This is because of the ads I added to my site. I use Google Adsense to generate some income from this blog, but the javascript that&#8217;s served from the Google servers aren&#8217;t cached and it causes the low grade from YSlow. <strike>I did everything that&#8217;s within my power</strike> (see comment by <a href="http://solutoire.com/2008/02/18/top-3-website-speed-up-tips/#comments-0" title="Comment by Nicolash">nicolash</a>), but for now, Google is the bottleneck. I can&#8217;t do anything about it, because changing the ads code from Adsense would make me violate the <a href="http://www.google.com/adsense/terms" title="Google Adsense TOS">Adsense TOS</a>. Bummer&#8230;</p>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=5WOJVR"><img src="http://feeds.feedburner.com/~a/solutoire?i=5WOJVR" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=losJMBE"><img src="http://feeds.feedburner.com/~f/solutoire?i=losJMBE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=Hha5DGe"><img src="http://feeds.feedburner.com/~f/solutoire?i=Hha5DGe" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=kiaqpae"><img src="http://feeds.feedburner.com/~f/solutoire?i=kiaqpae" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=b5FT9se"><img src="http://feeds.feedburner.com/~f/solutoire?i=b5FT9se" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=a3EJ6cE"><img src="http://feeds.feedburner.com/~f/solutoire?i=a3EJ6cE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=RtzAYKf"><img src="http://feeds.feedburner.com/~f/solutoire?i=RtzAYKf" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/249746372" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/02/18/top-3-website-speed-up-tips/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F02%2F18%2Ftop-3-website-speed-up-tips%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/02/18/top-3-website-speed-up-tips/</feedburner:origLink></item>
		<item>
		<title>Flickr Wallpaper and Background Pool</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/249746373/</link>
		<comments>http://solutoire.com/2008/02/15/flickr-wallpaper-and-background-pool/#comments</comments>
		<pubDate>Fri, 15 Feb 2008 18:16:16 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Notes]]></category>

		<category><![CDATA[background]]></category>

		<category><![CDATA[flickr]]></category>

		<category><![CDATA[wallpaper]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/02/15/flickr-wallpaper-and-background-pool/</guid>
		<description><![CDATA[
Looking for a wallpaper or background? Give the Flickr Wallpaper and Background Pool a try, there are more than 9000 wallpapers to choose from.
]]></description>
			<content:encoded><![CDATA[<p>
Looking for a wallpaper or background? Give the <a href="http://www.flickr.com/groups/wallpaperandbackgrounds/pool/" title="Flickr Wallpaper and Background Pool">Flickr Wallpaper and Background Pool</a> a try, there are more than 9000 wallpapers to choose from.</p>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=OwdyLe"><img src="http://feeds.feedburner.com/~a/solutoire?i=OwdyLe" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=FAriEFE"><img src="http://feeds.feedburner.com/~f/solutoire?i=FAriEFE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=WQAfC6e"><img src="http://feeds.feedburner.com/~f/solutoire?i=WQAfC6e" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=GAcxy8e"><img src="http://feeds.feedburner.com/~f/solutoire?i=GAcxy8e" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=2SOYZOe"><img src="http://feeds.feedburner.com/~f/solutoire?i=2SOYZOe" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=0aVePKE"><img src="http://feeds.feedburner.com/~f/solutoire?i=0aVePKE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=qxEUcqf"><img src="http://feeds.feedburner.com/~f/solutoire?i=qxEUcqf" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/249746373" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/02/15/flickr-wallpaper-and-background-pool/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F02%2F15%2Fflickr-wallpaper-and-background-pool%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/02/15/flickr-wallpaper-and-background-pool/</feedburner:origLink></item>
		<item>
		<title>Crossbrowser Alpha PNGs</title>
		<link>http://feeds.feedburner.com/~r/solutoire/~3/249746374/</link>
		<comments>http://solutoire.com/2008/02/13/crossbrowser-alpha-pngs/#comments</comments>
		<pubDate>Wed, 13 Feb 2008 08:11:56 +0000</pubDate>
		<dc:creator>Bas Wenneker</dc:creator>
		
		<category><![CDATA[Notes]]></category>

		<category><![CDATA[crossbrowser]]></category>

		<category><![CDATA[images]]></category>

		<category><![CDATA[png]]></category>

		<category><![CDATA[webdesign]]></category>

		<guid isPermaLink="false">http://solutoire.com/2008/02/13/crossbrowser-alpha-pngs/</guid>
		<description><![CDATA[
Jason Striegel wrote a nice article on how to create crossbrowser PNGs that support alpha transparency. A must-read for every webdesigner.
]]></description>
			<content:encoded><![CDATA[<p>
Jason Striegel wrote a nice article on how to create <a href="http://www.hackszine.com/blog/archive/2008/02/howto_crossbrowser_alpha_pngs.html" title="HOWTO: cross-browser alpha PNGs">crossbrowser PNGs that support alpha transparency</a>. A <em>must-read</em> for every webdesigner.</p>

<p><a href="http://feeds.feedburner.com/~a/solutoire?a=sy7dqG"><img src="http://feeds.feedburner.com/~a/solutoire?i=sy7dqG" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/solutoire?a=DnfMbIE"><img src="http://feeds.feedburner.com/~f/solutoire?i=DnfMbIE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=DLSyWHe"><img src="http://feeds.feedburner.com/~f/solutoire?i=DLSyWHe" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=sGdQxhe"><img src="http://feeds.feedburner.com/~f/solutoire?i=sGdQxhe" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=SMZQoEe"><img src="http://feeds.feedburner.com/~f/solutoire?i=SMZQoEe" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=y38hBJE"><img src="http://feeds.feedburner.com/~f/solutoire?i=y38hBJE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/solutoire?a=5Rcifnf"><img src="http://feeds.feedburner.com/~f/solutoire?i=5Rcifnf" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/solutoire/~4/249746374" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://solutoire.com/2008/02/13/crossbrowser-alpha-pngs/feed/</wfw:commentRss>
		<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetItemData?uri=solutoire&amp;itemurl=http%3A%2F%2Fsolutoire.com%2F2008%2F02%2F13%2Fcrossbrowser-alpha-pngs%2F</feedburner:awareness><feedburner:origLink>http://solutoire.com/2008/02/13/crossbrowser-alpha-pngs/</feedburner:origLink></item>
	<feedburner:awareness>http://api.feedburner.com/awareness/1.0/GetFeedData?uri=solutoire</feedburner:awareness></channel>
</rss>
