<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Gen X Design &#124; Ian Selby &#187; General</title>
	<atom:link href="http://www.gen-x-design.com/categories/general/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.gen-x-design.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Fri, 15 Jan 2010 21:41:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>More On Cloud Computing For PHP Developers</title>
		<link>http://www.gen-x-design.com/archives/more-on-cloud-computing-for-php-developers/</link>
		<comments>http://www.gen-x-design.com/archives/more-on-cloud-computing-for-php-developers/#comments</comments>
		<pubDate>Fri, 15 Jan 2010 16:40:13 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/?p=341</guid>
		<description><![CDATA[A while back, I wrote an article on the importance of cloud computing.  A few people posted some good comments and feedback, but last night I got such a long and well thought out comment that I thought it deserved it&#8217;s own post.  So, without further adieu, here are the thoughts of Daniel [...]]]></description>
			<content:encoded><![CDATA[<p>A while back, I wrote an <a href="http://www.gen-x-design.com/archives/the-importance-of-cloud-computing-for-php-developers/">article</a> on the importance of cloud computing.  A few people posted some good comments and feedback, but last night I got such a long and well thought out comment that I thought it deserved it&#8217;s own post.  So, without further adieu, here are the thoughts of Daniel Kadosh.<br />
<span id="more-341"></span><br />
Sharing my experience with a PHP app on EC2, which receives thousands of XMLs daily, parses them into a database, and has a web GUI to produce reports and graphs.</p>
<h2>If you have a simple website, why go Cloud?</h2>
<p>If you have a single-server setup and don&#8217;t want/need all the scalability you should at least price out a cloud provider. To me, having FULL backups being a no-brainer (Amazon can take filesystem snapshots in under 3 seconds), and being able launch a new server &#8212; in case the current one dies &#8212; within 3-15 minutes (my experience) are the biggest benefits. How long would that take with a dedicated hosting provider while your customer(s) are yelling at you on the phone?  And restoring a dump, tar, rsync or mysql dump once your new server is up?</p>
<p>There are 2 key tools I use to manage my servers on Amazon.<br />
ElasticFox:<br />
You&#8217;ll want the ElasticFox  plugin for Firefox to help you see and control stuff on Amazon, as it&#8217;s a bit better than the AWS GUI &#8212; for most things. Also overlaps in basic functionality with RightScale (below), but is more real-time.<br />
RightScale:<br />
To help with ALL sysadmin stuff, you can get and use for production a free &#8220;developer&#8221; account with RightScale, which puts together Linux images and has all sorts of startup scripts for common LAMP setups, great wikis, the works. It&#8217;s 3/4 of the way between &#8220;install Linux yourself&#8221; and cPanel-based shared hosting systems.  They support Amazon, GoGrid and I think Rackspace too.</p>
<h2>Why Amazon?</h2>
<p>In my research, Amazon still remains, BY FAR, the most advanced (in features) IaaS cloud provider. Couple it with RightScale and you get pretty much all the automation you need, including logging, alerts, auto-scaling (spin-up or down servers based on load), etc.  Amazon keeps on adding features, seemingly on a monthly basis, and they very much listen to what customers want.  They recently added &#8220;huge&#8221; servers with up to 64GB of RAM and 8 CPUs, and the ability to hold your root partition on non-volatile storage (used to be that once you shut down your machine, you lost the contents of root &#8212; not a big deal to work around anyways, since my data is on persistent EBS disk volumes).</p>
<p>One of my requirements was to be able to host things in Europe, to address EU privacy legal issues &#8212; &#8220;EU data must be hosted in the EU&#8221; &#8212; so Amazon is one of the few (only?) cloud providers that has a datacenter there.<br />
I was also concerned about disaster recovery, and Amazon seems to have more geographically-disperse datacenters than others. Couple that with their S3 storage redundancy and available from anywhere, and you&#8217;re covered.</p>
<h2>Re-think your architecture in a cloud:</h2>
<p>Just from scaling purposes, you need your applications to be able to recover/redirect things appropriately when adding or removing a database or web server from your deployments. The same can be said to address high-availability or disaster recovery. I had to re-think many assumptions about a given server being up, or even at the same IP address, so can&#8217;t hard-code these things. There are &#8220;always available&#8221; services that a cloud provider gives you to store these settings &#8212; Amazon has SimpleDB, or their storage service S3, both of which are highly redundant &amp; available.</p>
<p>Scale horizontally (add more servers), not vertically (add more RAM/CPU) is the key mantra in cloud computing. It&#8217;s a different mindset to have in architecting your application. You can, and sometimes should, take it to the extreme of making each server do just 1 thing, particularly if you have to process a lot of data. The typical example of this is a website that allows users to upload video, which has to be down-scaled and put into a database or better yet into the cloud storage service (like Amazon S3). So you&#8217;d have a queue system (see Amazon SQS for a solution) that has your front-end web server put the raw video in the queue, sends a message to the processing server, which all it ever does is &#8220;check queue, process item if found, repeat&#8221;.</p>
<p>Yes, there are some quirks to work around in cloud providers, but they&#8217;re worth it for me if nothing else for peace of mind. I wish I could have &gt;1 IP address per server on Amazon.</p>
<p><strong>About the Author</strong><br />
As I said, this post is actually a comment contributed by Daniel Kadosh. Daniel works for Affinegy, Inc., a software company in Austin, TX<br />
<a href="http://www.affinegy.com" target="_blank">http://www.affinegy.com</a></p>
<p><em>What are your thoughts?  If you&#8217;ve got an opinion, share it, and I may even give it the same attention I did for Daniel <img src='http://www.gen-x-design.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/more-on-cloud-computing-for-php-developers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>I&#8217;m Not Dead, I&#8217;m Just Out of Ideas (For Now)</title>
		<link>http://www.gen-x-design.com/archives/im-not-dead-im-just-out-of-ideas-for-now/</link>
		<comments>http://www.gen-x-design.com/archives/im-not-dead-im-just-out-of-ideas-for-now/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 20:19:39 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/?p=327</guid>
		<description><![CDATA[Just wanted to write a quick post to let everyone know I haven&#8217;t lost interest in writing or fallen off the face of the planet&#8230; I&#8217;ve just been incredibly busy with other things.  Also, frankly, I can&#8217;t think of anything compelling to write about.  I used to think it was important to try [...]]]></description>
			<content:encoded><![CDATA[<p>Just wanted to write a quick post to let everyone know I haven&#8217;t lost interest in writing or fallen off the face of the planet&#8230; I&#8217;ve just been incredibly busy with other things.  Also, frankly, I can&#8217;t think of anything compelling to write about.  I used to think it was important to try and get articles up at some set frequency, but I find that the quality of my stuff falls short if I&#8217;m forcing myself to do so.  Anyway, I&#8217;m basically now of the mind that I&#8217;ll write about stuff whenever I come up with something&#8230; could be twice a week, could be once in three months.  Part of my major hang-up is that I don&#8217;t like to write articles that cover topics that have been thoroughly covered elsewhere, unless I&#8217;ve got something new to add to the mix.</p>
<p>Now, all that being said, I&#8217;m more than happy to take suggestions from anyone if they&#8217;ve got them.  If there&#8217;s something you&#8217;d like to know more about, or you just have a cool idea for an article, drop me a line in the comments.  Otherwise, stay tuned for new stuff whenever I think of it <img src='http://www.gen-x-design.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />   Also, you can always follow me on twitter, or subscribe to my RSS feed as I post various interesting links and randomness in both places.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/im-not-dead-im-just-out-of-ideas-for-now/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Beautiful Indie Game Trailer</title>
		<link>http://www.gen-x-design.com/archives/beautiful-indie-game-trailer/</link>
		<comments>http://www.gen-x-design.com/archives/beautiful-indie-game-trailer/#comments</comments>
		<pubDate>Fri, 23 Jan 2009 18:09:11 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Off Topic]]></category>
		<category><![CDATA[indie games]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/?p=216</guid>
		<description><![CDATA[I know this doesn&#8217;t really fit into the general theme of this site, but I thought this was really cool and wanted to share it anyway.  Not much else to say, so enjoy!


Blueberry Garden (sneak peak trailer) from Erik Svedäng on Vimeo.

]]></description>
			<content:encoded><![CDATA[<p>I know this doesn&#8217;t really fit into the general theme of this site, but I thought this was really cool and wanted to share it anyway.  Not much else to say, so enjoy!</p>
<div align="center" style="margin-top: 10px;">
<object width="504" height="404"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=947190&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=947190&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="504" height="404"></embed></object></p>
<p><a href="http://vimeo.com/">Blueberry Garden (sneak peak trailer)</a> from <a href="http://vimeo.com/eriksvedang">Erik Svedäng</a> on <a href="http://vimeo.com">Vimeo</a>.
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/beautiful-indie-game-trailer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Workaround for Ubuntu 8.10 mouse bug</title>
		<link>http://www.gen-x-design.com/archives/workaround-for-ubuntu-810-mouse-bug/</link>
		<comments>http://www.gen-x-design.com/archives/workaround-for-ubuntu-810-mouse-bug/#comments</comments>
		<pubDate>Tue, 20 Jan 2009 22:41:41 +0000</pubDate>
		<dc:creator>Davey</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[mouse]]></category>
		<category><![CDATA[nvidia]]></category>
		<category><![CDATA[xinerama]]></category>
		<category><![CDATA[xorg]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/?p=179</guid>
		<description><![CDATA[Ubuntu 8.10 has a massive bug in the xorg window code at the moment. Originally reported in November when 8.10 shipped, the lack of action on this is kind of unusual for the generally excellent Linux community.
However I&#8217;ve worked out a minimally intrusive hacktastic workaround. What seems to be happening with this bug is sometimes [...]]]></description>
			<content:encoded><![CDATA[<p>Ubuntu 8.10 has a <a title="Launchpad Bug Report" href="https://bugs.launchpad.net/ubuntu/+bug/296167">massive bug</a> in the xorg window code at the moment. Originally reported in November when 8.10 shipped, the lack of action on this is kind of unusual for the generally excellent Linux community.</p>
<p>However I&#8217;ve worked out a minimally intrusive hacktastic workaround. <span id="more-179"></span>What seems to be happening with this bug is sometimes when X traffic is moving from one GPU to the other (this only affect multi video card setups) it causes the mouse hardware to get disconnected from the internal desktop model so X thinks the mouse is somewhere else and nothing works. The problem only affects configurations using &gt;2 monitors using  xinerama, the currently suggested fixes are either to downgrade to the Hardy version of Xorg, which has pretty poor xinerama performance or to follow a strange set of keyboard based window movements until the problem disappears.</p>
<p>My fix is to use some nifty Linux tools and a bit of Gnome fu to get the two to be in agreement again.</p>
<p>First you need to install xautomation,</p>
<blockquote><p><strong>Control X from the command line, and find things on the screen</strong><br />
Control X from the command line for scripts, and do &#8220;visual scraping&#8221; to<br />
find things on the screen. The control interface allows mouse movement,<br />
clicking, button up/down, key up/down, etc, and uses the XTest extension so<br />
you don&#8217;t have the annoying problems that xse has when apps ignore sent<br />
events. The visgrep program find images inside of images and reports the<br />
coordinates, allowing programs to find buttons, etc, on the screen to click<br />
on.</p></blockquote>
<p>The install as usual is trivial (gotta love dat package management)</p>
<pre>sudo apt-get install xautomation</pre>
<p>OK now you have xautomation, the command we are going to use will locate the mouse pointer at the origin (0,0) of the desktop, and doing this seems to re-align the mouse and X.</p>
<pre>xte "mousemove 0 0"</pre>
<p>really it&#8217;s that simple. [edit - well of not really, turns out some folks need to move the mouse onto the primary display and off again, just add a second mousemove line with co-ords for your second display]</p>
<p>So you could just type this into a terminal when the mouse borks and that would be good enough to repair, but who can really be bothered with all that malarkey, as this is happening to me every couple of hours, I dont want to be reminded how messed up my Ubuntu install is and have to  learn all the window navigation keystrokes needed to pop a terminal without a mouse, although with <a title="This is not QuickSilver!" href="http://do.davebsd.com/">Gnome-do</a> (the Gnome version of  quicksilver) it&#8217;s kinda easy.</p>
<p>so create a script to run the command.</p>
<pre>echo xte "mousemove 0 0" &gt; mm.sh
chmod 777 mm.sh</pre>
<p>Running the script will move the cursor as we want, so now we need to assign this to a hot-key. Gnome desktop doesn&#8217;t give you a particularly easy way to do this, so you have to run the Gnome Configuration Editor, which is sort of like a regedit for gnome apps.</p>
<pre>gconf-editor</pre>
<p>That will bring up the Gnome Configuration Editor, If you&#8217;ve ever messed with the Windows registry this will be reasonably familiar. To set up the hotkey we need to edit two entries, the first to register the script, the second to assign the hotkey.</p>
<p>Navigate to<strong> apps/metacity/keybinding_commands</strong> and enter the path to the mm.sh script we created earlier in one of the available slots. I&#8217;m using the command_1 slot, you can choose any of the 12 available slots.</p>
<div style="text-align: center; margin-top: 10px;"><img class="aligncenter size-full wp-image-191" src="http://www.gen-x-design.com/wp-content/uploads/2009/01/screenshot-configuration-editor-keybinding_commands.png" alt="screenshot-configuration-editor-keybinding_commands" width="523" height="339" /></div>
<p>Now navigate to <strong>apps/metacity/global_keybindings</strong> and set the matching  run_command key-binding to the value for the hotkey you want to run the script. The values for this are a string, and the tokens &lt;Control&gt; &lt;Shift&gt; &lt;Alt&gt; &lt;Super&gt; are used for the special combo keys. In my case I&#8217;m using &lt;Super&gt;M, which will be either the Window or the Command key depending on the keyboard your are using.</p>
<div style="text-align: center; margin-top: 10px;"><img class="aligncenter size-full wp-image-194" src="http://www.gen-x-design.com/wp-content/uploads/2009/01/screenshot-configuration-editor-global_keybindings.png" alt="screenshot-configuration-editor-global_keybindings" width="543" height="381" /></div>
<p>So if it all works according to plan, the script will be attached to the Super-M key combo, so if your mouse locks, pressing Super-M will repair the damage and let you carry on.</p>
<p>This will hopefully tide you over until the Xorg bug is fixed or nvidia release the forthcoming SLI support that will allow &gt;2 monitors to be used without having to use xinerama.</p>
<p>enjoy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/workaround-for-ubuntu-810-mouse-bug/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Quickie &#8211; Aptana 2009 Roadmap Survey</title>
		<link>http://www.gen-x-design.com/archives/quickie-aptana-2009-roadmap-survey/</link>
		<comments>http://www.gen-x-design.com/archives/quickie-aptana-2009-roadmap-survey/#comments</comments>
		<pubDate>Tue, 16 Dec 2008 22:56:34 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[Aptana]]></category>
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/?p=85</guid>
		<description><![CDATA[Just a quick post letting everyone know that we&#8217;re asking the developer community for their input on the Aptana Studio&#8230;. what do you like, what do you hate, and what do you want.  Per the survey page:
We want to make Aptana Studio better for YOU.
To do that, we need to understand what you do, [...]]]></description>
			<content:encoded><![CDATA[<p>Just a quick post letting everyone know that we&#8217;re asking the developer community for their input on the Aptana Studio&#8230;. what do you like, what do you hate, and what do you want.  Per the survey page:</p>
<blockquote><p>We want to make Aptana Studio better for YOU.</p>
<p>To do that, we need to understand what you do, how you work, what you like about Studio, and what drives you nuts. Whether you&#8217;re a regular Studio user or you&#8217;ve only tried it once or twice, we want to know what&#8217;s working for you and what&#8217;s not, what features you can&#8217;t find, and what features you can&#8217;t live without.</p>
<p>From now until January 10, you can help us determine our direction for the next year and beyond by taking a few minutes to give us your thoughts. </p></blockquote>
<p>Take a few minutes and share your thoughts:<br />
<a href="http://www.aptana.com/roadmap/2009/survey1" target="_blank">2009 Aptana User Survey</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/quickie-aptana-2009-roadmap-survey/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP Optimization and Scalability &#8211; Slides and Source</title>
		<link>http://www.gen-x-design.com/archives/php-optimization-and-scalability-slides-and-source/</link>
		<comments>http://www.gen-x-design.com/archives/php-optimization-and-scalability-slides-and-source/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 20:43:20 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/?p=71</guid>
		<description><![CDATA[I gave a talk for the San Jose PHP meetup last night on PHP scalability and optimization.  Everything from good code (and bad code) to infrastructure (including Cloud Hosting with Aptana) was covered.
If you have any questions, feel free to post them in the comments, I&#8217;ll respond to them as soon as I can!
Enjoy.
Source [...]]]></description>
			<content:encoded><![CDATA[<p>I gave a talk for the San Jose PHP meetup last night on PHP scalability and optimization.  Everything from good code (and bad code) to infrastructure (including <a href="http://www.aptana.com/cloud" target="_blank">Cloud Hosting with Aptana</a>) was covered.</p>
<p>If you have any questions, feel free to post them in the comments, I&#8217;ll respond to them as soon as I can!</p>
<p>Enjoy.</p>
<p><a href="http://www.gen-x-design.com/downloads/apc_demo.zip">Source Code</a></p>
<div style="width:425px;text-align:left" id="__ss_702265"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ianselby/scalability-in-php-presentation?type=powerpoint" title="Scalability In PHP">Scalability In PHP</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=scalability-in-php-1225297093113032-9&#038;stripped_title=scalability-in-php-presentation" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=scalability-in-php-1225297093113032-9&#038;stripped_title=scalability-in-php-presentation" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View SlideShare <a style="text-decoration:underline;" href="http://www.slideshare.net/ianselby/scalability-in-php-presentation?type=powerpoint" title="View Scalability In PHP on SlideShare">presentation</a> or <a style="text-decoration:underline;" href="http://www.slideshare.net/upload?type=powerpoint">Upload</a> your own. (tags: <a style="text-decoration:underline;" href="http://slideshare.net/tag/scalability">scalability</a> <a style="text-decoration:underline;" href="http://slideshare.net/tag/php">php</a>)</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/php-optimization-and-scalability-slides-and-source/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Server-Side JavaScript Talk Slides &amp; Source</title>
		<link>http://www.gen-x-design.com/archives/server-side-javascript-talk-slides-source/</link>
		<comments>http://www.gen-x-design.com/archives/server-side-javascript-talk-slides-source/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 20:38:12 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Jaxer]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/?p=67</guid>
		<description><![CDATA[It&#8217;s well overdue, but I&#8217;ve finally managed to get this stuff up.  Here are the slides from my presentation on Server-Side JavaScript, as well as the source code for the Jaxer REST API provider and consumers that I wrote.
I will do a post in the near future going over the code, and some of [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s well overdue, but I&#8217;ve finally managed to get this stuff up.  Here are the slides from my presentation on Server-Side JavaScript, as well as the source code for the Jaxer REST API provider and consumers that I wrote.</p>
<p>I will do a post in the near future going over the code, and some of the configuration tweaks that I made, but hopefully this will hold you over until then.</p>
<p><a href="http://www.gen-x-design.com/downloads/jaxer_rest_api.zip">Source Code</a></p>
<div style="width:425px;text-align:left" id="__ss_702151"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ianselby/serverside-javascript-presentation?type=powerpoint" title="Server-Side JavaScript">Server-Side JavaScript</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=ssjs-presentation-1225296059165368-8&#038;stripped_title=serverside-javascript-presentation" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=ssjs-presentation-1225296059165368-8&#038;stripped_title=serverside-javascript-presentation" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View SlideShare <a style="text-decoration:underline;" href="http://www.slideshare.net/ianselby/serverside-javascript-presentation?type=powerpoint" title="View Server-Side JavaScript on SlideShare">presentation</a> or <a style="text-decoration:underline;" href="http://www.slideshare.net/upload?type=powerpoint">Upload</a> your own. (tags: <a style="text-decoration:underline;" href="http://slideshare.net/tag/javascript">javascript</a> <a style="text-decoration:underline;" href="http://slideshare.net/tag/server">server</a>)</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/server-side-javascript-talk-slides-source/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Aptana Launches Cloud, Jaxer, and Studio 1.2</title>
		<link>http://www.gen-x-design.com/archives/aptana-launches-cloud-jaxer-and-studio-12/</link>
		<comments>http://www.gen-x-design.com/archives/aptana-launches-cloud-jaxer-and-studio-12/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 06:22:10 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/?p=61</guid>
		<description><![CDATA[So, if you&#8217;ve been following me for a while, you&#8217;ve probably noticed that I&#8217;ve seemingly dropped off the face of the planet.  Essentially, I did, but I&#8217;m back now with lots of good news.  We&#8217;ve been hard at work on a big-ass milestone for Aptana:  Three products launched&#8230; most notably our cloud [...]]]></description>
			<content:encoded><![CDATA[<p>So, if you&#8217;ve been following me for a while, you&#8217;ve probably noticed that I&#8217;ve seemingly dropped off the face of the planet.  Essentially, I did, but I&#8217;m back now with lots of good news.  We&#8217;ve been hard at work on a big-ass milestone for Aptana:  Three products launched&#8230; most notably our cloud initiative.</p>
<p>Here&#8217;s a quick run-down of each product:</p>
<ul>
<li><strong>Aptana Cloud</strong> &#8211; Aptana Cloud is the ultimate in ease and efficiency — a suite of online services integrated right into Aptana Studio 1.2 that puts the power of cloud computing to work for you. Streamline your deployment and development processes at costs far less than doing it yourself.<br />
<a href="http://www.aptana.com/cloud?video" target="_blank">Learn More</a>
</li>
<li><strong>Aptana Jaxer 1.0</strong> &#8211; We&#8217;re pleased to announce that Jaxer 1.0 is official!  Jaxer is the world&#8217;s first Ajax server, and an emerging server-side JavaScript solution built on the Mozilla Firefox 3 engine.  Best of all, we&#8217;ve also included it as a free option in our cloud offering.<br />
<a href="http://www.aptana.com/jaxer?video" target="_blank">Learn More</a>
</li>
<li><strong>Aptana Studio 1.2</strong> &#8211; Aptana Studio offers unprecedented support for Ajax combined with today&#8217;s popular Web platforms. Download Studio yourself or plug it into Eclipse to see for yourself.  We&#8217;ve also added great new support for PHP, Ruby on Rails, and Jaxer.<br />
<a href="http://www.aptana.com/studio?video" target="_blank">Learn More</a>
</li>
</ul>
<p>In addition to all this new goodness, I&#8217;m also working on some fresh new content.  Look for articles about building REST consumers and providers in Jaxer, load balancing queries using MySQL replication, progressive file uploads with APC, REST in PHP, and more.  Stay tuned, and check out all the cool stuff we&#8217;ve been working on over at Aptana while you wait!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/aptana-launches-cloud-jaxer-and-studio-12/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Server-Side JavaScript &#8211; All the Cool Kids Are Doing It!</title>
		<link>http://www.gen-x-design.com/archives/server-side-javascript-all-the-cool-kids-are-doing-it/</link>
		<comments>http://www.gen-x-design.com/archives/server-side-javascript-all-the-cool-kids-are-doing-it/#comments</comments>
		<pubDate>Fri, 06 Jun 2008 23:30:42 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Jaxer]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/?p=53</guid>
		<description><![CDATA[That&#8217;s right kids, I&#8217;m speaking at the 6th International AJAX World RIA Conference &#038; Expo!  I&#8217;ll be giving a session on server-side javascript, and how it will make your life better, your apps cooler, and your friends jealous!
Read the full entry for details on the session, but here&#8217;s a little introductory overview (for the [...]]]></description>
			<content:encoded><![CDATA[<p>That&#8217;s right kids, I&#8217;m speaking at the 6th International AJAX World RIA Conference &#038; Expo!  I&#8217;ll be giving a session on server-side javascript, and how it will make your life better, your apps cooler, and your friends jealous!</p>
<p>Read the full entry for details on the session, but here&#8217;s a little introductory overview (for the sake of not re-writing everything, I have just copied and pasted the announcement)&#8230;</p>
<blockquote><p>Server-side JavaScript (SSJS) is growing in popularity fast since developers realize it can drastically simplify Web app creation by letting you use using the same technology stack on both the client and the server. While server-side JavaScript is not new &#8211; it was a part of Netscape’s vision 10 years ago &#8211; times have significantly changed with 10x faster hardware and networks, making that original vision for the Web now a reality.</p>
<p>In this session delegates will learn how to:</p>
<ul>
<li>Overcome common hurdles and pitfalls of client-side only JavaScript development.</li>
<li>Speed up development time by cutting out extra server-side code and processing scripts that are no longer necessary.</li>
<li>Clean up your code base by reducing (or even eliminating) the number of languages needed to leverage to accomplish common tasks (i.e. Why bother with server-side PHP scripts to fetch database results when you can do it all in JavaScript on the server? Why mess with Curl to fetch content that your JavaScript code can grab in one line?)</li>
</ul>
</blockquote>
<p><span id="more-53"></span><br />
Selby will also get hands-on with a live demonstration of how to:</p>
<ul>
<li>Create JSON data services for your Ajax, Flash, Flex and Silverlight apps</li>
<li>Implement JavaScript RMI</li>
<li>Use your favorite Ajax libraries server-side.</li>
<li>Manipulate the DOM server-side</li>
<li>Talk to databases, file systems, networks, and remote sites or services (cross-domain XHRs are now a possibility!</li>
</ul>
<p>The session will show Web developers how they can put their JavaScript skills to work on the server side using technologies like Mozilla Rhino and <a href="http://www.aptana.com/jaxer" target="_blank">Aptana Jaxer</a>, which embeds the entire Mozilla browser on the server side.</p>
<h2>About AjaxWorld&#8230;</h2>
<p>AJAXWorld RIA Conference &#038; Expo 2008 West<br />
The days when AJAX is the only game in town are over, and the 6th International AJAXWorld RIA Conference &#038; Expo in San Jose, CA, on October 20-22, 2008 is your chance to come and see it and hear it for yourself.</p>
<p>Because it&#8217;s easy to misjudge priorities and invest in the wrong technology, AJAXWorld will help you invest in the right one for your particular business. It will help you find the optimal balance between business needs, technology potential, and enhanced user experience. AJAXWorld RIA Conference &#038; Expo 2008 West is where you can find what you&#8217;re going to need for business survival and Web success in 2008, 2009 and beyond.</p>
<p>AJAXWorld&#8217;s 80+ technical sessions, Keynotes, Power Panels and General Session Demos will help you determine which Rich Internet Technology will provide the most meaningful impact in your business, organization or service. The conference program aims to inform and inspire you toward the detailed implementation plan that you&#8217;re going to need in the next 12 months in your own initiative whether that&#8217;s SaaS, financial services, healthcare, enterprise portals, ISV applications, or whatever.</p>
<p>The Expo floor additionally will allow you to follow up on the premier solutions already available and to choose which best suits your needs.</p>
<p><a href="http://www.ajaxworld.com/" target="_blank">http://www.ajaxworld.com/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/server-side-javascript-all-the-cool-kids-are-doing-it/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Site / Life Overhaul &#8211; Good Things Coming Soon</title>
		<link>http://www.gen-x-design.com/archives/site-life-overhaul-good-things-coming-soon/</link>
		<comments>http://www.gen-x-design.com/archives/site-life-overhaul-good-things-coming-soon/#comments</comments>
		<pubDate>Thu, 06 Mar 2008 13:52:42 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.gen-x-design.com/archives/site-life-overhaul-good-things-coming-soon/</guid>
		<description><![CDATA[I&#8217;ve been stuck in somewhat of a rut blogging / personal development-wise for the past months for many reasons, none of which are all that negative.  While I have enjoyed my time working on such sites as Cellware and some other projects for the last 10 months, I feel like I&#8217;ve lost sight of [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been stuck in somewhat of a rut blogging / personal development-wise for the past months for many reasons, none of which are all that negative.  While I have enjoyed my time working on such sites as <a href="http://www.cellware.com">Cellware</a> and some other projects for the last 10 months, I feel like I&#8217;ve lost sight of a lot of things that are important to me in my life.  To that end, it&#8217;s time for some changes&#8230;</p>
<h2>What&#8217;s New</h2>
<p>I&#8217;ve accepted a position at <a href="http://www.aptana.com">Aptana</a>, and will be working on some pretty cool stuff with some of the brightest people in the industry.  Look for a lot of really interesting and exciting things to come as I spend more time with them.  This position will require me to move across the country (Florida to California), and I&#8217;m looking forward to a change of scenery (and lifestyle).</p>
<p>What&#8217;s more relevant to most of my readers (thanks to everyone who visits), is what&#8217;s going to change with my content.  I&#8217;ve decided to go over every article I&#8217;ve posted on here, and get rid of anything that I&#8217;m not happy with.  This will take me some time, so please be patient as I work through everything.  My goal is to have nothing but great content up, and none of the other half-assed or weak articles that are scattered throughout.  I&#8217;ve also changed the look of the site and upgraded to the most recent version of Wordpress.</p>
<h2>What&#8217;s Not New</h2>
<p>The thumbnailer project is still up, and I hope to be able to update it soon.  If you came here looking for it, just check out the projects page, and you&#8217;ll find your way to what you need.  I&#8217;ve also decided to wipe out all the comments I&#8217;ve received.  As much as I love everyone&#8217;s feedback, it&#8217;s entirely too difficult to port these over from the old blog, so I&#8217;ve decided to start over.</p>
<p>I&#8217;m very happy to be able to get back to doing what I love&#8230; learning new things, working with developers that are like-minded with me, and writing stuff that (hopefully) ends up helping people out.  I&#8217;ve said it a million times, I&#8217;ve only made it to where I am in large part because of everything I&#8217;ve learned from the community on the web, and I feel it&#8217;s important that I give back and help everyone out in whatever ways I can.  Stay tuned, as I&#8217;m going to be updating a lot more often, and working on some really cool things!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gen-x-design.com/archives/site-life-overhaul-good-things-coming-soon/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
