<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>The Nexus</title>
	
	<link>http://nexus.zteo.com</link>
	<description>Variously Interesting Projects</description>
	<lastBuildDate>Tue, 01 Dec 2009 03:25:35 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/TheNexus" /><feedburner:info uri="thenexus" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license><image><link>http://creativecommons.org/licenses/by-sa/3.0/</link><url>http://creativecommons.org/images/public/somerights20.gif</url><title>Some Rights Reserved</title></image><feedburner:emailServiceId>TheNexus</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>SuperGenPass patched for Google Chrome</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/1jmKNGcsWI8/</link>
		<comments>http://nexus.zteo.com/2009/11/30/supergenpass-patched-for-google-chrome/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 03:25:35 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[security & privacy]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2875</guid>
		<description><![CDATA[I am a huge fan of SuperGenPass. There are so many obvious reasons why it&#8217;s a great concept that I won&#8217;t bore you with a rehash of all of them.
Unfortunately, in Google Chrome, SuperGenPass chokes on some pages. I do not blame Chrome for that: it&#8217;s for security reasons. 
I&#8217;ve patched the basic version of [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://www.flickr.com/photos/rattodisabina/2460905893/'><img src='http://farm3.static.flickr.com/2136/2460905893_0c3fc213c5_t.jpg' align='left' /></a>I am a huge fan of <a href="http://supergenpass.com/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://supergenpass.com/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/30/supergenpass-patched-for-google-chrome/&wp-toolbar-fromtitle=SuperGenPass patched for Google Chrome&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >SuperGenPass</a>. There are so many obvious reasons why it&#8217;s a great concept that I won&#8217;t bore you with a rehash of all of them.<br />
Unfortunately, in Google Chrome, SuperGenPass chokes on some pages. I do not blame Chrome for that: it&#8217;s for security reasons. </p>
<p>I&#8217;ve patched the basic version of SuperGenPass so that it can now work on those pages. I am not sure that it fixes everything for everybody but I hope it makes your life easier, like it does mine.</p>
<p>Just <strong><a href="http://www.voilaweb.com/tools/sgpchrome.html" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.voilaweb.com/tools/sgpchrome.html&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/30/supergenpass-patched-for-google-chrome/&wp-toolbar-fromtitle=SuperGenPass patched for Google Chrome&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >go to this page</a></strong> and get the patched bookmark.</p>
<p>If you are using a customized bookmark,  I am afraid that you will have to patch it yourself. Here is what the patch looks like:</p>
<p><em>Look for</em></p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2875code3'); return false;">View Code</a> JAVASCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p28753"><td class="code" id="p2875code3"><pre class="javascript" style="font-family:monospace;">var<span style="color: #339933;">%</span>20FrameTest<span style="color: #339933;">=</span>window.<span style="color: #660066;">frames</span><span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span>.<span style="color: #660066;">src</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p><em>Replace with</em></p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2875code4'); return false;">View Code</a> JAVASCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p28754"><td class="code" id="p2875code4"><pre class="javascript" style="font-family:monospace;">var<span style="color: #339933;">%</span>20FrameTest<span style="color: #339933;">=</span>window.<span style="color: #660066;">frames</span><span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span>.<span style="color: #660066;">src</span><span style="color: #339933;">;</span>var<span style="color: #339933;">%</span>20FrameTest<span style="color: #339933;">=</span>window.<span style="color: #660066;">frames</span><span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span>.<span style="color: #660066;">src</span><span style="color: #339933;">;</span>FrameTest<span style="color: #339933;">=</span>window.<span style="color: #660066;">frames</span><span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span>.<span style="color: #660066;">document</span>.<span style="color: #660066;">forms</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Done!<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2007/12/02/air-genpass-air-is-easier-than-you-think/" rel="bookmark" title="December 2, 2007">Air GenPass: Air is easier than you think!</a></li>
<li><a href="http://nexus.zteo.com/2009/01/04/six-resources-to-study-and-master-git-source-control/" rel="bookmark" title="January 4, 2009">Six Resources To Study And Master Git Source Control</a></li>
<li><a href="http://nexus.zteo.com/2008/09/01/google-chrome-an-index-of-what-developers-need-to-know-good-and-bad/" rel="bookmark" title="September 1, 2008">Google Chrome: an index of what developers need to know (good and bad)</a></li>
<li><a href="http://nexus.zteo.com/2007/01/14/where-is-getelementsbyclassname/" rel="bookmark" title="January 14, 2007">Where is getElementsByClassName()?</a></li>
<li><a href="http://nexus.zteo.com/2007/09/19/ie7-not-much-better/" rel="bookmark" title="September 19, 2007">IE7: Not Much Better…</a></li>
</ul>
<p><!-- Similar Posts took 7.862 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=1jmKNGcsWI8:9WuZ7axHB5Q:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=1jmKNGcsWI8:9WuZ7axHB5Q:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=1jmKNGcsWI8:9WuZ7axHB5Q:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=1jmKNGcsWI8:9WuZ7axHB5Q:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=1jmKNGcsWI8:9WuZ7axHB5Q:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/1jmKNGcsWI8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/11/30/supergenpass-patched-for-google-chrome/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/11/30/supergenpass-patched-for-google-chrome/</feedburner:origLink></item>
		<item>
		<title>Magic: Ruby 1.8.5 + 1.9.1/Rails/Sinatra and Lighttpd</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/K-jMqv0LY_k/</link>
		<comments>http://nexus.zteo.com/2009/11/29/magic-ruby-1-8-5-1-9-1railssinatra-and-lighttpd/#comments</comments>
		<pubDate>Sun, 29 Nov 2009 09:51:38 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ruby & rails]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[lighttpd]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[sinatra]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2863</guid>
		<description><![CDATA[Ladies and gentlemen, gather &#8217;round! The Great Panini is going to perform an incredible illusion before your very eyes! You will tell your grandchildren of this day and they will not believe you! Take pictures!
The Great Panini will start with a pre-steam machines era CentOS 4 server. He will install two versions of Ruby and [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://www.flickr.com/photos/on1stsite/3169705160/'><img src='http://farm4.static.flickr.com/3090/3169705160_9db19161f0_t.jpg' align='left' /></a><em>Ladies and gentlemen, gather &#8217;round! The Great Panini is going to perform an incredible illusion before your very eyes! You will tell your grandchildren of this day and they will not believe you! Take pictures!</p>
<p>The Great Panini will start with a pre-steam machines era CentOS 4 server. He will install two versions of Ruby and they will coexist peacefully!  He will then use the blazing fast Lighttpd server to proxy queries to various Ruby frameworks and he will even make it look easy!</em></p>
<p>Hrm&#8230;Sorry.<br />
I am going to tell you how I quickly updated a couple servers with Ruby 1.9.1 and Lighttpd. And it will look easy because it is, in fact, easy.<br />
This article&#8217;s aim is to be practical but I will explain as we go along. </p>
<p>The first thing I did was update CentOS to a more recent version. This could take a while but it&#8217;s always a good idea to keep a server software up-to-date so I&#8217;m sure that your already are almost there:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code27'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286327"><td class="code" id="p2863code27"><pre class="bash" style="font-family:monospace;">yum update</pre></td></tr></table></div>

<p>In my case, after a couple hours (oops), the update was complete and I rebooted the servers.</p>
<p><strong>Ruby 1.8.5</strong></p>
<p>That&#8217;s the easy part because it&#8217;s the version of Ruby that currently comes with CentOS. Therefore you can install it using yum:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code28'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286328"><td class="code" id="p2863code28"><pre class="bash" style="font-family:monospace;">yum <span style="color: #c20cb9; font-weight: bold;">install</span> ruby ruby-devel ruby-irb ruby-rdoc ruby-ri</pre></td></tr></table></div>

<p><strong>Ruby 1.9.1</strong></p>
<p>Download the package from ruby-lang.org:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code29'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286329"><td class="code" id="p2863code29"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">wget</span> <span style="color: #c20cb9; font-weight: bold;">ftp</span>:<span style="color: #000000; font-weight: bold;">//</span>ftp.ruby-lang.org<span style="color: #000000; font-weight: bold;">/</span>pub<span style="color: #000000; font-weight: bold;">/</span>ruby<span style="color: #000000; font-weight: bold;">/</span>1.9<span style="color: #000000; font-weight: bold;">/</span>ruby-1.9.1-p0.tar.bz2
<span style="color: #c20cb9; font-weight: bold;">tar</span> zxvf ruby-1.9.1-p0.tar.bz2
<span style="color: #7a0874; font-weight: bold;">cd</span> ruby-1.9.1-p0</pre></td></tr></table></div>

<p>The trick, here, is to give all 1.9.1 binaries a different name. Fortunately, <em>configure</em> offers an option for that:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code30'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286330"><td class="code" id="p2863code30"><pre class="bash" style="font-family:monospace;">.<span style="color: #000000; font-weight: bold;">/</span>configure <span style="color: #660033;">--program-suffix</span>=<span style="color: #000000;">19</span></pre></td></tr></table></div>

<p>Build and install:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code31'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286331"><td class="code" id="p2863code31"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">make</span> <span style="color: #c20cb9; font-weight: bold;">install</span></pre></td></tr></table></div>

<p><strong>Rubygems</strong></p>
<p>Get rubygems from Rubyforge:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code32'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286332"><td class="code" id="p2863code32"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>rubyforge.org<span style="color: #000000; font-weight: bold;">/</span>frs<span style="color: #000000; font-weight: bold;">/</span>download.php<span style="color: #000000; font-weight: bold;">/</span>60718<span style="color: #000000; font-weight: bold;">/</span>rubygems-1.3.5.tgz
<span style="color: #c20cb9; font-weight: bold;">tar</span> zxvf rubygems-1.3.5.tgz
<span style="color: #7a0874; font-weight: bold;">cd</span> rubygems-1.3.5</pre></td></tr></table></div>

<p>Note that we are now using our brand new 1.9.1 binaries:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code33'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286333"><td class="code" id="p2863code33"><pre class="bash" style="font-family:monospace;">ruby19 setup.rb</pre></td></tr></table></div>

<p>Now, make sure your gems are up to date:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code34'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286334"><td class="code" id="p2863code34"><pre class="bash" style="font-family:monospace;">gem19 update</pre></td></tr></table></div>

<p>Let&#8217;s see. We want to use two frameworks: <em>Rails</em> and <em>Sinatra</em>. Installing them could not be simpler:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code35'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286335"><td class="code" id="p2863code35"><pre class="bash" style="font-family:monospace;">gem19 <span style="color: #c20cb9; font-weight: bold;">install</span> rails
gem19 <span style="color: #c20cb9; font-weight: bold;">install</span> sinatra</pre></td></tr></table></div>

<p>We will use thin to run our programs:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code36'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286336"><td class="code" id="p2863code36"><pre class="bash" style="font-family:monospace;">gem19 <span style="color: #c20cb9; font-weight: bold;">install</span> thin</pre></td></tr></table></div>

<p>Let&#8217;s make sure that thin is run when the server boots up:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code37'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286337"><td class="code" id="p2863code37"><pre class="bash" style="font-family:monospace;">thin <span style="color: #c20cb9; font-weight: bold;">install</span></pre></td></tr></table></div>

<p>This will create <em>/etc/init.d/thin</em> which we can then link to the appropriate runlevels using <em>chkconfig</em></p>
<p>We will, when creating Ruby applications, tell thin about the instances it needs to run. This will be done by adding yml files to <em>/etc/thin/</em></p>
<p>I am going, in this article, to create these applications in <em>/home/yourdirectory/</em>. Of course, use your own directory.</p>
<p><strong>Rails</strong></p>
<p>Let&#8217;s create a Rails application:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code38'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286338"><td class="code" id="p2863code38"><pre class="bash" style="font-family:monospace;">rails myrailsapp</pre></td></tr></table></div>

<p>In the application&#8217;s <em>config/</em> directory, let&#8217;s create our thin yml file (<em>thin_myrailsapp.yml</em>)</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code39'); return false;">View Code</a> YAML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286339"><td class="code" id="p2863code39"><pre class="yaml" style="font-family:monospace;">chdir: /home/yourdirectory/myrailsapp
address: 127.0.0.1
port: 3000
servers: 4
max_conns: 1024
timeout: 30
max_persistent_conns: 512
user: www
group: www
environment: development
pid: tmp/pids/thin.pid
log: log/thin.log
daemonize: true</pre></td></tr></table></div>

<p><em>chdir</em> tells thin where our document root is located. Rails serves documents from <em>document root/public/</em><br />
<em>address</em> is localhost because that&#8217;s what will be used when proxying through Lighttpd<br />
<em>servers</em> is &#8216;4&#8242; which means that four servers will be instantiated, starting at
<port>, i.e. 3000, 3001, 3002, 3003<br />
<em>User</em> and <em>group</em>: I am using the same user and group that Lighttpd runs as for simplicity sake.</p>
<p>Let&#8217;s tell Lighttpd about this new application. Edit <em>/etc/lighttpd/lighttpd.conf</em>, or wherever your configuration file is:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code40'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286340"><td class="code" id="p2863code40"><pre class="text" style="font-family:monospace;">$HTTP[&quot;host&quot;] =~ &quot;myrailsapp\.yourdomain\.com$&quot; {
        $HTTP[&quot;url&quot;] =~ &quot;^/((images|javascripts|stylesheets)/(.*)$)&quot; {
                server.document-root = /home/yourdirectory/myrailsapp/public&quot;
        }
        proxy.balance = &quot;fair&quot;
        proxy.server =  (&quot;&quot; =&gt;
                (
                        ( &quot;host&quot; =&gt; &quot;127.0.0.1&quot;, &quot;port&quot; =&gt; 3000 )
                )
        )
}</pre></td></tr></table></div>

<p>I am using the &#8220;fair&#8221; load balancer because, as the default option, it tries to be&#8230;fair, obviously, and isn&#8217;t too greedy: it does not compute a hash for each url.</p>
<p>Let&#8217;s now tell thin about this application by simply creating a symbolic link in <em>/etc/thin/</em>:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code41'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286341"><td class="code" id="p2863code41"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">ln</span> <span style="color: #660033;">-s</span> <span style="color: #000000; font-weight: bold;">/</span>home<span style="color: #000000; font-weight: bold;">/</span>yourdirectory<span style="color: #000000; font-weight: bold;">/</span>myrailsapp<span style="color: #000000; font-weight: bold;">/</span>config<span style="color: #000000; font-weight: bold;">/</span>thin_myrailsapp.yml <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>thin<span style="color: #000000; font-weight: bold;">/</span></pre></td></tr></table></div>

<p>Restart Lighttpd and start thin:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code42'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286342"><td class="code" id="p2863code42"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>lighttpd restart <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>thin start</pre></td></tr></table></div>

<p>I know&#8230;supposedly I should be able to simply type &#8216;lighttpd reload&#8217; and it will reload its configuration files but that does not always seem to work.</p>
<p>Now, the fun stuff:</p>
<p>Go to <u>http://myrailsapp.yourdomain.com:3000</u> and you should be greeted by Rail&#8217;s welcome page.</p>
<p>Now, go to <u>http://myrailsapp.yourdomain.com</u> and you should see the same page, except this time it was proxyied by Lighttpd.</p>
<p><strong>Sinatra</strong></p>
<p>Create your application; e.g. the ubiquitous &#8220;hi&#8221; application. Again in <em>/home/yourdirectory/mysinatraapp</em>, create <em>hi.rb</em>:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code43'); return false;">View Code</a> RUBY</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286343"><td class="code" id="p2863code43"><pre class="ruby" style="font-family:monospace;"><span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'rubygems'</span>
<span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'sinatra'</span>
get <span style="color:#996600;">'/'</span> <span style="color:#9966CC; font-weight:bold;">do</span>
    <span style="color:#996600;">'Hello world! I love kittens.'</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></td></tr></table></div>

<p>Create a <em>config/</em> subdirectory:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code44'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286344"><td class="code" id="p2863code44"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">mkdir</span> config <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #7a0874; font-weight: bold;">cd</span> config</pre></td></tr></table></div>

<p>In the <em>config/</em> directory, let&#8217;s create our thin yml file (<em>thin_mysinatraapp.yml</em>)</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code45'); return false;">View Code</a> YAML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286345"><td class="code" id="p2863code45"><pre class="yaml" style="font-family:monospace;">rackup: /home/yourdirectory/mysinatraapp/config/mysinatraapp.ru
chdir: /home/yourdirectory/mysinatraapp
address: 127.0.0.1
port: 4567
servers: 4
max_conns: 1024
timeout: 30
max_persistent_conns: 512
user: www
group: www
environment: development
pid: /home/yourdirectory/mysinatraapp/thin.pid
log: /home/yourdirectory/mysinatraapp/thin.log
daemonize: true</pre></td></tr></table></div>

<p>Starting at port 4567 because, by convention, it&#8217;s Sinatra&#8217;s default port when started standalone.</p>
<p>Notice the main difference? Sinatra will rely on rack for its setup, hence the &#8216;<em>rackup</em>&#8216; keyword.<br />
Let&#8217;s create that rack file (<em>mysinatraapp.ru</em>)</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code46'); return false;">View Code</a> RUBY</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286346"><td class="code" id="p2863code46"><pre class="ruby" style="font-family:monospace;"><span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'sinatra'</span>
&nbsp;
<span style="color:#6666ff; font-weight:bold;">Sinatra::Application</span>.<span style="color:#9900CC;">default_options</span>.<span style="color:#9900CC;">merge</span>!<span style="color:#006600; font-weight:bold;">&#40;</span>
  <span style="color:#ff3333; font-weight:bold;">:run</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#0000FF; font-weight:bold;">false</span>,
  <span style="color:#ff3333; font-weight:bold;">:env</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#ff3333; font-weight:bold;">:development</span>
<span style="color:#006600; font-weight:bold;">&#41;</span>
&nbsp;
<span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'hi.rb'</span>
run Sinatra.<span style="color:#9900CC;">application</span></pre></td></tr></table></div>

<p>Do not forget Lighttpd:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code47'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286347"><td class="code" id="p2863code47"><pre class="text" style="font-family:monospace;">$HTTP[&quot;host&quot;] =~ &quot;mysinatraapp\.yourdomain\.com$&quot; {
         proxy.balance = &quot;fair&quot;
         proxy.server =  (&quot;&quot; =&gt;
                 (
                         ( &quot;host&quot; =&gt; &quot;127.0.0.1&quot;, &quot;port&quot; =&gt; 4567 )
                         # room for more instances
                 )
         )
}</pre></td></tr></table></div>

<p>Of course, if you know that some directories will be dedicated to static content you can also check for these directory names and have Lighttpd serve them statically, as shown in myrailsapp&#8217;s example.</p>
<p>Restart Lighttpd and thin:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2863code48'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p286348"><td class="code" id="p2863code48"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>lighttpd restart <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">killall</span> <span style="color: #660033;">-HUP</span> thin</pre></td></tr></table></div>

<p>Test it:</p>
<p>Go to <u>http://mysinatraapp.yourdomain.com:4567</u> and you should see the message returned by <em>hi.rb</em>.</p>
<p>Now, go to <u>http://mysinatraapp.yourdomain.com</u> and you should see the same page, except, again. it was proxyied by Lighttpd.</p>
<p><strong>Conclusion</strong></p>
<p>As I wrote earlier, this is easy and actually fairly straightforward. It some of this is not working for you, it is likely because I glossed over something I really shoudln&#8217;t have. Post a comment and describe your issue and I will gladly help.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2007/01/28/how-to-add-rubyrails-to-your-existing-apache-setup/" rel="bookmark" title="January 28, 2007">How To Add Ruby/Rails To Your Existing Apache Setup</a></li>
<li><a href="http://nexus.zteo.com/2006/12/10/cd-v2-nextbbs-multi/" rel="bookmark" title="December 10, 2006">C!D v2 = nextBBS multi</a></li>
<li><a href="http://nexus.zteo.com/2009/10/07/s2ajax-v1-0-connects-simply-php-and-javascript/" rel="bookmark" title="October 7, 2009">S2ajax v1.0 connects simply PHP and JavaScript</a></li>
<li><a href="http://nexus.zteo.com/2007/08/06/cheap-server-backup-with-amazon-s3/" rel="bookmark" title="August 6, 2007">Cheap Server Backup with Amazon S3</a></li>
<li><a href="http://nexus.zteo.com/2007/09/28/an-open-letter-to-codegears-joe/" rel="bookmark" title="September 28, 2007">An Open Letter to Codegear’s “Joe”</a></li>
</ul>
<p><!-- Similar Posts took 8.509 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=K-jMqv0LY_k:uHrLPTps78s:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=K-jMqv0LY_k:uHrLPTps78s:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=K-jMqv0LY_k:uHrLPTps78s:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=K-jMqv0LY_k:uHrLPTps78s:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=K-jMqv0LY_k:uHrLPTps78s:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/K-jMqv0LY_k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/11/29/magic-ruby-1-8-5-1-9-1railssinatra-and-lighttpd/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/11/29/magic-ruby-1-8-5-1-9-1railssinatra-and-lighttpd/</feedburner:origLink></item>
		<item>
		<title>Zii’s “stemcell computing”: misleading name, good tech?</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/Q_dnJx_wASw/</link>
		<comments>http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/#comments</comments>
		<pubDate>Fri, 27 Nov 2009 01:31:57 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[hardware]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2851</guid>
		<description><![CDATA[It is interesting that on the heels of IBM&#8217;s announcement that the Cell family is a dead-end, I get to learn of Zii&#8217;s offering &#8212; based on their allegedly violating the GPL.
It&#8217;s all the more interesting that it seems that the trend, lately, has been to focus more on GPUs:
since GPUs have evolved to provide [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://nexus.zteo.com/wp-content/uploads/2009/11/processor.jpg' align='left' />It is interesting that on the heels of <a href="http://arstechnica.com/hardware/news/2009/11/end-of-the-line-for-ibms-cell.ars" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://arstechnica.com/hardware/news/2009/11/end-of-the-line-for-ibms-cell.ars&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/&wp-toolbar-fromtitle=Zii&#8217;s &#8220;stemcell computing&#8221;: misleading name, good tech?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >IBM&#8217;s announcement</a> that the Cell family is a dead-end, I get to learn of <a href="http://www.zii.com/Technology/StemCell.aspx" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.zii.com/Technology/StemCell.aspx&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/&wp-toolbar-fromtitle=Zii&#8217;s &#8220;stemcell computing&#8221;: misleading name, good tech?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >Zii&#8217;s offering</a> &#8212; based on their allegedly violating the GPL.</p>
<p>It&#8217;s all the more interesting that it seems that the trend, lately, has been to focus more on GPUs:<br />
since GPUs have evolved to provide such built-in power, why not reuse them for more than just graphics?<br />
Zii, on the other hand, claim that their &#8220;stemcell computing&#8221; platform, unlike Cell or GPUs, is wholly general-purpose.</p>
<p><strong>Wait. What GPL thing?</strong></p>
<p>Well, Zii is currently marketing to developers a solution called the &#8220;Zii Egg&#8221;. It&#8217;s an iPhone-like device, based on their processors, that can run either Android or their own, Linux-based, Plaszma platform.</p>
<p>Turns out, they are currently <a href="http://runagate.noisepages.com/2009/11/zii-egg-plaszma-sdk-official-announcement-root-access-is-denied-to-developers/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://runagate.noisepages.com/2009/11/zii-egg-plaszma-sdk-official-announcement-root-access-is-denied-to-developers/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/&wp-toolbar-fromtitle=Zii&#8217;s &#8220;stemcell computing&#8221;: misleading name, good tech?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >withholding root information</a>, thus not allowing developers to patch the OS, thus, it is claimed, violating the GPL.</p>
<p>With this out of the way&#8230;</p>
<p><strong>Is Stemcell Computing(™) a revolution?</strong></p>
<p>I will boldly say &#8220;NO&#8221;. But I&#8217;m not saying it&#8217;s not an interesting technical challenge either.</p>
<p>For starters, their platform doesn&#8217;t have much to do with <a href="http://en.wikipedia.org/wiki/Stem_cells" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://en.wikipedia.org/wiki/Stem_cells&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/&wp-toolbar-fromtitle=Zii&#8217;s &#8220;stemcell computing&#8221;: misleading name, good tech?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >stem cells</a>. Sure, the name got my attention. But there is nothing biological about it. In fact, it&#8217;s quite the marketing stretch: take a non-specialized set of chips. Can we program them to do something? If so, then it&#8217;s just like stem cells! Er…right.</p>
<p><strong>So, what is it?</strong></p>
<p>If only <a href="http://www.zii.com/Technology/StemCell.aspx" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.zii.com/Technology/StemCell.aspx&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/&wp-toolbar-fromtitle=Zii&#8217;s &#8220;stemcell computing&#8221;: misleading name, good tech?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >their intro video</a> wasn&#8217;t so &#8220;Ha-ha big computers are for nerds. They are BIG. Look! Shiny object!&#8221; I&#8217;m sure their nerd karma would explode.</p>
<p>But, no. Instead it&#8217;s marketing talk all the way. That could be fine, except they are marketing their product to developers, not the general public.</p>
<p>Also, from the specs I was able to gather, what we are talking about here is a couple ARM cores and processing elements on a <a href="http://en.wikipedia.org/wiki/Die_(integrated_circuit)" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://en.wikipedia.org/wiki/Die_(integrated_circuit)&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/&wp-toolbar-fromtitle=Zii&#8217;s &#8220;stemcell computing&#8221;: misleading name, good tech?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >die</a>.</p>
<p>You know what immediately comes to mind? <a href="http://en.wikipedia.org/wiki/Fpga" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://en.wikipedia.org/wiki/Fpga&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/&wp-toolbar-fromtitle=Zii&#8217;s &#8220;stemcell computing&#8221;: misleading name, good tech?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >FPGAs</a>.</p>
<p>It really sounds like a coarse-grained (node-based) FPGA.<br />
Nowadays, you can buy FPGAs that come with their own processors, either built into the fabric on the side, or even meshed within the FPGA itself.</p>
<p>The only thing that still confuses me is how they can be, as they claim, &#8220;configured thousands of times a second&#8221;: typically, when reconfiguring an FPGA, you need to download the new code to SRAM. Of course, here we are likely talking about SOC (<a href="http://en.wikipedia.org/wiki/System-on-a-chip" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://en.wikipedia.org/wiki/System-on-a-chip&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/&wp-toolbar-fromtitle=Zii&#8217;s &#8220;stemcell computing&#8221;: misleading name, good tech?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >System On a Chip</a>) reconfiguration: there is no external interface.</p>
<p>And this is where is gets hairy:</p>
<ul>
<li>Do you always reconfigure through a <a href="http://en.wikipedia.org/wiki/Joint_Test_Action_Group" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://en.wikipedia.org/wiki/Joint_Test_Action_Group&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/&wp-toolbar-fromtitle=Zii&#8217;s &#8220;stemcell computing&#8221;: misleading name, good tech?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >JTAG</a> port? Or did Zii come up with a faster alternative?</li>
<li>Do you reconfigure the whole FPGA or only regions?</li>
<li>If so, do you place the FPGA in configuration mode then switch back to user mode? Or does the chip have only one mode?</li>
<li>And if so, are write operations synchronous and reads asynchronous? How do you manage the software and electrical issues?</li>
</ul>
<p>I hope that, in time, we will learn more about the technology behind &#8220;Stemcell computing&#8221;.</p>
<p>I may be way off base but it seems to me that, even though we are not talking about a revolution, it sure sounds like a very intriguing evolution.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2009/03/16/good-panel-transcripts-from-sxsw-09-sunday-15/" rel="bookmark" title="March 16, 2009">Good Panel Transcripts From SXSW &#8216;09 &#8211; Sunday 15</a></li>
<li><a href="http://nexus.zteo.com/2008/03/17/stop-there-is-no-lacygate/" rel="bookmark" title="March 17, 2008">Stop!!! There is no Lacygate.</a></li>
<li><a href="http://nexus.zteo.com/2008/06/09/current-obsessions-june-08/" rel="bookmark" title="June 9, 2008">Current Obsessions, June ‘08</a></li>
<li><a href="http://nexus.zteo.com/2008/08/22/how-i-setup-networking-for-virtualbox-on-ubuntu/" rel="bookmark" title="August 22, 2008">How I setup networking for VirtualBox on Ubuntu</a></li>
<li><a href="http://nexus.zteo.com/2009/01/18/extphp-now-on-github/" rel="bookmark" title="January 18, 2009">ExtPHP now on Github</a></li>
</ul>
<p><!-- Similar Posts took 8.308 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=Q_dnJx_wASw:QMQB3iG_AMo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=Q_dnJx_wASw:QMQB3iG_AMo:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=Q_dnJx_wASw:QMQB3iG_AMo:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=Q_dnJx_wASw:QMQB3iG_AMo:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=Q_dnJx_wASw:QMQB3iG_AMo:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/Q_dnJx_wASw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/11/26/ziis-stemcell-computing-misleading-name-good-tech/</feedburner:origLink></item>
		<item>
		<title>MacHeist 4!</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/DlumbhxLcpU/</link>
		<comments>http://nexus.zteo.com/2009/11/01/macheist-4/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 10:27:14 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[osx]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2788</guid>
		<description><![CDATA[It&#8217;s coming, with its usual mix of junk-no-one-cares-about and awesome applications you had no idea you needed and at-this-price-it&#8217;s-a-steal!
Not to mention the join of scoring the mission-related apps, regardless of how &#8212; usually &#8212; good they are.
Avid MacHeist fans alonzo and imfrog2002 have even created two countdown widgets to the official launch:

or

Note: Do not forget [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.macheist.com/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.macheist.com/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/01/macheist-4/&wp-toolbar-fromtitle=MacHeist 4!&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >It&#8217;s coming</a>, with its usual mix of junk-no-one-cares-about and awesome applications you had no idea you needed and at-this-price-it&#8217;s-a-steal!<br />
Not to mention the join of scoring the mission-related apps, regardless of how &#8212; usually &#8212; good they are.</p>
<p>Avid MacHeist fans <em>alonzo</em> and <em>imfrog2002</em> have even created two countdown widgets to the official launch:</p>
<p><a href="http://ablogonzo.wordpress.com/2009/10/31/macheist-4-countdown-widget/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://ablogonzo.wordpress.com/2009/10/31/macheist-4-countdown-widget/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/01/macheist-4/&wp-toolbar-fromtitle=MacHeist 4!&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" ><img src="http://nexus.zteo.com/wp-content/uploads/2009/11/countdowntwo-300x160.png" alt="countdowntwo" title="countdowntwo" width="300" height="160" class="aligncenter size-medium wp-image-2791" /></a><br />
or</p>
<p><a href="http://macheist.imfrogmedia.com/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://macheist.imfrogmedia.com/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/11/01/macheist-4/&wp-toolbar-fromtitle=MacHeist 4!&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" ><img src="http://nexus.zteo.com/wp-content/uploads/2009/11/countdownone.png" alt="countdownone" title="countdownone" width="290" height="105" class="aligncenter size-full wp-image-2790" /></a></p>
<p><strong>Note: Do not forget to backup your MacHeist 3 Loot! Soon, it should disappear from the website.</strong></p>
<p><em>Edit:</em> Hmmm I just did so myself and it took me quite a while. Turns out, the balance mediocre apps vs awesome apps is largely in favour of the latter!<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2009/08/07/rich-text-editor-in-sharepoint-with-firefox/" rel="bookmark" title="August 7, 2009">Rich-text editor in Sharepoint with Firefox</a></li>
<li><a href="http://nexus.zteo.com/2008/03/02/best-online-storage-service-adrivecom/" rel="bookmark" title="March 2, 2008">Best Online Storage Service: adrive.com</a></li>
<li><a href="http://nexus.zteo.com/2009/02/13/fixing-permissions-after-a-wordpress-prefix-change/" rel="bookmark" title="February 13, 2009">Fixing permissions after a Wordpress prefix change</a></li>
<li><a href="http://nexus.zteo.com/2007/08/06/cheap-server-backup-with-amazon-s3/" rel="bookmark" title="August 6, 2007">Cheap Server Backup with Amazon S3</a></li>
<li><a href="http://nexus.zteo.com/2007/01/28/how-to-add-rubyrails-to-your-existing-apache-setup/" rel="bookmark" title="January 28, 2007">How To Add Ruby/Rails To Your Existing Apache Setup</a></li>
</ul>
<p><!-- Similar Posts took 7.958 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=DlumbhxLcpU:gcWZDCrrHfk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=DlumbhxLcpU:gcWZDCrrHfk:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=DlumbhxLcpU:gcWZDCrrHfk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=DlumbhxLcpU:gcWZDCrrHfk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=DlumbhxLcpU:gcWZDCrrHfk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/DlumbhxLcpU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/11/01/macheist-4/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/11/01/macheist-4/</feedburner:origLink></item>
		<item>
		<title>Help Blog Editors Reliably Discover Your API</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/O9l-97Wv8lM/</link>
		<comments>http://nexus.zteo.com/2009/10/19/help-blog-editors-reliably-discover-your-api/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 05:07:36 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[blogging]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2779</guid>
		<description><![CDATA[It seems that tons of people have the same complaint: the Wordpress application for iPhone does not discover their blog and, therefore, is of no use to them.
The same goes for many desktop-based applications.
I, too, spent quite a lot of time trying to figure that one out but now that I have succeeded, here is [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Wordpress Schawg" href="http://www.flickr.com/photos/71813425@N00/2913018697/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.flickr.com/photos/71813425@N00/2913018697/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/10/19/help-blog-editors-reliably-discover-your-api/&wp-toolbar-fromtitle=Help Blog Editors Reliably Discover Your API&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;"  target="_blank"><img src="http://farm4.static.flickr.com/3036/2913018697_ccbb33e993_t.jpg" border="0" alt="Wordpress Schawg" align="left" /></a>It seems that <a href="http://iphone.forums.wordpress.org/topic/xml-rpc-service-for-you-blog-cannot-be-found/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://iphone.forums.wordpress.org/topic/xml-rpc-service-for-you-blog-cannot-be-found/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/10/19/help-blog-editors-reliably-discover-your-api/&wp-toolbar-fromtitle=Help Blog Editors Reliably Discover Your API&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >tons of people</a> have the same complaint: the Wordpress application for iPhone does not discover their blog and, therefore, is of no use to them.<br />
The same goes for many desktop-based applications.<br />
I, too, spent quite a lot of time trying to figure that one out but now that I have succeeded, here is how I would recommend working on this issue if your blog is affected:</p>
<ol>
<li>Go to your blog home page and select &#8220;View source&#8221;</li>
<li>Look for <strong><em>&lt;link ref=&#8221;EditURI&#8221;&#8230;</em></strong> you will see that this line contains a URL ending with <strong><em>xmlrpc.php?rsd</em></strong>. Point your browser to that URL. A rather empty page should be displayed. Check its source; if it is XML, it&#8217;s all good.</li>
<li>If the previous step fails, go to the same URL but without <strong><em>?rsd</em></strong>. If this fails too, you need to check that you have a file called <strong>xmlrpc.php</strong> and that: <em>a.</em> No rewrite rule messes up your URL; <em>b.</em> No plugin renders it invisible &#8212; e.g. &#8220;private&#8221;</li>
<li>If both steps work well, it is VERY likely that the blog editor you are using &#8212; or trying to use, more accurately &#8212; is choking on malformed XHTML code. It is what seems to mystify most of us.</li>
</ol>
<p>To convince your blog editor to &#8220;discover&#8221; your blog, we are going to give it a nicely formed XHTML page:</p>
<p>First, make a copy of index.php: <strong>cp index.php index.o.php</strong></p>
<p>Now, create a new index.php page with this code:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2779code50'); return false;">View Code</a> PHP</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p277950"><td class="code" id="p2779code50"><pre class="php" style="font-family:monospace;"><span style="color: #339933;">&lt;!</span>DOCTYPE html <span style="color: #000000; font-weight: bold;">PUBLIC</span> <span style="color: #0000ff;">&quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;</span> <span style="color: #0000ff;">&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;</span><span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>html xmlns<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;http://www.w3.org/1999/xhtml&quot;</span><span style="color: #339933;">&gt;</span>
&nbsp;
<span style="color: #339933;">&lt;</span>head profile<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;http://gmpg.org/xfn/11&quot;</span><span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>meta http<span style="color: #339933;">-</span>equiv<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;Content-Type&quot;</span> content<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;text/html; charset=UTF-8&quot;</span> <span style="color: #339933;">/&gt;</span>
<span style="color: #339933;">&lt;</span>meta name<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;generator&quot;</span> content<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;WordPress abc&quot;</span> <span style="color: #339933;">/&gt;</span> <span style="color: #339933;">&lt;!--</span> leave this <span style="color: #b1b100;">for</span> stats <span style="color: #339933;">--&gt;</span>
<span style="color: #339933;">&lt;</span>link rel<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;pingback&quot;</span> href<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;http://nexus.zteo.com/xmlrpc.php&quot;</span> <span style="color: #339933;">/&gt;</span>
<span style="color: #339933;">&lt;</span>link rel<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;EditURI&quot;</span> type<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;application/rsd+xml&quot;</span> title<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;RSD&quot;</span> href<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;http://nexus.zteo.com/xmlrpc.php?rsd&quot;</span> <span style="color: #339933;">/&gt;</span>
<span style="color: #339933;">&lt;</span>link rel<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;wlwmanifest&quot;</span> type<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;application/wlwmanifest+xml&quot;</span> href<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;http://nexus.zteo.com/wp-includes/wlwmanifest.xml&quot;</span> <span style="color: #339933;">/&gt;</span>
<span style="color: #339933;">&lt;</span>link rel<span style="color: #339933;">=</span><span style="color: #0000ff;">'index'</span> href<span style="color: #339933;">=</span><span style="color: #0000ff;">'http://nexus.zteo.com'</span> <span style="color: #339933;">/&gt;</span>
<span style="color: #339933;">&lt;</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>html<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>Of course, you need to replace all instances of <strong><em>nexus.zteo.com</em></strong> with your own blog&#8217;s information; for instance <strong><em>myblog.mydomain.com</em></strong></p>
<p>Discover your blog using your favourite blog editor.</p>
<p>Restore your index.php: <strong>cp index.o.php index.php</strong></p>
<p>Done!<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2008/11/15/four-top-wordpress-code-highlighters-reviewed/" rel="bookmark" title="November 15, 2008">Four Top Wordpress Code Highlighters Reviewed</a></li>
<li><a href="http://nexus.zteo.com/2007/07/24/open-source-a-common-misconception/" rel="bookmark" title="July 24, 2007">Open Source: A Common Misconception</a></li>
<li><a href="http://nexus.zteo.com/2009/08/15/job-opportunities-v-competencies-focus-on-these/" rel="bookmark" title="August 15, 2009">Job opportunities v competencies: focus on these?</a></li>
<li><a href="http://nexus.zteo.com/2009/02/13/fixing-permissions-after-a-wordpress-prefix-change/" rel="bookmark" title="February 13, 2009">Fixing permissions after a Wordpress prefix change</a></li>
<li><a href="http://nexus.zteo.com/2009/08/07/rich-text-editor-in-sharepoint-with-firefox/" rel="bookmark" title="August 7, 2009">Rich-text editor in Sharepoint with Firefox</a></li>
</ul>
<p><!-- Similar Posts took 9.899 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=O9l-97Wv8lM:dvpx2B7Ll64:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=O9l-97Wv8lM:dvpx2B7Ll64:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=O9l-97Wv8lM:dvpx2B7Ll64:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=O9l-97Wv8lM:dvpx2B7Ll64:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=O9l-97Wv8lM:dvpx2B7Ll64:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/O9l-97Wv8lM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/10/19/help-blog-editors-reliably-discover-your-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/10/19/help-blog-editors-reliably-discover-your-api/</feedburner:origLink></item>
		<item>
		<title>ClicDev: display last 24 hours visitors</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/433uXvHOadI/</link>
		<comments>http://nexus.zteo.com/2009/10/10/clicdev-display-last-24-hours-visitors/#comments</comments>
		<pubDate>Sat, 10 Oct 2009 23:57:42 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[clicdev]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2767</guid>
		<description><![CDATA[A quick note about Clic!Dev: it is now possible, in the admin control panel, to select Setup Hacks &#62; enable 24 hour users to add an extra information dialog to the footer of your hosted board&#8217;s main page. This will end up looking like so (but obviously adapted to whatever skins you are using):
Similar Posts:

Add [...]]]></description>
			<content:encoded><![CDATA[<p>A quick note about <a href="http://www.clicdev.com" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.clicdev.com&wp-toolbar-fromurl=http://nexus.zteo.com/2009/10/10/clicdev-display-last-24-hours-visitors/&wp-toolbar-fromtitle=ClicDev: display last 24 hours visitors&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >Clic!Dev</a>: it is now possible, in the admin control panel, to select <em><strong>Setup Hacks &gt; enable 24 hour users</strong></em> to add an extra information dialog to the footer of your hosted board&#8217;s main page. This will end up looking like so (but obviously adapted to whatever skins you are using):</p>
<p><img class="alignnone size-full wp-image-2768" title="Shades-1" src="http://nexus.zteo.com/wp-content/uploads/2009/10/Shades-1.jpg" alt="Shades-1" width="747" height="301" /><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2009/09/27/add-your-google-app-account-to-thunderbird-3-beta-4/" rel="bookmark" title="September 27, 2009">Add your Google App account to Thunderbird 3 beta 4</a></li>
<li><a href="http://nexus.zteo.com/2006/12/10/cd-v2-nextbbs-multi/" rel="bookmark" title="December 10, 2006">C!D v2 = nextBBS multi</a></li>
<li><a href="http://nexus.zteo.com/2009/07/04/n2-message-board-software-update/" rel="bookmark" title="July 4, 2009">&#8220;n2&#8243; Message Board Software: Update</a></li>
<li><a href="http://nexus.zteo.com/2009/08/07/rich-text-editor-in-sharepoint-with-firefox/" rel="bookmark" title="August 7, 2009">Rich-text editor in Sharepoint with Firefox</a></li>
<li><a href="http://nexus.zteo.com/2007/07/22/10-things-feedburner-does-for-you-for-free/" rel="bookmark" title="July 22, 2007">10 things Feedburner does for you &#8211; for free.</a></li>
</ul>
<p><!-- Similar Posts took 9.183 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=433uXvHOadI:WHIgyDfHrhw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=433uXvHOadI:WHIgyDfHrhw:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=433uXvHOadI:WHIgyDfHrhw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=433uXvHOadI:WHIgyDfHrhw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=433uXvHOadI:WHIgyDfHrhw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/433uXvHOadI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/10/10/clicdev-display-last-24-hours-visitors/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/10/10/clicdev-display-last-24-hours-visitors/</feedburner:origLink></item>
		<item>
		<title>S2ajax v1.0 connects simply PHP and JavaScript</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/7X487a_3rDY/</link>
		<comments>http://nexus.zteo.com/2009/10/07/s2ajax-v1-0-connects-simply-php-and-javascript/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 08:18:49 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[s2ajax]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2739</guid>
		<description><![CDATA[Here comes S2ajax v1.0!
And it was long overdue. Six months already since I posted S2ajax says &#8220;hi()&#8221; I can hardly believe it.
What I think of as v1.0&#8217;s main feature is that it is now possible to simply export classes in PHP and these classes can be instantiated in JavaScript. Whenever these instances are modified through [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-2737" title="S2ajax" src="http://nexus.zteo.com/wp-content/uploads/2009/10/S2ajax2.png" alt="S2ajax" width="160" height="85" />Here comes S2ajax v1.0!<br />
And it was long overdue. Six months already since I posted <a href="http://nexus.zteo.com/2009/03/02/php-classes-and-javascript-s2ajax-says-hi/"><em>S2ajax says &#8220;hi()&#8221;</em></a> I can hardly believe it.</p>
<p>What I think of as v1.0&#8217;s main feature is that it is now possible to simply <strong>export classes</strong> in PHP and these classes can be instantiated in JavaScript. Whenever these instances are modified through asynchronous method calls, these modifications are transparently <strong>persisted</strong> server-side.</p>
<h1>The concept</h1>
<p>Is it a PHP class? Is it a JavaScript class? Why, it&#8217;s both! The class is defined in PHP on the server. Instances of the class are created on demand using JavaScript on the client. Whatever modifications are made to an instance are serialized on the server.<br />
You can create a complex application using as many classes and instances as you need.</p>
<p><img title="100" src="http://nexus.zteo.com/wp-content/uploads/2009/10/100.png" alt="100" width="353" height="343" /></p>
<h1>Under the hood</h1>
<p>The PHP class is exported; the proxy JavaScript code is generated.<br />
Whenever the client needs to access one of the class&#8217; properties/methods, the proxy <strong>transparently</strong> talks to the class; the class lives server-side.</p>
<p><img class="alignnone size-full wp-image-2733" title="99" src="http://nexus.zteo.com/wp-content/uploads/2009/10/99.png" alt="99" width="480" height="207" /></p>
<h1>The Client&#8217;s point of view</h1>
<p>An arbitrary number of <strong>instances</strong> of the class can be created in JavaScript.<br />
The only hint that you are using a client-server architecture is the fact that when invoking a method, its return value is obtained through a callback. This mechanism allows your client interface to remain responsive while the server is preparing a response.</p>
<p><img class="alignnone size-full wp-image-2735" title="101" src="http://nexus.zteo.com/wp-content/uploads/2009/10/101.png" alt="101" width="213" height="203" /></p>
<h1>The server&#8217;s point of view</h1>
<p>S2ajax automatically persists your instances&#8217; <strong>state</strong> and <strong>data</strong> between consecutive asynchronous calls. You still get the benefits of the &#8220;shared nothing&#8221; approach of PHP but complex objects can be manipulated through an unlimited number of clients requests.</p>
<p><img class="alignnone size-full wp-image-2736" title="102" src="http://nexus.zteo.com/wp-content/uploads/2009/10/102.png" alt="102" width="203" height="200" /></p>
<h1>A code sample</h1>
<h4>Server-side</h4>
<p>Let&#8217;s create a class that will increment an instance variable every time a method is invoked. Let&#8217;s keep it as simple as possible:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2739code53'); return false;">View Code</a> PHP</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p273953"><td class="code" id="p2739code53"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> CounterTester
<span style="color: #009900;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000088;">$counter</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">function</span> __construct<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">counter</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> increment_counter<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">counter</span><span style="color: #339933;">++;</span>
        <span style="color: #b1b100;">return</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">counter</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Clearly, every time <strong>increment_counter()</strong> is invoked, <em>$counter</em> will be incremented and its new value returned.</p>
<h4>Client-Side</h4>
<p>First, an instance of our class is created. Then, when a user click on the button labeled &#8216;Increment counter&#8217;, the instance&#8217;s <strong>increment_counter()</strong> method will be invoked and the new <em>$counter</em> value returned to our callback and displayed.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p2739code54'); return false;">View Code</a> JAVASCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p273954"><td class="code" id="p2739code54"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #003366; font-weight: bold;">function</span> display_result<span style="color: #009900;">&#40;</span>val<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span>val<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #006600; font-style: italic;">// Display new counter value</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #003366; font-weight: bold;">var</span> counter <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> CounterTester<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>button onclick<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;counter.increment_counter(display_result);&quot;</span><span style="color: #339933;">&gt;</span>Increment counter<span style="color: #339933;">&lt;/</span>button<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<p>Note that we could create as many instances of our class as we wish and provided we display the matching buttons, we could independently increment multiple counters.</p>
<h1>Get it now!</h1>
<p>Click our valiant friend &#8220;Octocat&#8221;, artistically represented below, to go to S2ajax&#8217;s Github page. If you just wish to use the library, look for the [Download] button:<br />
<div class="wp-caption alignnone" style="width: 136px"><a href="http://github.com/Fusion/s2ajax" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://github.com/Fusion/s2ajax&wp-toolbar-fromurl=http://nexus.zteo.com/2009/10/07/s2ajax-v1-0-connects-simply-php-and-javascript/&wp-toolbar-fromtitle=S2ajax v1.0 connects simply PHP and JavaScript&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" ><img title="Octocat" src="http://n2.nextbbs.com/octocat96.png" alt="Git!" width="126" height="96" /></a><p class="wp-caption-text">Git!</p></div><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2009/03/02/php-classes-and-javascript-s2ajax-says-hi/" rel="bookmark" title="March 2, 2009">PHP classes and Javascript: S2ajax says &#8220;hi()&#8221;</a></li>
<li><a href="http://nexus.zteo.com/2007/01/14/where-is-getelementsbyclassname/" rel="bookmark" title="January 14, 2007">Where is getElementsByClassName()?</a></li>
<li><a href="http://nexus.zteo.com/2006/12/31/create-your-own-webtop-in-phpjs-in-no-time/" rel="bookmark" title="December 31, 2006">Create your own WebTop in php/js in no time</a></li>
<li><a href="http://nexus.zteo.com/2009/09/27/add-your-google-app-account-to-thunderbird-3-beta-4/" rel="bookmark" title="September 27, 2009">Add your Google App account to Thunderbird 3 beta 4</a></li>
<li><a href="http://nexus.zteo.com/2008/08/02/how-to-make-the-eff-isp-throttling-tool-work-on-leopard/" rel="bookmark" title="August 2, 2008">How To Make The EFF ISP Throttling Tool Work On Leopard</a></li>
</ul>
<p><!-- Similar Posts took 9.591 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=7X487a_3rDY:b3yiuSUGyPc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=7X487a_3rDY:b3yiuSUGyPc:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=7X487a_3rDY:b3yiuSUGyPc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=7X487a_3rDY:b3yiuSUGyPc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=7X487a_3rDY:b3yiuSUGyPc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/7X487a_3rDY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/10/07/s2ajax-v1-0-connects-simply-php-and-javascript/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/10/07/s2ajax-v1-0-connects-simply-php-and-javascript/</feedburner:origLink></item>
		<item>
		<title>PHP PDO class and XAMPP/”exotic” MySQL configurations</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/zsTm7n4Otws/</link>
		<comments>http://nexus.zteo.com/2009/10/01/php-pdo-class-and-xamppexotic-mysql-configurations/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 09:26:51 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[databases]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2728</guid>
		<description><![CDATA[Last night I was trying to setup a @mail server but the installer kept choking when attempting to connect to my local database.
I am posting here my quick workaround in case you too, dear reader, get a dreaded &#8220;PDO&#8221; error message complaining about your attempt to &#8220;connect to unix://&#8221;
Here is I how I solved the [...]]]></description>
			<content:encoded><![CDATA[<p>Last night I was trying to setup a <a href="http://atmail.com" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://atmail.com&wp-toolbar-fromurl=http://nexus.zteo.com/2009/10/01/php-pdo-class-and-xamppexotic-mysql-configurations/&wp-toolbar-fromtitle=PHP PDO class and XAMPP/&#8221;exotic&#8221; MySQL configurations&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;"  target="_blank">@mail</a> server but the installer kept choking when attempting to connect to my local database.</p>
<p>I am posting here my quick workaround in case you too, dear reader, get a dreaded &#8220;PDO&#8221; error message complaining about your attempt to &#8220;<em>connect to unix://</em>&#8221;</p>
<p>Here is I how I solved the issue for @mail: I opened <strong>library/Zend/Db/Adapter/Pdo/Abstract.php</strong>, found the line that creates the PDO object (&#8221;<em>new PDO(&#8230;</em>&#8220;) and, in this example, the first argument passed to the constructor was <strong>$dsn</strong>.</p>
<p>The problem is that PDO sees that this variables references &#8220;<em>localhost</em>&#8221; and decides that, since the database is local, it is going to use <strong>mysql.sock</strong> (hence the <em>unix://</em> scheme)</p>
<p>This works as long as the file is found in its default location. If it is elsewhere, you are out of luck. This happens, for instance, if you use <a href="http://www.apachefriend.org" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.apachefriend.org&wp-toolbar-fromurl=http://nexus.zteo.com/2009/10/01/php-pdo-class-and-xamppexotic-mysql-configurations/&wp-toolbar-fromtitle=PHP PDO class and XAMPP/&#8221;exotic&#8221; MySQL configurations&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;"  target="_blank">XAMPP</a>.</p>
<p>Here is my quick fix, inserted right before the creation of the PDO object:</p>
<p><strong><span style="font-family: andale mono,times;">$dsn = str_replace(&#8217;host=localhost&#8217;, &#8216;unix_socket=/opt/lampp/var/mysql/mysql.sock&#8217;, $dsn);</span></strong></p>
<p>All done.</p>
<p>Note: I have not investigated enough to know whether this is something missing in the Zend Framework or in @mail itself.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2009/04/24/one-line-variables-swap-in-php-ruby-perl-python-and-c/" rel="bookmark" title="April 24, 2009">One-line variables swap in PHP, Ruby, Perl, Python and C</a></li>
<li><a href="http://nexus.zteo.com/2007/08/06/cheap-server-backup-with-amazon-s3/" rel="bookmark" title="August 6, 2007">Cheap Server Backup with Amazon S3</a></li>
<li><a href="http://nexus.zteo.com/2008/02/08/pon-or-php-object-notation-is-already-here/" rel="bookmark" title="February 8, 2008">PON or “PHP Object Notation” Is Already Here</a></li>
<li><a href="http://nexus.zteo.com/2007/12/26/beware-of-a-false-sense-of-security/" rel="bookmark" title="December 26, 2007">Beware Of A False Sense Of Security</a></li>
<li><a href="http://nexus.zteo.com/2007/08/02/php-its-the-purpose-stupid/" rel="bookmark" title="August 2, 2007">Php: It’s the Purpose, Stupid.</a></li>
</ul>
<p><!-- Similar Posts took 9.263 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=zsTm7n4Otws:1zlfsvE6Jzw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=zsTm7n4Otws:1zlfsvE6Jzw:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=zsTm7n4Otws:1zlfsvE6Jzw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=zsTm7n4Otws:1zlfsvE6Jzw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=zsTm7n4Otws:1zlfsvE6Jzw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/zsTm7n4Otws" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/10/01/php-pdo-class-and-xamppexotic-mysql-configurations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/10/01/php-pdo-class-and-xamppexotic-mysql-configurations/</feedburner:origLink></item>
		<item>
		<title>Add your Google App account to Thunderbird 3 beta 4</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/kL2L9YSCMJY/</link>
		<comments>http://nexus.zteo.com/2009/09/27/add-your-google-app-account-to-thunderbird-3-beta-4/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 00:23:36 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[hacks]]></category>
		<category><![CDATA[gmail]]></category>
		<category><![CDATA[lifehack]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[thunderbird]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2713</guid>
		<description><![CDATA[
Beta 4 is out and it is *very* sweet. It even offers Gmail integration like never before.
Well, if you have a @gmail.com account, that is.
But don&#8217;t worry! If you have a Google App account, it can be made to work with little extra work. Here is how:

1. You need a standard @gmail.com account. Create a [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Mozilla pins (wallpaper)" href="http://www.flickr.com/photos/68502457@N00/2221300134/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.flickr.com/photos/68502457@N00/2221300134/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/09/27/add-your-google-app-account-to-thunderbird-3-beta-4/&wp-toolbar-fromtitle=Add your Google App account to Thunderbird 3 beta 4&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;"  target="_blank"><img src="http://farm3.static.flickr.com/2375/2221300134_a4dacd1b71_m.jpg" border="0" alt="Mozilla pins (wallpaper)" align="left" /></a><br />
Beta 4 is out and it is *very* sweet. It even offers Gmail integration like never before.</p>
<p>Well, if you have a <em>@gmail.com</em> account, that is.</p>
<p>But don&#8217;t worry! If you have a Google App account, it can be made to work with little extra work. Here is how:<br />
<br style="clear:both" /></p>
<p>1. You need a standard <em>@gmail.com</em> account. Create a bogus one if necessary.</p>
<p>2. You will not want to do anything with this account. Not really. Thus, in Thunderbird, go offline: <strong>File &gt; Offline &gt; Work Offline</strong>.</p>
<p>3. Select <strong>File &gt; New &gt; Mail Account&#8230;</strong></p>
<p>4. Enter the information for your <em>@gmail.com</em> account. Thunderbird will recognize the address and automatically fill out the following box with the correct GMail information: <em>imap.googlemail.com</em>, etc. Green dots all around! Just click <strong>[Create Account]</strong></p>
<p>5. Now, in the left-hand tree, right-click on your account name and select &#8216;<strong>Settings&#8230;</strong>&#8216;</p>
<p>6. Change your account name to something meaningful, then click <strong>[OK]</strong> &#8212; If you do not do this and exit the dialog, the other screens will not be updated correctly.</p>
<p>7. Re-open the dialog, select &#8216;<strong>Server Settings</strong>&#8216; and enter your Google App email account where your <em>@gmail.com</em> account is currently displayed.</p>
<p>8. Select &#8216;<strong>Outgoing Server (SMTP)</strong>&#8216;, then &#8216;<strong>Google Mail &#8211; smtp.googlemail.com</strong>&#8216; and click <strong>[Set Default]</strong></p>
<p>9. Click <strong>[OK]</strong>, leave offline mode, restart Thunderbird to be on the safe side.</p>
<p>10. All set! Thunderbird will start synchronizing with your Google App account using these optimum settings.<strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2008/12/24/gmail-is-the-new-mutt-shortcuts-galore/" rel="bookmark" title="December 24, 2008">GMail is the new Mutt! Shortcuts galore.</a></li>
<li><a href="http://nexus.zteo.com/2008/05/07/beware-google-adwords-phishing/" rel="bookmark" title="May 7, 2008">Beware: Google Adwords Phishing</a></li>
<li><a href="http://nexus.zteo.com/2009/10/10/clicdev-display-last-24-hours-visitors/" rel="bookmark" title="October 10, 2009">ClicDev: display last 24 hours visitors</a></li>
<li><a href="http://nexus.zteo.com/2009/10/01/php-pdo-class-and-xamppexotic-mysql-configurations/" rel="bookmark" title="October 1, 2009">PHP PDO class and XAMPP/&#8221;exotic&#8221; MySQL configurations</a></li>
<li><a href="http://nexus.zteo.com/2009/11/29/magic-ruby-1-8-5-1-9-1railssinatra-and-lighttpd/" rel="bookmark" title="November 29, 2009">Magic: Ruby 1.8.5 + 1.9.1/Rails/Sinatra and Lighttpd</a></li>
</ul>
<p><!-- Similar Posts took 9.215 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=kL2L9YSCMJY:iBW1aiqLU_I:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=kL2L9YSCMJY:iBW1aiqLU_I:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=kL2L9YSCMJY:iBW1aiqLU_I:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=kL2L9YSCMJY:iBW1aiqLU_I:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=kL2L9YSCMJY:iBW1aiqLU_I:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/kL2L9YSCMJY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/09/27/add-your-google-app-account-to-thunderbird-3-beta-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/09/27/add-your-google-app-account-to-thunderbird-3-beta-4/</feedburner:origLink></item>
		<item>
		<title>Job opportunities v competencies: focus on these?</title>
		<link>http://feedproxy.google.com/~r/TheNexus/~3/0NZcsu_PIP8/</link>
		<comments>http://nexus.zteo.com/2009/08/15/job-opportunities-v-competencies-focus-on-these/#comments</comments>
		<pubDate>Sat, 15 Aug 2009 22:46:03 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[business]]></category>
		<category><![CDATA[jobs]]></category>

		<guid isPermaLink="false">http://nexus.zteo.com/?p=2708</guid>
		<description><![CDATA[oDesk, the freelancer haven, did &#8212; yet another &#8212; good thing and published this awesome table. It&#8217;s a &#8220;fill ratio&#8221; table that show the imbalance between job offers and how much success the companies are having filling them in.
It is very interesting because it is, in my opinion, an indicator of where one should focus [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.oDesk.com/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.oDesk.com/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/08/15/job-opportunities-v-competencies-focus-on-these/&wp-toolbar-fromtitle=Job opportunities v competencies: focus on these?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >oDesk</a>, the freelancer haven, did &#8212; yet another &#8212; good thing and published this awesome table. It&#8217;s a &#8220;fill ratio&#8221; table that show the imbalance between job offers and how much success the companies are having filling them in.</p>
<p>It is very interesting because it is, in my opinion, an indicator of where one should focus their training effort in the current rather depressed market.</p>
<table border="0" cellspacing="0" cellpadding="0" width="406">
<tbody>
<tr height="20">
<td class="xl66" width="116" height="20">Skill</td>
<td class="xl67" width="169">Average # Jobs Per Month</td>
<td class="xl68" width="121">Fill Ratio</td>
</tr>
<tr height="20">
<td class="xl69" height="20">iPhone</td>
<td class="xl65">93</td>
<td class="xl70">23.96%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">AJAX</td>
<td class="xl65">315</td>
<td class="xl70">27.07%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">Java</td>
<td class="xl65">75</td>
<td class="xl70">27.65%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">Graphics</td>
<td class="xl65">106</td>
<td class="xl70">29.13%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">XHTML</td>
<td class="xl65">163</td>
<td class="xl70">29.31%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">SQL</td>
<td class="xl65">112</td>
<td class="xl70">29.89%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">XML</td>
<td class="xl65">111</td>
<td class="xl70">30.28%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">PHP/IIS/MS SQL</td>
<td class="xl65">114</td>
<td class="xl70">30.31%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">JavaScript</td>
<td class="xl65">339</td>
<td class="xl70">30.90%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">SEO</td>
<td class="xl65">201</td>
<td class="xl70">30.97%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">MySQL</td>
<td class="xl65">658</td>
<td class="xl70">31.65%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">PHP</td>
<td class="xl65">731</td>
<td class="xl70">33.84%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">English</td>
<td class="xl65">109</td>
<td class="xl70">34.99%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">Flash</td>
<td class="xl65">257</td>
<td class="xl70">35.86%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">Writer</td>
<td class="xl65">101</td>
<td class="xl70">36.36%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">Joomla</td>
<td class="xl65">236</td>
<td class="xl70">37.11%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">Drupal</td>
<td class="xl65">117</td>
<td class="xl70">37.75%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">Data Entry</td>
<td class="xl65">120</td>
<td class="xl70">37.95%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">html</td>
<td class="xl65">237</td>
<td class="xl70">38.16%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">WordPress</td>
<td class="xl65">197</td>
<td class="xl70">39.36%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">Photoshop</td>
<td class="xl65">285</td>
<td class="xl70">39.61%</td>
</tr>
<tr height="20">
<td class="xl69" height="20">CSS</td>
<td class="xl65">150</td>
<td class="xl70">42.71%</td>
</tr>
<tr height="21">
<td class="xl71" height="21">Excel</td>
<td class="xl72">106</td>
<td class="xl73">48.31%</td>
</tr>
</tbody>
</table>
<p><a title="oDesk fill ratio" href="http://www.odesk.com/blog/2009/07/stay-employed-todays-jobs-with-the-least-competition-and-greatest-opportunity/" onclick="window.location='http://nexus.zteo.com/wp-content/plugins/wordpress-toolbar/toolbar.php?wp-toolbar-tourl=http://www.odesk.com/blog/2009/07/stay-employed-todays-jobs-with-the-least-competition-and-greatest-opportunity/&wp-toolbar-fromurl=http://nexus.zteo.com/2009/08/15/job-opportunities-v-competencies-focus-on-these/&wp-toolbar-fromtitle=Job opportunities v competencies: focus on these?&wp-toolbar-blogurl=http://nexus.zteo.com&wp-toolbar-blogtitle=The Nexus';return false;" >Source</a><strong>Similar Posts:</strong>
<ul class="similar-posts">
<li><a href="http://nexus.zteo.com/2009/10/19/help-blog-editors-reliably-discover-your-api/" rel="bookmark" title="October 19, 2009">Help Blog Editors Reliably Discover Your API</a></li>
<li><a href="http://nexus.zteo.com/2007/07/01/flv-player/" rel="bookmark" title="July 1, 2007">Flv Player</a></li>
<li><a href="http://nexus.zteo.com/2008/06/29/job-openings/" rel="bookmark" title="June 29, 2008">Job Openings</a></li>
<li><a href="http://nexus.zteo.com/2008/11/15/four-top-wordpress-code-highlighters-reviewed/" rel="bookmark" title="November 15, 2008">Four Top Wordpress Code Highlighters Reviewed</a></li>
<li><a href="http://nexus.zteo.com/2008/12/11/flex-render-your-tree-nodes-with-a-line-through/" rel="bookmark" title="December 11, 2008">Flex: Render your tree nodes with a line through</a></li>
</ul>
<p><!-- Similar Posts took 8.889 ms --></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheNexus?a=0NZcsu_PIP8:KdA_lFwe1M4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=0NZcsu_PIP8:KdA_lFwe1M4:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=0NZcsu_PIP8:KdA_lFwe1M4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/TheNexus?i=0NZcsu_PIP8:KdA_lFwe1M4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheNexus?a=0NZcsu_PIP8:KdA_lFwe1M4:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/TheNexus?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheNexus/~4/0NZcsu_PIP8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://nexus.zteo.com/2009/08/15/job-opportunities-v-competencies-focus-on-these/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://nexus.zteo.com/2009/08/15/job-opportunities-v-competencies-focus-on-these/</feedburner:origLink></item>
	</channel>
</rss>
