<?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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>The Developer Dude</title> <link>http://garrows.com</link> <description>Glen Arrowsmith's Projects, Tutorials, Blog and Rants.</description> <lastBuildDate>Mon, 12 Sep 2011 14:30:34 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.2.1</generator> <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/TheDeveloperDude" /><feedburner:info uri="thedeveloperdude" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>TheDeveloperDude</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item><title>Node.js Compile &amp; Run Script for Windows</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/QkQ0gK95OC4/</link> <comments>http://garrows.com/?p=451#comments</comments> <pubDate>Mon, 12 Sep 2011 14:30:10 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=451</guid> <description><![CDATA[When developing on node.js, I find that I do this routine a lot: Make code change Kill/restart node.js process Reload browser Instead of switching between 3 windows, I decided to make a batch script (.bat) to do this for me. As an added extra, it also concatinates separate javascript files too. c: cd C:\yourworkingdirectory\ taskkill [...]]]></description> <content:encoded><![CDATA[<p>When developing on node.js, I find that I do this routine a lot:</p><ol><li>Make code change</li><li>Kill/restart node.js process</li><li>Reload browser</li></ol><div>Instead of switching between 3 windows, I decided to make a batch script (.bat) to do this for me. As an added extra, it also concatinates separate javascript files too.</div><p><code><br
/> c:<br
/> cd C:\yourworkingdirectory\<br
/> taskkill /IM node.exe /F<br
/> taskkill /IM firefox.exe /F<br
/> rm server.js<br
/> type globals.js game.js nodeserver.js &gt; server.js<br
/> start "" "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" "http://localhost/"<br
/> node server.js</code></p><p>&nbsp;</p><p>&nbsp;</p><p>P.S. Yes, sometimes I do develop in windows. Until AAA games are developed for linux I will continue occasionally.</p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/QkQ0gK95OC4" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=451</wfw:commentRss> <slash:comments>2</slash:comments> <feedburner:origLink>http://garrows.com/?p=451</feedburner:origLink></item> <item><title>Install and Setup Node.js to Run Forever</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/JjkdsmY-kUs/</link> <comments>http://garrows.com/?p=441#comments</comments> <pubDate>Tue, 21 Jun 2011 02:25:29 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=441</guid> <description><![CDATA[Install Node.js $ sudo apt-get update $ sudo apt-get install git-core curl build-essential openssl libssl-dev $ git clone https://github.com/joyent/node.git &#38;&#38; cd node I had trouble using the latest (head) verson of node so I used an older version which is optional. git checkout origin/v0.4 If you don&#8217;t want the older version, skip the previous command. [...]]]></description> <content:encoded><![CDATA[<h3>Install Node.js</h3><p><code>$ sudo apt-get update<br
/> $ sudo apt-get install git-core curl build-essential openssl libssl-dev<br
/> $ git clone https://github.com/joyent/node.git &amp;&amp; cd node<br
/> </code><br
/> I had trouble using the latest (head) verson of node so I used an older version which is optional.<br
/> <code>git checkout origin/v0.4</code><br
/> If you don&#8217;t want the older version, skip the previous command.<br
/> <code><br
/> $ ./configure<br
/> $ make<br
/> $ sudo make install<br
/> $ node -v<br
/> </code></p><p>&nbsp;</p><h3>Install Node Package Manager (NPM)</h3><p><code>$ curl http://npmjs.org/install.sh | sudo sh<br
/> $ npm -v<br
/> </code></p><p>&nbsp;</p><h3>Install Forever</h3><p>Next, lets make it persistent using Forever, so once we logoff it still runs and will restart even if node throws an error.<br
/> <code><br
/> sudo npm install forever --global<br
/> </code></p><p>&nbsp;</p><h3>Make a Test Script</h3><p>Create a file called test.js and paste this into it.<br
/> <code><br
/> var util = require('util'),<br
/> http = require('http');</code></p><p><code> </code></p><p><code>http.createServer(function (req, res) {<br
/> res.writeHead(200, {'Content-Type': 'text/plain'});<br
/> res.write('hello, i know nodejitsu.')<br
/> res.end();<br
/> }).listen(8000);</code></p><p><code>/* server started */<br
/> util.puts('&gt; hello world running on port 8000');</code></p><p>&nbsp;</p><h3>Run it Forever (until you kill it)</h3><p><code>forever start test.js</code></p><p>You should be able to see it here<br
/> <code>ps axl | grep node</code><br
/> And here<br
/> <code>forever list</code><br
/> You can kill it using<br
/> <code>forever stop 0</code><br
/> Where 0 is the index of your code in the forever list.</p><p>Time to start javascripting.</p><h3>References</h3><p>Installing Node Wiki <a
href="https://github.com/joyent/node/wiki/Installation">https://github.com/joyent/node/wiki/Installation</a></p><p>Installing Node.js and NPM on Ubuntu 11.04 <a
href="http://www.giantflyingsaucer.com/blog/?p=2775">http://www.giantflyingsaucer.com/blog/?p=2775</a></p><p>Keep A Node.js Server Up with Forever <a
href="http://blog.nodejitsu.com/keep-a-nodejs-server-up-with-forever">http://blog.nodejitsu.com/keep-a-nodejs-server-up-with-forever</a></p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/JjkdsmY-kUs" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=441</wfw:commentRss> <slash:comments>0</slash:comments> <feedburner:origLink>http://garrows.com/?p=441</feedburner:origLink></item> <item><title>Keyboard Shortcuts For Reddit</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/gamYxf-Cex0/</link> <comments>http://garrows.com/?p=422#comments</comments> <pubDate>Thu, 19 May 2011 10:40:01 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=422</guid> <description><![CDATA[Being a fan of Google Reader&#8217;s keyboard shortcuts, I decided to implement similar features in Reddit using a bookmarklet. All you have to do is create a new bookmark, paste the following into it, then when you are in Reddit, click the bookmark. javascript:var s=document.createElement("script"); s.type="text/javascript";document.body.appendChild(s); s.src="http://www.garrows.com/reddit.js"; void(0); The keys are: j : next k [...]]]></description> <content:encoded><![CDATA[<p>Being a fan of Google Reader&#8217;s keyboard shortcuts, I decided to implement similar features in <a
href="http://www.reddit.com">Reddit</a> using a bookmarklet.</p><p>All you have to do is create a new bookmark, paste the following into it, then when you are in Reddit, click the bookmark.</p><p><code><br
/> javascript:var s=document.createElement("script");<br
/> s.type="text/javascript";document.body.appendChild(s);<br
/> s.src="http://www.garrows.com/reddit.js";<br
/> void(0);<br
/> </code><br
/> The keys are:</p><ul><li>j : next</li><li>k : previous</li><li>v : view selected in foreground tab</li><li>o : open selected in background tab</li><li>u : upvote</li><li>d : downvote</li><li>c : comments</li><li>s : share post</li><li>a : save post</li><li>h : hide post</li><li>+ : increase bottom padding</li><li>- : decrease bottom padding</li></ul><p>As a bonus feature, once you reach the last item, it will automatically load more at the bottom of the page.</p><p>&nbsp;</p><p>Let me know what you think. Hopefully the wonderful developers at reddit will add this script to their standard page so you wont have to keep clicking the bookmarklet.</p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/gamYxf-Cex0" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=422</wfw:commentRss> <slash:comments>2</slash:comments> <feedburner:origLink>http://garrows.com/?p=422</feedburner:origLink></item> <item><title>How to Migrate a Web Server Running Apache, MySQL, WordPress and Drupal</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/8c84Q40Zlz4/</link> <comments>http://garrows.com/?p=377#comments</comments> <pubDate>Thu, 30 Dec 2010 00:14:38 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=377</guid> <description><![CDATA[Well folks its time that my old home hosted server is retired. Which means I have to migrate all of my 5 websites to a new server. Thanks to the way apache, MySQL WordPress and Drupal work, its easy. 1. Copy Apache Config Files # ssh username@oldserver # scp /etc/apache2/sites-available/ user@newserver:/etc/apache2/sites-available/ This will copy all [...]]]></description> <content:encoded><![CDATA[<p>Well folks its time that my old home hosted server is retired. Which means I have to migrate all of my 5 websites to a new server. Thanks to the way apache, MySQL WordPress and Drupal work, its easy.</p><h3>1. Copy Apache Config Files</h3><p><code># ssh username@oldserver</code></p><p><code># scp /etc/apache2/sites-available/ user@newserver:/etc/apache2/sites-available/</code></p><p>This will copy all the apache config files over to the new server. Now enable all the sites you copied by creating a symbolic link for each .config file you copied in sites-enabled.</p><p><code># ln -s /etc/apache2/sites-available/yourwebsite.com.conf /etc/apache2/sites-enabled/yourwebsite.com.conf</code></p><p>or use the command a2ensite which does the same thing for you</p><p><code># a2ensite yourwebsite.com</code></p><p>Restart apache for the changes to take effect.<br
/> <code># /etc/init.d/apache2 restart</code></p><h3>2. Copy Your Websites</h3><p><code># scp -r /var/www/ username@newserver:/var/www</code></p><p>Default WordPress and Drupal installs are just files and we have now copied them across. However all the content, comments etc are stored within MySQL so lets migrate that now.</p><h3>3. Migrate MySQL</h3><p>Start by being logged into the old server.</p><p><code># mysqldump --all-databases -u root -p &gt; backup.sql</code></p><p><code># scp backup.sql username@newserver:/home/username/</code></p><p><code># ssh username@newserver</code></p><p><code># mysql -u root -p &lt; backup.sql</code></p><p>What we did here was use mysqldump to script every database and its contents into several sql commands. Then we copied them to the new server and piped them into the new sql server. All our databases, users and table contents have been imported. Magic.</p><h3>4. DNS Migration</h3><p>Now all you need to do is reconfigure your DNS servers to point to the new IP address. Chances are your not hosting your own DNS server so you will have to update them using your provider’s web interface. A word of advice though, create a new entry like test.yourdomain.com and point it to the new server first to make sure everything works.</p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/8c84Q40Zlz4" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=377</wfw:commentRss> <slash:comments>2</slash:comments> <feedburner:origLink>http://garrows.com/?p=377</feedburner:origLink></item> <item><title>Update Dell Streak To Froyo Officially and Easily (without chewing up your 3G data)</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/tF-cbu69HnM/</link> <comments>http://garrows.com/?p=384#comments</comments> <pubDate>Mon, 22 Nov 2010 22:40:20 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=384</guid> <description><![CDATA[EDIT: There are some newer versions as of 30th November 2010 for more baseband numbers. GAUSB1A111800: Streak_318_12821_00.pkg GAUSB1A120900: Streak_318_12821_00.pkg GAUSB1A121100: Streak_318_12821_00.pkg GAUSB1A120621: Streak_319_12792_21.pkg GAUSB1A120821: Streak_319_12792_21.pkg GAUSB1A130112: Streak_324_0_12.pkg GAUSB1A131312: Streak_324_0_12.pkg Introduction The long awaited Android 2.2 (Froyo) update from Dell has officially been released. Since I don&#8217;t have wifi at work and I don&#8217;t want to [...]]]></description> <content:encoded><![CDATA[<h3>EDIT:</h3><p>There are some newer versions as of 30th November 2010 for more baseband numbers.<br
/> GAUSB1A111800: <a
href="http://mobileupdate.dell.com/PackageProductionLocations/Streak_318_12821_00.pkg">Streak_318_12821_00.pkg</a><br
/> GAUSB1A120900: <a
href="http://mobileupdate.dell.com/PackageProductionLocations/Streak_318_12821_00.pkg">Streak_318_12821_00.pkg</a><br
/> GAUSB1A121100: <a
href="http://mobileupdate.dell.com/PackageProductionLocations/Streak_318_12821_00.pkg">Streak_318_12821_00.pkg</a><br
/> GAUSB1A120621: <a
href="http://mobileupdate.dell.com/PackageProductionLocations/Streak_319_12792_21.pkg">Streak_319_12792_21.pkg</a><br
/> GAUSB1A120821: <a
href="http://mobileupdate.dell.com/PackageProductionLocations/Streak_319_12792_21.pkg">Streak_319_12792_21.pkg</a><br
/> GAUSB1A130112: <a
href="http://mobileupdate.dell.com/PackageProductionLocations/Streak_324_0_12.pkg">Streak_324_0_12.pkg</a><br
/> GAUSB1A131312: <a
href="http://mobileupdate.dell.com/PackageProductionLocations/Streak_324_0_12.pkg">Streak_324_0_12.pkg</a></p><h3>Introduction</h3><p>The long awaited Android 2.2 (Froyo) update from Dell has officially been released. Since I don&#8217;t have wifi at work and I don&#8217;t want to download 150MB over 3G I decided to do some reverse engineering upgrade pain free. I&#8217;m also heading out of town this afternoon so I couldn&#8217;t just wait until I got home.</p><h3>My Specs</h3><p>OEM Version: GAUSB1A111800</p><p>Current OS Version: 1.6</p><p>Carrier: Optus (Australia)</p><p>Unrooted. Unlocked (by default).</p><h3>Warning</h3><p>This update only works if your OEM Version ends in 00.</p><h3>Procedure</h3><p>0. BACKUP. Dell provides a nice program called &#8216;Backup &amp; Restore&#8217; in the Android market. Install and create backup.</p><p>1. Download the pkg file from <a
href="http://mobileupdate.dell.com/PackageProductionLocations/Streak_315_12332_00.pkg">http://mobileupdate.dell.com/PackageProductionLocations/Streak_315_12332_00.pkg </a> on your pc or android. I used my pc and would probably recommend you to also to minimize chances of download corruption. When installing, it reveals itself as being built on 5 Nov 2010 at 1:16:55.</p><p>2. Copy it to your sdcard.</p><p>3. Rename it to Update.pkg</p><p>4. Turn off your phone.</p><p>5. Hold down the volume up, volume down and power button together until it turns on.</p><p>6. Select option 2 &#8216;Software upgrade via Update.pkg on SD Card&#8217; by using your volume buttons and select with the shutter button.</p><p>7. Think, did you remember to backup?</p><p>8. Press the shutter button to begin.</p><p>9. Go get a cup of coffee because the install takes about 5mins.</p><p>10. Rejoice! If nothing went wrong, you should have booted up into Froyo.</p><h3>Problems?</h3><p>There have been a lot of reported problems with the build however I have been pretty lucky with this.</p><p>Originally, my standard browser wouldn&#8217;t load anything but every other application (opera, maps) would. I fixed this by removing a mystery proxy server that was in my APN settings.</p><p>If you have troubles with the newer build, you could try this older one <a
rel="nofollow" href="http://mobileupdate.dell.com/PackageProductionLocations/Streak_309_0_00.pkg">http://mobileupdate.dell.com/PackageProductionLocations/Streak_309_0_00.pkg</a> which worked for me originally.</p><p>Also, if you are finding it slow and laggy (which I&#8217;m not) you can try following these instructions <a
href="http://forum.xda-developers.com/showthread.php?t=848487">http://forum.xda-developers.com/showthread.php?t=848487</a> but I haven&#8217;t tested this yet.</p><p>Let me know if anyone has any other problems.</p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/tF-cbu69HnM" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=384</wfw:commentRss> <slash:comments>41</slash:comments> <feedburner:origLink>http://garrows.com/?p=384</feedburner:origLink></item> <item><title>How To Setup and Test Node.js, CouchDB and MongoDB</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/qlhroZzLPP0/</link> <comments>http://garrows.com/?p=365#comments</comments> <pubDate>Thu, 14 Oct 2010 05:57:38 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=365</guid> <description><![CDATA[Introduction A project using a combination of Node.js and CouchDB can solve some pretty difficult problems with ease. Since originally writing this, I decided to use MongoDB instead of CouchDB and have now added in the instructions. I am attempting to solve one that involves consolidating several conflicting data sources into one document orientated database [...]]]></description> <content:encoded><![CDATA[<h2>Introduction</h2><p>A project using a combination of <a
href="http://nodejs.org">Node.js</a> and <a
href="http://couchdb.apache.org">CouchDB</a> can solve some pretty difficult problems with ease. Since originally writing this, I decided to use <a
href="http://www.mongodb.org/">MongoDB </a>instead of CouchDB and have now added in the instructions. I am attempting to solve one that involves consolidating several conflicting data sources into one document orientated database while providing a web interface for reading and writing.</p><h2>Article Scope</h2><p>This article will detail how I setup Node.js, CouchDB and MongoDB on Ubuntu Server Edition and preformed a few experiments with the system. The scope of this article does not include how you should do it or go into any detail as to how you could do it. It will only detail how to replicate what I did.</p><h2>Server Setup</h2><p>Download and install <a
href="http://vmware.com/download/player/">VMware Player</a>. I installed it on Windows 7.</p><p>Download <a
href="http://www.ubuntu.com/server/get-ubuntu/download">Ubuntu Server Edition</a> iso. I got version 10.10.</p><p>Create a new virtual machine on VMware player but do not start the install already. Simply select the &#8220;I will install the operation system later&#8221; option since we don&#8217;t want VMware to configure our install for us. I gave the installation a 10GB hard drive and 128MB of memory.</p><p>Start the virtual machine and mount the ubuntu ISO to the cd drive and install it. When asked what software to install I selected LAMP, OpenSSH, PostgreSQL, Samba and Tomcat Java Servers.</p><h2>Install CouchDB, MongoDB &amp; Node.js</h2><p>CouchDB is easy to install since ubuntu has added it to their software repositories.</p><p><code>sudo apt-get install couchdb</code></p><p>MongoDB is just as easy</p><p><code>sudo apt-get install mongodb</code></p><p>Node.js is a bit trickier. The easiest way it to get it from the git repository. First install git if you haven&#8217;t already got it.</p><p><code>sudo apt-get install git</code></p><p>Then get the node.js source from git.</p><p><code>git clone git://github.com/ry/node.git</code></p><p><code>cd node</code></p><p><code> </code></p><p><code>./configure</code></p><p>The configure script told me I was missing g++ and openssl. The openssl one was a bit tricky since I needed openssl, libssl-dev and pkg-config installed.</p><p><code>sudo apt-get install g++</code></p><p><code>sudo apt-get install openssl</code></p><p><code>sudo apt-get install libssl-dev</code></p><p><code> </code></p><p><code>sudo apt-get install pkg-config</code></p><p>When you make ./configure happy, its time to make.</p><p><code>make</code></p><p>Now make a coffee because it takes a little while to compile.</p><p><code>sudo make install</code></p><p>One more thing, felixge has created &#8220;a thin node.js idiom based module for CouchDB&#8217;s REST API that tries to stay close to the metal&#8221;. Lets make life easier and install that.</p><p><code>cd ~/node</code></p><p><code>git clone git://github.com/felixge/node-couchdb.git</code></p><p><code>cd /usr/local/lib/node</code></p><p><code> </code></p><p><code>sudo ln -s ~/node/node-couchdb couchdb</code></p><p>If everything worked correctly, we now have CouchDB and Node.js installed along with the node-couchdb library.</p><h2>Tests Node.js</h2><p>Lets check that the installs worked. The command node will take you to its console. Try these commands.</p><p><code>var sys = require('sys');</code></p><p><code> </code></p><p><code>sys.puts('hello world');</code></p><p>This should simply print &#8216;hello world&#8217;. Pretty easy. Now lets make sure that the node-couchdb library works.</p><p><code>couchdb = require('couchdb');</code></p><p>This should print out some JSON if everything works.</p><h2>Test CouchDB</h2><p>CouchDB is a RESTful so to test CouchDB, we need a web browser. Installed lynx which is a command line web browser.</p><p><code>sudo apt-get install lynx</code></p><p>Now navigate to the default CouchDB page.</p><p><code>lynx http://localhost:5984/</code></p><p>It should simply display welcome and the version number in JSON.</p><h2>Test MongoDB</h2><p>MongoDB has a nice console so lets use that.</p><p><code>mongo<br
/> db.foo.save( { test : 'hello world' } )<br
/> db.foo.find()</code></p><p>This should print out something along the lines of { &#8220;_id&#8221; : ObjectId(&#8220;4cb82f963af8744e5572e430&#8243;), &#8220;test&#8221; : &#8220;hello world&#8221; }</p><h2>Simple Website</h2><p>Create a file called example.js and put the following example from node.js into it:<br
/> <code>var http = require('http');<br
/> http.createServer(function (req, res) {<br
/> res.writeHead(200, {'Content-Type': 'text/plain'});<br
/> res.end('Hello World\n');<br
/> }).listen(8000, "");<br
/> console.log('Server running at publicly on port 8000');</code></p><p>Now start the server</p><p><code>node example.js</code></p><p>You can now navigate to http://locahost:8000 and it will write Hello World. Unless you didn&#8217;t install apache, you probably wont be able to bind to port 80.</p><p>Coming soon: Testing Node.js and CouchDB to its full potential.</p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/qlhroZzLPP0" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=365</wfw:commentRss> <slash:comments>6</slash:comments> <feedburner:origLink>http://garrows.com/?p=365</feedburner:origLink></item> <item><title>Make Google App Engine Development Server Serve Publicly</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/sc5YOyHPNRY/</link> <comments>http://garrows.com/?p=362#comments</comments> <pubDate>Thu, 07 Oct 2010 01:41:49 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=362</guid> <description><![CDATA[Ever wanted to quickly test that Google App Engine site on another computer without deploying but couldn&#8217;t because it only accepts localhost connections? Well it&#8217;s quite simple actually. If you are using the command line add this argument to the end. --address= If you are using the windows launcher, select the application, click Edit &#62; [...]]]></description> <content:encoded><![CDATA[<p>Ever wanted to quickly test that Google App Engine site on another computer without deploying but couldn&#8217;t because it only accepts localhost connections? Well it&#8217;s quite simple actually.</p><p>If you are using the command line add this argument to the end.<br
/> <code>--address=</code></p><p>If you are using the windows launcher, select the application, click Edit &gt; Application Settings&#8230;  then in the &#8216;Extra command line flags&#8217; section, add in<br
/> <code>--address=</code></p><p>This works because by default, the address arguement is &#8216;localhost&#8217; which will restrict the server. However, leaving it blank will allow any host to connect to it.</p><p>You could even set up port forwarding on your router to allow anyone to connect if you dare.</p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/sc5YOyHPNRY" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=362</wfw:commentRss> <slash:comments>3</slash:comments> <feedburner:origLink>http://garrows.com/?p=362</feedburner:origLink></item> <item><title>Google Opens Phone Gallery</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/k_XDrFYDDJ4/</link> <comments>http://garrows.com/?p=350#comments</comments> <pubDate>Thu, 30 Sep 2010 03:57:03 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=350</guid> <description><![CDATA[A new service has just opened from Google called the Google Phone Gallery http://www.google.com/phone/ Features Include: Detailed technical specifications Available operators Side-by-side comparisons &#8216;Buy from&#8217; links Sort by newest Group by country Group by manufacturers Group by operators Damn, I was hoping that I got the scoop on something. I was a couple of minutes [...]]]></description> <content:encoded><![CDATA[<div>A new service has just opened from Google called the Google Phone Gallery <a
href="http://www.google.com/phone/" target="_blank">http://www.google.com/phone/</a></div><p></p><div>Features Include:</div><ul><li>Detailed technical specifications</li><li>Available operators</li><li>Side-by-side comparisons</li><li>&#8216;Buy from&#8217; links</li><li>Sort by newest</li><li>Group by country</li><li>Group by manufacturers</li><li>Group by operators</li></ul><p>Damn, I was hoping that I got the scoop on something. I was a couple of minutes late <img
src='http://garrows.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /></p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/k_XDrFYDDJ4" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=350</wfw:commentRss> <slash:comments>1</slash:comments> <feedburner:origLink>http://garrows.com/?p=350</feedburner:origLink></item> <item><title>Why I’m Excited About the New Arduino</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/LwrHzNwJc9o/</link> <comments>http://garrows.com/?p=345#comments</comments> <pubDate>Mon, 27 Sep 2010 00:07:31 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=345</guid> <description><![CDATA[Most would expect a newer version to have a faster processor, more memory and stuff like that. Although, there is one thing that makes me particularly excited&#8230; the new USB chip. Why? We replaced the aging FTDI chipset with a custom made usb-serial converter built with an Atmel ATmega8U2 this provides lower latency and &#60;snip&#62; [...]]]></description> <content:encoded><![CDATA[<p><img
class="alignright" title="Arduino Uni" src="http://arduino.cc/blog/wp-content/uploads/2010/09/uno-retro-300x184.png" alt="Arduino Uni" width="126" height="77" />Most would expect a newer version to have a faster processor, more memory and stuff like that. Although, there is one thing that makes me particularly excited&#8230; the new USB chip. Why?</p><blockquote><p>We replaced the aging FTDI chipset with a custom made usb-serial converter built with an Atmel ATmega8U2 this provides lower latency and &lt;snip&gt; users will be able to reprogram the USB chip to make the board show up as a variety of USB devices (Keyboards, Mice, Joysticks, MIDI etc).</p></blockquote><p>So why is this so exciting? This opens up a whole new world for Arduino developers who can finally make retail quality PC devices using the standard board without having to spend thousands of dollars as they have before.</p><p>Expect an explosion of creative devices in the coming months!</p><p>Source: <a
href="http://arduino.cc/blog/2010/09/24/dinner-is-ready/">http://arduino.cc/blog/2010/09/24/dinner-is-ready/</a></p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/LwrHzNwJc9o" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=345</wfw:commentRss> <slash:comments>0</slash:comments> <feedburner:origLink>http://garrows.com/?p=345</feedburner:origLink></item> <item><title>Disable Mobile Browser Zoom Function</title><link>http://feedproxy.google.com/~r/TheDeveloperDude/~3/QUf8EPlAMCg/</link> <comments>http://garrows.com/?p=337#comments</comments> <pubDate>Wed, 16 Jun 2010 10:24:01 +0000</pubDate> <dc:creator>Glen Arrowsmith</dc:creator> <category><![CDATA[Uncategorized]]></category><guid isPermaLink="false">http://garrows.com/?p=337</guid> <description><![CDATA[After lots of searching, I struggled to figure out how to disable mobile browsers (i.e. Android/iPhone browsers) zoom function so I thought I would share it since its important for developing games and more advanced mobile sites. I can confirm that the following works on the Android and iPhone browser. Unfortunately though it does not work [...]]]></description> <content:encoded><![CDATA[<p>After lots of searching, I struggled to figure out how to disable mobile browsers (i.e. Android/iPhone browsers) zoom function so I thought I would share it since its important for developing games and more advanced mobile sites.<br
/> I can confirm that the following works on the Android and iPhone browser. Unfortunately though it does not work on HTC&#8217;s custom browser that they have put on most of their Android devices. I have contacted them about this and they informed me that it is impossible. Not happy HTC.</p><p><code><br
/> &lt;meta content='True' name='HandheldFriendly' /&gt;<br
/> &lt;meta content='width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;' name='viewport' /&gt;<br
/> &lt;meta name="viewport" content="width=device-width" /&gt;<br
/> </code></p> <img src="http://feeds.feedburner.com/~r/TheDeveloperDude/~4/QUf8EPlAMCg" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://garrows.com/?feed=rss2&amp;p=337</wfw:commentRss> <slash:comments>23</slash:comments> <feedburner:origLink>http://garrows.com/?p=337</feedburner:origLink></item> </channel> </rss><!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: basic

Served from: garrows.com @ 2012-05-11 13:16:14 -->

