<?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>Netphase &#187; Chris</title>
	<atom:link href="http://blog.netphase.com/author/cbeck/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.netphase.com</link>
	<description>for a connected world</description>
	<lastBuildDate>Mon, 14 Dec 2009 21:40:44 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Netphase Participates in Charlotte 2.0 Podcast</title>
		<link>http://blog.netphase.com/2009/12/14/netphase-participates-in-charlotte-2-0-podcast/</link>
		<comments>http://blog.netphase.com/2009/12/14/netphase-participates-in-charlotte-2-0-podcast/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 21:38:48 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Set Phasers to Stun]]></category>

		<guid isPermaLink="false">http://blog.netphase.com/?p=408</guid>
		<description><![CDATA[Just recently, Netphase executives Chris Beck and Scott Nedderman were invited to participate in a new video podcast series being produced by our friend Justin Ruckman at CLT Blog on the state and direction of technology in Charlotte. The first episode also happened to coincide nicely with the Charlotte 2.0 Initiative, proposed by Josh Lippener [...]]]></description>
			<content:encoded><![CDATA[<p>Just recently, Netphase executives Chris Beck and Scott Nedderman were invited to participate in a new video podcast series being produced by our friend Justin Ruckman at <a href="http://cltblog.com">CLT Blog</a> on the state and direction of technology in Charlotte. The first episode also happened to coincide nicely with the <a href="http://charlotte20.com">Charlotte 2.0 Initiative</a>, proposed by Josh Lippener and endorsed by Netphase. It featured Philip Dodds, who was the brains behind the podcast, as well as Desiree Kane from CLT Blog and Charlotte City Councilman Warren Cooksey. The panel was moderated by Jeff Elder, formerly the Social Media columnist for the Charlotte Observer.</p>
<p>In the screenshot below, the participants are, from left to right: Josh Lippener, Warren Cooksey, Desiree Kane, Jeff Elder, Chris Beck, Scott Nedderman, and Philip Dodds. Enjoy!</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="255" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=8127298&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="400" height="255" src="http://vimeo.com/moogaloop.swf?clip_id=8127298&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a href="http://vimeo.com/8127298">Charlotte 2.0.1</a> from <a href="http://vimeo.com/jruckman">Justin Ruckman</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netphase.com/2009/12/14/netphase-participates-in-charlotte-2-0-podcast/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Transform Your Business with iPhone</title>
		<link>http://blog.netphase.com/2009/09/25/transform-your-business-with-iphone/</link>
		<comments>http://blog.netphase.com/2009/09/25/transform-your-business-with-iphone/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 13:58:25 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Set Phasers to Stun]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[iPhone Apps]]></category>
		<category><![CDATA[newsworthy]]></category>

		<guid isPermaLink="false">http://blog.netphase.com/?p=404</guid>
		<description><![CDATA[A few days ago, Apple posted a fantastic article on how global consulting firm, Logica, is transforming not only their business, but their clients&#8217; businesses as well using the iPhone. In the article, Logica Germany CEO Torsten Strass said:
&#8220;iPhone is revolutionizing our business segment. We use iPhone within the company to cut costs and increase [...]]]></description>
			<content:encoded><![CDATA[<p>A few days ago, Apple posted a <a href="http://www.apple.com/iphone/business/profiles/logica/" target="_blank">fantastic article</a> on how global consulting firm, Logica, is transforming not only their business, but their clients&#8217; businesses as well using the iPhone. In the article, Logica Germany CEO Torsten Strass said:</p>
<p>&#8220;iPhone is revolutionizing our business segment. We use iPhone within the company to cut costs and increase productivity. Now our customers are asking us how they can do the same thing with iPhone.&#8221;</p>
<p>Jens Lünstedt, Head of iPhone Development for Logica, added:</p>
<p>&#8220;The SDK development environment for iPhone has all the elements necessary for a mature application. I can combine them relatively quickly into an attractive, well-functioning application&#8230; iPhone embodies innovation. It is playing a definitive role in changing the business world, because it offers opportunities that were not previously available. To be more competitive and efficient, businesses can choose from any of the iPhone apps in the App Store, or we can write a custom application for them. No other device is capable of covering business needs in quite this manner.&#8221;</p>
<p>At Netphase, we share Logica&#8217;s vision for the application of iPhone technology to the needs of an agile business. In order to insure maximum productivity and effectiveness for an organization in these mobile times, team members should be able to access critical systems on the go, complete sales without having to find a wi-fi connection for their laptop, and also communicate with customers with up-to-date data in real time. The technology is there, and the solutions pay for themselves in very short order.</p>
<p>Could your company benefit from extending its back-office reach to the most exciting mobile platform on the planet? Could your sales team benefit from getting orders into your system more quickly and efficiently than ever before, allowing them to focus on closing deals rather than filing paperwork? Do you need to keep track of reports and other critical business data in real time while away from the office? If so, <a href="http://www.netphase.com/contact_us">contact us today</a>. We will start off by scheduling some time to talk to you about your processes first. Only after we understand your business will we offer suggestions on how your workflow may be improved by the addition of a mobile app.</p>
<h2>How to Contact Netphase</h2>
<p>To schedule an appointment to speak with a consultant about your web, mobile, or infrastructure needs, please  use one of the following methods:</p>
<ul>
<li><a href="http://www.netphase.com/contact_us">Our contact form</a></li>
<li>Email: <a href="mailto:info@netphase.com">info@netphase.com</a></li>
<li>Toll free: 877-799-7829</li>
</ul>
<p>Netphase is a technology consulting firm located in Charlotte, NC. We perform project work for clients world-wide, and have team-members from coast-to-coast.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netphase.com/2009/09/25/transform-your-business-with-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Carolina Coupons Takes Savings To The Next Level</title>
		<link>http://blog.netphase.com/2009/08/17/carolina-coupons-takes-savings-to-the-next-level/</link>
		<comments>http://blog.netphase.com/2009/08/17/carolina-coupons-takes-savings-to-the-next-level/#comments</comments>
		<pubDate>Mon, 17 Aug 2009 21:45:40 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Set Phasers to Stun]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.netphase.com/?p=387</guid>
		<description><![CDATA[A few short months ago, Carolina MoneySaver magazine recognized the need for helping consumers with significant savings was growing dramatically. The economy is tough, and more people are clipping coupons and looking for ways to cut costs than at any time in recent memory. Being a fiscally responsible company in their own right, they knew [...]]]></description>
			<content:encoded><![CDATA[<p>A few short months ago, Carolina MoneySaver magazine recognized the need for helping consumers with significant savings was growing dramatically. The economy is tough, and more people are clipping coupons and looking for ways to cut costs than at any time in recent memory. Being a fiscally responsible company in their own right, they knew that printing and mailing even more magazines was not the preferred approach; they needed to extend their reach beyond the local market fast!</p>
<p>Enter Netphase.</p>
<p>Working closely with the Carolina MoneySaver team, Netphase designed a solution to meet their needs and the growing demand for online savings. The site is easy to use, allowing you to search or browse for coupons, &#8216;clip&#8217; them for later, and print them when needed. Expired coupons disappear from the site, so unlike at home, your collection of clipped coupons is never out of date. And unlike paper coupons, <a href="http://carolinacoupons.com">CarolinaCoupons.com</a> even provides you with a map to the nearest location that honors that coupon &#8211; saving you gas as well <img src='http://blog.netphase.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>CarolinaCoupons.com is in testing right now, and the two teams are very pleased with the site&#8217;s progress.</p>
<h3>About Netphase&#8217;s Role with CarolinaCoupons.com</h3>
<p>Netphase developed Carolina Coupons for Carolina MoneySaver using the Ruby on Rails application development framework, soft-launching in July, 2009. Carolina Coupons is deployed on an infinitely scalable, stable and robust architecture designed and maintained by Netphase within the Amazon Enhanced Computing Cloud, or EC2, infrastructure.</p>
<p>Netphase is currently enhancing the site and planning additional features with the client, including a native mobile version.</p>
<p>If you are interested in having Netphase turn your application dream into a reality, <a href="http://www.netphase.com/contact/">contact us</a> today. We offer free initial consultations, and are always interested in hearing about exciting new mobile and web applications.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netphase.com/2009/08/17/carolina-coupons-takes-savings-to-the-next-level/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Netphase Accepted Into iPhone Developer Program</title>
		<link>http://blog.netphase.com/2009/08/05/netphase-accepted-into-iphone-developer-program/</link>
		<comments>http://blog.netphase.com/2009/08/05/netphase-accepted-into-iphone-developer-program/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 17:27:21 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Check This Out]]></category>
		<category><![CDATA[iPhone Apps]]></category>

		<guid isPermaLink="false">http://www.netphase.com/?p=364</guid>
		<description><![CDATA[We are excited to announce that as of the Spring of 2009, Netphase has been accepted into Apple's iPhone Developer program! Our first applications for distribution in the iTunes App Store are already in the works, and we look forward to joining the elite fraternity of iPhone App Developers in the very near future.]]></description>
			<content:encoded><![CDATA[<p>We are excited to announce that as of the Spring of 2009, Netphase has been accepted into Apple&#8217;s iPhone Developer program! Our first applications for distribution in the iTunes App Store are already in the works, and we look forward to joining the elite fraternity of iPhone App Developers in the very near future.</p>
<p>As a company, our developers had been learning the ins-and-outs of developing applications for the best mobile platform on the planet for almost a year now. Once we honed our skills to a level that would enable us to provide the same quality service to clients that we provide when developing web applications, we started the long application process through the Apple Developer Connection. Now that we are officially part of the program, we can design, build, test and distribute iPhone Applications not only for our own purposes, but for clients as well.</p>
<p>The iPhone App Store offers an incredible channel for marketing and selling your company&#8217;s products and services. With millions of Apple iPhone and iPod Touch users in 80 countries around the world, your application has the potential to be a global success. The capabilities of the platform allow for virtually any kind of application that you can dream up to become a reality. Do you have an idea for a new iPhone App? <a href="http://www.netphase.com/contact">Contact us today</a> and we will help you turn your App Dream into a reality.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netphase.com/2009/08/05/netphase-accepted-into-iphone-developer-program/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Netphase Has Its Head In The Clouds</title>
		<link>http://blog.netphase.com/2009/08/05/netphase-has-its-head-in-the-clouds/</link>
		<comments>http://blog.netphase.com/2009/08/05/netphase-has-its-head-in-the-clouds/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 16:46:49 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Check This Out]]></category>
		<category><![CDATA[Cloud Computing]]></category>

		<guid isPermaLink="false">http://www.netphase.com/?p=358</guid>
		<description><![CDATA[Ever since the beta period for Amazon's Enhanced Computing Cloud, or EC2, Netphase has been deploying applications into the stratosphere. We immediately saw the benefits of having a robust, infinitely scalable, stable and ultimately flexible environment in which to host everything from a simple content managed site up to the most demanding search engine application. ]]></description>
			<content:encoded><![CDATA[<p>Ever since the beta period for Amazon&#8217;s Enhanced Computing Cloud, or EC2, Netphase has been deploying applications into the stratosphere. We immediately saw the benefits of having a robust, infinitely scalable, stable and ultimately flexible environment in which to host everything from a simple content managed site up to the most demanding search engine application. We are proud to say that today, all Netphase hosted applications are deployed on our EC2 infrastructure.</p>
<p>We find that the ability to spin-up a new instance of a server in minutes and then take it down whenever it is no longer needed makes EC2 a perfect environment for establishing test servers and also for adding additional application servers to handle the demands of increased site traffic related to a new feature launch or other big event. Because you only pay for computing cycles used, EC2 is far more cost-effective than maintaining a physical server farm, where you are paying for computing horsepower and bandwidth whether you use it or not.</p>
<p>EC2 installations are perfect for multi-tiered web applications as well. In the fall of 2008, we hosted a brand new Search Engine, ubExact.com, on a seven-instance server cluster in our cloud. Whenever we needed to add another web server for load balancing or another application server, we were able to bring it online in minutes. During ubExact&#8217;s unfortunately short lifespan (victims of the initial economic downturn), we never experienced an outage related to server load or performance.</p>
<p>Do you have an application that is getting ready to go big-time, but are not sure if your current infrastructure can handle the pressure? Or are you simply paying too much in hardware and personnel costs to maintain your existing server farm? <a href="http://www.netphase.com/contact/">Contact us today</a> to find out how looking to the clouds can take your website to new heights!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netphase.com/2009/08/05/netphase-has-its-head-in-the-clouds/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Acts As Amazon Product</title>
		<link>http://blog.netphase.com/2009/08/05/acts-as-amazon-product/</link>
		<comments>http://blog.netphase.com/2009/08/05/acts-as-amazon-product/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 14:53:45 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Acts As Amazon Product]]></category>
		<category><![CDATA[Check This Out]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.netphase.com/?p=343</guid>
		<description><![CDATA[Acts As Amazon Product, or AAAP for short, is a Ruby Gem developed by Netphase and available on github as an Open Source offering. This gem allows you to easily include products from Amazon's vast catalog in your application. ]]></description>
			<content:encoded><![CDATA[<p>Acts As Amazon Product, or AAAP for short, is a Ruby Gem developed by Netphase and <a href="http://github.com/netphase/aaap/tree/master">available on github</a> as an Open Source offering. This gem allows you to easily include products from Amazon&#8217;s vast catalog in your application. You have great control over whether you want the items to load into their own models, or one of your own, and also if the model is saved or merely loaded in memory for further action by you application.</p>
<p>We have used Acts As Amazon Product in production, as have other stellar Ruby on Rails consultancies. We hope that you find it as helpful as we have. And true to the open source nature of the project, if you have any ideas on how we can make AAAP better, by all means, submit a pull request!</p>
<p>For more information on AAAP, check out the <a href="http://github.com/netphase/aaap/tree/master">project page on Github</a>. Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netphase.com/2009/08/05/acts-as-amazon-product/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Netphase Launches Homeschool Apple</title>
		<link>http://blog.netphase.com/2009/03/07/netphase-launches-homeschool-apple/</link>
		<comments>http://blog.netphase.com/2009/03/07/netphase-launches-homeschool-apple/#comments</comments>
		<pubDate>Sun, 08 Mar 2009 04:59:09 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Acts As Amazon Product]]></category>
		<category><![CDATA[Ruby On Rails]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[newsworthy]]></category>

		<guid isPermaLink="false">http://www.netphase.com/?p=308</guid>
		<description><![CDATA[Netphase launched the first in what is expected to be a long line of web offerings geared towards making the lives of homeschoolers a little easier. Homeschool Apple takes the pain out of buying and selling used homeschool curriculum.]]></description>
			<content:encoded><![CDATA[<p>Earlier today, Netphase launched its first in what is expected to be a long line of web applications based on its new virtual mall engine, WeSell.  WeSell aims to conquer some of the problems typically associated with selling from multiple vendors in a shopping cart-based system, utilizing only one checkout.</p>
<p>The technology behind it is really quite remarkable. Netphase&#8217;s proprietary solution takes into account the available inventory of the seller, who typically will be an average user with products in their possession that they wish to resell. It prevents shopping cart conflicts, yet also considers how long a prospective buyer is allowed to keep an item in his cart before the item is returned back to the active inventory for others to purchase. Bottom line is that it strives to strike the difficult balance of allowing a seller to have inventory tied up by only those wanting to purchase, and also of allowing a buyer with an item in her cart to shop with confidence, knowing that when she checks out, the item is in fact hers.</p>
<p>Other features of WeSell protect both the buyer and seller by way of a built-in transaction escrow system. It is fully secure, deployed in the infinitely scalable Amazon EC2 Cloud, and of course, it runs on Ruby on Rails.</p>
<h3>About Homeschool Apple</h3>
<p>The <a href="http://homeschoolapple.com">Homeschool Apple</a> mission is to be an oasis for homeschoolers on the internet. HSA seeks to provide a one-stop place where homeschoolers can sell their used, new, self-published or downloadable curriculum, connect with others, and share their talents with the world. While far from complete, Homeschool Apple is well on its way, with the most unique homeschool store on the Web and a rock-solid platform on which to build. The site is currently in public Beta, and homeschoolers are encouraged to sign up for their FREE account now. Pass the word to your friends, won&#8217;t you?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netphase.com/2009/03/07/netphase-launches-homeschool-apple/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Netphase is Proud to Announce Our Sponsorship of BarCamp Charlotte</title>
		<link>http://blog.netphase.com/2008/12/15/netphase-is-proud-to-announce-our-sponsorship-of-barcamp-charlotte/</link>
		<comments>http://blog.netphase.com/2008/12/15/netphase-is-proud-to-announce-our-sponsorship-of-barcamp-charlotte/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 21:31:56 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Netphase News]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[barcamp]]></category>
		<category><![CDATA[charlotte]]></category>
		<category><![CDATA[conferences]]></category>
		<category><![CDATA[jruby]]></category>
		<category><![CDATA[presenting]]></category>
		<category><![CDATA[Ruby On Rails]]></category>

		<guid isPermaLink="false">http://www.netphase.com/?p=238</guid>
		<description><![CDATA[Netphase, Charlotte&#8217;s leading Ruby on Rails consulting firm, is now a top-tier sponsor for BarCamp Charlotte. We are very excited to help promote this incredible event, which will be held on January 24th, 2009 in Charlotte, NC.
In addition to sponsoring the inaugural event, Netphase intends to participate fully by both attending and presenting at BarCamp [...]]]></description>
			<content:encoded><![CDATA[<p>Netphase, Charlotte&#8217;s leading Ruby on Rails consulting firm, is now a top-tier sponsor for <a href="http://barcampcharlotte.com/">BarCamp Charlotte</a>. We are very excited to help promote this incredible event, which will be held on January 24th, 2009 in Charlotte, NC.</p>
<p>In addition to sponsoring the inaugural event, Netphase intends to participate fully by both attending and presenting at BarCamp Charlotte.</p>
<p>Don&#8217;t know what a BarCamp is?  The following is from the BarCamp Charlotte website:</p>
<p>BarCamp is an ad-hoc gathering born from the desire for people to share and learn in an open environment. It is an intense event with discussions, demos and interaction from participants.</p>
<p>BarCamp is defined by Wikipedia as follows:</p>
<blockquote><p>“…an international network of user generated conferences — open, participatory workshop-events, whose content is provided by participants — often focusing on early-stage web applications, and related open source technologies, social protocols, and open data formats.”</p></blockquote>
<p>For more info, visit <a href="http://barcamp.org/">BarCamp.org</a>, or check out some photos from <a href="http://www.flickr.com/photos/tags/barcamp/clusters/">BarCamps around the world on Flickr</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netphase.com/2008/12/15/netphase-is-proud-to-announce-our-sponsorship-of-barcamp-charlotte/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>AAAP Updated!</title>
		<link>http://blog.netphase.com/2008/12/05/acts_as_amazon_product-update/</link>
		<comments>http://blog.netphase.com/2008/12/05/acts_as_amazon_product-update/#comments</comments>
		<pubDate>Fri, 05 Dec 2008 17:45:02 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Acts As Amazon Product]]></category>
		<category><![CDATA[Netphase News]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Ruby On Rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[aaap]]></category>
		<category><![CDATA[acts_as_amazon_product]]></category>
		<category><![CDATA[gem]]></category>

		<guid isPermaLink="false">http://www.netphase.com/?p=160</guid>
		<description><![CDATA[It&#8217;s been a while since we have called attention to it, but over the course of the year, our Amazon product integration gem, acts_as_amazon_product, has been improved.
First, we got some participation from David Eisinger to help improve testing and some other critical features. Thanks, David! Recently though, we added some new functionality we had lying [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a while since we have called attention to it, but over the course of the year, our Amazon product integration gem, <a href="http://github.com/netphase/aaap/tree/master" target="_new">acts_as_amazon_product</a>, has been improved.</p>
<p>First, we got some participation from David Eisinger to help improve testing and some other critical features. Thanks, David! Recently though, we added some new functionality we had lying around in an old plugin called acts_as_amazonable.</p>
<p>The new functionality allows you to load Amazon product attributes into a new or existing model object on your system. You can define which fields are loaded, and which attributes in your model they map to. We are using this functionality on a new double-secret project that we are working on, and it is great. In that project, we are letting our users type in an ISBN code, and we pre-populate a form with all of the Amazon data we want for that product, saving the user from a lot of typing. We also pick up the images, so they don&#8217;t even have  to load an image to sell their item. Pretty cool!</p>
<p>Here&#8217;s how you use aaap&#8217;s new functionality:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'acts_as_amazon_product'</span>
&nbsp;
 <span style="color:#9966CC; font-weight:bold;">class</span> LocalBook <span style="color:#006600; font-weight:bold;">&amp;</span>lt; <span style="color:#6666ff; font-weight:bold;">ActiveRecord::Base</span>
   acts_as_amazon_product<span style="color:#006600; font-weight:bold;">&#40;</span>
     <span style="color:#ff3333; font-weight:bold;">:asin</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'isbn'</span>, <span style="color:#ff3333; font-weight:bold;">:name</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'title'</span>,
     <span style="color:#ff3333; font-weight:bold;">:access_key</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'0123456'</span>, <span style="color:#ff3333; font-weight:bold;">:associate_tag</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'assoc-20'</span>,
     <span style="color:#ff3333; font-weight:bold;">:auto_load_fields</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#006600; font-weight:bold;">&#123;</span>
         <span style="color:#ff3333; font-weight:bold;">:title</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'title'</span>,
         <span style="color:#ff3333; font-weight:bold;">:isbn</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'asin'</span>,
         <span style="color:#ff3333; font-weight:bold;">:publisher_name</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'manufacturer'</span>,
         <span style="color:#ff3333; font-weight:bold;">:author</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'author'</span><span style="color:#006600; font-weight:bold;">&#125;</span>
   <span style="color:#006600; font-weight:bold;">&#41;</span>
 <span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>The keys in the auto_load_fields hash are the fields in your object, and the values are their Amazon equivalents. In the true Rails convention over configuration spirit, we have included some of the most popular auto load fields as defaults. If your object contains the following attributes, they will automatically be loaded with their Amazon equivalents:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#ff3333; font-weight:bold;">:auto_load_fields</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#006600; font-weight:bold;">&#123;</span>
     <span style="color:#ff3333; font-weight:bold;">:title</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'title'</span>,
     <span style="color:#ff3333; font-weight:bold;">:isbn</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'asin'</span>,
     <span style="color:#ff3333; font-weight:bold;">:publisher_name</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'manufacturer'</span>,
     <span style="color:#ff3333; font-weight:bold;">:author</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'author'</span>,
     <span style="color:#ff3333; font-weight:bold;">:binding</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'binding'</span>,
     <span style="color:#ff3333; font-weight:bold;">:list_price</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'listprice/amount'</span>,
     <span style="color:#ff3333; font-weight:bold;">:pages</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'numberofpages'</span>,
     <span style="color:#ff3333; font-weight:bold;">:description</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'content'</span>,
     <span style="color:#ff3333; font-weight:bold;">:small_image_url</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'smallimage/url'</span>,
     <span style="color:#ff3333; font-weight:bold;">:medium_image_url</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'mediumimage/url'</span>,
     <span style="color:#ff3333; font-weight:bold;">:large_image_url</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'largeimage/url'</span>,
     <span style="color:#ff3333; font-weight:bold;">:detail_url</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'detailpageurl'</span>
<span style="color:#006600; font-weight:bold;">&#125;</span></pre></div></div>

<p>Don&#8217;t worry if your object does not have some or most of these fields; Acts as Amazon Product is smart enough to check to see if the method exists before attempting to load up the Amazon value.</p>
<p>Now, if by some coincidence you have some fields in your local object that have the same name as our auto_load defaults, you can choose to specifically ignore those fields using, you guessed it, :ignore_fields.  :ignore_fields is a simple array of fields in your object that you do NOT want to be replaced with the Amazon equivalent.  You would specify them like this:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">acts_as_amazon_product<span style="color:#006600; font-weight:bold;">&#40;</span>
    <span style="color:#ff3333; font-weight:bold;">:asin</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'isbn'</span>, <span style="color:#ff3333; font-weight:bold;">:name</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'title'</span>,
    <span style="color:#ff3333; font-weight:bold;">:access_key</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'0123456'</span>, <span style="color:#ff3333; font-weight:bold;">:associate_tag</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#996600;">'assoc-20'</span>,
    <span style="color:#ff3333; font-weight:bold;">:ignore_fields</span> =<span style="color:#006600; font-weight:bold;">&amp;</span>gt; <span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#ff3333; font-weight:bold;">:small_image_url</span>, <span style="color:#ff3333; font-weight:bold;">:medium_image_url</span><span style="color:#006600; font-weight:bold;">&#93;</span>
  <span style="color:#006600; font-weight:bold;">&#41;</span></pre></div></div>

<p>In this instance, the object in question would load Amazon info for any of the default fields that the object has, with the exception of the small_image_url and medium_image_url values.</p>
<p>To load the Amazon values into your object for local storage, you may call the following methods:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;">load_from_amazon<span style="color:#006600; font-weight:bold;">&#40;</span>title_or_asin, by_title = <span style="color:#0000FF; font-weight:bold;">false</span><span style="color:#006600; font-weight:bold;">&#41;</span>
load_from_amazon!<span style="color:#006600; font-weight:bold;">&#40;</span>title_or_asin, by_title = <span style="color:#0000FF; font-weight:bold;">false</span><span style="color:#006600; font-weight:bold;">&#41;</span></pre></div></div>

<p>The two methods do exactly the same thing, except the first simply returns a new, unsaved object with its Amazon-like fields loaded with their appropriate Amazon values.  The second version (load_from_amazon!) goes one step further and saves the object for good measure.</p>
<p>You may pass either an isbn (asin) or a title in.  If you are passing a title, you need to specify that you are passing a title by also passing true as the second parameter so we will perform an item_search rather than an item_lookup. Note that passing a title is risky business, since currently the code will take the first result returned and load that into your object. So unless your title is unique, I would recommend sticking with the isbn (asin) value.</p>
<p>Since that is the default, all you need to do would be something like this:</p>

<div class="wp_syntax"><div class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#0066ff; font-weight:bold;">@local_book</span> = LocalBook.<span style="color:#9900CC;">load_from_amazon</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">'1590598415'</span><span style="color:#006600; font-weight:bold;">&#41;</span></pre></div></div>

<p>If your object was similar to the LocalBook object in our example, for instance, you would not need to specify the auto_load_fields in the acts_as call at all.  The title, isbn, publisher_name and author methods would automatically be called once you call load_from_amazon, and their values populated appropriately.</p>
<p>It is important to note that if you call load_from_amazon with an invalid asin, you will simply get back an empty object.</p>
<p>Now, calling load_from_amazon still allows you to take advantage of the other Acts as Amazon features, like the dynamic loading of Amazon attributes on the fly by using the various amazon.foo methods as it always has.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netphase.com/2008/12/05/acts_as_amazon_product-update/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
