<?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>Zen and the Art of Programming &#187; Web Development</title>
	<atom:link href="http://programmingzen.com/category/web-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://programmingzen.com</link>
	<description>Meditations on programming, startups, and technology</description>
	<lastBuildDate>Mon, 16 Jan 2012 17:09:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>On the Usability of Codecademy</title>
		<link>http://programmingzen.com/2012/01/16/on-the-usability-of-codecademy/</link>
		<comments>http://programmingzen.com/2012/01/16/on-the-usability-of-codecademy/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 15:12:50 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[Usability]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1444</guid>
		<description><![CDATA[I asked a friend of mine (who isn&#8217;t a coder) if she could try out the amazing Codecademy for me. She is a smart person, but again, she isn&#8217;t a programmer. I thought Codecademy would be a great way to introduce her to programming for the web. As a programmer, I thought it was extremely well made [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>I asked a friend of mine (who isn&#8217;t a coder) if she could try out the amazing <a title="Codecademy" href="http://www.codecademy.com/" target="_blank">Codecademy</a> for me.</p>
<p>She is a smart person, but again, she isn&#8217;t a programmer. I thought Codecademy would be a great way to introduce her to programming for the web. As a programmer, I thought it was extremely well made and assumed it would work for anyone.</p>
<p>She landed <a href="http://www.codecademy.com/#!/exercises/0" target="_blank">on the homepage</a> and read the instructions.</p>
<p><img class="aligncenter size-full wp-image-1445" title="liz1" src="http://programmingzen.com/wp-content/uploads/2012/01/liz1-e1326643550987.png" alt="" width="600" height="94" /></p>
<p>She wrote her name (&#8220;Elizabeth&#8221;), then decided however to change it to the shortened form of her name, &#8220;Liz&#8221;. To do so she highlighted the whole string she had just typed and tried to press the backspace key to delete it. The whole page disappeared and the browser redirected her to the new tab.</p>
<p><img class="aligncenter size-full wp-image-1446" title="liz2" src="http://programmingzen.com/wp-content/uploads/2012/01/liz2-e1326643534499.png" alt="" width="600" height="101" /></p>
<p><strong>Liz</strong>: &#8220;Why did it do that?&#8221;</p>
<p><strong>Me</strong>: &#8220;You can&#8217;t highlight a word like you&#8217;d do in Microsoft Word. You&#8217;re in a browser, so the backspace button tells the browser to go back to the previous page you visited in that particular tab. You need to delete the string one letter at the time.&#8221;</p>
<p>She reopened the page and tried again, this time things were successful.</p>
<p>Next, she had to measure the length of her name. But she forgot the quotes, so she got this:</p>
<p><img class="aligncenter size-full wp-image-1447" title="liz3" src="http://programmingzen.com/wp-content/uploads/2012/01/liz3-e1326643520479.png" alt="" width="600" height="231" /></p>
<p><strong>Liz</strong>: &#8220;What happened?&#8221;</p>
<p><strong>Me</strong>: &#8220;What do you think happened?&#8221;</p>
<p><strong>Liz</strong>: &#8220;Some kind of error, but what does &#8216;Liz is not defined&#8217; mean?&#8221;</p>
<p><strong>Me</strong>: &#8220;You accidentally forgot the quotes.&#8221;</p>
<p><strong>Liz</strong>: &#8220;Oh, OK, let me try again.&#8221;</p>
<p>She wrote the first quote but pressed enter before immediately realizing she had forgotten the closing one. As such she encountered the following scenario:</p>
<p><img class="aligncenter size-full wp-image-1448" title="liz4" src="http://programmingzen.com/wp-content/uploads/2012/01/liz4-e1326643506756.png" alt="" width="600" height="139" /></p>
<p><strong>Liz</strong>: &#8220;I messed it, let me try again.&#8221;</p>
<p><img class="aligncenter size-full wp-image-1449" title="liz5" src="http://programmingzen.com/wp-content/uploads/2012/01/liz5-e1326643492795.png" alt="" width="600" height="73" /></p>
<p><strong>Liz</strong>: &#8220;I typed it right this time, why didn&#8217;t it work?&#8221;</p>
<p><strong>Me</strong>: &#8220;Since you didn&#8217;t close the first string, it thinks that the second line is still part of the first command. Do you know how to get out of this?&#8221;</p>
<p><strong>Liz</strong>: &#8220;No, but let me try.&#8221;</p>
<p>No, she didn&#8217;t close the string and pressed enter twice or deleted a bunch of characters (this web REPL allows it, kudos to Codecademy). She simply reloaded the page. Thankfully the same exercise (#1) was reloaded. After completing it successfully though, instead of exercise #2, exercise #0 reappeared, asking her to enter her first name again.</p>
<p><img class="aligncenter size-full wp-image-1450" title="liz6" src="http://programmingzen.com/wp-content/uploads/2012/01/liz6-e1326643476536.png" alt="" width="600" height="133" /></p>
<p>After raising an eyebrow at that point, she went along with it. Next she was asked to try some math.</p>
<p><img class="aligncenter size-full wp-image-1451" title="liz7" src="http://programmingzen.com/wp-content/uploads/2012/01/liz7-e1326643460337.png" alt="" width="600" height="165" /></p>
<p>She can&#8217;t be faulted for thinking that &#8220;for instance&#8221; meant she could try something else. Yet, she got an &#8220;Oops, try again.&#8221; message.</p>
<p>At that point I suspended this tiny hallway test and I asked her what she thought of this system. She found the site to be a bit unintuitive, but above all felt like she didn&#8217;t know how to get unstuck when she made an error.</p>
<p>Now, before you all jump in and tell me that my friend is dumb, that she&#8217;ll never be a programmer, or that you can&#8217;t idiot-proof a design, keep in mind the very point of this post.</p>
<p>Usability is hard because real users use our UIs and software in different and unexpected ways. Codecamedy did a very good job, but even they left plenty of room for improvement. As web developers it&#8217;s our duty to give usability and user experience a significant amount of attention. The UI is the software to the end user.</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2012/01/16/on-the-usability-of-codecademy/feed/</wfw:commentRss>
		<slash:comments>42</slash:comments>
		</item>
		<item>
		<title>A Big List of Interesting Programming Books Released in 2011</title>
		<link>http://programmingzen.com/2011/12/16/interesting-programming-books-2011/</link>
		<comments>http://programmingzen.com/2011/12/16/interesting-programming-books-2011/#comments</comments>
		<pubDate>Fri, 16 Dec 2011 17:42:58 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[Programming Languages]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1437</guid>
		<description><![CDATA[The following is a list of 48 interesting programming books that were released in 2011. While technically some of them are only programming-related and not about coding per se, each one is sure to be of interest to some programmers. As some of you know, I run a service called Any New Books?, which emails [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>The following is a list of 48 interesting programming books that were released in 2011. While technically some of them are only programming-related and not about coding per se, each one is sure to be of interest to some programmers.
</p>
<p>As some of you know, I run a service called <a href="http://anynewbooks.com" title="New Books" target="_blank">Any New Books?</a>, which emails you a list of new books that are related to the categories of your choice each week. For the most part I pulled this list from the weekly staff picks there throughout this past year, just in time for your Christmas shopping. <img src='http://programmingzen.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>The books are ordered by their current sale rank on Amazon (from the most popular to the least popular at the moment, with hardcovers first). I hope this page will help you discover a few titles you may have not have noticed yet.</p>
<p>[<a href="http://math-blog.com/2011/12/16/interesting-mathematics-books-2011/">Mathematics book list</a>]</p>
<table border="0" width="100%" cellpadding="10" cellspacing="0" style="vertical-align: top; font-size: 12px; line-height: 14px;">
<tr>
<td width='130'><a href="http://www.amazon.com/Information-History-Theory-Flood/dp/0375423729%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0375423729"><img src="http://ecx.images-amazon.com/images/I/519uLG8YD1L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Information-History-Theory-Flood/dp/0375423729%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0375423729"><strong>The Information: A History, a Theory, a Flood</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Information-History-Theory-Flood/dp/0375423729%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0375423729">USA</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0375423729/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0375423729/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004DEPHUC/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004P1JEY8/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>James Gleick</strong><br />
    <br />ISBN: <strong>0375423729</strong><br />
    <br />Publisher: <strong>Pantheon</strong><br />
    <br />Publication date: <strong>March 1, 2011</strong><br />
    <br />Binding: <strong>Hardcover</strong><br />
    <br />Estimated price: <strong>$16.82</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22The+Information%3A+A+History%2C+a+Theory%2C+a+...%22:&#038;url=http://amzn.to/tgui9E&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/rpOjIC">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Computer-Programming-Volumes-1-4A-Boxed/dp/0321751043%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321751043"><img src="http://ecx.images-amazon.com/images/I/41gCSRxxVeL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Computer-Programming-Volumes-1-4A-Boxed/dp/0321751043%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321751043"><strong>The Art of Computer Programming, Volumes 1-4A Boxed Set</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Computer-Programming-Volumes-1-4A-Boxed/dp/0321751043%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321751043">USA</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321751043/nosearchca-20/ref=nosim/">Canada</a></p>
<p>By <strong>Donald E. Knuth</strong><br />
    <br />ISBN: <strong>0321751043</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>March 13, 2011</strong><br />
    <br />Binding: <strong>Hardcover</strong><br />
    <br />Estimated price: <strong>$190.47</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22The+Art+of+Computer+Programming%2C+Volumes...%22:&#038;url=http://amzn.to/rt5YtA&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/v1NTXW">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D032157351X"><img src="http://ecx.images-amazon.com/images/I/41ZpPEIT09L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D032157351X"><strong>Algorithms (4th Edition)</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D032157351X">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/032157351X/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/032157351X/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/032157351X/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004P8J1NA/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004P8J1NA/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Robert Sedgewick, Kevin Wayne</strong><br />
    <br />ISBN: <strong>032157351X</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>March 19, 2011</strong><br />
    <br />Binding: <strong>Hardcover</strong><br />
    <br />Estimated price: <strong>$59.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Algorithms+%284th+Edition%29%22:&#038;url=http://amzn.to/vzHCPY&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/vBWNfC">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Art-Computer-Programming-Combinatorial-Algorithms/dp/0201038048%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201038048"><img src="http://ecx.images-amazon.com/images/I/41Uv2Tm1D4L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Art-Computer-Programming-Combinatorial-Algorithms/dp/0201038048%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201038048"><strong>The Art of Computer Programming, Volume 4A: Combinatorial Algorithms, Part 1</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Art-Computer-Programming-Combinatorial-Algorithms/dp/0201038048%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201038048">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0201038048/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0201038048/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0201038048/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Donald E. Knuth</strong><br />
    <br />ISBN: <strong>0201038048</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>January 22, 2011</strong><br />
    <br />Binding: <strong>Hardcover</strong><br />
    <br />Estimated price: <strong>$53.15</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22The+Art+of+Computer+Programming%2C+Volume+...%22:&#038;url=http://amzn.to/s4QWmp&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/t4tpI6">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/GPU-Computing-Gems-Emerald-Applications/dp/0123849888%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123849888"><img src="http://ecx.images-amazon.com/images/I/51jY%2BFkYsPL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/GPU-Computing-Gems-Emerald-Applications/dp/0123849888%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123849888"><strong>GPU Computing Gems Emerald Edition</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/GPU-Computing-Gems-Emerald-Applications/dp/0123849888%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123849888">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0123849888/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0123849888/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0123849888/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004MPRDUO/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004MPRDUO/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Editors at Morgan Kaufmann</strong><br />
    <br />ISBN: <strong>0123849888</strong><br />
    <br />Publisher: <strong>Morgan Kaufmann</strong><br />
    <br />Publication date: <strong>February 7, 2011</strong><br />
    <br />Binding: <strong>Hardcover</strong><br />
    <br />Estimated price: <strong>$29.06</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22GPU+Computing+Gems+Emerald+Edition+%28Appl...%22:&#038;url=http://amzn.to/vfJd1o&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/tSBe4G">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Visualize-This-FlowingData-Visualization-Statistics/dp/0470944889%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0470944889"><img src="http://ecx.images-amazon.com/images/I/51QSh0URPML._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Visualize-This-FlowingData-Visualization-Statistics/dp/0470944889%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0470944889"><strong>Visualize This: The FlowingData Guide to Design, Visualization, and Statistics</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Visualize-This-FlowingData-Visualization-Statistics/dp/0470944889%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0470944889">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0470944889/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0470944889/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0470944889/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005CCT19M/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005CCT19M/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Nathan Yau</strong><br />
    <br />ISBN: <strong>0470944889</strong><br />
    <br />Publisher: <strong>Wiley</strong><br />
    <br />Publication date: <strong>July 20, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$20.48</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Visualize+This%3A+The+FlowingData+Guide+to...%22:&#038;url=http://amzn.to/q9G425&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/nTEaqa">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Programming-Android-Zigurd-Mednieks/dp/1449389694%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449389694"><img src="http://ecx.images-amazon.com/images/I/515diZDqQ3L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Programming-Android-Zigurd-Mednieks/dp/1449389694%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449389694"><strong>Programming Android</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Programming-Android-Zigurd-Mednieks/dp/1449389694%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449389694">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1449389694/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1449389694/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1449389694/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005EI86D6/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005EI86D6/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Zigurd Mednieks, Laird Dornin, G. Blake Meike, Masumi Nakamura</strong><br />
    <br />ISBN: <strong>1449389694</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>August 5, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$22.98</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Programming+Android%22:&#038;url=http://amzn.to/qjT3Be&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/oUTXIK">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/JavaScript-Definitive-Guide-Activate-Guides/dp/0596805527%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596805527"><img src="http://ecx.images-amazon.com/images/I/51onEPAeDcL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/JavaScript-Definitive-Guide-Activate-Guides/dp/0596805527%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596805527"><strong>JavaScript: The Definitive Guide: Activate Your Web Pages</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/JavaScript-Definitive-Guide-Activate-Guides/dp/0596805527%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596805527">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0596805527/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0596805527/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0596805527/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004XQX4K0/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004XQX4K0/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>David Flanagan</strong><br />
    <br />ISBN: <strong>0596805527</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>May 10, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$27.48</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22JavaScript%3A+The+Definitive+Guide%3A+Activa...%22:&#038;url=http://amzn.to/rFsjDa&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/uMHhsO">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/iOS-Programming-Ranch-Guide-Guides/dp/0321773772%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321773772"><img src="http://ecx.images-amazon.com/images/I/412zhvqyIXL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/iOS-Programming-Ranch-Guide-Guides/dp/0321773772%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321773772"><strong>iOS Programming: The Big Nerd Ranch Guide (2nd Edition)</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/iOS-Programming-Ranch-Guide-Guides/dp/0321773772%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321773772">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321773772/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321773772/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0321773772/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004Z2NQJQ/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004Z2NQJQ/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Joe Conway, Aaron Hillegass</strong><br />
    <br />ISBN: <strong>0321773772</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>July 2, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$26.95</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22iOS+Programming%3A+The+Big+Nerd+Ranch+Guid...%22:&#038;url=http://amzn.to/pvnN0Q&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/qIYE4V">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Programming-Objective-C-Third-Developers-Library/dp/0321711394%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321711394"><img src="http://ecx.images-amazon.com/images/I/514GKabDXcL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Programming-Objective-C-Third-Developers-Library/dp/0321711394%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321711394"><strong>Programming in Objective-C, Third Edition</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Programming-Objective-C-Third-Developers-Library/dp/0321711394%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321711394">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321711394/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321711394/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0321711394/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004QQ3MI6/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004QQ3MI6/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Stephen G. Kochan</strong><br />
    <br />ISBN: <strong>0321711394</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>June 20, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$25.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Programming+in+Objective-C%2C+Third+Editio...%22:&#038;url=http://amzn.to/uKKeOS&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/vdlyDA">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Cocoa-Programming-Mac-OS-4th/dp/0321774086%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321774086"><img src="http://ecx.images-amazon.com/images/I/41pMj0Bsr1L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Cocoa-Programming-Mac-OS-4th/dp/0321774086%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321774086"><strong>Cocoa Programming for Mac OS X (4th Edition)</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Cocoa-Programming-Mac-OS-4th/dp/0321774086%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321774086">USA</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321774086/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B006H4MMYU/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B006H4MMYU/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Aaron Hillegass, Adam Preble</strong><br />
    <br />ISBN: <strong>0321774086</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>November 19, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$27.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Cocoa+Programming+for+Mac+OS+X+%284th+Edit...%22:&#038;url=http://amzn.to/tUV1xH&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/sLY2WI">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Introducing-HTML5-2nd-Bruce-Lawson/dp/0321784421%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321784421"><img src="http://ecx.images-amazon.com/images/I/41nRzz0KemL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Introducing-HTML5-2nd-Bruce-Lawson/dp/0321784421%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321784421"><strong>Introducing HTML5 (2nd Edition)</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Introducing-HTML5-2nd-Bruce-Lawson/dp/0321784421%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321784421">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321784421/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321784421/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005OR9MJY/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005OR9MJY/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Bruce Lawson, Remy Sharp</strong><br />
    <br />ISBN: <strong>0321784421</strong><br />
    <br />Publisher: <strong>New Riders Press</strong><br />
    <br />Publication date: <strong>October 28, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$14.49</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Introducing+HTML5+%282nd+Edition%29%22:&#038;url=http://amzn.to/uiiy82&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/v3kTX9">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Programming-Python-Mark-Lutz/dp/0596158106%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596158106"><img src="http://ecx.images-amazon.com/images/I/51geJj9aghL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Programming-Python-Mark-Lutz/dp/0596158106%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596158106"><strong>Programming Python</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Programming-Python-Mark-Lutz/dp/0596158106%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0596158106">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0596158106/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0596158106/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0596158106/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004GTLFJ6/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004GTLFJ6/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Mark Lutz</strong><br />
    <br />ISBN: <strong>0596158106</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>January 7, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$36.42</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Programming+Python%22:&#038;url=http://amzn.to/uuE9cj&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/sQjIDF">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Beginning-Android-Application-Development-Programmer/dp/1118017110%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1118017110"><img src="http://ecx.images-amazon.com/images/I/51-qKJitSbL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Beginning-Android-Application-Development-Programmer/dp/1118017110%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1118017110"><strong>Beginning Android Application Development</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Beginning-Android-Application-Development-Programmer/dp/1118017110%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1118017110">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1118017110/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1118017110/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1118017110/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Wei-Meng Lee</strong><br />
    <br />ISBN: <strong>1118017110</strong><br />
    <br />Publisher: <strong>Wrox</strong><br />
    <br />Publication date: <strong>April 19, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$15.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Beginning+Android+Application+Developmen...%22:&#038;url=http://amzn.to/vmPs3M&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/twDl2C">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Agile-Development-Rails-Pragmatic-Programmers/dp/1934356549%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1934356549"><img src="http://ecx.images-amazon.com/images/I/51Pkt8UcdAL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Agile-Development-Rails-Pragmatic-Programmers/dp/1934356549%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1934356549"><strong>Agile Web Development with Rails</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Agile-Development-Rails-Pragmatic-Programmers/dp/1934356549%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1934356549">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1934356549/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1934356549/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1934356549/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Sam Ruby, Dave Thomas, David Heinemeier Hansson</strong><br />
    <br />ISBN: <strong>1934356549</strong><br />
    <br />Publisher: <strong>Pragmatic Bookshelf</strong><br />
    <br />Publication date: <strong>March 31, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$22.36</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Agile+Web+Development+with+Rails+%28Pragma...%22:&#038;url=http://amzn.to/svQiug&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/ukRdLA">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Eloquent-Ruby-Addison-Wesley-Professional/dp/0321584104%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321584104"><img src="http://ecx.images-amazon.com/images/I/41IDuwJXFCL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Eloquent-Ruby-Addison-Wesley-Professional/dp/0321584104%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321584104"><strong>Eloquent Ruby</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Eloquent-Ruby-Addison-Wesley-Professional/dp/0321584104%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321584104">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321584104/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321584104/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0321584104/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004MMEJ36/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004MMEJ36/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Russ Olsen</strong><br />
    <br />ISBN: <strong>0321584104</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>February 21, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$24.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Eloquent+Ruby+%28Addison-Wesley+Profession...%22:&#038;url=http://amzn.to/si7i3b&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/terEI8">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Matlab-Second-Practical-Introduction-Programming/dp/0123850819%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123850819"><img src="http://ecx.images-amazon.com/images/I/61aJAurzdPL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Matlab-Second-Practical-Introduction-Programming/dp/0123850819%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123850819"><strong>Matlab, Second Edition: A Practical Introduction to Programming and Problem Solving</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Matlab-Second-Practical-Introduction-Programming/dp/0123850819%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123850819">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0123850819/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0123850819/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005DI9M44/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005DI9M44/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Stormy Attaway</strong><br />
    <br />ISBN: <strong>0123850819</strong><br />
    <br />Publisher: <strong>Butterworth-Heinemann</strong><br />
    <br />Publication date: <strong>August 11, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$35.44</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Matlab%2C+Second+Edition%3A+A+Practical+Intr...%22:&#038;url=http://amzn.to/ucF0h4&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/s9Ntur">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Java-Performance-Charlie-Hunt/dp/0137142528%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0137142528"><img src="http://ecx.images-amazon.com/images/I/51iFHhu62yL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Java-Performance-Charlie-Hunt/dp/0137142528%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0137142528"><strong>Java Performance</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Java-Performance-Charlie-Hunt/dp/0137142528%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0137142528">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0137142528/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0137142528/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0137142528/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005R4NELQ/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005R4NELQ/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Charlie Hunt, Binu John</strong><br />
    <br />ISBN: <strong>0137142528</strong><br />
    <br />Publisher: <strong>Prentice Hall</strong><br />
    <br />Publication date: <strong>October 10, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$40.73</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Java+Performance%22:&#038;url=http://amzn.to/ofdnkx&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/nLnpEO">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Gamification-Design-Implementing-Mechanics-Mobile/dp/1449397670%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449397670"><img src="http://ecx.images-amazon.com/images/I/51w5ybeiwKL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Gamification-Design-Implementing-Mechanics-Mobile/dp/1449397670%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449397670"><strong>Gamification by Design: Implementing Game Mechanics in Web and Mobile Apps</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Gamification-Design-Implementing-Mechanics-Mobile/dp/1449397670%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449397670">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1449397670/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1449397670/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1449397670/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005KKMM9W/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005KKMM9W/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Gabe Zichermann, Christopher Cunningham</strong><br />
    <br />ISBN: <strong>1449397670</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>August 19, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$14.34</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Gamification+by+Design%3A+Implementing+Gam...%22:&#038;url=http://amzn.to/pGFofI&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/oZvRCJ">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Learn-You-Haskell-Great-Good/dp/1593272839%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1593272839"><img src="http://ecx.images-amazon.com/images/I/41JyzF1dU4L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Learn-You-Haskell-Great-Good/dp/1593272839%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1593272839"><strong>Learn You a Haskell for Great Good!: A Beginner&#8217;s Guide</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Learn-You-Haskell-Great-Good/dp/1593272839%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1593272839">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1593272839/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1593272839/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1593272839/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004VB3V0K/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004VB3V0K/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Miran Lipovaca</strong><br />
    <br />ISBN: <strong>1593272839</strong><br />
    <br />Publisher: <strong>No Starch Press</strong><br />
    <br />Publication date: <strong>April 18, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$21.55</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Learn+You+a+Haskell+for+Great+Good%21%3A+A+B...%22:&#038;url=http://amzn.to/gSwkiX&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/hnNLQQ">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Supercharged-JavaScript-Graphics-canvas-jQuery/dp/1449393632%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449393632"><img src="http://ecx.images-amazon.com/images/I/51YCd8RsKKL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Supercharged-JavaScript-Graphics-canvas-jQuery/dp/1449393632%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449393632"><strong>Supercharged JavaScript Graphics: with HTML5 canvas, jQuery, and More</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Supercharged-JavaScript-Graphics-canvas-jQuery/dp/1449393632%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449393632">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1449393632/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1449393632/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1449393632/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005EI85IC/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005EI85IC/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Raffaele Cecco</strong><br />
    <br />ISBN: <strong>1449393632</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>August 2, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$21.31</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Supercharged+JavaScript+Graphics%3A+with+H...%22:&#038;url=http://amzn.to/qMlopf&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/pr6sdq">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Arduino-Robotics-John-David-Warren/dp/1430231831%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1430231831"><img src="http://ecx.images-amazon.com/images/I/51QiJDgc4wL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Arduino-Robotics-John-David-Warren/dp/1430231831%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1430231831"><strong>Arduino Robotics</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Arduino-Robotics-John-David-Warren/dp/1430231831%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1430231831">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1430231831/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1430231831/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1430231831/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005PZ28WI/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005PZ28WI/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>John-David Warren, Josh Adams, Harald Molle</strong><br />
    <br />ISBN: <strong>1430231831</strong><br />
    <br />Publisher: <strong>Apress</strong><br />
    <br />Publication date: <strong>July 14, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$26.38</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Arduino+Robotics%22:&#038;url=http://amzn.to/nGY0r3&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/nENCSc">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/HBase-Definitive-Guide-Lars-George/dp/1449396100%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449396100"><img src="http://ecx.images-amazon.com/images/I/51OcYjwWI9L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/HBase-Definitive-Guide-Lars-George/dp/1449396100%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449396100"><strong>HBase: The Definitive Guide</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/HBase-Definitive-Guide-Lars-George/dp/1449396100%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449396100">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1449396100/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1449396100/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1449396100/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005KOJ3U4/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005KOJ3U4/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Lars George</strong><br />
    <br />ISBN: <strong>1449396100</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>September 20, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$24.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22HBase%3A+The+Definitive+Guide%22:&#038;url=http://amzn.to/qTv9I8&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/mVQyih">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Tangled-Web-Securing-Modern-Applications/dp/1593273886%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1593273886"><img src="http://ecx.images-amazon.com/images/I/516vnTrKJJL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Tangled-Web-Securing-Modern-Applications/dp/1593273886%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1593273886"><strong>The Tangled Web: A Guide to Securing Modern Web Applications</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Tangled-Web-Securing-Modern-Applications/dp/1593273886%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1593273886">USA</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1593273886/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B006FZ3UNI/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B006FZ3UNI/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Michal Zalewski</strong><br />
    <br />ISBN: <strong>1593273886</strong><br />
    <br />Publisher: <strong>No Starch Press</strong><br />
    <br />Publication date: <strong>November 26, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$26.50</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22The+Tangled+Web%3A+A+Guide+to+Securing+Mod...%22:&#038;url=http://amzn.to/rXr30s&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/vrDTdW">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/MongoDB-Action-Kyle-Banker/dp/1935182870%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1935182870"><img src="http://ecx.images-amazon.com/images/I/51-K3pehVFL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/MongoDB-Action-Kyle-Banker/dp/1935182870%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1935182870"><strong>MongoDB in Action</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/MongoDB-Action-Kyle-Banker/dp/1935182870%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1935182870">USA</a></p>
<p>By <strong>Kyle Banker</strong><br />
    <br />ISBN: <strong>1935182870</strong><br />
    <br />Publisher: <strong>Manning Publications</strong><br />
    <br />Publication date: <strong>December 16, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$27.46</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22MongoDB+in+Action%22:&#038;url=http://amzn.to/vv71we&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/v6Q1UZ">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Programming-Pig-Alan-Gates/dp/1449302645%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449302645"><img src="http://ecx.images-amazon.com/images/I/4101GbF6usL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Programming-Pig-Alan-Gates/dp/1449302645%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449302645"><strong>Programming Pig</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Programming-Pig-Alan-Gates/dp/1449302645%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449302645">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1449302645/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1449302645/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1449302645/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B0065KVFBM/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B0065KVFBM/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Alan Gates</strong><br />
    <br />ISBN: <strong>1449302645</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>October 20, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$24.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Programming+Pig%22:&#038;url=http://amzn.to/si5fSo&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/tIsMKL">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Python-Standard-Library-Example-Developers/dp/0321767349%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321767349"><img src="http://ecx.images-amazon.com/images/I/518kgosz6XL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Python-Standard-Library-Example-Developers/dp/0321767349%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321767349"><strong>The Python Standard Library by Example</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Python-Standard-Library-Example-Developers/dp/0321767349%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321767349">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321767349/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321767349/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0321767349/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B0054RF6WG/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B0054RF6WG/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Doug Hellmann</strong><br />
    <br />ISBN: <strong>0321767349</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>June 11, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$31.49</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22The+Python+Standard+Library+by+Example+%28...%22:&#038;url=http://amzn.to/mvlrO7&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/kK9n0G">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Joy-Clojure-Thinking-Way/dp/1935182641%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1935182641"><img src="http://ecx.images-amazon.com/images/I/51LKOYzkfWL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Joy-Clojure-Thinking-Way/dp/1935182641%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1935182641"><strong>The Joy of Clojure: Thinking the Clojure Way</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Joy-Clojure-Thinking-Way/dp/1935182641%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1935182641">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1935182641/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1935182641/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1935182641/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Michael Fogus, Chris Houser</strong><br />
    <br />ISBN: <strong>1935182641</strong><br />
    <br />Publisher: <strong>Manning Publications</strong><br />
    <br />Publication date: <strong>April 4, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$21.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22The+Joy+of+Clojure%3A+Thinking+the+Clojure...%22:&#038;url=http://amzn.to/rv6MqQ&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/rUNdgp">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Xcode-Developer-Reference-Richard-Wentk/dp/111800759X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D111800759X"><img src="http://ecx.images-amazon.com/images/I/31SsLdXkxKL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Xcode-Developer-Reference-Richard-Wentk/dp/111800759X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D111800759X"><strong>Xcode 4</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Xcode-Developer-Reference-Richard-Wentk/dp/111800759X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D111800759X">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/111800759X/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/111800759X/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/111800759X/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B0055AUG1I/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B0055AUG1I/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Richard Wentk</strong><br />
    <br />ISBN: <strong>111800759X</strong><br />
    <br />Publisher: <strong>Wiley</strong><br />
    <br />Publication date: <strong>June 28, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$19.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Xcode+4+%28Developer+Reference%29%22:&#038;url=http://amzn.to/iHzOzV&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/lpSsjF">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Programming-Amazon-EC2-Jurg-Vliet/dp/1449393683%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449393683"><img src="http://ecx.images-amazon.com/images/I/51gP-tf0sWL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Programming-Amazon-EC2-Jurg-Vliet/dp/1449393683%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449393683"><strong>Programming Amazon EC2</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Programming-Amazon-EC2-Jurg-Vliet/dp/1449393683%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449393683">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1449393683/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1449393683/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1449393683/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004V9MR5M/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004V9MR5M/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Jurg van Vliet, Flavia Paganelli</strong><br />
    <br />ISBN: <strong>1449393683</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>March 14, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$24.22</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Programming+Amazon+EC2%22:&#038;url=http://amzn.to/rEptbY&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/tkzUQQ">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Advanced-Mac-OS-Programming-Guides/dp/0321706250%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321706250"><img src="http://ecx.images-amazon.com/images/I/51nHtmazpNL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Advanced-Mac-OS-Programming-Guides/dp/0321706250%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321706250"><strong>Advanced Mac OS X Programming: The Big Nerd Ranch Guide</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Advanced-Mac-OS-Programming-Guides/dp/0321706250%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321706250">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321706250/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321706250/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0321706250/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005GWG0L0/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005GWG0L0/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Mark Dalrymple</strong><br />
    <br />ISBN: <strong>0321706250</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>August 28, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$32.95</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Advanced+Mac+OS+X+Programming%3A+The+Big+N...%22:&#038;url=http://amzn.to/r963xx&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/nipLGi">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/CUDA-Application-Design-Development-Farber/dp/0123884268%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123884268"><img src="http://ecx.images-amazon.com/images/I/51At7qey-QL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/CUDA-Application-Design-Development-Farber/dp/0123884268%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123884268"><strong>CUDA Application Design and Development</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/CUDA-Application-Design-Development-Farber/dp/0123884268%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123884268">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0123884268/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0123884268/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B006CFEA3K/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B006CFEA3K/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Rob Farber</strong><br />
    <br />ISBN: <strong>0123884268</strong><br />
    <br />Publisher: <strong>Morgan Kaufmann</strong><br />
    <br />Publication date: <strong>November 14, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$43.98</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22CUDA+Application+Design+and+Development%22:&#038;url=http://amzn.to/scY06z&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/w5iXO5">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Sinatra-Up-Running-Alan-Harris/dp/1449304230%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449304230"><img src="http://ecx.images-amazon.com/images/I/51qMOM6YkdL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Sinatra-Up-Running-Alan-Harris/dp/1449304230%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449304230"><strong>Sinatra: Up and Running</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Sinatra-Up-Running-Alan-Harris/dp/1449304230%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449304230">USA</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1449304230/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B006C3HPS4/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B006C3HPS4/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Alan Harris, Konstantin Haase</strong><br />
    <br />ISBN: <strong>1449304230</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>December 1, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$15.29</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Sinatra%3A+Up+and+Running%22:&#038;url=http://amzn.to/tdyjqr&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/si00Te">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Management-3-0-Developers-Developing-Addison-Wesley/dp/0321712471%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321712471"><img src="http://ecx.images-amazon.com/images/I/51dtvyU2b4L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Management-3-0-Developers-Developing-Addison-Wesley/dp/0321712471%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321712471"><strong>Management 3.0: Leading Agile Developers, Developing Agile Leaders</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Management-3-0-Developers-Developing-Addison-Wesley/dp/0321712471%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321712471">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321712471/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321712471/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0321712471/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B004ISL6JY/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B004ISL6JY/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Jurgen Appelo</strong><br />
    <br />ISBN: <strong>0321712471</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>January 7, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$29.50</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Management+3.0%3A+Leading+Agile+Developers...%22:&#038;url=http://amzn.to/uwPmzt&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/tS9W4I">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Professional-NoSQL-Wrox-Programmer/dp/047094224X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D047094224X"><img src="http://ecx.images-amazon.com/images/I/51BEW-rAcXL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Professional-NoSQL-Wrox-Programmer/dp/047094224X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D047094224X"><strong>Professional NoSQL</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Professional-NoSQL-Wrox-Programmer/dp/047094224X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D047094224X">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/047094224X/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/047094224X/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/047094224X/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005LVQFZC/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005LVQFZC/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Shashank Tiwari</strong><br />
    <br />ISBN: <strong>047094224X</strong><br />
    <br />Publisher: <strong>Wrox</strong><br />
    <br />Publication date: <strong>September 13, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$16.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Professional+NoSQL+%28Wrox+Programmer+to+P...%22:&#038;url=http://amzn.to/ukYyfS&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/tvAyxM">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Scalability-Rules-Principles-Scaling-Sites/dp/0321753887%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321753887"><img src="http://ecx.images-amazon.com/images/I/5151N6oWZoL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Scalability-Rules-Principles-Scaling-Sites/dp/0321753887%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321753887"><strong>Scalability Rules: 50 Principles for Scaling Web Sites</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Scalability-Rules-Principles-Scaling-Sites/dp/0321753887%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321753887">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321753887/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321753887/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0321753887/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B00503D1TY/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B00503D1TY/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Martin L. Abbott, Michael T. Fisher</strong><br />
    <br />ISBN: <strong>0321753887</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>May 15, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$16.96</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Scalability+Rules%3A+50+Principles+for+Sca...%22:&#038;url=http://amzn.to/j0PaUH&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/lp4VaC">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Programming-Concurrency-JVM-Mastering-Synchronization/dp/193435676X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D193435676X"><img src="http://ecx.images-amazon.com/images/I/419hxrFyOUL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Programming-Concurrency-JVM-Mastering-Synchronization/dp/193435676X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D193435676X"><strong>Programming Concurrency on the JVM: Mastering Synchronization, STM, and Actors</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Programming-Concurrency-JVM-Mastering-Synchronization/dp/193435676X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D193435676X">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/193435676X/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/193435676X/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/193435676X/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Venkat Subramaniam</strong><br />
    <br />ISBN: <strong>193435676X</strong><br />
    <br />Publisher: <strong>Pragmatic Bookshelf</strong><br />
    <br />Publication date: <strong>September 2, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$19.29</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Programming+Concurrency+on+the+JVM%3A+Mast...%22:&#038;url=http://amzn.to/oLj6d6&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/qohyFc">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Learning-HTML5-Game-Programming-Hands-/dp/0321767365%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321767365"><img src="http://ecx.images-amazon.com/images/I/41CX-urFCML._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Learning-HTML5-Game-Programming-Hands-/dp/0321767365%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321767365"><strong>Learning HTML5 Game Programming: A Hands-on Guide to Building Online Games Using Canvas, SVG, and WebGL</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Learning-HTML5-Game-Programming-Hands-/dp/0321767365%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321767365">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321767365/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321767365/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0321767365/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005OR9NH0/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005OR9NH0/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>James L. Williams</strong><br />
    <br />ISBN: <strong>0321767365</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>October 5, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$16.54</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Learning+HTML5+Game+Programming%3A+A+Hands...%22:&#038;url=http://amzn.to/shepkc&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/rRhugn">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Semantic-Web-Working-Ontologist-Second/dp/0123859654%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123859654"><img src="http://ecx.images-amazon.com/images/I/51CI0qnpeXL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Semantic-Web-Working-Ontologist-Second/dp/0123859654%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123859654"><strong>Semantic Web for the Working Ontologist, Second Edition: Effective Modeling in RDFS and OWL</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Semantic-Web-Working-Ontologist-Second/dp/0123859654%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123859654">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0123859654/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0123859654/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0123859654/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Dean Allemang, James Hendler</strong><br />
    <br />ISBN: <strong>0123859654</strong><br />
    <br />Publisher: <strong>Morgan Kaufmann</strong><br />
    <br />Publication date: <strong>June 3, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$38.43</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Semantic+Web+for+the+Working+Ontologist%2C...%22:&#038;url=http://amzn.to/ioQAoC&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/iBwDi7">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Brave-NUI-World-Designing-Interfaces/dp/0123822319%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123822319"><img src="http://ecx.images-amazon.com/images/I/41agKLjLzaL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Brave-NUI-World-Designing-Interfaces/dp/0123822319%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123822319"><strong>Brave NUI World: Designing Natural User Interfaces for Touch and Gesture</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Brave-NUI-World-Designing-Interfaces/dp/0123822319%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0123822319">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0123822319/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0123822319/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0123822319/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Daniel Wigdor, Dennis Wixon</strong><br />
    <br />ISBN: <strong>0123822319</strong><br />
    <br />Publisher: <strong>Morgan Kaufmann</strong><br />
    <br />Publication date: <strong>April 27, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$18.49</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Brave+NUI+World%3A+Designing+Natural+User+...%22:&#038;url=http://amzn.to/itTxF1&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/lwbvyp">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Haskell-Functional-Programming-International-Computer/dp/0201882957%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201882957"><img src="http://ecx.images-amazon.com/images/I/4114w7dnO5L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Haskell-Functional-Programming-International-Computer/dp/0201882957%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201882957"><strong>Haskell: The Craft of Functional Programming (3rd Edition)</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Haskell-Functional-Programming-International-Computer/dp/0201882957%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0201882957">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0201882957/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0201882957/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0201882957/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Simon Thompson</strong><br />
    <br />ISBN: <strong>0201882957</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>October 2, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$44.96</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Haskell%3A+The+Craft+of+Functional+Program...%22:&#038;url=http://amzn.to/n2Puvp&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/qBgQJk">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Think-Stats-Allen-B-Downey/dp/1449307116%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449307116"><img src="http://ecx.images-amazon.com/images/I/512es42TshL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Think-Stats-Allen-B-Downey/dp/1449307116%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449307116"><strong>Think Stats</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Think-Stats-Allen-B-Downey/dp/1449307116%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449307116">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1449307116/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1449307116/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1449307116/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005EI85LO/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005EI85LO/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Allen B. Downey</strong><br />
    <br />ISBN: <strong>1449307116</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>July 22, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$21.98</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Think+Stats%22:&#038;url=http://amzn.to/pWXBee&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/phj4Iz">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Rails-3-Action-Ryan-Bigg/dp/1935182277%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1935182277"><img src="http://ecx.images-amazon.com/images/I/51MthaBNDEL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Rails-3-Action-Ryan-Bigg/dp/1935182277%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1935182277"><strong>Rails 3 in Action</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Rails-3-Action-Ryan-Bigg/dp/1935182277%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1935182277">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1935182277/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1935182277/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1935182277/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Ryan Bigg, Yehuda Katz</strong><br />
    <br />ISBN: <strong>1935182277</strong><br />
    <br />Publisher: <strong>Manning Publications</strong><br />
    <br />Publication date: <strong>September 28, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$27.48</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Rails+3+in+Action%22:&#038;url=http://amzn.to/nAkvxG&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/oZ1BCn">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Driven-Development-Embedded-Pragmatic-Programmers/dp/193435662X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D193435662X"><img src="http://ecx.images-amazon.com/images/I/51AWF3--mpL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Driven-Development-Embedded-Pragmatic-Programmers/dp/193435662X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D193435662X"><strong>Test Driven Development for Embedded C</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Driven-Development-Embedded-Pragmatic-Programmers/dp/193435662X%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D193435662X">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/193435662X/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/193435662X/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/193435662X/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>James W. Grenning</strong><br />
    <br />ISBN: <strong>193435662X</strong><br />
    <br />Publisher: <strong>Pragmatic Bookshelf</strong><br />
    <br />Publication date: <strong>May 2, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$19.37</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Test+Driven+Development+for+Embedded+C+%28...%22:&#038;url=http://amzn.to/mTd1Xo&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/ljuG3i">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/MacRuby-Definitive-Guide-Ruby-Cocoa/dp/1449380379%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449380379"><img src="http://ecx.images-amazon.com/images/I/51fD8i7AueL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/MacRuby-Definitive-Guide-Ruby-Cocoa/dp/1449380379%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449380379"><strong>MacRuby: The Definitive Guide: Ruby and Cocoa on OS X</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/MacRuby-Definitive-Guide-Ruby-Cocoa/dp/1449380379%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1449380379">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1449380379/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1449380379/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005WL6HBS/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005WL6HBS/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Matt Aimonetti</strong><br />
    <br />ISBN: <strong>1449380379</strong><br />
    <br />Publisher: <strong>O&#8217;Reilly Media</strong><br />
    <br />Publication date: <strong>November 4, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$16.70</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22MacRuby%3A+The+Definitive+Guide%3A+Ruby+and+...%22:&#038;url=http://amzn.to/tdXExG&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/shKIZO">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Modern-Information-Retrieval-Concepts-Technology/dp/0321416910%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321416910"><img src="http://ecx.images-amazon.com/images/I/51l1Y9vy94L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Modern-Information-Retrieval-Concepts-Technology/dp/0321416910%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321416910"><strong>Modern Information Retrieval: The Concepts and Technology behind Search (2nd Edition)</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Modern-Information-Retrieval-Concepts-Technology/dp/0321416910%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0321416910">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0321416910/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0321416910/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0321416910/nosearchit-21/ref=nosim/">Italy</a></p>
<p>By <strong>Ricardo Baeza-Yates, Berthier Ribeiro-Neto</strong><br />
    <br />ISBN: <strong>0321416910</strong><br />
    <br />Publisher: <strong>Addison-Wesley Professional</strong><br />
    <br />Publication date: <strong>February 10, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$56.24</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Modern+Information+Retrieval%3A+The+Concep...%22:&#038;url=http://amzn.to/tppFVo&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/sHpADB">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Designing-Search-Strategies-eCommerce-UXmatters/dp/0470942231%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0470942231"><img src="http://ecx.images-amazon.com/images/I/41z526qP0HL._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Designing-Search-Strategies-eCommerce-UXmatters/dp/0470942231%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0470942231"><strong>Designing Search: UX Strategies for eCommerce Success</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Designing-Search-Strategies-eCommerce-UXmatters/dp/0470942231%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0470942231">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/0470942231/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/0470942231/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/0470942231/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B0050PJ8S0/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B0050PJ8S0/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Greg Nudelman</strong><br />
    <br />ISBN: <strong>0470942231</strong><br />
    <br />Publisher: <strong>Wiley</strong><br />
    <br />Publication date: <strong>May 24, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$14.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Designing+Search%3A+UX+Strategies+for+eCom...%22:&#038;url=http://amzn.to/tP6AB7&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/vLxOW0">Facebook</a>
 	 </td>
</tr>
<tr>
<td width='130'><a href="http://www.amazon.com/Windows-Phone-Recipes-Problem-Solution-Approach/dp/1430233710%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1430233710"><img src="http://ecx.images-amazon.com/images/I/41isqMINz8L._SL160_.jpg" border="0" width="120"></a></td>
<td>
	  <a href="http://www.amazon.com/Windows-Phone-Recipes-Problem-Solution-Approach/dp/1430233710%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1430233710"><strong>Windows Phone 7 Recipes: A Problem-Solution Approach</strong></a><br />
    <br />Stores: <a href="http://www.amazon.com/Windows-Phone-Recipes-Problem-Solution-Approach/dp/1430233710%3FSubscriptionId%3D0BZQ5SJTYZCHFG60RT02%26tag%3Dblpro-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D1430233710">USA</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/1430233710/nosearch-21/ref=nosim/">UK</a> | <a href="http://www.amazon.ca/exec/obidos/ASIN/1430233710/nosearchca-20/ref=nosim/">Canada</a> | <a href="http://www.amazon.it/exec/obidos/ASIN/1430233710/nosearchit-21/ref=nosim/">Italy</a> | <a href="http://www.amazon.com/exec/obidos/ASIN/B005PZ0AEG/blpro-20/ref=nosim/">Kindle</a> | <a href="http://www.amazon.co.uk/exec/obidos/ASIN/B005PZ0AEG/nosearch-21/ref=nosim/">UK Kindle</a></p>
<p>By <strong>Fabio Claudio Ferracchiati, Emanuele Garofalo</strong><br />
    <br />ISBN: <strong>1430233710</strong><br />
    <br />Publisher: <strong>Apress</strong><br />
    <br />Publication date: <strong>May 26, 2011</strong><br />
    <br />Binding: <strong>Paperback</strong><br />
    <br />Estimated price: <strong>$22.99</strong></p>
<p>Share this book on <a href="http://twitter.com/share?text=Check+out+%22Windows+Phone+7+Recipes%3A+A+Problem-Solut...%22:&#038;url=http://amzn.to/koAyOa&#038;via=anynewbooks">Twitter</a> |<a href="http://www.facebook.com/share.php?u=http://amzn.to/khsBrk">Facebook</a>
 	 </td>
</tr>
</table>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2011/12/16/interesting-programming-books-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learn Hadoop and Get a Chance to Go to Vegas</title>
		<link>http://programmingzen.com/2011/09/09/learn-hadoop-and-get-a-chance-to-go-to-vegas/</link>
		<comments>http://programmingzen.com/2011/09/09/learn-hadoop-and-get-a-chance-to-go-to-vegas/#comments</comments>
		<pubDate>Fri, 09 Sep 2011 15:43:25 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[Big Data]]></category>
		<category><![CDATA[Industry News]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1416</guid>
		<description><![CDATA[This is a heads up for my readers who are interested in Big Data. Follow these steps to learn Hadoop and get a chance to win a trip to Las Vegas: Register with Big Data University. Enroll and complete the free Hadoop Fundamentals I course. You&#8217;ll receive a certificate of completion and an invitation to partecipate [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-1417" style="float: right;" title="Hadoop" src="http://programmingzen.com/wp-content/uploads/2011/09/hadoop.jpg" alt="Hadoop" width="250" /></p>
<p>This is a heads up for my readers who are interested in Big Data. Follow these steps to learn Hadoop and get a chance to win a trip to Las Vegas:</p>
<ol>
<li>Register with <a href="http://BigDataUniversity.com">Big Data University</a>.</li>
<li>Enroll and complete the free <a href="http://www.db2university.com/courses/course/view.php?id=301">Hadoop Fundamentals I course</a>.</li>
<li>You&#8217;ll receive a certificate of completion and an invitation to partecipate in the first <a href="http://www.bigdatauniversity.com/web/hadoop-programming-challenge.php">Hadoop Programming Challenge</a>.</li>
<li>On October 3rd, three participants to this challenge will be selected for a free, all expenses paid, trip to <a href="http://www-01.ibm.com/software/data/2011-conference/">Information on Demand</a> (IOD) 2011 in Las Vegas on October 23rd &#8211; 27th.</li>
</ol>
<p>Best of luck to you.</p>
<p></p>
<p><small>(Hat tip to <a href="http://freedb2.com/2011/09/09/learn-hadoop-for-free-and-go-to-las-vegas-all-expenses-paid/">Free DB2</a></small>)</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2011/09/09/learn-hadoop-and-get-a-chance-to-go-to-vegas/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Speeding up queries by a factor of 100 or more with DB2 Text Search</title>
		<link>http://programmingzen.com/2011/07/19/getting-started-with-db2-text-search/</link>
		<comments>http://programmingzen.com/2011/07/19/getting-started-with-db2-text-search/#comments</comments>
		<pubDate>Tue, 19 Jul 2011 17:11:42 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[Databases]]></category>
		<category><![CDATA[DB2]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1397</guid>
		<description><![CDATA[During a recent Rails project at IBM we had to deal with a large table consisting of customers. The table is made up of legacy enterprise data, and contains close to a million records. Among many other fields, the table Customers includes a column name defined as VARCHAR. name is used to store company names. [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>
	During a recent Rails project at IBM we had to deal with a large table consisting of customers. The table is made up of legacy enterprise data, and contains close to a million records.
</p>
<p>
	Among many other fields, the table <code>Customers</code> includes a column <code>name</code> defined as <code>VARCHAR</code>. <code>name</code> is used to store company names.
</p>
<p>
	One of the requirements for the project was to implement a Google Suggest-like feature. That is, when the user enters a few characters for the customer&#8217;s name, they should be prompted, via AJAX, with a list of possible suggestions containing that string (or at least beginning with that string.)
</p>
<p>
	The naive approach would be to use a simple <code>LIKE</code> predicate, to generate queries such as:
</p>
<div class="highlight">
<pre><span class="k">SELECT</span> <span class="n">name</span>
<span class="k">FROM</span>   <span class="n">Customers</span>
<span class="k">WHERE</span>  <span class="n">name</span> <span class="k">LIKE</span> <span class="s1">&#39;%micro%&#39;</span>
<span class="k">ORDER</span>  <span class="k">BY</span> <span class="n">name</span>
</pre>
</div>
<p>
	One of the main problems with this approach is performance. Using <code>LIKE</code> this way doesn&#8217;t allow us to take advantage of indexes that are defined on the column <code>name</code>.
</p>
<p>
	Unsurprisingly, on a modest server, such a query takes about 25 seconds. A UI that isn&#8217;t able to respond for 25 seconds will feel like an eternity for the end user, of course, so a simple query like this obviously cannot be seen as a viable solution.
</p>
<p>
	Enter DB2 Text Search. You may be familiar with other full text search engines such as Ferret, Lucene, or Sphinx. <a href="http://db2express.com/download/?S_TACT=ACDB201">DB2 V9.7.4</a> ships with an extremely powerful full text search engine that has plenty of useful features, including excellent integration with native XML columns.
</p>
<p>
	Using the <a href="http://db2express.com/download/?S_TACT=ACDB201">free edition of DB2</a> (DB2 Express-C) which includes Text Search, we were able to implement the autocomplete functionality we were after in a heartbeat, thanks to a query like the following:
</p>
<div class="highlight">
<pre><span class="k">SELECT</span> <span class="n">name</span>
<span class="k">FROM</span>   <span class="n">Customers</span>
<span class="k">WHERE</span>  <span class="k">CONTAINS</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="s1">&#39;micro&#39;</span><span class="p">)</span> <span class="o">=</span> <span class="mi">1</span>
<span class="k">ORDER</span>  <span class="k">BY</span> <span class="n">name</span>
</pre>
</div>
<p>
	This query was executed in mere fractions of a second for most searches, and behaved exactly as needed. In fact, not only did we match strings that began with the searched token, but also ones that contained it elsewhere (e.g., <code>micro</code> would match both <code>Microsoft</code> and <code>Sun Microsystems</code>.) The results where ordered alphabetically, but could have easily been ordered by relevance via the <code>SCORE</code> function, also available via DB2 Text Search.
</p>
<p>
	As usual, it&#8217;s a matter of using the right tool for the right job, and DB2 Text Search was created exactly for these kind of scenarios.</p>
<p>
	Let&#8217;s briefly look at how you can also go about setting up and playing with it on Linux.
</p>
<h3>Installing DB2 Text Search</h3>
<p>
	To start with, you&#8217;ll need to have a 64bit Linux distro, and then follow these simple steps.
</p>
<p>
	Download <a href="http://db2express.com/download/?S_TACT=ACDB201">DB2 Express-C</a>. Make sure you grab the <code>db2exc_974_LNX_x86_64.tar.gz</code> file and not the Light edition.
</p>
<p>
	Next, install DB2 by following <a href="http://programmingzen.com/2011/05/11/installing-ruby-on-rails-and-db2-on-ubuntu-11-04/">these steps</a> (the <em>Installing DB2</em> section in particular.) Make sure you select a custom installation, and that you select everything including DB2 Text Search (which is not checked by default).
</p>
<p>
	After you&#8217;ve started DB2 with <code>db2start</code> via the instance user (e.g., <code>db2inst1</code>,) launch the text search server by running:
</p>
<pre class="highlight">
db2ts start for text
</pre>
<p>
	To enable text search for an existing database, run:
</p>
<pre class="highlight">
db2ts enable database for text connect to mydb
</pre>
<p>
	Next, you&#8217;ll need to create a text search index and populate it. For example:
</p>
<pre class="highlight">
db2ts "create index customer_name for text on customers(name) connect to mydb"
db2ts "update index customer_name for text connect to mydb"
</pre>
<p>
	That&#8217;s it. From now on you&#8217;ll be able to use functions such as <code>CONTAINS</code> to quickly search for your data.
</p>
<p>
	Such a function can also be easily invoked in Rails:
</p>
<div class="highlight">
<pre><span class="no">Customer</span><span class="o">.</span><span class="n">where</span><span class="p">(</span><span class="s2">&quot;CONTAINS(name, ?) = 1&quot;</span><span class="p">,</span> <span class="nb">name</span><span class="p">)</span>
</pre>
</div>
<p>
	Or wrapping it a little in a model:
</p>
<div class="highlight">
<pre><span class="k">class</span> <span class="nc">Customer</span> <span class="o">&lt;</span> <span class="no">ActiveRecord</span><span class="o">::</span><span class="no">Base</span>
  <span class="c1"># ... </span>
  <span class="k">def</span> <span class="nc">self</span><span class="o">.</span><span class="nf">search</span><span class="p">(</span><span class="nb">name</span><span class="p">,</span> <span class="n">max_res</span> <span class="o">=</span> <span class="mi">10</span><span class="p">)</span>
    <span class="n">where</span><span class="p">(</span><span class="s1">&#39;CONTAINS(name, ?) = 1&#39;</span><span class="p">,</span> <span class="nb">name</span><span class="p">)</span><span class="o">.</span>
    <span class="n">order</span><span class="p">(</span><span class="s1">'name'</span><span class="p">)</span><span class="o">.</span>
    <span class="n">limit</span><span class="p">(</span><span class="n">max_res</span><span class="p">)</span>
  <span class="k">end</span>
<span class="k">end</span>
</pre>
</div>
<p>
Which can then be invoked as follows:
</p>
<div class="highlight">
<pre>
<span class="no">Customer</span><span class="o">.</span><span class="n">search</span><span class="p">(</span><span class="s2">&quot;micro&quot;</span><span class="p">)</span>
</pre>
</div>
<p>
	(Technically we wouldn&#8217;t have needed <code>limit</code>, so long as we passed <code>RESULTLIMIT</code> to the <code>CONTAINS</code> function.)
</p>
<p>
	You can read more about <a href="http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=/com.ibm.db2.luw.admin.ts.doc/doc/c0051296.html">DB2 Text Search</a> at the Information Center.</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2011/07/19/getting-started-with-db2-text-search/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The need for good vocational schools for programmers</title>
		<link>http://programmingzen.com/2011/07/09/the-need-for-good-vocational-schools-for-programmers/</link>
		<comments>http://programmingzen.com/2011/07/09/the-need-for-good-vocational-schools-for-programmers/#comments</comments>
		<pubDate>Sun, 10 Jul 2011 03:17:57 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1396</guid>
		<description><![CDATA[A rigorous computer science education is certainly beneficial to programmers. It provides you with the ability to see the bigger picture, and a more in-depth understanding of many topics that will ultimately make you a better developer. I would argue however that it is far from actually being necessity. For many programming jobs, a computer [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>A rigorous computer science education is certainly beneficial to programmers. It provides you with the ability to see the bigger picture, and a more in-depth understanding of many topics that will ultimately make you a better developer.</p>
<p>I would argue however that it is far from actually being necessity. For many programming jobs, a computer science education is akin to having a mechanical engineering degree when working as an auto mechanic. You&#8217;ll certainly have a great understanding of the job you are doing, but a good deal of what you learned academically will fail to resonate with what you do in your day job at the body shop.</p>
<p>What the programming world needs is good, reputable vocations schools. Such institutions should take an extremely hands-on approach, be taught by veterans in the field, and prepare students for how to actually program in the real world from day one.</p>
<p>Focus on SVN and Git, rather than on Petri nets. Teach students how to name identifiers in their code, how to organize code, how to test, how to work with Unicode, how to develop desktop, web, and mobile applications, how to write secure code, how to sell software, how to bill clients, and other software engineering best practices. Give priority to practical topics aided by plenty of exercises and useful projects that represent the kind of work students will one day find themselves doing for an employer.</p>
<p>This type of school may not give us a modern day Turing, but it would definitely help establish a new generation of competent craftspeople who can begin building useful products in the real world before they&#8217;ve even donned their mortarboards. And it could easily be a 2 year crash course, rather than 4 years.</p>
<p>I think such an approach would be a huge improvement over the status quo of far too many Computer Science graduates who can&#8217;t write a decent program after four years of theory based education (not to mention that they are still indebted years after their graduation).</p>
<p>Assuming that the instructors and material were both great and not your typical &#8220;Java school&#8221; curriculum, I would recommend this route to most of the people I know who are considering getting into this field.</p>
<p>What do you think?</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2011/07/09/the-need-for-good-vocational-schools-for-programmers/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>jQuery Air: An outstanding introduction to jQuery</title>
		<link>http://programmingzen.com/2011/06/13/jquery-air-an-outstanding-introduction-to-jquery/</link>
		<comments>http://programmingzen.com/2011/06/13/jquery-air-an-outstanding-introduction-to-jquery/#comments</comments>
		<pubDate>Mon, 13 Jun 2011 21:17:01 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Screencasts]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1385</guid>
		<description><![CDATA[Code School is a fascinating new provider of video lessons for programmers. In the past I reviewed their Rails Best Practices course and certainly didn’t hide the fact that I’m a fan of their approach. It combines modular video lessons with practical exercises (called challenges), game-like rewards with scores and virtual badges, and also includes [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p><a href="http://zfer.us/kZw1U">Code School</a> is a fascinating new provider of video lessons for programmers. In the past I <a href="http://programmingzen.com/2011/04/20/review-of-rails-best-practices/">reviewed their Rails Best Practices course</a> and certainly didn’t hide the fact that I’m a fan of their approach. It combines modular video lessons with practical exercises (called challenges), game-like rewards with scores and virtual badges, and also includes a handy support forum in case you get stuck. </p>
<p>Recently Code School released their <a href="http://zfer.us/kZw1U">second course</a>, which is devoted to jQuery (it’s currently on sale for $45, and is also available as a bundle with their earlier Rails course). The unusual name,<a href="http://zfer.us/kZw1U"> jQuery Air</a>, comes from the fact the course’s theme is airplanes.</p>
<p>The course starts with the basics of JavaScript; it doesn’t explore this area exhaustively, instead it tries to cover just enough ground to quickly move onto the actual jQuery material. This early phase focuses on the history of JavaScript, basic data structures like numbers, strings, arrays, and maps, as well as how to use named and anonymous functions.</p>
<p>The rest of the course covers everything you’d expect it to (such as DOM querying and manipulation, element visibility, timing issues, transitions, and animations). There’s also a bit of AJAX tossed in at the end for good measure, but not really enough to call it a topic that this course covers with any degree of detail.</p>
<p align="center"><img src="http://programmingzen.com/wp-content/uploads/2011/06/jquery-air.png" alt="jQuery Air" title="jQuery Air" width="630" height="329" class="alignright size-full wp-image-1390" /></p>
<p>Jeff Casimir is a fun, confident teacher with a clear, easy to understand style. He introduces you to some of the best practices as you write JavaScript and jQuery code, always reminding course participants about the separation of concerns/responsibilities when it comes to HTML, CSS, and JavaScript.</p>
<p>No bones about it, this is the best introduction to jQuery I’ve encountered. In few hours you’ll be able to understand how jQuery works, as well as how to take advantage of it for your own web applications. </p>
<p>If you watch the videos and work on the challenges tonight, you’ll be ready to work with jQuery by tomorrow morning. You won’t become an expert overnight, but you certainly shouldn’t be be leery of the DOM either. This course sets outs a very solid foundation upon which you can easily continue to build and further your knowledge of, and experience with, JavaScript and jQuery.</p>
<p>These days jQuery has become the de facto library for JavaScript development on the web, and learning it is now paramount for most web developers. Worth noting as well is that jQuery is also going to be the default library for Rails 3.1, thus making it of even greater relevance to many of this site’s readers.</p>
<p>As a prize for completing the challenges you&#8217;ll get a free screencast from Peepcode. I went with the CoffeeScript one, given that this will also be included by default in Rails 3.1.</p>
<p><a href="http://zfer.us/kZw1U">Buy this great course</a> now, thank me later. <img src='http://programmingzen.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I truly look forward to seeing further installments of this jQuery series, as well as more advanced courses that cover different languages and technologies.</p>
<p><em>Disclaimer: I received a review copy of the course. The links to Code School contain my referral id. Theses points do not affect in any way my judgment of what is, indisputably, an outstanding introduction to jQuery.<br />
</em></p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2011/06/13/jquery-air-an-outstanding-introduction-to-jquery/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Installing Python, Django, and DB2 on Ubuntu 11.04</title>
		<link>http://programmingzen.com/2011/05/12/installing-python-django-and-db2-on-ubuntu-11-04/</link>
		<comments>http://programmingzen.com/2011/05/12/installing-python-django-and-db2-on-ubuntu-11-04/#comments</comments>
		<pubDate>Fri, 13 May 2011 09:06:58 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[DB2]]></category>
		<category><![CDATA[Django]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1375</guid>
		<description><![CDATA[Note: This is the Python version of the Ruby guide I just published. In this brief tutorial I’ll show you how to create a complete Python and Django setup for DB2 on Ubuntu. By following my step-by-step instructions, you’ll be able to install the following components: Python easy_install Django DB2 Express-C 9.7.4 The official Python [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p><em>Note: This is the Python version of the <a href="http://programmingzen.com/2011/05/11/installing-ruby-on-rails-and-db2-on-ubuntu-11-04/">Ruby guide</a> I just published.</em></p>
<p>In this brief tutorial I’ll show you how to create a complete Python and Django setup for DB2 on Ubuntu. By following my step-by-step instructions, you’ll be able to install the following components:</p>
<ul>
<li>Python</li>
<li>easy_install</li>
<li>Django</li>
<li><a href="http://db2express.com/download/?S_TACT=ACDB201">DB2 Express-C 9.7.4</a></li>
<li>The official <a href="http://code.google.com/p/ibm-db/">Python driver, dbi module, and Django adapter</a> for DB2</li>
</ul>
<h3 id="installing_python_and_easy_install">Installing Python and easy_install</h3>
<p>Technically Python is already installed on Ubuntu, so we don’t have to install it. However, we need the <code>python-dev</code> package in order to build the DB2 driver from source. We’ll also need easy_install which is included in the <code>python-setuptools</code> Ubuntu .deb:</p>
<pre class="highlight">$ sudo apt-get install python-dev python-setuptools</pre>
<p></p>
<h3 id="installing_django">Installing Django</h3>
<p>Now that we have easy_install available, we can easily install Django by running:</p>
<pre class="highlight">$ sudo easy_install django</pre>
<p>You can verify the installed version by running:</p>
<pre class="highlight">$ python</pre>
<p>And then executing the following snippet in the REPL:</p>
<pre class="highlight">>>> import django
>>> django.VERSION
(1, 3, 0, 'final', 0)</pre>
<p>At this time, version 1.3.0 should get installed as shown above.</p>
<h3 id="installing_db2">Installing DB2</h3>
<p>We can now download and install DB2 Express-C 9.7.4. <a href="http://db2express.com/download/?S_TACT=ACDB201">Download the .tar.gz file</a> to a location that’s convenient for you. Then proceed to unpack it:</p>
<pre class="highlight">$ cd ~/Downloads/
$ tar xvfz db2exc_974_LNX_x86.tar.gz
$ cd expc</pre>
<p>We’ll install one required library and then proceed with the setup:</p>
<pre class="highlight">$ sudo apt-get install libaio1
$ sudo ./db2setup</pre>
<p>Follow the GUI wizard on screen to continue with the installation. Pay close attention to two steps:</p>
<ul>
<li>When prompted <strong>select a custom installation</strong>, and when choosing the components, select all of them. We’ll need the <strong>Application Development Tools</strong> in order to build the Python driver later on (and these are unchecked by default).</li>
<li>When asked if you’d like to <strong>create an instance user</strong>, go with that option. It greatly simplifies the setup process.</li>
</ul>
<p>When the setup of DB2 is completed, you should receive a confirmation message informing you about the successful installation</p>
<p>For good measure, add the following line to your <code>~/.bashrc</code> file:</p>
<pre class="highlight">. /home/db2inst1/sqllib/db2profile</pre>
<p>This ensures that even your regular, non-DB2, user will be able to connect and interact with the database.</p>
<h3>Installing the Python driver and Django adapter</h3>
<p>The last step we need to take is to install the <code>ibm_db</code> Python driver and the <code>ibm_db_dbi</code> module, as well as the Django adapter for DB2. These are all IBM supported, open source releases.</p>
<p>Open a new shell and run:</p>
<pre class="highlight">$ sudo -s
$ export IBM_DB_DIR=/home/db2inst1/sqllib
$ export IBM_DB_LIB=/home/db2inst1/sqllib/lib
$ . /home/db2inst1/sqllib/db2profile
$ easy_install ibm_db ibm_db_django
$ exit</pre>
<h3 id="a_quick_sanity_test">A quick sanity test</h3>
<p>To ensure that all is well with your setup, run the following command:</p>
<pre class="highlight">$ django-admin.py startproject db2test
$ cd db2test</pre>
<p>Now edit <code>settings.py</code> so ENGINE is set to <code>ibm_db_django</code>, NAME to a database like <code>db2test</code>, USER to <code>db2inst1</code>, PASSWORD to the same password you specified for the db2inst1 user during the installation of DB2. Use <code>localhost</code> for the HOST, and <code>50000</code> as the port number:</p>
<pre class="highlight">DATABASES = {
    'default': {
        'ENGINE': 'ibm_db_django',
        'NAME': 'db2test',
        'USER': 'db2inst1',
        'PASSWORD': 'secret',
        'HOST': 'localhost',
        'PORT': '50000',
    }
}</pre>
<p>Create the database <code>db2test</code> by running:</p>
<pre class="highlight">$ su - db2inst1
$ db2start
$ db2 create db db2test
$ exit</pre>
<p>Depending on your hardware specs, the infrequent operation of creating a database can take a bit of time (e.g., several minutes).</p>
<p>We will now run the actual test:</p>
<pre class="highlight">$ python manage.py test</pre>
<p>Unless exceptions are raised during this last step, you should be all set to use Django with DB2.</p>
<h3 id="if_you_need_help">If you need help</h3>
<p>IBM is the only database vendor to officially provide and support its Python driver and Django adapter. While commercial DB2 support is available and relatively <a href="http://www.db2teamblog.com/2010/12/treat-yourself-to-db2-this-holiday.html">inexpensive</a>, your first line of defense is posing your questions in the <a href="http://groups.google.com/group/ibm_db?pli=1">support forum</a> over at Google. Alternatively, if the question is DB2-specific and not related to Python/Django, you can use the <a href="http://www.ibm.com/developerworks/forums/forum.jspa?forumID=805">DB2 Express-C forum</a> over at developerWorks instead.</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2011/05/12/installing-python-django-and-db2-on-ubuntu-11-04/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Installing Ruby on Rails and DB2 on Ubuntu 11.04</title>
		<link>http://programmingzen.com/2011/05/11/installing-ruby-on-rails-and-db2-on-ubuntu-11-04/</link>
		<comments>http://programmingzen.com/2011/05/11/installing-ruby-on-rails-and-db2-on-ubuntu-11-04/#comments</comments>
		<pubDate>Wed, 11 May 2011 21:10:56 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[DB2]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1372</guid>
		<description><![CDATA[In this tutorial I&#8217;ll show you how to create a complete Ruby on Rails setup for DB2 on Ubuntu. Following my step-by-step instructions, you&#8217;ll be able to install the following components: Ruby 1.8.7 Rubygems Ruby on Rails DB2 Express-C 9.7.4 The official Ruby driver and Rails adapter for DB2 Installing Ruby We are going to [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>In this tutorial I&#8217;ll show you how to create a complete Ruby on Rails setup for DB2 on Ubuntu. Following my step-by-step instructions, you&#8217;ll be able to install the following components:</p>
<ul>
<li>Ruby 1.8.7</li>
<li>Rubygems</li>
<li>Ruby on Rails</li>
<li><a href="http://db2express.com/download/?S_TACT=ACDB201">DB2 Express-C 9.7.4</a></li>
<li><a href="https://rubyforge.org/projects/rubyibm/">The official Ruby driver and Rails adapter for DB2</a></li>
</ul>
<h3 id="installing_ruby">Installing Ruby</h3>
<p>We are going to install Ruby 1.8.7 using the Debian packages that are available in the default repositories:</p>
<pre class="highlight">$ sudo apt-get install ruby-full</pre>
<p>Next we&#8217;ll build Rubygems from scratch, so as to obtain a recent version and be able to update it to the latest one via the gem system itself:</p>
<pre class="highlight">$ cd /tmp/
$ wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
$ tar xvfz rubygems-1.7.2.tgz
$ cd rubygems-1.7.2
$ sudo ruby setup.rb
$ sudo gem update --system</pre>
<p>You can now verify that Rubygems is correctly installed:</p>
<pre class="highlight">$ gem -v
1.8.1</pre>
<p>Note: If you plan to have multiple versions of Ruby, you&#8217;ll probably want to look into RVM.</p>
<h3 id="installing_rails">Installing Rails</h3>
<p>We are not going to install the Rails package that ships with Ubuntu, because this is also quite obsolete at this stage. Instead, we&#8217;ll use the newly installed gem command:</p>
<pre class="highlight">$ sudo gem install rails</pre>
<p>(Add the <code>--no-rdoc --no-ri</code> flags if you don&#8217;t care about the local documentation. This will speed up the installation process.)</p>
<p>You can verify the installed version by running:</p>
<pre class="highlight">$ rails -v
Rails 3.0.7</pre>
<p></p>
<h3 id="installing_db2">Installing DB2</h3>
<p>We can now download and install <a href="http://db2express.com/download/?S_TACT=ACDB201">DB2 Express-C 9.7.4</a>. <a href="http://db2express.com/download/?S_TACT=ACDB201">Download the .tar.gz installation file</a> to a location that&#8217;s convenient for you. Then proceed to unpack it:</p>
<pre class="highlight">$ cd ~/Downloads/
$ tar xvfz db2exc_974_LNX_x86.tar.gz
$ cd expc</pre>
<p>We&#8217;ll install one required library and then proceed with the setup:</p>
<pre class="highlight">$ sudo apt-get install libaio1
$ sudo ./db2setup</pre>
<p>Follow the GUI wizard on screen to continue with the installation. Pay close attention to two steps:</p>
<ul>
<li>When prompted <strong>select a custom installation</strong>, and when choosing the components, select all of them We&#8217;ll need the <strong>Application Development Tools</strong> in order to build the Ruby driver later on. (And these are unchecked by default.)</li>
<li>When asked if you&#8217;d like to <strong>create an instance user</strong>, go with that option. It greatly simplifies the setup process.</li>
</ul>
<p>When the setup of DB2 is completed, you should receive a confirmation message informing you about the successful installation.</p>
<p>For good measure, add the following line to your <code>~/.bashrc</code> file:</p>
<pre class="highlight">. /home/db2inst1/sqllib/db2profile</pre>
<p>This ensures that even your regular, non-DB2, user will be able to connect and interact with the database.</p>
<h3 id="installing_the_ibm_db_gem">Installing the ibm_db gem</h3>
<p>The last step we need to take is to install the ibm_db gem, which includes the IBM released (and supported) open source driver for Ruby, as well as the adapter for Rails. You&#8217;ll need these in order to use Rails with DB2.</p>
<p>Open a new shell and run:</p>
<pre class="highlight">$ sudo -s
$ export IBM_DB_INCLUDE=/home/db2inst1/sqllib/include
$ export IBM_DB_LIB=/home/db2inst1/sqllib/lib
$ . /home/db2inst1/sqllib/db2profile
$ gem install ibm_db
$ exit</pre>
<p>At the time of writing, this installs ibm_db-2.5.6.</p>
<h3 id="a_quick_sanity_test">A quick sanity test</h3>
<p>To ensure that all is well with your setup, run the following command:</p>
<pre class="highlight">$ rails new db2test -d ibm_db
$ cd db2test</pre>
<p>Now, edit <code>config/database.yml</code> so that the development section uses the same password you specified for the <code>db2inst1</code> user during the installation of DB2. Change the database name to something like <code>db2test</code>. The section should look like the example below:</p>
<pre class="highlight">development:
	adapter: ibm_db
	username: db2inst1
	password: secret
	database: db2test</pre>
<p>Create the database <code>db2test</code> by running:</p>
<pre class="highlight">$ su - db2inst1
$ db2start
$ db2 create db db2test
$ exit</pre>
<p>Depending on your hardware specs, the infrequent operation of creating a database can take quite a long time (e.g., minutes).</p>
<p>We will now install/attach the required gems for this project:</p>
<pre class="highlight">$ bundle install</pre>
<p>For the sake of a quick example, we&#8217;ll use scaffold to generate some super-basic code. We&#8217;ll then run migrations, and the built-in web server:</p>
<pre class="highlight">$ rails g scaffold Subject name:string
$ rake db:migrate
$ rails s</pre>
<p>Visit <code>http://localhost:3000/subjects</code> and you should see a scaffold interface you can use to create, edit, show, and destroy subjects, as I&#8217;ve done in the screenshot below.</p>
<p align="center"><a href="http://programmingzen.com/wp-content/uploads/2011/05/subjects-sample.png"><img src="http://programmingzen.com/wp-content/uploads/2011/05/subjects-sample.png" alt="subjects-sample" title="subjects-sample" width="401" height="349" class="aligncenter size-full wp-image-1373" /></a></p>
<p>Note: As you develop, you&#8217;ll probably want to use a better web server such as mongrel, unicorn, or thin. You can easily do so by editing your <code>Gemfile</code> and installing the gem via <code>bundle</code>.</p>
<h3 id="if_you_need_help">Getting help</h3>
<p>IBM is the only database vendor to officially provide and support its Ruby driver and Rails adapter. While commercial 24/7 DB2 support is certainly available and relatively inexpensive (i.e., <a href="http://www.db2teamblog.com/2010/12/treat-yourself-to-db2-this-holiday.html">cheaper than MySQL</a>), your first line of defense is posing your questions in the <a href="https://rubyforge.org/forum/forum.php?forum_id=9503">support forum</a> over at Rubyforge. Alternatively, if the question is DB2-specific and not related to Ruby or Rails, you can use the <a href="http://www.ibm.com/developerworks/forums/forum.jspa?forumID=805">DB2 Express-C forum</a> over at developerWorks instead.</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2011/05/11/installing-ruby-on-rails-and-db2-on-ubuntu-11-04/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Review of Rails Best Practices</title>
		<link>http://programmingzen.com/2011/04/20/review-of-rails-best-practices/</link>
		<comments>http://programmingzen.com/2011/04/20/review-of-rails-best-practices/#comments</comments>
		<pubDate>Wed, 20 Apr 2011 17:19:39 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[Screencasts]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1342</guid>
		<description><![CDATA[Over the weekend I had a chance to play around a bit with Rails Best Practices, so I thought I’d share a few thoughts I had regarding it. In the startup world we often debate the merit of ideas vs execution. In this particular case, the idea behind this product is pretty straightforward. It’s a [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>Over the weekend I had a chance to play around a bit with <a rel="nofollow" target="_blank" href="http://zfer.us/kZw1U">Rails Best Practices</a>, so I thought I’d share a few thoughts I had regarding it.</p>
<p>In the startup world we often debate the merit of ideas vs execution. In this particular case, the idea behind this product is pretty straightforward. It’s a video course about common idioms and best practices in Rails, that helps you learn how to refactor bad Rails code/anti-patterns/habits into good ones.</p>
<p align="center">
<div id="attachment_1345" class="wp-caption aligncenter" style="width: 610px"><a rel="nofollow" target="_blank" href="http://programmingzen.com/wp-content/uploads/2011/04/rails-best-practices-large.png"><img src="http://programmingzen.com/wp-content/uploads/2011/04/rails-best-practices-small.png" alt="Rails Best Practices" title="Rails Best Practices" width="600" height="335" class="size-full wp-image-1345" /></a>
<p class="wp-caption-text">Click to enlarge</p>
</div>
<p>As is often the case, the implementation is what makes this course really worthwhile. It’s Khan Academy meets Rails (and Khan Academy truly is <a rel="nofollow" target="_blank" href="http://www.ted.com/talks/salman_khan_let_s_use_video_to_reinvent_education.html">the future of education</a>).</p>
<p><a rel="nofollow" target="_blank" href="http://zfer.us/kZw1U">Rails Best Practices</a> provides a series of small videos that show examples of common bad code that may be used when trying to resolve a particular problem, then they introduce a refactoring that uses best practices to make the code a lot better.</p>
<p>In the process, these videos end up introducing some of the latest tools and features that are available in Rails 3. So if you haven’t made the switch yet from Rails 2 to Rails 3, you’ll find the videos particularly interesting.</p>
<p>This course isn’t just a collection of well produced videos and downloadable slides though. It’s dived into five levels, akin in that regard to a video game. To proceed to the next level, you need to correctly complete and submit all of the exercises for the current level. Each exercise will award you 250 points.</p>
<p>While working on very practical exercises, you’ll be able to reference the videos and re-watch them as often as you please. You’re also able to make mistakes and then see the exceptions that are raised by Ruby.</p>
<p align="center">
<div id="attachment_1347" class="wp-caption aligncenter" style="width: 610px"><a rel="nofollow" target="_blank" href="http://programmingzen.com/wp-content/uploads/2011/04/rails-best-practices-exercises-large.png"><img src="http://programmingzen.com/wp-content/uploads/2011/04/rails-best-practices-exercises-small.png" alt="Rails Best Practices Exercises" title="Rails Best Practices Exercises" width="600" height="334" class="size-full wp-image-1347" /></a>
<p class="wp-caption-text">Click to enlarge</p>
</div>
<p>When you complete a level, you’re awarded a badge. As well you’ll receive a few bonuses once you’ve completed the whole course (including a free peepcode.com screencast, $5 codeschool.com credit towards your next purchase, and 35% off all books at InformIT).</p>
<p>I’m a firm believer that the approach to learning in which one is taught by doing exercises in a game-like setting is a highly effective way to help retain the material you’ve has studied. (I should mention that there is a support forum as well, just in case you’re stuck or need some help.)</p>
<p>At $75, this course isn’t exactly a bargain basement deal, however it’s currently on sale for a considerably <a rel="nofollow" target="_blank" href="http://zfer.us/kZw1U">more wallet friendly $45</a>, and you’ll definitely get your money’s worth if you are a Rails developer.</p>
<p>In conclusion, given that levels are not visible until you pass them, here is the complete table of content, including all the levels, for this course.</p>
<p><strong>Level 1 &amp; 2</strong></p>
<ul>
<li>Skinny Controller, Fat Model</li>
<li>Scope it out</li>
<li>Fantastic Filters</li>
<li>Nested Attributes</li>
<li>Models without the DB</li>
<li>Really REST</li>
<li>Enter the Presenters</li>
<li>Memoization</li>
<li>Reject SQL Injection</li>
<li>Rails 3 Responder Syntax</li>
</ul>
<p><strong>Level 3 and 4</strong></p>
<ul>
<li>Loving your Indices</li>
<li>Protecting your Attributes</li>
<li>Default Values</li>
<li>Proper use of Callbacks</li>
<li>Sowing the Seeds</li>
<li>N + 1 is not for fun</li>
<li>Counter Cache Money</li>
<li>Batches of Find Each</li>
<li>Law of Demeter</li>
<li>to_s &amp; to_param</li>
</ul>
<p><strong>Level 5</strong></p>
<ul>
<li>No Queries in your View</li>
<li>Helper Skelter</li>
<li>Partial Sanity</li>
<li>Empty String Things</li>
<li>Yield to the content_for</li>
<li>Meta Yield</li>
<li>Rock your Block Helpers</li>
</ul>
<p>All in all, I was very pleased with this enjoyable course, and I think that beginner to intermediate Rails developers are the ones who stand to get the most out of it.</p>
<p><em>Full disclosure: I was granted access to the course for free, and <a rel="nofollow" target="_blank" href="http://zfer.us/kZw1U">the link to the course</a> contains my affiliate id. Nevertheless, everything above is my frank and honest opinion.</em></p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2011/04/20/review-of-rails-best-practices/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Running Radiant CMS on DB2 in the Cloud</title>
		<link>http://programmingzen.com/2011/04/04/running-radiant-cms-on-db2-in-the-cloud/</link>
		<comments>http://programmingzen.com/2011/04/04/running-radiant-cms-on-db2-in-the-cloud/#comments</comments>
		<pubDate>Tue, 05 Apr 2011 07:07:06 +0000</pubDate>
		<dc:creator>Antonio Cangiano</dc:creator>
				<category><![CDATA[DB2]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://programmingzen.com/?p=1332</guid>
		<description><![CDATA[In this article I will show you how to set up and run Radiant CMS on DB2 Express-C in the Cloud. Before getting started, let’s define each of these components: Radiant CMS is a popular, easy to use open source Content Management System (CMS) that’s written in Ruby on Rails. DB2 Express-C is a fully [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>In this article I will show you how to set up and run Radiant CMS on DB2 Express-C in the Cloud. Before getting started, let’s define each of these components:</p>
<ul>
<li><a target="_blank" href="http://radiantcms.org/">Radiant CMS</a> is a popular, easy to use open source Content Management System (CMS) that’s written in Ruby on Rails.</li>
<li><a target="_blank" href="http://db2express.com/download/?S_TACT=ACDB201">DB2 Express-C</a> is a fully functional, free edition of DB2 which can be used in production for commercial purposes.</li>
<li>Cloud, in this particular context, refers to Amazon Web Services (AWS) that are managed with the aid of <a target="_blank" href="http://rightscale.com">RightScale</a> (an excellent Cloud management platform).</li>
</ul>
<h3 id="prerequisites">Prerequisites</h3>
<p>In order to run Radiant and DB2 in the Cloud and follow this tutorial, you’ll need to register with both Amazon Web Services and RightScale. You will also need to explicitly provide your AWS credentials to RightScale in order to manage Amazon’s services. If you haven’t taken these steps already, you can follow this <a target="_blank" href="http://vimeo.com/16093026">short screencast</a> to learn how to do so now.</p>
<div align=”center”><iframe src="http://player.vimeo.com/video/16093026?portrait=0&amp;color=c9ff23" width="600" height="323" frameborder="0"></iframe></div>
<p></p>
<h3 id="introduction_to_servertemplates">Introduction to RightScale ServerTemplates</h3>
<p>Rather than setting up the whole deployment stack from scratch, when using RightScale you can use special templates called RightScale ServerTemplates. These will take care of installing the required stack for you, thereby saving you time &#8211; and a possible headache, too.</p>
<p>IBM provides a RightScale ServerTemplate for your convenience called &#8220;Radiant CMS on IBM DB2 Express-C&#8221;, which installs Apache, Rails, Radiant, and DB2 on CentOS. Thanks to this template, it&#8217;s possible to have a Radiant and DB2 stack running in the Cloud in just a few minutes. This tutorial will show you how.</p>
<h3 id="creating_a_security_group">Creating a security group</h3>
<p>Before adding a server to our deployment we need to create a security group. This is a set of firewall rules that are used to define which ports are open on the server, as well as which IPs are accepted.</p>
<p>A security group is created within a specific geographical Cloud. For our particular ServerTemplate, the currently supported Clouds are US-East, US-West, EU, and AP-Singapore. AP-Tokyo is likely to be added in the upcoming weeks.</p>
<p>Select a Cloud of your choice (the closest one to you will do) and create a new security group from the Clouds menu as shown in the figure below.</p>
<p align="center">
<div id="attachment_1333" class="wp-caption aligncenter" style="width: 595px"><img src="http://programmingzen.com/wp-content/uploads/2011/04/security-group.png" alt="Creating a security group" title="Creating a security group" width="585" height="299" class="size-full wp-image-1333" />
<p class="wp-caption-text">Creating a security group</p>
</div>
<p>You&#8217;ll be asked to provide a name for the group. It’s best to call it something meaningful, such as DB2 Public Access or Default Web Access. When prompted, you should open port 80 (for the web server) and port 50000 (for DB2), but you may want to enable port 22 as well for SSH access (admittedly not quite a best practice, but let&#8217;s keep things simple and standard), and any other port you think you may need. In the input mask, use 0.0.0.0/0 to indicate that all IPs are accepted for such ports.</p>
<p align="center">
<div id="attachment_1334" class="wp-caption aligncenter" style="width: 608px"><img src="http://programmingzen.com/wp-content/uploads/2011/04/add-port-e1301983797980.png" alt="Opening port 80" title="Opening port 80" width="598" height="157" class="size-full wp-image-1334" />
<p class="wp-caption-text">Opening port 80</p>
</div>
<p></p>
<h3 id="adding_a_server_to_a_deployment">Adding a server to a deployment</h3>
<p>The first step will be importing IBM&#8217;s template in our RightScale account from the RightScale public Library. You can always find a link to said library by clicking on the Design menu and then on Library. There you&#8217;ll be able to search and browse all of the available templates. For your convenience, here’s a link you can click to bring you directly to the <a target="_blank" href="https://my.rightscale.com/library/server_templates/Radiant-CMS-on-IBM-DB2-Express/16950">Radiant CMS on IBM DB2 Express-C</a> template.</p>
<p>Click import and you&#8217;ll be prompted with a DB2 Express-C licensing agreement. Read it through (cough) and if you agree with the terms, click the accept check box and then Finish. The ServerTemplate will be imported for you, as shown in figure below.</p>
<p align="center">
<div id="attachment_1335" class="wp-caption aligncenter" style="width: 619px"><img src="http://programmingzen.com/wp-content/uploads/2011/04/imported-server.png" alt="An imported server" title="An imported server" width="609" height="680" class="size-full wp-image-1335" />
<p class="wp-caption-text">An imported server</p>
</div>
<p>At this point, you can click Add To Deployment and select one of the available Clouds that are close to you (e.g., AWS US-East). Select the same Cloud you picked when creating a security group and then click Continue.</p>
<p>In the new popup dialog, you can select several parameters like Deployment, MultiCloud Image, Nickname, and so on. You can leave all the defaults on, but you should specify an Instance Type and Security Group(s). The former indicates what type of EC2 instance you need for your server (e.g., a micro instance), while the latter should be the security group (or groups) you created earlier on.</p>
<p>Keep in mind that Amazon will charge you based on an hourly basis, as well as depending on the instance type and Cloud you chose. A micro instance on the US-East Cloud as per this example is the cheapest solution. (Amazon even allows new customers to obtain a micro instance <a target="_blank" href="http://aws.amazon.com/free/">for free for the first year</a>.)</p>
<p>You will be redirected to the deployment you specified or that was selected by default (the default is unsurprisingly called Default). From this deployment you&#8217;ll be able to administer your instance of the server. (Note: You can always access your deployments from the Manage -> Deployments menu link.)</p>
<p>From within the Default deployment, start the server by clicking the triangular blue launch icon on the right side of the screen, which is located on the same line as your server&#8217;s nickname.</p>
<p align="center">
<div id="attachment_1336" class="wp-caption aligncenter" style="width: 610px"><img src="http://programmingzen.com/wp-content/uploads/2011/04/launch-server-e1301984230933.png" alt="Launching a server" title="Launching a server" width="600" height="58" class="size-full wp-image-1336" />
<p class="wp-caption-text">Launching a server</p>
</div>
<p>On the new page that appears, click the Launch button. The server will boot and you&#8217;ll be brought back to your deployment. While the server boots, you should see several status update messages that will help keep you in the loop regarding the status of the server.</p>
<p>If all goes well, and depending on your Cloud/instance choices, you should have the server up and running (i.e., the status will be operational) in five minutes or less.</p>
<p>You can now click on the nickname of the server (e.g., Radiant CMS on IBM DB2 Express-C), where you&#8217;ll find a clickable link corresponding to the &#8220;Public DNS name&#8221;. If you click on this link a Radiant CMS installation should appear.</p>
<p align="center"><img src="http://programmingzen.com/wp-content/uploads/2011/04/radiant-e1301984520960.png" alt="Radiant on DB2" title="Radiant on DB2" width="599" height="481" class="aligncenter size-full wp-image-1337" /></p>
<p>Append /admin to that URL, and you&#8217;ll be able to login with the default username (admin) and password (radiant). From there you can experiment and change things as you wish in order to make the site yours. Your changes will be persisted in the database, even if you reboot your instance.</p>
<p>To learn more about how to use Radiant as you play around with it in the Cloud, feel free to consult the <a target="_blank" href="https://github.com/radiant/radiant/wiki/">official Radiant documentation</a>.</p>
<p>That&#8217;s it. Enjoy Radiant CMS and DB2 in the Cloud.</p>
<h3 id="important_notes">Important notes</h3>
<p>Remember to stop your server if you are not using it in production or if you were just experimenting with it and you don&#8217;t need it at the moment. Keep in mind that Amazon will charge you for the time you have the server up (unless of course you took advantage of the <a target="_blank" href="http://aws.amazon.com/free/">AWS Free Usage Tier</a>). You can stop a server from the deployment or by clicking the Stop button from the server information page where you found the public DNS name.</p>
<p>If you plan on keeping the server running, you must change your Radiant CMS admin password to a stronger and more secure one. You can do so from /admin, by clicking on the Users link at the top of the page, and then on Administrator.</p>
<p>At this time the ServerTemplate doesn&#8217;t allow you to change the password for DB2 users. You must do so manually from the console. It&#8217;s important that you change the password for the database/system users db2inst1, dasusr1, and db2fenc1 from &#8216;password&#8217; to more secure ones. If you don’t take this step, you run the risk of having your server hacked in no time. When you update the password for these three users, you also need to update the /opt/www/blog/config/database.yml file with the password you just changed for the database/system user db2inst1.</p>
<p>You can access a root SSH console for your server from the deployment area (when the server is running a small console icon is visible). Click on this icon, then select the type of console that you want to operate (OpenSSH or Mindterm), and accept the RSA key fingerprint that you’re presented with. As root you can fully manage the server, including changing passwords for users (e.g., passwd db2inst1).</p>
<p>Of course, if you are just demoing or experimenting for 15 minutes, you can probably ignore these password related steps (which are quick, but admittedly more tedious).</p>
<p>If you have any questions, please feel free to ask in the comment section or via email.</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://programmingzen.com/2011/04/04/running-radiant-cms-on-db2-in-the-cloud/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.463 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-02-07 18:19:05 -->
<!-- Compression = gzip -->
