<?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>Stranger Studios Blog &#187; Web</title>
	<atom:link href="http://www.strangerstudios.com/blog/category/web/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.strangerstudios.com/blog</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Thu, 12 Jan 2012 21:34:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>CharityGoal.com Launches, Support our Cause</title>
		<link>http://www.strangerstudios.com/blog/2011/09/charitygoal-com-launches-support-our-cause/</link>
		<comments>http://www.strangerstudios.com/blog/2011/09/charitygoal-com-launches-support-our-cause/#comments</comments>
		<pubDate>Wed, 21 Sep 2011 14:10:01 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Client Work]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/?p=277</guid>
		<description><![CDATA[I&#8217;m happy to announce the launch of CharityGoal. This is a site we built for a client whose goal is to enable anyone to raise money for any (legal) cause. CharityGoal gives you an easy way to accept donations online, a beautiful landing page, and quick access to social network sharing. For those interested, the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m happy to announce the launch of <a href="http://www.charitygoal.com">CharityGoal</a>. This is a site we built for a client whose goal is to enable anyone to raise money for any (legal) cause. CharityGoal gives you an easy way to accept donations online, a beautiful landing page, and quick access to social network sharing.</p>
<p>For those interested, the site is built on top of WordPress. &#8220;Causes&#8221; are custom post types. A custom plugin we developed allows users who have signed up to create new causes through a front end form and to manage that cause. The checkout code was pulled from the <a href="http://www.paidmembershipspro.com">Paid Memberships Pro plugin</a> (also developed by us and GPL) and tweaked to work specifically for this site.</p>
<p>So take a look. While you at it, I&#8217;d appreciate a donation to our cause:</p>
<p><script src="http://www.charitygoal.com/embed/464/300/"></script></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2011/09/charitygoal-com-launches-support-our-cause/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Standard Ad Sizes Image Placeholders</title>
		<link>http://www.strangerstudios.com/blog/2011/05/standard-ad-sizes-image-placeholders/</link>
		<comments>http://www.strangerstudios.com/blog/2011/05/standard-ad-sizes-image-placeholders/#comments</comments>
		<pubDate>Tue, 10 May 2011 19:21:23 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Artwork]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[ads]]></category>
		<category><![CDATA[banners]]></category>
		<category><![CDATA[images]]></category>
		<category><![CDATA[placeholders]]></category>
		<category><![CDATA[sizes]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/?p=225</guid>
		<description><![CDATA[We make these all the time, but Kim finally put together a page with placeholder images for most of the standard banner sizes for ads. Enjoy:]]></description>
			<content:encoded><![CDATA[<p>We make these all the time, but Kim finally put together a page with placeholder images for most of the standard banner sizes for ads. Enjoy:</p>
<div style="float: left; margin: 10px;"><a href="/ads/120x240.gif"><img src="/ads/120x240.gif" border="0" /></a><br /><a href="/ads/120x240.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/120x600.gif"><img src="/ads/120x600.gif" border="0" /></a><br /><a href="/ads/120x600.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/125x125.gif"><img src="/ads/125x125.gif" border="0" /></a><br /><a href="/ads/125x125.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/160x600.gif"><img src="/ads/160x600.gif" border="0" /></a><br /><a href="/ads/160x600.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/180x150.gif"><img src="/ads/180x150.gif" border="0" /></a><br /><a href="/ads/180x150.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/200x200.gif"><img src="/ads/200x200.gif" border="0" /></a><br /><a href="/ads/200x200.gif">Download</a></div><div style="clear: both;"></div><div style="float: left; margin: 10px;"><a href="/ads/234x60.gif"><img src="/ads/234x60.gif" border="0" /></a><br /><a href="/ads/234x60.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/250x250.gif"><img src="/ads/250x250.gif" border="0" /></a><br /><a href="/ads/250x250.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/300x250.gif"><img src="/ads/300x250.gif" border="0" /></a><br /><a href="/ads/300x250.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/336x280.gif"><img src="/ads/336x280.gif" border="0" /></a><br /><a href="/ads/336x280.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/468x60.gif"><img src="/ads/468x60.gif" border="0" /></a><br /><a href="/ads/468x60.gif">Download</a></div><div style="float: left; margin: 10px;"><a href="/ads/728x90.gif"><img src="/ads/728x90.gif" border="0" /></a><br /><a href="/ads/728x90.gif">Download</a></div><div style="clear: both;"></div>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2011/05/standard-ad-sizes-image-placeholders/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Make One Category Display Full Posts in Thesis Theme</title>
		<link>http://www.strangerstudios.com/blog/2010/07/make-one-category-display-full-posts-in-thesis-theme/</link>
		<comments>http://www.strangerstudios.com/blog/2010/07/make-one-category-display-full-posts-in-thesis-theme/#comments</comments>
		<pubDate>Mon, 19 Jul 2010 17:42:05 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Client Work]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/?p=126</guid>
		<description><![CDATA[Update: Seems like this doesn&#8217;t work with the latest version of thesis. If you get it working, let me know. Got a request from a client to have a specific category page on their WordPress blog running the Thesis theme show full posts (vs. excerpts) for just one category. So I&#8217;m going to figure it [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p><strong>Update:</strong> Seems like this doesn&#8217;t work with the latest version of thesis. If you get it working, let me know.</p></blockquote>
<p>Got a request from a client to have a specific category page on their WordPress blog running the Thesis theme <strong>show full posts (vs. excerpts) for just one category</strong>. So I&#8217;m going to figure it out and write the steps here for the benefit of humanity.</p>
<p>First, to be clear, I&#8217;m not talking about changing ALL CATEGORY PAGES from excerpts to full posts. That can be done easily through the Thesis Display Options. You would change the &#8220;Posts&#8221; display options to &#8220;display full content&#8221; and the &#8220;Archives&#8221; display options to &#8220;same as home page&#8221;.</p>
<p>What I want to do is <strong>show excerpts on every category page except one</strong>. You do this by settings up a custom category theme, and Thesis has its own <a href="http://snipplr.com/view/14524/thesis-custom-page-template-with-category-posts/">way to do that</a>. A custom category theme wasn&#8217;t optimal for this install, so I need to do something different. It&#8217;s good to have different ways of doing things. Maybe my method below works for you too.</p>
<p>Here&#8217;s what we&#8217;re going to do.</p>
<ol>
<li>Use the &#8220;thesis_hook_before_post_box&#8221; hook to check the current category and if it is the &#8220;Quick Takes&#8221; category, change the $thesis['display']['archives']['style'] value to &#8220;content&#8221;.</li>
<li>Use the &#8220;thesis_hook_after_post_box&#8221; hook to change the $thesis['display']['archives']['style'] value back to what it was before we tweaked it.</li>
</ol>
<p>Sounds complicated, but it&#8217;s only a few lines to add to the /custom/custom_functions.php file in your Thesis theme folder.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> quicktakes_fullpost_setup<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$target_category</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;Quick Takes&quot;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">//saving the global archives display setting so we can revert later</span>
	<span style="color: #000000; font-weight: bold;">global</span> <span style="color: #000088;">$thesis</span><span style="color: #339933;">,</span> <span style="color: #000088;">$saved_thesis_display_archives_style</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$saved_thesis_display_archives_style</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$thesis</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'display'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'archives'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'style'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">//checking the category, if it's the target category, then set the display to full post</span>
	<span style="color: #000088;">$current_category</span> <span style="color: #339933;">=</span> single_cat_title<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;&quot;</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$current_category</span> <span style="color: #339933;">==</span> <span style="color: #000088;">$target_category</span><span style="color: #009900;">&#41;</span>
		<span style="color: #000088;">$thesis</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'display'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'archives'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'style'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;content&quot;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">function</span> quicktakes_fullpost_cleanup<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #666666; font-style: italic;">//we're setting the display archives style back to what it was before we tweaked it</span>
	<span style="color: #000000; font-weight: bold;">global</span> <span style="color: #000088;">$thesis</span><span style="color: #339933;">,</span> <span style="color: #000088;">$saved_thesis_display_archives_style</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$thesis</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'display'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'archives'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'style'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$saved_thesis_display_archives_style</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
add_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'thesis_hook_before_post_box'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'quicktakes_fullpost_setup'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
add_action<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'thesis_hook_after_post_box'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'quicktakes_fullpost_cleanup'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Be sure to change the $target_category variable to the title of the category you want to change.</p>
<p>If you want to do the inverse of this, which would be to show the excerpt on just one category page and update show the full post on all others, you would:</p>
<ol>
<li>Change the Thesis Display Options for posts to &#8220;display full post content&#8221;</li>
<li>Change the Thesis Display Options for archives to &#8220;same as your homepage&#8221;</li>
<li>Then adjust line 12 in the code above to set the style to &#8220;excerpts&#8221; instead of &#8220;content.</li>
</ol>
<p>I hope this helps. Let me know if you have any questions about this or similar customizations for Thesis.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2010/07/make-one-category-display-full-posts-in-thesis-theme/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Web Hosting</title>
		<link>http://www.strangerstudios.com/blog/2007/10/web-hosting/</link>
		<comments>http://www.strangerstudios.com/blog/2007/10/web-hosting/#comments</comments>
		<pubDate>Tue, 09 Oct 2007 16:27:51 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Client Work]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/2007/10/09/web-hosting/</guid>
		<description><![CDATA[Over the past year, we&#8217;ve helped launch over 20 new or refurbished websites. We&#8217;ve used just two hosting companies to host the majority of those sites. 1and1 We use 1and1 to purchase and manage all of our domains. At just ~$7 per year, it&#8217;s hard to beat. We also use 1and1&#8242;s Linux Business package to host [...]]]></description>
			<content:encoded><![CDATA[<p>Over the past year, we&#8217;ve helped launch over 20 new or refurbished websites. We&#8217;ve used just two hosting companies to host the majority of those sites.</p>
<p><a href="http://www.1and1.com/?k_id=9972210">1and1</a><br />
We use 1and1 to purchase and manage all of our domains. At just ~$7 per year, it&#8217;s hard to beat. We also use 1and1&#8242;s <a href="http://order.1and1.com/xml/order/Hosting?k_id=9972210">Linux Business package</a> to host the Stranger Studios website and a number of smaller internal websites. For just $9.99 per month, you get 250GB of storage space, 2500GB of bandwidth, and the ability to host up to 100 domains. If you don&#8217;t understand those numbers, just know that it is much more than need.</p>
<p>1and1 has great uptime. They offer both MS and Linux packages, including everything up to dedicated servers. In our experience, the packages below &#8220;business&#8221; level suffer from some performance issues, as there are a large number of websites running on the same server. However, the business packages have been great for sites of our that receive fewer than 1000 visitors per day. For sites that require greater performance or more flexibility, we suggest&#8230;</p>
<p><strong>Update: Myriad Network is no more. At least not the Myriad we knew and loved. Seems that they&#8217;ve been sold to EMC Telecommunications (though they are not admitting). Ever since, we&#8217;ve had nothing but problems. I&#8217;m currently looking for new VPS/Dedicated hosting.</strong></p>
<p><strike>
<p>Myriad Network<br />
WineLog.net is hosting on a Myriad Network Virtual Dedicated Server. People moving from a regular shared server to a VDS will notice a huge difference in performance. Another reason to look into VDS options is if your application requires databases larger than 100MB (1and1 and other shared hosts limit on MySQL DBs). Our Mobilicio.us application with hundreds of thousands of rows of data zings on a new Myriad Network server. And Myriad makes it easy to scale to multiple servers or larger dedicated servers.</p>
<p>When moving to a VDS, you&#8217;re going to have to do a lot more of the nitty gritty at the server level. For our clients, we handle all the nonsense. But even we get confused sometime with some of the more subtle aspects of running a server. In these cases, the Myriad support has been nothing but great with us. They are always timely in their responses and very helpful.</p>
<p></strike></p>
<p><em>And, yes, those are affiliate links above. For over a year now, we&#8217;ve been referring clients and friends to both of these hosting companies without using affiliate links. A little bit of math showed us that we were leaving some money on the table here. Not a lot of money, but maybe enough for a trip to Vegas. So we appreciate your support by using the links above to sign up for these great companies. We wouldn&#8217;t recommend them unless we thought they were the best. And they are.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2007/10/web-hosting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interactive 8-Ball Facebook App</title>
		<link>http://www.strangerstudios.com/blog/2007/06/interactive-8-ball-facebook-app/</link>
		<comments>http://www.strangerstudios.com/blog/2007/06/interactive-8-ball-facebook-app/#comments</comments>
		<pubDate>Thu, 28 Jun 2007 22:21:59 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Interactive 8ball]]></category>
		<category><![CDATA[New Projects]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[WineLog]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/2007/06/28/interactive-8-ball-facebook-app/</guid>
		<description><![CDATA[So we&#8217;ve jumped on the Facebook bandwagon a bit. You can now install the Interactive 8-Ball application to your Facebook profile. Why would you want to install I8B on your Facebook profile? I don&#8217;t know, but if you use Facebook as your homepage instead of iGoogle it&#8217;s nice to have I8B right there. We also [...]]]></description>
			<content:encoded><![CDATA[<p>So we&#8217;ve jumped on the Facebook bandwagon a bit. You can now <a href="http://apps.facebook.com/bettereightball">install the Interactive 8-Ball application to your Facebook profile</a>.</p>
<p><strong>Why would you want to install I8B on your Facebook profile?<br />
</strong>I don&#8217;t know, but if you use Facebook as your homepage instead of <a href="http://www.google.com/ig">iGoogle</a> it&#8217;s nice to have I8B right there. We also update your profile and mini feed every time you ask a question through Facebook. Although this last bit can get tricky; we had a lady email us to take down a question she asked about a love prospect for fear of being had. (Which only gave us another idea for a Facebook app that we might share at some point.)</p>
<p><strong>And What Happened?</strong><br />
I8B got a ton of traffic. In three days, we got 400 people to install the new application. Traffic to I8B trippled to 800 visits a day and then&#8230; leveled out. We actually lost 5-10 users today as people have started to uninstall the application. So growth is not exactly parabolic so far.</p>
<p>I guess we need something more to help the spread. (This blog post? A mention at <a href="http://www.techcrunch.com">TechCrunch</a>? Maybe I&#8217;ll resubmit I8B to <a href="http://www.emilychang.com/go/ehub">Emily Chang&#8217;s eHub</a>.) It would be nice to have the 20,000 users that the other lame-o eight ball application on there has. Of course they got there first and so are high in the app directory and have the catchy URL at apps.facebook.com/eightball. (ours is apps.facebook.com/bettereightball) <img src='http://www.strangerstudios.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>What&#8217;s next?<br />
</strong>A <a href="http://www.winelog.net">WineLog</a> app for Facebook, duh. The I8B stuff was kind of a primer for work on a WineLog application. And good thing too. It is nice to work out all of the kinks using a brand that we aren&#8217;t as invested in. <a href="http://padrenel.blogs.experienceproject.com/3459.html">This article</a> helped me a bunch, but it also took a lot of hacking around to figure out what he meant by everything. The toughest part was fixing Facebook&#8217;s broken PHP4 client. Don&#8217;t even try messing with that unofficial one. If anyone needs help, shoot me an email or IM.</p>
<p>Anyway, a WineLog app would be fun. Again, I would rather just go to WineLog to see what my friends are drinking. But if you spend your day at Facebook, it&#8217;s sweet to get notifications on what people are logging. And it will hopefully introduce WineLog to some new folks. Cross your fingers.</p>
<p><strong>UPDATE:</strong> Here are links to my versions of the facebook api scripts. Download them and rename them to .php. I hope to comment up the code when I get a chance, so you can see what I changed. But in the meantime, this might be a better starting place for you than Facebook&#8217;s version.</p>
<blockquote><p><a href="http://www.strangerstudios.com/sandbox/facebook/facebook.txt">facebook.php</a><br />
<a href="http://www.strangerstudios.com/sandbox/facebook/facebookapi_php4_restlib.txt">facebookapi_php4_restlib.php</a><br />
<a href="http://www.strangerstudios.com/sandbox/facebook/IsterXmlSimpleXMLImpl.txt">IsterXmlSimpleXMLImpl.php</a></p>
</blockquote>
<p>Download all of the above files, rename them to .php, and follow the <a href="http://developers.facebook.com/step_by_step.php">tutorial instructions here</a> (or do whatever you&#8217;re doing). The strange one at the bottom is a library to handle XML objects (PHP5 does this natively I suppose). Read here for <a href="http://www.ister.org/code/simplexml44/index.html">more on simplexml44</a>. Or here is <a href="http://www.strangerstudios.com/sandbox/facebook/simplexml44-0_4_4.tar.gz">the entire simplexml gzip file</a> as I unzipped and installed it on my server.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2007/06/interactive-8-ball-facebook-app/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Easier Way to Implement Diggstyle</title>
		<link>http://www.strangerstudios.com/blog/2007/04/easier-way-to-implement-diggstyle/</link>
		<comments>http://www.strangerstudios.com/blog/2007/04/easier-way-to-implement-diggstyle/#comments</comments>
		<pubDate>Sat, 28 Apr 2007 00:26:37 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/2007/04/27/easier-way-to-implement-diggstyle/</guid>
		<description><![CDATA[Way back, I wrote the tutorial on how to create a pagination scheme similar to the one that Digg uses. The code in the tutorial was meant to educate readers on how the algorithm works. Meanwhile, I was using completely different code for my own projects. Typically I put all of the pagination code into [...]]]></description>
			<content:encoded><![CDATA[<p>Way back, I wrote <a href="http://www.strangerstudios.com/sandbox/pagination/diggstyle.php">the tutorial</a> on how to create a pagination scheme similar to the one that Digg uses. The code in the tutorial was meant to educate readers on how the algorithm works.</p>
<p>Meanwhile, I was using completely different code for my own projects. Typically I put all of the pagination code into a function (or PHP class), which makes it much easier to use in practice. Now I&#8217;ve made available a version of this function, which people should look to first if they want a quick implementation.</p>
<ul>
<li style="color: #ff0000">Download the PHP code for the function here: <a href="http://www.strangerstudios.com/sandbox/pagination/diggstyle_function.txt">diggstyle_function.txt</a>.</li>
<li>To use it make a function call like <strong>getPaginationString($page, $totalitems, $limit, $adjacents, $targetpage, $pagestring);</strong>.</li>
<li><strong>$page</strong> is the current page number</li>
<li><strong>$totalitems</strong> is the total number of items in the set. You usually get this from a SQL query.</li>
<li><strong>$adjacents</strong> is the number of page links to put adjacent to the current page.</li>
<li><strong>$targetpage</strong> is the URL you want to point to. e.g. <em>index.php</em></li>
<li><strong>$pagetext</strong> is the string used to append the page variable to the URL. e.g. <em>?page=</em> or <em>&#038;p=</em></li>
<li>Use <a href="http://www.strangerstudios.com/sandbox/pagination/diggstyle_css.txt">this style sheet</a>.</li>
</ul>
<p><a href="http://www.strangerstudios.com/sandbox/pagination/diggstyle.php">Read the tutorial</a> for more help and to see an example. For a real-live example, check out <a href="http://www.winelog.net/winelog/jason">my Wine Log</a>.</p>
<p>Also, Mis Algoritmos is at it again with a <a href="http://www.mis-algoritmos.com/2007/03/12/wp-digg-style-pagination-plugin/">digg-style pagination plugin for Wordpres</a>s based on this code.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2007/04/easier-way-to-implement-diggstyle/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>What Address to Use for WineLog Mobile?</title>
		<link>http://www.strangerstudios.com/blog/2007/01/what-address-to-use-for-winelog-mobile/</link>
		<comments>http://www.strangerstudios.com/blog/2007/01/what-address-to-use-for-winelog-mobile/#comments</comments>
		<pubDate>Wed, 17 Jan 2007 22:56:41 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Browsers]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[WineLog]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/2007/01/17/what-address-to-use-for-winelog-mobile/</guid>
		<description><![CDATA[We are getting ready to release mobile access to WineLog. I wanted to pose a question around this, and I hope to get at least a few responses. So here goes&#8230; What should we make the address for the WineLog mobile site? Here are a few options. Feel free to come up with your own. http://winelog.mobi [...]]]></description>
			<content:encoded><![CDATA[<p>We are getting ready to release mobile access to <a title="The Coolest Wine Website There Is!" href="http://www.winelog.net">WineLog</a>. I wanted to pose a question around this, and I hope to get at least a few responses. So here goes&#8230;</p>
<blockquote><p>What should we make the address for the WineLog mobile site?</p></blockquote>
<p>Here are a few options. Feel free to come up with your own.</p>
<ul>
<li>http://winelog.mobi</li>
<li>http://mobile.winelog.net</li>
<li>http://mob.winelog.net</li>
<li>http://winelog.net/mobile</li>
</ul>
<p>We picked up the winelog.mobi domain a little while ago &#8220;just in case&#8221;. I&#8217;m not really a fan of the new top-level domain. Creating a separate subdomain for the mobile version seems much more elegant to me. Although, keeping the mobile site and regular site on different domains will help with traffic tracking and the such.</p>
<p>The effect on Google juice should also be taken into account though. By using a different top-level domain, we&#8217;ll be losing the Google ranking we&#8217;ve established. But maybe a .mobi address will help with mobile search engine ranking. I doubt it though since Google themselves aren&#8217;t using the .mobi domain. <a href="http://www.google.mobi/">http://www.google.mobi</a> redirects to <a href="http://www.google.com/mobile">http://www.google.com/mobile</a>.</p>
<p>&#8220;mob&#8221; is quicker to type than &#8220;mobile&#8221; or &#8220;mobi&#8221;, so I&#8217;m pretty fond of mob.winelog.net. But I also want to keep to any standards that have been developing. My only experience with this so far is <a href="http://mobilicio.us/">http://mobilicio.us</a>, where we made the base site the mobile site and use <a href="http://mobilicio.us/www">http://mobilicio.us/www</a> as the &#8220;project site&#8221; meant to be viewed from a larger screen. The mobile application was what people would want, so we put it right there at the root level. We did use the funny .us top-level domain to stay hip and remind people of the interaction with <a href="http://del.icio.us/">http://del.icio.us</a>.</p>
<p>So I&#8217;m really looking forward to everyone&#8217;s opinions on this. Thanks in advance.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2007/01/what-address-to-use-for-winelog-mobile/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Pagination Update</title>
		<link>http://www.strangerstudios.com/blog/2006/12/pagination-update/</link>
		<comments>http://www.strangerstudios.com/blog/2006/12/pagination-update/#comments</comments>
		<pubDate>Fri, 29 Dec 2006 17:13:20 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/2006/12/29/pagination-update/</guid>
		<description><![CDATA[Earlier in the year, I wrote a tutorial on how to create pagination similar to Digg&#8217;s. The article focused on the basic algorithm for displaying the pagination, and there was definitely some opportunity for improvement in its implementation. Well, the improvements are in. We have a modularized PHP version and a Perl version. See the [...]]]></description>
			<content:encoded><![CDATA[<p>Earlier in the year, I wrote a tutorial on <a href="http://www.strangerstudios.com/blog/2006/07/07/paginate-your-site-like-digg/">how to create pagination similar to Digg&#8217;s</a>. The article focused on the basic algorithm for displaying the pagination, and there was definitely some opportunity for improvement in its implementation.</p>
<p>Well, the improvements are in. We have a modularized PHP version and a Perl version. See the <a href="http://www.strangerstudios.com/sandbox/pagination/diggstyle.php">updated pagination demo page</a> for details.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2006/12/pagination-update/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Making Our Current Features Solid Before Adding New Ones</title>
		<link>http://www.strangerstudios.com/blog/2006/12/making-our-current-features-solid-before-adding-new-ones/</link>
		<comments>http://www.strangerstudios.com/blog/2006/12/making-our-current-features-solid-before-adding-new-ones/#comments</comments>
		<pubDate>Thu, 14 Dec 2006 02:59:05 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Entrepreneurship]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[WineLog]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/2006/12/13/making-our-current-features-solid-before-adding-new-ones/</guid>
		<description><![CDATA[Kim and I were getting a lot of work done on a new import tool for WineLog. There is no question that this tool is awesome. It is one-of-a-kind and will help users who have invested a lot of time into another wine tracking system to convert to WineLog. This new feature is good for [...]]]></description>
			<content:encoded><![CDATA[<p>Kim and I were getting a lot of work done on a new import tool for <a title="The Most Awesomest Wine Website There Is" href="http://www.winelog.net">WineLog</a>. There is no question that this tool is awesome. It is one-of-a-kind and will help users who have invested a lot of time into another wine tracking system to convert to WineLog. This new feature is good for our users, and good for the growth of WineLog.</p>
<p>However, there are a lot of <em>existing</em> features that could use our attention. The RSS feeds for instance need some help. Some are more flexible than others, some are not yet taking advantage of the smarter search code, and some are not working at all. There is a lot we can do to make subscribing to our content through RSS more user-friendly and easier to understand for folks who may not be familiar with Real Simple Syndication.</p>
<p>There are a lot of web sites moving into the wine space recently. Some of these web sites are really solid. While I think we currently offer the best mix of features and community, others are catching up fast. And their quality is not suffering. We can&#8217;t afford to have a reviewer say something like, &#8220;Sure, WineLog has a huge database of wines, but such and such a feature was rough around the edges and confused me.&#8221; We can&#8217;t afford to lose a user who runs into a problem like that.</p>
<p>For these reasons, over the next few weeks Kim and I will be focusing on making our current feature set as solid as possible before moving on to new things. Adding new features will only complicate things if we&#8217;re not sure that the current offerings are the best they can be. Sometimes we try to run faster than our legs can take us and we stumble a bit. When this happens, we need to slow down a bit and focus on our technique.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2006/12/making-our-current-features-solid-before-adding-new-ones/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Typographical Internet Jokes</title>
		<link>http://www.strangerstudios.com/blog/2006/12/typographical-internet-jokes/</link>
		<comments>http://www.strangerstudios.com/blog/2006/12/typographical-internet-jokes/#comments</comments>
		<pubDate>Wed, 06 Dec 2006 11:40:24 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Humor]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.strangerstudios.com/blog/2006/12/06/typographical-internet-jokes/</guid>
		<description><![CDATA[Below are a few &#8220;jokes&#8221; born out of the idiosyncrasies of communicating online. Also note that I&#8217;ve done every one of these at some time. I know I&#8217;m missing a bunch. So please add more in the comments. 1. Exclamation points!!!!1!!!1!!1one1!!! I saw this one on Slashdot first (someone needs to do a blog post [...]]]></description>
			<content:encoded><![CDATA[<p>Below are a few &#8220;jokes&#8221; born out of the idiosyncrasies of communicating online. Also note that I&#8217;ve done every one of these at some time. I know I&#8217;m missing a bunch. So please add more in the comments.</p>
<p><strong>1. Exclamation points!!!!1!!!1!!1one1!!!</strong><br />
I saw this one on <a href="http://www.slashdot.org">Slashdot </a>first (someone needs to do a blog post on general Slashdot humor). The &#8220;!1one&#8221; actually has an entry in the <a href="http://www.urbandictionary.com/define.php?term=!1one">Urban Dictionary</a>, which explains it pretty well:</p>
<blockquote><p>Used in long uses of exclamation marks, the !1one is an intentional mistake that jokes about the appearance of numeral value &#8220;1&#8243; in exclamation overdoses. This is due to the shift key not consistantly being pressed while tapping &#8220;1&#8243; for the overused &#8220;!&#8221;&#8216;s. The intentional error may signify even more exclamation marks, like some kind of lunatic scientific notation. !1one may= !E9 or !*10^9, thus representing an absurd amount of exclamation.</p></blockquote>
<p><strong>2. Strike-through <strike>Jokes</strike> Joke Attempts</strong><br />
I imagine the practical origin of these jokes are real edits, where the author wanted to leave the original wording intact to denote the edit. However, a lot of strike-through &#8220;edits&#8221; are made before the first publishing with the intention of making a joke. Jokes like these are very similar to those in the &#8220;I&#8217;m not saying any names (Jason), but someone&#8230;&#8221; family. Here&#8217;s some strike-through action I did in an <a href="http://www.strangerstudios.com/blog/2006/10/02/barcamp-nyc-2-follow-up/">earlier post</a> on this blog:</p>
<blockquote><p>Kim and I are big fans of VistaPrint; their <strike>cheap</strike> inexpensive printing services help us save a ton of money for our clients.</p></blockquote>
<p><strong>3. Super-long Acronyms. ITLSDLATKOAYPTYA</strong><br />
Acronyms are great time savers in IM conversations. First there was ROTF, which stands for &#8220;rolling on the floor&#8221;. Then there was LMAO, which stands for &#8220;laughing my ass off&#8221;. And then some genius put them together to get, ROTFLMAO or &#8220;rolling on the floor laughing my ass off&#8221;. Acronyms as long as these encourage people to make up their own super-long acronyms. Mine above stands for &#8220;I&#8217;m talking like super-duper long acronymns. The kind of acronyms your parents told you about.&#8221; Next time you&#8217;re in an IM conversation with someone, try to throw a few of these super-longs in. It&#8217;s actually pretty amazing how well you can understand these, even when they&#8217;re made up on the fly.</p>
<p><strong>4. Lots of links next to each other.</strong><br />
Another one I saw at Slashdot first. Excessive linking <strong>isn&#8217;t</strong> always meant as a joke, but there is often some humor with how the words connect to the material they are linking to. <a href="http://factoryjoe.com/blog">Chris Messina</a> is one link-happy blogger who uses this technique a lot on his blog. <a href="http://factoryjoe.com/blog/2006/11/27/three-days-left-on-omniweb-sale/">Here</a> <a href="http://factoryjoe.com/blog/2006/11/26/xing-adds-support-for-microformats/">are</a> <a href="http://factoryjoe.com/blog/2006/11/15/skype-adds-sms-capabilities/">a</a> <a href="http://factoryjoe.com/blog/2006/10/31/lastfm-adds-support-for-hcalendar/">few</a> <a href="http://factoryjoe.com/blog/2006/10/17/gems-from-matt/">examples</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.strangerstudios.com/blog/2006/12/typographical-internet-jokes/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

