<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Steve Francia's Epic Blog</title><link>http://spf13.com</link><description></description><language>en</language><lastBuildDate>Mon, 14 May 2012 14:45:02 PDT</lastBuildDate><generator>http://wordpress.org/?v=3.3</generator><sy:updatePeriod xmlns:sy="http://purl.org/rss/1.0/modules/syndication/">hourly</sy:updatePeriod><sy:updateFrequency xmlns:sy="http://purl.org/rss/1.0/modules/syndication/">1</sy:updateFrequency><feedburner:info uri="spf13" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://spf13.com/xml.rss" /><feedburner:emailServiceId>spf13</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://spf13.com/xml.rss" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://www.plusmo.com/add?url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://plusmo.com/res/graphics/fbplusmo.gif">Subscribe with Plusmo</feedburner:feedFlare><feedburner:feedFlare href="http://www.thefreedictionary.com/_/hp/AddRSS.aspx?http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://img.tfd.com/hp/addToTheFreeDictionary.gif">Subscribe with The Free Dictionary</feedburner:feedFlare><feedburner:feedFlare href="http://www.bitty.com/manual/?contenttype=rssfeed&amp;contentvalue=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.bitty.com/img/bittychicklet_91x17.gif">Subscribe with Bitty Browser</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare href="http://mix.excite.eu/add?feedurl=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://image.excite.co.uk/mix/addtomix.gif">Subscribe with Excite MIX</feedburner:feedFlare><feedburner:feedFlare href="http://www.webwag.com/wwgthis.php?url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.webwag.com/images/wwgthis.gif">Subscribe with Webwag</feedburner:feedFlare><feedburner:feedFlare href="http://www.podcastready.com/oneclick_bookmark.php?url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.podcastready.com/images/podcastready_button.gif">Subscribe with Podcast Ready</feedburner:feedFlare><feedburner:feedFlare href="http://www.wikio.com/subscribe?url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.wikio.com/shared/img/add2wikio.gif">Subscribe with Wikio</feedburner:feedFlare><feedburner:feedFlare href="http://www.dailyrotation.com/index.php?feed=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.dailyrotation.com/rss-dr2.gif">Subscribe with Daily Rotation</feedburner:feedFlare><feedburner:feedFlare href="http://www.flurry.com/pushRssFeed.do?r=fb&amp;url=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.flurry.com/images/flurry_rss_logo2.gif">Subscribe with Flurry</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsalloy.com/?rss=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.newsalloy.com/subrss3.gif">Subscribe with NewsAlloy</feedburner:feedFlare><feedburner:feedFlare href="http://download.attensa.com/app/get_attensa.html?feedurl=http%3A%2F%2Fspf13.com%2Fxml.rss" src="http://www.attensa.com/blogs/attensa/WindowsLiveWriter/BadgeredintoBadges_10C02/attensa_feed_button5.gif">Subscribe with Attensa for Outlook</feedburner:feedFlare><feedburner:browserFriendly>Please enjoy Subscribing to Steve Francia's Blog, spf13.com . </feedburner:browserFriendly><item><title>Getting Started with MongoDB and PHP</title><link>http://feedproxy.google.com/~r/spf13/~3/1hSG_YDysJU/getting-started-with-mongodb-and-php</link><category>Development</category><category>MongoDB</category><category>php</category><category>mongodb</category><category>PHP</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Mon, 14 May 2012 14:45:02 PDT</pubDate><guid isPermaLink="false">http://spf13.com/?p=1795</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Nearly 3 years ago I discovered a new database that literally changed my life. I know, that&#8217;s a pretty bold claim, but it&#8217;s true. While leading the engineering team at <a href="http://osky.co/uGeJpa">OpenSky</a> I faced a problem I was well familiar with. How to build a e-commerce product that: 1. Provided performance and scale 2. Handled many verticals and 3. Provided proper indexing on key attributes. In search for a better solution to this problem I encountered MongoDB. I soon experienced a realization that not only was MongoDB the solution to my e-commerce challenge, but fundamentally would change the way all development happens.</p>
<p>This is the first in a series of posts on MongoDB and PHP that will both explain why you should use MongoDB and teach you how. In this first post we will begin with installing the necessary servers and drivers to be able to use MongoDB with PHP.</p>
<h1>Introduction to MongoDB</h1>
<p>MongoDB (from &#8220;hu<strong>mongo</strong>us&#8221;) is a scalable, high-performance, open source document database written in C++. While many people hear &#8216;document database&#8217; and they think of pdf and doc files, the term document really is analogous to an array in PHP. Effectively MongoDB is a persistent storage engine for PHP arrays and objects (as well as any other language) with read through, write thorough memory caching, true high availability,  an elegant interface and seamless horizontal scale. Once you write an application with MongoDB you&#8217;ll wonder why anyone uses anything else.</p>
<h1>Installing MongoDB</h1>
<p>Installing MongoDB is as easy as using your package installer to install the package. Whether you are using Linux, Mac or Windows, it&#8217;s easy to install MongoDB.</p>
<p><a title="" href="http://docs.mongodb.org/manual">The MongoDB Manual</a> has a <a title="" href="http://docs.mongodb.org/manual/installation/">complete guide on installing MongoDB</a> for all the different systems it supports.</p>
<h1>Installing PHP Driver for MongoDB</h1>
<p>The 1st step is to install PECL. PECL is the default installer for all C extensions to the PHP driver. Usually if you have PHP installed you already have PECL. You may be surprised to find that Mac OS X doesn&#8217;t include PECL, in the event you don&#8217;t have PECL already, here&#8217;s how to install it.</p>
<h3>Installing PEAR &amp; PECL</h3>
<ol>
<li>cd /usr/lib/php</li>
<li><tt>sudo php install-pear-nozlib.phar</tt></li>
<li>Edit <tt>/etc/php.ini</tt> and find the line:  <tt>;include_path = ".:/php/includes"<br />
</tt>change it to: <tt>include_path = ".:/usr/lib/php/pear"<br />
</tt><em>make sure to remove the &#8216;;&#8217; at the beginning of that line.</em></li>
<li><tt>sudo pear channel-update pear.php.net</tt></li>
<li><tt>sudo pecl channel-update pecl.php.net</tt></li>
<li><tt>sudo pear upgrade-all</tt></li>
</ol>
<p>Once you have PECL installed the process is easy to install the Mongo DB driver. A simple</p>
<pre>pecl install mongo</pre>
<p>is all it takes. Once that&#8217;s completed you&#8217;ll need to add the extension line to your PHP.ini file and restart Apache. For *nix the line is</p>
<pre>extension=mongo.so</pre>
<p>Once Apache is restarted you should confirm that the MongoDB extension is installed by checking php_info(). A shortcut for this is</p>
<pre>$ php --re mongo</pre>
<h1>Creating your first connection to MongoDB</h1>
<p>Creating a connection to MongoDB is pretty easy. We create a new Mongo object and pass in the URI of the server you&#8217;re connecting to. The following example will show you how to connect to a Mongo DB server, create a db and a collection and insert a single record into that collection.</p>
<code class="code">&lt;?php
// open connection to MongoDB server
$conn = new Mongo('localhost');

// access people collection inside the test database
$people = $conn-&gt;test-&gt;people;

$person = [ 'name' =&gt; 'Steve Francia', 'alias' =&gt; 'spf13'];
$people-&gt;save($person);
print_r($people-&gt;findAll());
?&gt;</code>
<p>Stay tuned for my next post which I will demonstrate how to perform basic crud operations in MongoDB.</p>
<div class="note">
<div class="note_content">
<div id="related-posts">
<div id="related-posts-MRP_all" class="related-posts-type">
<h3>Related Posts</h3>
<ul>
<li><a href="http://spf13.com/post/mongodb-and-php-the-book">MongoDB and PHP, The Book</a></li>
<li><a href="http://spf13.com/post/mongodb-and-php-at-zendcon-2011">MongoDB and PHP at ZendCon 2011</a></li>
<li><a href="http://spf13.com/post/mongodb-php-and-the-cloud-php-cloud-summit-2011">MongoDB, PHP and the Cloud &#8211; PHP Cloud Summit 2011</a></li>
<li><a href="http://spf13.com/post/nosql-databases-and-managing-big-data">NoSQL databases and Managing Big Data </a></li>
</ul>
</div>
</div></div>
</div>
<div><a href="http://spf13.com/post/getting-started-with-mongodb-and-php"><img width="150" height="124" src="http://spf13.com/wp-content/uploads/2012/05/MongoPHP-150x124.png" class="attachment-thumbnail wp-post-image" alt="MongoPHP" title="MongoPHP" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=1hSG_YDysJU:tSq215oqTiA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/1hSG_YDysJU" height="1" width="1"/>]]></content:encoded><description>Nearly 3 years ago I discovered a new database that literally changed my life. I know, that&amp;#8217;s a pretty bold claim, but it&amp;#8217;s true. While leading the engineering team at OpenSky I faced a problem I was well familiar with. How to build a e-commerce product that: 1. Provided performance and scale 2. Handled many ...&lt;div&gt;&lt;a href="http://spf13.com/post/getting-started-with-mongodb-and-php"&gt;&lt;img width="150" height="124" src="http://spf13.com/wp-content/uploads/2012/05/MongoPHP-150x124.png" class="attachment-thumbnail wp-post-image" alt="MongoPHP" title="MongoPHP" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/getting-started-with-mongodb-and-php/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://spf13.com/post/getting-started-with-mongodb-and-php</feedburner:origLink></item><item><title>NoSQL databases and Managing Big Data</title><link>http://feedproxy.google.com/~r/spf13/~3/8Li_a9YyMBM/nosql-databases-and-managing-big-data</link><category>Architecture</category><category>Development</category><category>MongoDB</category><category>Presentations</category><category>Scalability</category><category>big data</category><category>mongodb</category><category>nosql</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Tue, 08 May 2012 08:55:27 PDT</pubDate><guid isPermaLink="false">http://spf13.com/?p=1786</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>I had the unique opportunity to present at the annual technology forum <a href="http://www.insightpartners.com/">Insight Venture Partners</a> holds for their portfolio companies. Over 100 CTOs gathered in NYC to hear from great presenters from companies like <a href="http://10gen.com">10gen</a>, <a href="http://tumblr.com">Tumblr</a>, <a href="http://www.shutterstock.com/">Shutterstock</a> and <a href="http://buddymedia.com/">Buddy Media</a>. </p>
<p>I&#8217;ve included a slightly longer version of the presentation given which includes a few slides that I cut out for brevity to fit in the allocated time while still allowing time for questions. </p>
<p><a href="http://spf13.com/post/mongodb-sort-conference-2011">Another presentation I gave is similar</a> but takes a broader review on MongoDB, including example schemas, queries and how sharding and replication work with MongoDB.</p>
<div style="width:595px" id="__ss_12850358"> <strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/spf13/nosql-databases-and-managing-big-data" title="NoSQL databases and managing big data" target="_blank">NoSQL databases and managing big data</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/12850358" width="595" height="497" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
<div style="padding:5px 0 12px"> View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/spf13" target="_blank">Steve Francia</a> </div>
</p></div>
<div><a href="http://spf13.com/post/nosql-databases-and-managing-big-data"><img width="150" height="112" src="http://spf13.com/wp-content/uploads/2012/05/NoSQL-and-Managing-Big-Data-150x112.png" class="attachment-thumbnail wp-post-image" alt="NoSQL and Managing Big Data" title="NoSQL and Managing Big Data" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=8Li_a9YyMBM:-a97_79d1X4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/8Li_a9YyMBM" height="1" width="1"/>]]></content:encoded><description>I had the unique opportunity to present at the annual technology forum Insight Venture Partners holds for their portfolio companies. Over 100 CTOs gathered in NYC to hear from great presenters from companies like 10gen, Tumblr, Shutterstock and Buddy Media. I&amp;#8217;ve included a slightly longer version of the presentation given which includes a few slides ...&lt;div&gt;&lt;a href="http://spf13.com/post/nosql-databases-and-managing-big-data"&gt;&lt;img width="150" height="112" src="http://spf13.com/wp-content/uploads/2012/05/NoSQL-and-Managing-Big-Data-150x112.png" class="attachment-thumbnail wp-post-image" alt="NoSQL and Managing Big Data" title="NoSQL and Managing Big Data" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/nosql-databases-and-managing-big-data/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://spf13.com/post/nosql-databases-and-managing-big-data</feedburner:origLink></item><item><title>MongoDB, Hadoop and Humongous Data</title><link>http://feedproxy.google.com/~r/spf13/~3/AW-VBRy82L8/mongodb-hadoop-and-humongous-data</link><category>Architecture</category><category>MongoDB</category><category>Presentations</category><category>hadoop</category><category>mongodb</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Fri, 04 May 2012 16:06:11 PDT</pubDate><guid isPermaLink="false">http://spf13.com/?p=1780</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Learn how to integrate MongoDB with Hadoop for large-scale distributed data processing. Using Hadoop&#8217;s MapReduce and Streaming you will learn how to do analytics and ETL on large datasets with the ability to load and save data against MongoDB. With support for Hadoop streaming support goes beyond the native Java enabling map reduce to be run in languages like Python and Ruby.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div style="width:595px" id="__ss_12805355"> <strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/spf13/mongodb-hadoop-and-humongous-data" title="MongoDB, Hadoop and Humongous Data" target="_blank">MongoDB, Hadoop and Humongous Data</a></strong> <object id="__sse12805355" width="595" height="497"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=mongodbhadoopandhumongousdata-120504175917-phpapp01&#038;stripped_title=mongodb-hadoop-and-humongous-data&#038;userName=spf13" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><param name="wmode" value="transparent"/><embed name="__sse12805355" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=mongodbhadoopandhumongousdata-120504175917-phpapp01&#038;stripped_title=mongodb-hadoop-and-humongous-data&#038;userName=spf13" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" wmode="transparent" width="595" height="497"></embed></object>
<div style="padding:5px 0 12px"> View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/spf13" target="_blank">Steve Francia</a> </div>
</p></div>
<div><a href="http://spf13.com/post/mongodb-hadoop-and-humongous-data"><img width="150" height="112" src="http://spf13.com/wp-content/uploads/2012/05/Screen-Shot-2012-05-04-at-7.18.12-PM-150x112.png" class="attachment-thumbnail wp-post-image" alt="Screen Shot 2012-05-04 at 7.18.12 PM" title="Screen Shot 2012-05-04 at 7.18.12 PM" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=AW-VBRy82L8:Elsjv_woqzc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/AW-VBRy82L8" height="1" width="1"/>]]></content:encoded><description>Learn how to integrate MongoDB with Hadoop for large-scale distributed data processing. Using Hadoop&amp;#8217;s MapReduce and Streaming you will learn how to do analytics and ETL on large datasets with the ability to load and save data against MongoDB. With support for Hadoop streaming support goes beyond the native Java enabling map reduce to be ...&lt;div&gt;&lt;a href="http://spf13.com/post/mongodb-hadoop-and-humongous-data"&gt;&lt;img width="150" height="112" src="http://spf13.com/wp-content/uploads/2012/05/Screen-Shot-2012-05-04-at-7.18.12-PM-150x112.png" class="attachment-thumbnail wp-post-image" alt="Screen Shot 2012-05-04 at 7.18.12 PM" title="Screen Shot 2012-05-04 at 7.18.12 PM" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/mongodb-hadoop-and-humongous-data/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://spf13.com/post/mongodb-hadoop-and-humongous-data</feedburner:origLink></item><item><title>Don’t look now, I’m on DZone</title><link>http://feedproxy.google.com/~r/spf13/~3/PLYQeFKUAmU/dont-look-now-im-on-dzone</link><category>Personal</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Wed, 18 Apr 2012 13:36:55 PDT</pubDate><guid isPermaLink="false">http://spf13.com/?p=1772</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>I&#8217;m happy to announce that going forward you&#8217;ll be able to read my articles on DZone as well as spf13.com. DZone has invited me to join their MVB program. They describe their program as:</p>
<blockquote><p>DZone&#8217;s Most Valuable Blogger program brings together a group of highly talented bloggers, authors, and technologists actively writing about topics of interest to the developer community. These people are recognized in the industry for their contributions and deep technical knowledge on subjects ranging from software design and architecture to programming on a range of platforms including Java, .NET, Ruby and others.</p>
<p>The MVB program builds mutually beneficial partnerships between DZone and community bloggers whose articles are of interest to the developer community. The program simplifies the process of publishing selected blog articles by MVB members onto DZone&#8217;s network of development-focused editorial websites. Through this process, our MVBs enjoy substantially increased visibility and our audience enjoys great content.</p></blockquote>
<p>You can learn more about the MVB program at  <a href="http://www.dzone.com/page/mvbs">http://www.dzone.com/page/mvbs</a> and see a list of the great bloggers already part of the program.</p>
<p>I want to thank the DZone team for the chance to share my knowledge, insights and ramblings with a larger audience. If you are new to my <a href="http://spf13.com">blog</a>, please do the following things to stay current with me:</p>
<ul>
<ul>
<li>Follow me on Twitter <a href="http://twitter.com/spf13">@spf13 </a></li>
<li>Subscribe to my <a href="http://feeds.feedburner.com/spf13">blog feed</a></li>
</ul>
</ul>
<p>Lastly, please give feedback on any articles you read. I helps me to become a better blogger and provide better articles for you and our new friends at DZone to read.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=PLYQeFKUAmU:mJ384J6SzQ0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/PLYQeFKUAmU" height="1" width="1"/>]]></content:encoded><description>I&amp;#8217;m happy to announce that going forward you&amp;#8217;ll be able to read my articles on DZone as well as spf13.com. DZone has invited me to join their MVB program. They describe their program as: DZone&amp;#8217;s Most Valuable Blogger program brings together a group of highly talented bloggers, authors, and technologists actively writing about topics of ...</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/dont-look-now-im-on-dzone/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://spf13.com/post/dont-look-now-im-on-dzone</feedburner:origLink></item><item><title>New personal site powered by GitHub Pages</title><link>http://feedproxy.google.com/~r/spf13/~3/FJSH6kL7b2o/new-personal-site-powered-by-github-pages</link><category>Personal</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Mon, 09 Apr 2012 07:18:26 PDT</pubDate><guid isPermaLink="false">http://spf13.com/?p=1764</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>At 10gen we had new headshots taken recently. I think mine came out great. I took this opporitunity to play with GitHub pages and update <a href="http://stevefrancia.com">http://stevefrancia.com</a>. You should goto <a href="http://stevefrancia.com">http://stevefrancia.com</a> and checkout my new personal page. If you like it, fork it. The entire page is here <a href="https://github.com/spf13/spf13.github.com">https://github.com/spf13/spf13.github.com</a>, it being a derivative of <a href="https://github.com/weightshift/The-Personal-Page">https://github.com/weightshift/The-Personal-Page</a>.</p>
<p style="text-align: center;"><a href="http://stevefrancia.com"><img class="wp-image-1765 aligncenter" title="stevefrancia.com" src="http://spf13.com/wp-content/uploads/2012/04/stevefrancia.com_-1024x640.png" class="lightbox" rel="post_1764" alt="" width="717" height="448" /></a></p>
<div><a href="http://spf13.com/post/new-personal-site-powered-by-github-pages"><img width="150" height="93" src="http://spf13.com/wp-content/uploads/2012/04/stevefrancia.com_-150x93.png" class="attachment-thumbnail wp-post-image" alt="stevefrancia.com" title="stevefrancia.com" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=FJSH6kL7b2o:M-c7Qkb4LjU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/FJSH6kL7b2o" height="1" width="1"/>]]></content:encoded><description>At 10gen we had new headshots taken recently. I think mine came out great. I took this opporitunity to play with GitHub pages and update http://stevefrancia.com. You should goto http://stevefrancia.com and checkout my new personal page. If you like it, fork it. The entire page is here https://github.com/spf13/spf13.github.com, it being a derivative of https://github.com/weightshift/The-Personal-Page.&lt;div&gt;&lt;a href="http://spf13.com/post/new-personal-site-powered-by-github-pages"&gt;&lt;img width="150" height="93" src="http://spf13.com/wp-content/uploads/2012/04/stevefrancia.com_-150x93.png" class="attachment-thumbnail wp-post-image" alt="stevefrancia.com" title="stevefrancia.com" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/new-personal-site-powered-by-github-pages/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://spf13.com/post/new-personal-site-powered-by-github-pages</feedburner:origLink></item><item><title>spf13-vim 3.0 release and new website</title><link>http://feedproxy.google.com/~r/spf13/~3/En0HimoON_E/spf13-vim-3-0-release-and-new-website</link><category>Development</category><category>VIM</category><category>.vimrc</category><category>spf13-vim</category><category>vim</category><category>Vim (text editor)</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Fri, 06 Apr 2012 13:16:53 PDT</pubDate><guid isPermaLink="false">http://spf13.com/?p=1756</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>This post is a bit behind the actual releases, but should be announced here nevertheless. Announcing the 3rd major release of spf13-vim. spf13-vim is a distribution of vim plugins and resources for Vim, GVim and MacVim. It is a completely cross platform distribution that stays true to the feel of vim while providing modern features like a plugin management system, autocomplete, tags and tons more. It grew out of my vim configuration which I put on GitHub. As more an more people began to use it contributions came back and flurished. It now ranks as one of the top .5% of projects on github.<span id="more-1756"></span>Additionally I created a new site for this project. <a href="http://vim.spf13.com">http://vim.spf13.com</a> is entirely powered by GitHub pages. If you would like to contribute, simply fork spf13-vim, checkout the gh-pages branch and make a pull request.</p>
<p>The new site provides instructions on installing spf13-vim on any platform and contains an overview of all the included modules along with a getting started guide.</p>
<p style="text-align: center;"><a href="http://vim.spf13.com"><img class="wp-image-1758 aligncenter" title="vim.spf13.com" src="http://spf13.com/wp-content/uploads/2012/04/Screen-Shot-2012-04-03-at-5.42.32-PM-1024x631.png" class="lightbox" rel="post_1756" alt="" width="675" height="417" /></a></p>
<div><a href="http://spf13.com/post/spf13-vim-3-0-release-and-new-website"><img width="150" height="92" src="http://spf13.com/wp-content/uploads/2012/04/Screen-Shot-2012-04-03-at-5.42.32-PM-150x92.png" class="attachment-thumbnail wp-post-image" alt="vim.spf13.com" title="vim.spf13.com" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=En0HimoON_E:0WdeGYfQh1Q:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/En0HimoON_E" height="1" width="1"/>]]></content:encoded><description>This post is a bit behind the actual releases, but should be announced here nevertheless. Announcing the 3rd major release of spf13-vim. spf13-vim is a distribution of vim plugins and resources for Vim, GVim and MacVim. It is a completely cross platform distribution that stays true to the feel of vim while providing modern features ...&lt;div&gt;&lt;a href="http://spf13.com/post/spf13-vim-3-0-release-and-new-website"&gt;&lt;img width="150" height="92" src="http://spf13.com/wp-content/uploads/2012/04/Screen-Shot-2012-04-03-at-5.42.32-PM-150x92.png" class="attachment-thumbnail wp-post-image" alt="vim.spf13.com" title="vim.spf13.com" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/spf13-vim-3-0-release-and-new-website/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">3</slash:comments><feedburner:origLink>http://spf13.com/post/spf13-vim-3-0-release-and-new-website</feedburner:origLink></item><item><title>Getting started with Drupal and MongoDB</title><link>http://feedproxy.google.com/~r/spf13/~3/tkLfq27j6GM/getting-started-with-drupal-and-mongodb</link><category>Development</category><category>MongoDB</category><category>php</category><category>Drupal</category><category>mongodb</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Wed, 14 Mar 2012 11:59:55 PDT</pubDate><guid isPermaLink="false">http://spf13.com/?p=1744</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>MongoDB is the most full featured scalable database taking the tech world by storm. Drupal is the standard in content management powering magazines, blogs online newspapers and much more. It&#8217;s only natural that they would get together to provide a fast dynamic scalable CMS system. Whenever a Drupal site needs to scale dynamic content they turn to MongoDB to be able to deliver. The <a href="http://examiner.com">Examiner.com</a> was the pioneer in this approach and many Drupal sites have followed suit.</p>
<p>Here&#8217;s how to get started with a MongoDB backed Drupal.</p>
<hr />
<p>As it currently stands it is not possible for Drupal to run a pure MongoDB installation with Drupal. Drupal has made a lot of progress towards abstracting out database connectivity into a central model layer with Drupal 7 and Drupal 8 promises even more. However it is still a work in progress and while a majority of the functionality is available as MongoDB backed, as it stands today a few of the components remain dependant on SQL.</p>
<p>As most of the work to port Drupal to MongoDB has been towards scalability and performance, it is possible to have a site where public page views are 100% on MongoDB. Performance benchmarks on a MongoDB backed Drupal instance are quite impressive.</p>
<h1>Installing MonogDB</h1>
<p>These are the very brief instructions and make some assumptions. For more complete installation instructions please see the <a href="http://www.mongodb.org/display/DOCS">documentation</a>.</p>
<h3>Installing on linux</h3>
<pre>
<div class="codecolorer-container text vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">apt-get install mongodb-10gen or yum install mongodb</div></div>
</pre>
<h3>Installing on windows</h3>
<p>Follow the install directions on the <a href="http://www.mongodb.org/display/DOCS/Quickstart+Windows">MongoDB site</a>.</p>
<h3>Installing on mac</h3>
<pre>
<div class="codecolorer-container text vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">brew install mongodb</div></div>
</pre>
<h1>Installing the MongoDB PHP driver</h1>
<p>The complete directions can be found in the <a href="http://www.php.net/manual/en/mongo.installation.php">MongoDB PHP documentation</a>.</p>
<h3>Using Pecl to install the driver</h3>
<p>Pecl is the preferred way to install the MongoDB driver. If you haven&#8217;t used pecl before, you may need to install some prerequisites first.</p>
<pre>
<div class="codecolorer-container text vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">pecl install mongo</div></div>
</pre>
<h3>Configuring PHP to use the driver</h3>
<p>Using your <a href="http://vim.spf13.com">favorite editor</a> add the following line to your php.ini file.</p>
<pre>
<div class="codecolorer-container text vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">extension=mongo.so</div></div>
</pre>
<h1>Installing Drupal</h1>
<p>This is the most complicated part and I will simply provide the excellent directions already given in the Drupal install.txt file with a few clarifications.</p>
<h3>1. Download and extract Drupal.</h3>
<p>You can obtain the latest Drupal release from http://drupal.org &#8212; the files<br />
are available in .tar.gz and .zip formats and can be extracted using most<br />
compression tools.</p>
<p>To download and extract the files, on a typical Unix/Linux command line, use<br />
the following commands (assuming you want version x.y of Drupal in .tar.gz<br />
format):</p>
<pre>
<div class="codecolorer-container text vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">wget http://drupal.org/files/projects/drupal-x.y.tar.gz <br />
tar -zxvf drupal-x.y.tar.gz</div></div>
</pre>
<p>This will create a new directory drupal-x.y/ containing all Drupal files and<br />
directories. Then, to move the contents of that directory into a directory<br />
within your web server&#8217;s document root or your public HTML directory,<br />
continue with this command:</p>
<pre>
<div class="codecolorer-container text vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp;mv drupal-x.y/* drupal-x.y/.htaccess /path/to/your/installation</div></div>
</pre>
<h3>2. Create the Drupal database.</h3>
<p>Because Drupal stores all site information in a database, you must create<br />
this database in order to install Drupal, and grant Drupal certain database<br />
privileges (such as the ability to create tables). Currently this needs to be a relational database. Drupal supports SQLite, PostgreSQL and MySQL. For details, consult INSTALL.mysql.txt, INSTALL.pgsql.txt, or INSTALL.sqlite.txt. You may also<br />
need to consult your web hosting provider for instructions specific to your web host.</p>
<p>Take note of the username, password, database name, and hostname as you<br />
create the database. You will enter this information during the install.</p>
<h3>3. Run the install script.</h3>
<p>To run the install script, point your browser to the base URL of your<br />
website (e.g., http://www.example.com).</p>
<p>You will be guided through several screens to set up the database, add the<br />
site maintenance account (the first user, also known as user/1), and provide<br />
basic web site settings.</p>
<p>During installation, several files and directories need to be created, which<br />
the install script will try to do automatically. However, on some hosting<br />
environments, manual steps are required, and the install script will tell<br />
you that it cannot proceed until you fix certain issues. This is normal and<br />
does not indicate a problem with your server.</p>
<h1>Integrating MongoDB and Drupal</h1>
<h3>Installing the Drupal MongoDB plugin</h3>
<p>The MongoDB Drupal plugin installs like any drupal plugin. Either install via the administration screen, or simply download the module at http://drupal.org/project/mongodb and uncompress it into the sites/all/modules/ directory.</p>
<h3>Configure Drupal to use the MongoDB plugin</h3>
<p>Currently there isn&#8217;t an admin interface to configure MongoDB, luckily it&#8217;s easy enough to configure manually.</p>
<p>First create a file called local.settings.php (it should be in the same directory as settings.php).</p>
<p>Populate the file with the following contents. Make sure to replace the placeholders [YOURDATABASENAME] and [SITENAME].</p>
<p>YOURDATABASENAME name can be anything doesn&#8217;t need to be created prior to use.<br />
SITENAME will either be your sitename as it is named in Drupal. It may be called &#8216;Default&#8217; if this is the primary site for the Drupal installation.</p>
<code class="code">&lt;?php
    #MongoDB
    $conf['mongodb_connections'] = array(
         'default' =&gt; array(                             // Connection name/alias
           'host' =&gt; 'localhost',                       // Omit USER:PASS@ if Mongo isn't configured to use authentication.
           'db' =&gt; '[YOURDATABASENAME]'                   // Database name. Make something up, mongodb will automatically create the database.
          ),
       );

       include_once('./includes/cache.inc');
       # -- Configure Cache
       $conf['cache_backends'][] = 'sites/[SITENAME]/modules/mongodb/mongodb_cache/mongodb_cache.inc';
       $conf['cache_class_cache'] = 'DrupalMongoDBCache';
       $conf['cache_class_cache_bootstrap'] = 'DrupalMongoDBCache';
       $conf['cache_default_class'] = 'DrupalMongoDBCache';
       # -- Don't touch SQL if in Cache
       $conf['page_cache_without_database'] = TRUE;
       $conf['page_cache_invoke_hooks'] = FALSE;
          # Session Caching
       $conf['session_inc'] = 'sites/[SITENAME]/modules/mongodb/mongodb_session/mongodb_session.inc';
       $conf['cache_session'] = 'DrupalMongoDBCache';
       # Field Storage
       $conf['field_storage_default'] = 'mongodb_field_storage';
          # Message Queue      $conf['queue_default_class'] = 'MongoDBQueue';
    ?&gt;</code>
<h3>Enabling the MongoDB Module</h3>
<p>Login to your drupal administration screen.</p>
<p>Navigate to the modules management screen.</p>
<p>First we need to disable the block module from Drupal Core. This will conflict with the MongoDB Block module and Drupal won&#8217;t let you enable the MongoDB plugin with this enabled. Uncheck Block and click save.</p>
<p>Now as the screenshot below demonstrates scroll to the bottom of the modules adminstration screen to the MongoDB section and enable all the modules.</p>
<p><img class="aligncenter size-medium wp-image-1746" title="Drupal Admin" src="http://spf13.com/wp-content/uploads/2012/03/Drupal-Admin-300x197.png" alt="" width="300" height="197" /></p>
<h1>Resources</h1>
<ul>
<li><a href="http://chicago2011.drupal.org/sessions/practical-mongodb-and-drupal">http://chicago2011.drupal.org/sessions/practical-mongodb-and-drupal</a></li>
<li><a href="http://cyrve.com/mongodb">http://cyrve.com/mongodb</a></li>
<li><a href="http://www.slideshare.net/ForestMars/mongo-drupal">http://www.slideshare.net/ForestMars/mongo-drupal</a></li>
<li><a href="http://www.mongodb.org/display/DOCS">http://www.mongodb.org/display/DOCS</a></li>
<li><a href="http://www.mongodb.org/display/DOCS/Quickstart+Windows">http://www.mongodb.org/display/DOCS/Quickstart+Windows</a></li>
<li><a href="http://www.php.net/manual/en/mongo.installation.php">http://www.php.net/manual/en/mongo.installation.php</a></li>
<li><a href="http://vim.spf13.com">http://vim.spf13.com</a></li>
</ul>
<div><a href="http://spf13.com/post/getting-started-with-drupal-and-mongodb"><img width="150" height="98" src="http://spf13.com/wp-content/uploads/2012/03/Drupal-Admin-150x98.png" class="attachment-thumbnail wp-post-image" alt="Drupal Admin" title="Drupal Admin" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=tkLfq27j6GM:_1UhJn3PqCg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/tkLfq27j6GM" height="1" width="1"/>]]></content:encoded><description>MongoDB is the most full featured scalable database taking the tech world by storm. Drupal is the standard in content management powering magazines, blogs online newspapers and much more. It&amp;#8217;s only natural that they would get together to provide a fast dynamic scalable CMS system. Whenever a Drupal site needs to scale dynamic content they ...&lt;div&gt;&lt;a href="http://spf13.com/post/getting-started-with-drupal-and-mongodb"&gt;&lt;img width="150" height="98" src="http://spf13.com/wp-content/uploads/2012/03/Drupal-Admin-150x98.png" class="attachment-thumbnail wp-post-image" alt="Drupal Admin" title="Drupal Admin" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/getting-started-with-drupal-and-mongodb/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">5</slash:comments><feedburner:origLink>http://spf13.com/post/getting-started-with-drupal-and-mongodb</feedburner:origLink></item><item><title>MongoDB and Hadoop</title><link>http://feedproxy.google.com/~r/spf13/~3/SG4z6FV-kmo/mongodb-and-hadoop</link><category>Development</category><category>MongoDB</category><category>Presentations</category><category>hadoop</category><category>mapreduce</category><category>mongodb</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Wed, 29 Feb 2012 20:56:12 PST</pubDate><guid isPermaLink="false">http://spf13.com/?p=1736</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Learn how to integrate MongoDB with Hadoop for large-scale distributed data processing. Using tools like MapReduce, Pig and Streaming you will learn how to do analytics and ETL on large datasets with the ability to load and save data against MongoDB. With Hadoop MapReduce, Java and Scala programmers will find a native solution for using MapReduce to process their data with MongoDB. Programmers of all kinds will find a new way to work with ETL using Pig to extract and analyze large datasets and persist the results to MongoDB. Python and Ruby Programmers can rejoice as well in a new way to write native Mongo MapReduce using the Hadoop Streaming interfaces.</p>
<p><span id="more-1736"></span></p>
<p>&nbsp;</p>
<div id="__ss_11808494" style="width: 595px;">
<p><strong style="display: block; margin: 12px 0 4px;"><a title="MongoDB and hadoop" href="http://www.slideshare.net/spf13/mongodb-and-hadoop" target="_blank">MongoDB and hadoop</a></strong> <object id="__sse11808494" width="595" height="497" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" 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="wmode" value="transparent" /><param name="src" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=mongodbandhadoop-120229224640-phpapp02&amp;stripped_title=mongodb-and-hadoop&amp;userName=spf13" /><param name="allowscriptaccess" value="always" /><param name="allowfullscreen" value="true" /><embed id="__sse11808494" width="595" height="497" type="application/x-shockwave-flash" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=mongodbandhadoop-120229224640-phpapp02&amp;stripped_title=mongodb-and-hadoop&amp;userName=spf13" allowFullScreen="true" allowScriptAccess="always" wmode="transparent" allowscriptaccess="always" allowfullscreen="true" /> </object></p>
<div style="padding: 5px 0 12px;">View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/spf13" target="_blank">Steve Francia</a></div>
</div>
<p><a href="http://spf13.com/wp-content/uploads/2012/03/Strata2012.jpg"><img width="459" height="240" alt="" src="http://spf13.com/wp-content/themes/striking/includes/timthumb.php?src=http://spf13.com/wp-content/uploads/2012/03/Strata2012.jpg&amp;h=240&amp;w=459&amp;zc=1" /></a></p>
<div><a href="http://spf13.com/post/mongodb-and-hadoop"><img width="150" height="112" src="http://spf13.com/wp-content/uploads/2012/03/MongoDB-and-Hadoop-150x112.png" class="attachment-thumbnail wp-post-image" alt="MongoDB and Hadoop" title="MongoDB and Hadoop" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=SG4z6FV-kmo:K0GZRFvSUdI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/SG4z6FV-kmo" height="1" width="1"/>]]></content:encoded><description>Learn how to integrate MongoDB with Hadoop for large-scale distributed data processing. Using tools like MapReduce, Pig and Streaming you will learn how to do analytics and ETL on large datasets with the ability to load and save data against MongoDB. With Hadoop MapReduce, Java and Scala programmers will find a native solution for using ...&lt;div&gt;&lt;a href="http://spf13.com/post/mongodb-and-hadoop"&gt;&lt;img width="150" height="112" src="http://spf13.com/wp-content/uploads/2012/03/MongoDB-and-Hadoop-150x112.png" class="attachment-thumbnail wp-post-image" alt="MongoDB and Hadoop" title="MongoDB and Hadoop" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/mongodb-and-hadoop/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><feedburner:origLink>http://spf13.com/post/mongodb-and-hadoop</feedburner:origLink></item><item><title>MongoDB and PHP, The Book</title><link>http://feedproxy.google.com/~r/spf13/~3/vgv6EwS5oUo/mongodb-and-php-the-book</link><category>Development</category><category>MongoDB</category><category>Personal</category><category>php</category><category>book</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Mon, 13 Feb 2012 14:40:15 PST</pubDate><guid isPermaLink="false">http://spf13.com/?p=1728</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>I wrote a book.</p>
<p>Published by O&#8217;Reilly, it&#8217;s now available on Amazon, O&#8217;Reilly Media and a bunch of other sites. It&#8217;s available as a ebook as well as in print.</p>
<p><span id="more-1728"></span></p>
<p>From the introduction:</p>
<blockquote><p>What would happen if you optimized a data store for the operations application developers actually use? You’d arrive at MongoDB, the reliable document-oriented database. With this concise guide, you’ll learn how to build elegant database applications with MongoDB and PHP.</p>
<p>Written by the Chief Solutions Architect at 10gen—the company that develops and supports this open source database—this book takes you through MongoDB basics such as queries, read-write operations, and administration, and then dives into MapReduce, sharding, and other advanced topics. Get out of the relational database rut, and take advantage of a high-performing system optimized for operations and scale.</p>
<ul>
<li>Learn step-by-step the tools you need to build PHP applications with MongoDB</li>
<li>Perform Create, Read, Update, and Delete (CRUD) operations, and learn how to perform queries to retrieve data</li>
<li>Administer your database, and access and manipulate data with the MongoDB Shell</li>
<li>Use functions to work with sets, arrays, and multiple documents to perform synchronous, asynchronous, and atomic operations</li>
<li>Discover PHP’s community tools and libraries, and why they’re valuable</li>
<li>Work with regular expressions, aggregation, MapReduce, replication, and sharding</li>
</ul>
</blockquote>
<p>&nbsp;</p>
<p>So far reviews have been quite positive, with most criticisms coming from the short length. O&#8217;Reilly has begun a new program where they release shorter books for less money and get them to market much quicker. It makes a lot of sense, most tech books take 2 &#8211; 3 years to write the 200 &#8211; 400 pages and by the time the are ready to print, a lot of the technology has changed.  The nice thing about these shorter books is they are on the market much faster and much less over head is spent. It also makes for easier reading for you as it&#8217;s more digestible.</p>
<p>MongoDB and PHP  tops out just shy of 80 pages, my contract with O&#8217;Reilly was for 50 pages so I did my very best to put as much as possible into the text and completely agree with the challenge of covering an entire topic in a short amount of space.</p>
<p>That said, I do feel it&#8217;s fairly comprehensive and invite anyone to <a title="Contact" href="http://spf13.com/contact">message me</a> and I&#8217;ll gladly write a blog post explaining the topic in further detail.</p>
<p>I really enjoyed the process of writing a book. It was a lot of work with a lot of very late nights and patience on the part of my family with whom I&#8217;m very appreciative.</p>
<h1>Purchasing MongoDB and PHP</h1>
<p>You can purchase the book directly from <a href="http://shop.oreilly.com/product/0636920022381.do">O&#8217;Reilly in a non DRM format here</a>.</p>
<p>You can purchase from Amazon here:</p>
<p><iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&#038;bc1=FFFFFF&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=spf1300-20&#038;o=1&#038;p=8&#038;l=as4&#038;m=amazon&#038;f=ifr&#038;ref=ss_til&#038;asins=1449314368" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<h1>Reviews</h1>
<p>&#8220;I have already have read the book MongoDB: The Definitive Guide by Kristina Chodorow and Michael Dirolf . It doesn&#8217;t cover much on the PHP, but its a good book to learn about MongoDB and how it works in Depth. Once I saw the book, MongoDB and PHP by Steve Francia I was planning to buy it, and the time I got a chance to signup for the blogger review program by O&#8217;Reilly Media. Its a small book of 60 pages, but a good one. I will rate 7.5 / 10 , a good read for PHP Developers . If you wondered why the 2.5 is missing read on&#8221; <a href="http://harikt.com/mongodb-and-php-steve-francia-oreilly">Full Review &gt;</a><br />
&#8211; Hari K T, <a href="http://www.oreillynet.com/pub/blogger/harikt">harikt.com/blog</a></p>
<div><a href="http://spf13.com/post/mongodb-and-php-the-book"><img width="114" height="150" src="http://spf13.com/wp-content/uploads/2012/02/lrg-114x150.jpg" class="attachment-thumbnail wp-post-image" alt="lrg" title="lrg" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=vgv6EwS5oUo:kvg6zXsVzpY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/vgv6EwS5oUo" height="1" width="1"/>]]></content:encoded><description>I wrote a book. Published by O&amp;#8217;Reilly, it&amp;#8217;s now available on Amazon, O&amp;#8217;Reilly Media and a bunch of other sites. It&amp;#8217;s available as a ebook as well as in print. From the introduction: What would happen if you optimized a data store for the operations application developers actually use? You’d arrive at MongoDB, the reliable ...&lt;div&gt;&lt;a href="http://spf13.com/post/mongodb-and-php-the-book"&gt;&lt;img width="114" height="150" src="http://spf13.com/wp-content/uploads/2012/02/lrg-114x150.jpg" class="attachment-thumbnail wp-post-image" alt="lrg" title="lrg" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/mongodb-and-php-the-book/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><feedburner:origLink>http://spf13.com/post/mongodb-and-php-the-book</feedburner:origLink></item><item><title>MongoDB for Genealogy at RootsTech 2012</title><link>http://feedproxy.google.com/~r/spf13/~3/Dh0ph5HLLUU/mongodb-for-genealogy-at-rootstech-2012</link><category>Development</category><category>MongoDB</category><category>Presentations</category><category>genealogy</category><category>graph</category><category>mongodb</category><category>tree</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Fri, 03 Feb 2012 09:59:21 PST</pubDate><guid isPermaLink="false">http://spf13.com/?p=1720</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>After an enjoyable time at the SORT conference in 2011 I was invited to come back to SLC to present at the RootsTech Genealogy conference.</p>
<p>The two hardest data types to model are e-commerce and genealogy. There really just isn&#8217;t any good way to do it in a relational database. MongoDB is the answer Genealogy developers have been looking for for a very long time. A flexible schema that allows adhoc searching, horizontal scale and full data integrity. The following presentation covers MongoDB fundamentals, how to build a graph in MongoDB, how model genealogical data.</p>
<p><span id="more-1720"></span></p>
<p><img width="292" alt="" src="http://spf13.com/wp-content/themes/striking/includes/timthumb.php?src=http://spf13.com/wp-content/uploads/2012/02/DSC2076.jpg&amp;w=292&amp;zc=1" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div id="__ss_11402945" style="width: 595px;"><strong style="display: block; margin: 12px 0 4px;"><a title="MongoDB for Genealogy" href="http://www.slideshare.net/spf13/mongodb-for-genealogy" target="_blank">MongoDB for Genealogy</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/11402945" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" width="595" height="497"></iframe></p>
<div style="padding: 5px 0 12px;">View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/spf13" target="_blank">Steve Francia</a></div>
</div>
<div><a href="http://spf13.com/post/mongodb-for-genealogy-at-rootstech-2012"><img width="150" height="105" src="http://spf13.com/wp-content/uploads/2012/02/Storing-the-Family-Tree-with-MongoDB-150x105.png" class="attachment-thumbnail wp-post-image" alt="Storing the Family Tree with MongoDB" title="Storing the Family Tree with MongoDB" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=Dh0ph5HLLUU:nF6Q8Qc6nv0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/Dh0ph5HLLUU" height="1" width="1"/>]]></content:encoded><description>After an enjoyable time at the SORT conference in 2011 I was invited to come back to SLC to present at the RootsTech Genealogy conference. The two hardest data types to model are e-commerce and genealogy. There really just isn&amp;#8217;t any good way to do it in a relational database. MongoDB is the answer Genealogy ...&lt;div&gt;&lt;a href="http://spf13.com/post/mongodb-for-genealogy-at-rootstech-2012"&gt;&lt;img width="150" height="105" src="http://spf13.com/wp-content/uploads/2012/02/Storing-the-Family-Tree-with-MongoDB-150x105.png" class="attachment-thumbnail wp-post-image" alt="Storing the Family Tree with MongoDB" title="Storing the Family Tree with MongoDB" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/mongodb-for-genealogy-at-rootstech-2012/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://spf13.com/post/mongodb-for-genealogy-at-rootstech-2012</feedburner:origLink></item><item><title>Backups, Replication, and Disaster Recovery</title><link>http://feedproxy.google.com/~r/spf13/~3/wyEhXW_kjLo/backups-replication-and-disaster-recovery</link><category>Architecture</category><category>Development</category><category>MongoDB</category><category>Systems</category><category>backups</category><category>Database</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Wed, 11 Jan 2012 06:26:55 PST</pubDate><guid isPermaLink="false">http://spf13.com/?p=1699</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>One of the most common concerns people have is how to ensure that their application is safe, secure and available in the event of an emergency. Often I have found that people are mistakenly believe that they are protected when in fact they often have ignored potential scenarios.</p>
<p>The principles explained apply equally well in RDBMSs, MongoDB and other databases.<span id="more-1699"></span></p>
<h2>Potential scenarios to protect against</h2>
<ol>
<li>
<h3>Drive failure</h3>
</li>
<li>
<h3>Machine failure</h3>
</li>
<li>
<h3>Switch failure</h3>
</li>
<li>
<h3>Power circuit failure</h3>
</li>
<li>
<h3>Data center failure</h3>
</li>
<li>
<h3>Intrusion</h3>
</li>
<li>
<h3>Fat fingers</h3>
</li>
<li>
<h3>Programmer error</h3>
</li>
</ol>
<h2>Raid</h2>
<p>To prevent drive failure use multiple drives in a single machine for high availability. RAID 10 provides the best performance with high availability. RAID 10 consists of a minimum of 4 disks which are split into mirrored pairs. The raid controller stripes across the pairs.</p>
<h2>Replication</h2>
<p>Replication is the act of mirroring the data from one server onto another. It will protect against any failure of one (or more) of machines. Commonly two or more machines are used. If properly configured it can also protect against most of the failures identified above. I will present a few different configurations and what they protect against.</p>
<h3>Replica Sets</h3>
<p>In addition to standard Master Slave replication MongoDB provides an additional replication configuration called replica sets. Replica sets are similar to master slave, but they are set aware with automatic failover and recovery. Replica sets are a minimum of 3 nodes. 3 nodes can be 3 database nodes, or 2 database nodes + 1 arbiter. The arbiter doesn&#8217;t handle queries or store data, but is around to provide a third perspective to cast a vote when determining the status of the set. In master slave you can have the same setup but it requires you to participate as the arbiter.</p>
<h3>Configuration 1 :</h3>
<p><strong>2 nodes + 1 arbiter (or 3 nodes) on same rack (same switch and power circuit).</strong></p>
<ul>
<li>Protects against single drive failure (if not using RAID 0 or 10).</li>
<li>Protects against single node failure.</li>
</ul>
<h3>Configuration 2 :</h3>
<p><strong>2 nodes + 1 arbiter on 3 different racks (different switch and power circuit).</strong></p>
<ul>
<li>Protects against the above + failure of switch or power circuit.</li>
</ul>
<h3>Configuration 3 :</h3>
<p><strong>4 nodes + 1 arbiter on 3 different racks (different switch and power circuit).</strong></p>
<ul>
<li>Protects against the above + two nodes failing or a node failure at the same time as a switch or power failure.</li>
</ul>
<h3>Configuration 4 :</h3>
<p><strong>4 nodes + 1 arbiter in 3 different data centers.</strong></p>
<ul>
<li>Protects against all the above + data center failure.</li>
</ul>
<h3>Configuration 5 :</h3>
<p><strong>Any combination of the above but swap out the arbiter for a delayed secondary with priority 0 (hidden).</strong></p>
<p>Some Protection against data loss in the event of Intrusion, Fat finger (sysadmin / DBA accidentally deleting / changing something), programmer error.</p>
<p>Only partial protection as any data written during the delay window will be lost. If not caught during the window (or windows) provides no protection.</p>
<h2>Backups</h2>
<p>A backup consists of a dump of the data ideally stored in a remote secure location. It&#8217;s important to ensure that the backup format used has an easy and consistent import mechanism. Any scripts you use to backup should have a counterpart restore written along with them. The worst possible time to discover issues with your backup is when you are trying to restore them. Make sure restoration is rock solid.</p>
<p>For permanent disaster recovery and for compliance with a variety of industry regulations it&#8217;s important to keep (offsite) backups. Depending on your data size, business and type of data you may want to take backups more or less regularly. A solid backup plan is the only way to ensure that the bulk of your data is never lost in the event of a disaster. It is often not enough to have replication be your sole form of backup as it doesn&#8217;t protect against intrusion, fat finger (sysadmin / DBA accidentally deleting / changing something) or programmer error outside of the delay window and not at all without a delayed replicant.</p>
<h2>Conclusion</h2>
<p>It&#8217;s important to understand the pitfalls and how to prevent them. Also recognize that there&#8217;s a balance that must be struck. Multiple data centers add additional complexity and bring a number of challenges along with their additional protection.</p>
<p>Lastly, Replication != backup. Please backup your data. If someone accidentally or intentionally maliciously performs a drop operation that same operation will be replicated across all of your machines. The only safety net is a good backup strategy.</p>
<div><a href="http://spf13.com/post/backups-replication-and-disaster-recovery"><img width="150" height="146" src="http://spf13.com/wp-content/uploads/2012/01/header_412_disaster_day_of_crisis1-150x146.jpg" class="attachment-thumbnail wp-post-image" alt="header_412_disaster_day_of_crisis" title="header_412_disaster_day_of_crisis" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=wyEhXW_kjLo:190jxAVYlvU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/wyEhXW_kjLo" height="1" width="1"/>]]></content:encoded><description>One of the most common concerns people have is how to ensure that their application is safe, secure and available in the event of an emergency. Often I have found that people are mistakenly believe that they are protected when in fact they often have ignored potential scenarios. The principles explained apply equally well in ...&lt;div&gt;&lt;a href="http://spf13.com/post/backups-replication-and-disaster-recovery"&gt;&lt;img width="150" height="146" src="http://spf13.com/wp-content/uploads/2012/01/header_412_disaster_day_of_crisis1-150x146.jpg" class="attachment-thumbnail wp-post-image" alt="header_412_disaster_day_of_crisis" title="header_412_disaster_day_of_crisis" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/backups-replication-and-disaster-recovery/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">3</slash:comments><feedburner:origLink>http://spf13.com/post/backups-replication-and-disaster-recovery</feedburner:origLink></item><item><title>Hybrid MongoDB / SQL Applications</title><link>http://feedproxy.google.com/~r/spf13/~3/la7LkgCw0Xk/hybrid-mongodb-sql-applications</link><category>Development</category><category>Ecommerce</category><category>MongoDB</category><category>php</category><category>Presentations</category><category>mongodb</category><category>mysql</category><category>postgresql</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Fri, 06 Jan 2012 13:27:35 PST</pubDate><guid isPermaLink="false">http://spf13.com/?p=1691</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>MongoDB is often used alongside a relational database such as Oracle or MySQL. It is often unclear when one should use one or the other, or if a combination is really ideal. During this online presentation, we will discuss the ideal use cases for each, and how they can be used in conjunction. We’ll make sure to touch on several real world examples.</p>
<p><span id="more-1691"></span></p>
<p>The full recording can be found at 10gen&#8217;s site at <a href="http://bit.ly/AtLAQf">http://www.10gen.com/events/hybrid-applications</a></p>
<div id="__ss_10849365" style="width: 595px;">
<p><strong style="display: block; margin: 12px 0 4px;"><a title="Hybrid MongoDB and RDBMS Applications" href="http://www.slideshare.net/spf13/hybrid-mongodb-and-rdbms-applications" target="_blank">Hybrid MongoDB and RDBMS Applications</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/10849365" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" width="595" height="497"></iframe></p>
<div style="padding: 5px 0 12px;">View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/spf13" target="_blank">Steve Francia</a></div>
</div>
<h1> Other Resources:</h1>
<ul>
<li><a href="http://www.10gen.com/presentations/mongosv-2011/mongodb-at-customink-adoption-operations-and-community" target="_blank">http://www.10gen.com/<wbr>presentations/mongosv-2011/<wbr>mongodb-at-customink-adoption-<wbr>operations-and-community</wbr></wbr></wbr></a></li>
<li><a href="http://jwage.com/2010/08/25/blending-the-doctrine-orm-and-mongodb-odm/ ">http://jwage.com/2010/08/25/blending-the-doctrine-orm-and-mongodb-odm/</a></li>
<li><a href="http://www.10gen.com/presentations/mongosf2011/craigslist">http://www.10gen.com/presentations/mongosf2011/craigslist</a></li>
<li><a href="http://spf13.com/post/ecommerce-in-la ">http://spf13.com/post/ecommerce-in-la</a></li>
<li><a href="http://spf13.com/post/mongodb-sort-conference-2011 ">http://spf13.com/post/mongodb-sort-conference-2011</a></li>
<li><a href="http://spf13.com/post/mongodb-e-commerce-and-transactions">http://spf13.com/post/mongodb-e-commerce-and-transactions</a></li>
</ul>
<div><a href="http://spf13.com/post/hybrid-mongodb-sql-applications"><img width="150" height="112" src="http://spf13.com/wp-content/uploads/2012/01/hybrid-TN-150x112.png" class="attachment-thumbnail wp-post-image" alt="hybrid-TN" title="hybrid-TN" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=la7LkgCw0Xk:T5HEkUahJno:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/la7LkgCw0Xk" height="1" width="1"/>]]></content:encoded><description>MongoDB is often used alongside a relational database such as Oracle or MySQL. It is often unclear when one should use one or the other, or if a combination is really ideal. During this online presentation, we will discuss the ideal use cases for each, and how they can be used in conjunction. We’ll make ...&lt;div&gt;&lt;a href="http://spf13.com/post/hybrid-mongodb-sql-applications"&gt;&lt;img width="150" height="112" src="http://spf13.com/wp-content/uploads/2012/01/hybrid-TN-150x112.png" class="attachment-thumbnail wp-post-image" alt="hybrid-TN" title="hybrid-TN" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/hybrid-mongodb-sql-applications/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><feedburner:origLink>http://spf13.com/post/hybrid-mongodb-sql-applications</feedburner:origLink></item><item><title>Windows Power User Tools</title><link>http://feedproxy.google.com/~r/spf13/~3/YB03L5Bl9HM/windows-power-user-tools</link><category>Personal</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Wed, 28 Dec 2011 12:54:40 PST</pubDate><guid isPermaLink="false">http://spf13.com/?p=1668</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>I&#8217;m a huge fan of Windows 7. It&#8217;s the first time I&#8217;ve ever run a Microsoft OS on my primary (home) machine.  I&#8217;ve compiled a set of programs that I have found to be invaluable in using Windows for serious development and computing. All are free and clean of any ads or spyware.</p>
<p><span id="more-1668"></span></p>
<h2><a href="http://www.partition-tool.com/personal.htm"> EaseUS® Partition Master 9.1 Home Edition</a></h2>
<p style="text-align: left;">As Partition Magic alternative, EaseUS Partition Master Home Edition is a ALL-IN-ONE partition solution and disk management freeware. It allows you to extend partition (especially for system drive), manage disk space easily, settle low disk space problem on MBR and GUID partition table (GPT) disk under Windows 2000/XP/Vista/<a href="http://www.partition-tool.com/resource/resize-partition-windows-7.htm">Windows 7</a> (SP1 included) 32 bit and 64 bit system.</p>
<p>&nbsp;</p>
<div>
<div style="text-align: center;"><img class="aligncenter size-medium wp-image-1672" title="resize-partition" src="http://spf13.com/wp-content/uploads/2011/12/resize-partition-300x222.gif" alt="" width="300" height="222" /></div>
<p>&nbsp;</p>
<h2><a href="http://sourceforge.net/projects/processhacker/">Process Hacker</a></h2>
<p>Effectively a better version of Task Manager, Process Hacker is a free and open source process viewer and memory editor with unique features such as powerful process termination. It can show services, processes and their threads, modules, handles and memory regions.</p>
<p><img class="aligncenter size-medium wp-image-1677" title="318705" src="http://spf13.com/wp-content/uploads/2011/12/3187051-300x214.jpg" alt="" width="300" height="214" /></p>
<h2><a href="http://www.codesector.com/teracopy.php">TeraCopy</a></h2>
<p>TeraCopy is designed to copy and move files at the maximum possible speed. The program skips bad files during the copying process, and then displays them at the end of the transfer so that you can see which ones need attention. TeraCopy can automatically check the copied files for errors by calculating their CRC checksum values. It also provides a lot more information about the files being copied than its Windows counterpart. TeraCopy integrates with Windows Explorer&#8217;s right-click menu and can be set as the default copy handler. It replaces Explores copy and move functionality and instead provides excellent move and copy support.</p>
<p><img class="aligncenter size-medium wp-image-1678" title="teracopy" src="http://spf13.com/wp-content/uploads/2011/12/teracopy-300x102.jpg" alt="" width="300" height="102" /></p>
<p>&nbsp;</p>
<h2><a href="http://windirstat.info/">WinDirStat</a></h2>
<p>WinDirStat is a disk usage statistics viewer and cleanup tool for Microsoft Windows. It works well and is very fast.</p>
<p><img class="aligncenter size-medium wp-image-1673" title="windirstat" src="http://spf13.com/wp-content/uploads/2011/12/windirstat-300x226.jpg" alt="" width="300" height="226" /></p>
<h2><a href="http://writemonkey.com">Write Monkey</a></h2>
<p>Write Monkey is a knock off of the Write Room full screen distraction free applications for OS X. It&#8217;s quite well done and free.</p>
<p><img class="aligncenter size-medium wp-image-1676" title="writemonkey" src="http://spf13.com/wp-content/uploads/2011/12/writemonkey-216x300.png" alt="" width="216" height="300" /></p>
<h2><a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/">Putty</a> &amp; <a href="https://docs.google.com/uc?id=0B_NLCn3T52-0MjVkNDA1MmYtYjZhNi00NDQwLTg1YmUtNGNiMjUwZWFkYjQ5&amp;export=download&amp;hl=en_US">Putty Connection Manager</a></h2>
<p>PuTTY is a free implementation of Telnet and SSH for Windows and Unix platforms, along with an </p>
<div class="codecolorer-container text vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">xterm</div></div>
<p> terminal emulator. Putty Connection Manager can be used as tabbed version of Putty. It works on all the editions of Windows OS i.e Windows XP, Server 2003,Vista, Server 2008 and Windows 7.</p>
<p><img class="aligncenter size-medium wp-image-1675" title="Putty" src="http://spf13.com/wp-content/uploads/2011/12/Putty-300x288.jpg" alt="" width="300" height="288" /></p>
<p>&nbsp;</p>
</div>
<div><a href="http://spf13.com/post/windows-power-user-tools"><img width="150" height="150" src="http://spf13.com/wp-content/uploads/2011/12/power_windows-150x150.jpg" class="attachment-thumbnail wp-post-image" alt="power_windows" title="power_windows" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=YB03L5Bl9HM:qrHlaz4TGjY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/YB03L5Bl9HM" height="1" width="1"/>]]></content:encoded><description>I&amp;#8217;m a huge fan of Windows 7. It&amp;#8217;s the first time I&amp;#8217;ve ever run a Microsoft OS on my primary (home) machine.  I&amp;#8217;ve compiled a set of programs that I have found to be invaluable in using Windows for serious development and computing. All are free and clean of any ads or spyware.  EaseUS® Partition ...&lt;div&gt;&lt;a href="http://spf13.com/post/windows-power-user-tools"&gt;&lt;img width="150" height="150" src="http://spf13.com/wp-content/uploads/2011/12/power_windows-150x150.jpg" class="attachment-thumbnail wp-post-image" alt="power_windows" title="power_windows" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/windows-power-user-tools/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">1</slash:comments><feedburner:origLink>http://spf13.com/post/windows-power-user-tools</feedburner:origLink></item><item><title>Building your First app with MongoDB at MongoSV 2011</title><link>http://feedproxy.google.com/~r/spf13/~3/WIwwRj-gZqI/building-your-first-app-with-mongodb-at-mongosv-2011</link><category>Development</category><category>MongoDB</category><category>Presentations</category><category>javascript</category><category>mongodb</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Fri, 09 Dec 2011 16:18:59 PST</pubDate><guid isPermaLink="false">http://spf13.com/?p=1642</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>10gen had our flagship conference in Silicon Valley. I gave an introductory presentation at the first session on building an application in MongoDB. This talk will introduce the features of MongoDB by walking through how one can building a simple location-based application using MongoDB. It covers the basics of MongoDB&#8217;s document model, query language, map-reduce framework and deployment architecture.</p>
<p><span id="more-1642"></span></p>
<p><a href='http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011/sony-dsc-5' title='SONY DSC'><img width="1024" height="681" src="http://spf13.com/wp-content/uploads/2011/12/DSC7568-1024x681.jpg" class="attachment-large" alt="SONY DSC" title="SONY DSC" /></a><br />
<a href='http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011/spf13-mongosv-speaking-copy' title='spf13-mongosv-speaking copy'><img width="1024" height="749" src="http://spf13.com/wp-content/uploads/2011/12/spf13-mongosv-speaking-copy-1024x749.jpg" class="attachment-large" alt="spf13-mongosv-speaking copy" title="spf13-mongosv-speaking copy" /></a><br />
<a href='http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011/sony-dsc-6' title='SONY DSC'><img width="1024" height="681" src="http://spf13.com/wp-content/uploads/2011/12/DSC7581-1024x681.jpg" class="attachment-large" alt="SONY DSC" title="SONY DSC" /></a><br />
<a href='http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011/sony-dsc-7' title='SONY DSC'><img width="1024" height="681" src="http://spf13.com/wp-content/uploads/2011/12/DSC7591-1024x681.jpg" class="attachment-large" alt="SONY DSC" title="SONY DSC" /></a><br />
<a href='http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011/sony-dsc-8' title='SONY DSC'><img width="1024" height="681" src="http://spf13.com/wp-content/uploads/2011/12/DSC7594-1024x681.jpg" class="attachment-large" alt="SONY DSC" title="SONY DSC" /></a><br />
<a href='http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011/mongosv' title='mongoSV'><img width="171" height="171" src="http://spf13.com/wp-content/uploads/2011/12/mongoSV.png" class="attachment-large" alt="mongoSV" title="mongoSV" /></a></p>
<div id="__ss_10537536" style="width: 595px;"><strong style="display: block; margin: 12px 0 4px;"><a title="Building your first application w/mongoDB MongoSV2011" href="http://www.slideshare.net/spf13/building-your-first-application-wmongodb-mongosv2011" target="_blank">Building your first application w/mongoDB MongoSV2011</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/10537536" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" width="595" height="497"></iframe></p>
<div style="padding: 5px 0 12px;">View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/spf13" target="_blank">Steve Francia</a></div>
</div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div><a href="http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011"><img width="150" height="150" src="http://spf13.com/wp-content/uploads/2011/12/mongoSV-150x150.png" class="attachment-thumbnail wp-post-image" alt="mongoSV" title="mongoSV" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=WIwwRj-gZqI:YW8iAkTbjWM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/WIwwRj-gZqI" height="1" width="1"/>]]></content:encoded><description>10gen had our flagship conference in Silicon Valley. I gave an introductory presentation at the first session on building an application in MongoDB. This talk will introduce the features of MongoDB by walking through how one can building a simple location-based application using MongoDB. It covers the basics of MongoDB&amp;#8217;s document model, query language, map-reduce framework ...&lt;div&gt;&lt;a href="http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011"&gt;&lt;img width="150" height="150" src="http://spf13.com/wp-content/uploads/2011/12/mongoSV-150x150.png" class="attachment-thumbnail wp-post-image" alt="mongoSV" title="mongoSV" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://spf13.com/post/building-your-first-app-with-mongodb-at-mongosv-2011</feedburner:origLink></item><item><title>E-commerce in LA</title><link>http://feedproxy.google.com/~r/spf13/~3/XEwoDW4tuDo/ecommerce-in-la</link><category>Development</category><category>Ecommerce</category><category>MongoDB</category><category>Presentations</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Steve Francia</dc:creator><pubDate>Thu, 08 Dec 2011 15:08:58 PST</pubDate><guid isPermaLink="false">http://spf13.com/?p=1614</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>This week I joined a few of my co-workers down in LA. We met with a few companies and ran the MongoDB LA Users Group. Notably I met with Magento about the possibility of Magento 2.0 being built on MongoDB. On my final night in LA I presented on MongoDB, E-commerce and Transactions. </p>
<p>I really enjoyed my time in LA and am looking forward to returning. I was impressed by how many companies are using MongoDB in LA and how great the interaction was at the Meetup.</p>
<p><span id="more-1614"></span></p>
<p><a href='http://spf13.com/post/ecommerce-in-la/_dsc7212w' title='_DSC7212w'><img width="1024" height="696" src="http://spf13.com/wp-content/uploads/2011/12/DSC7212w-1024x696.jpg" class="attachment-large" alt="_DSC7212w" title="_DSC7212w" /></a><br />
<a href='http://spf13.com/post/ecommerce-in-la/i-leaf-la4' title='I leaf LA4'><img width="240" height="240" src="http://spf13.com/wp-content/uploads/2011/12/I-leaf-LA4.png" class="attachment-large" alt="I leaf LA4" title="I leaf LA4" /></a><br />
<a href='http://spf13.com/post/ecommerce-in-la/_dsc7215w' title='_DSC7215w'><img width="1024" height="681" src="http://spf13.com/wp-content/uploads/2011/12/DSC7215w-1024x681.jpg" class="attachment-large" alt="_DSC7215w" title="_DSC7215w" /></a><br />
<a href='http://spf13.com/post/ecommerce-in-la/_dsc7083w' title='_DSC7083w'><img width="1024" height="681" src="http://spf13.com/wp-content/uploads/2011/12/DSC7083w-1024x681.jpg" class="attachment-large" alt="_DSC7083w" title="_DSC7083w" /></a></p>
<div style="width: 595px;"><strong style="display: block; margin: 12px 0 4px;"><a title="MongoDB, E-commerce and Transactions" href="http://www.slideshare.net/spf13/mongodb-ecommerce-and-transactions-10524960" target="_blank">MongoDB, E-commerce and Transactions</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/10524960" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" width="595" height="497"></iframe></div>
<div id="__ss_10524960" style="width: 595px;">
<div style="padding: 5px 0 12px;">View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/spf13" target="_blank">Steve Francia</a></div>
</div>
<div><a href="http://spf13.com/post/ecommerce-in-la"><img width="150" height="150" src="http://spf13.com/wp-content/uploads/2011/12/I-leaf-LA4-150x150.png" class="attachment-thumbnail wp-post-image" alt="I leaf LA4" title="I leaf LA4" /></a></div><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/spf13?a=XEwoDW4tuDo:V7feUCldkH8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/spf13?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/spf13/~4/XEwoDW4tuDo" height="1" width="1"/>]]></content:encoded><description>This week I joined a few of my co-workers down in LA. We met with a few companies and ran the MongoDB LA Users Group. Notably I met with Magento about the possibility of Magento 2.0 being built on MongoDB. On my final night in LA I presented on MongoDB, E-commerce and Transactions. I really ...&lt;div&gt;&lt;a href="http://spf13.com/post/ecommerce-in-la"&gt;&lt;img width="150" height="150" src="http://spf13.com/wp-content/uploads/2011/12/I-leaf-LA4-150x150.png" class="attachment-thumbnail wp-post-image" alt="I leaf LA4" title="I leaf LA4" /&gt;&lt;/a&gt;&lt;/div&gt;</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://spf13.com/post/ecommerce-in-la/feed</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><feedburner:origLink>http://spf13.com/post/ecommerce-in-la</feedburner:origLink></item></channel></rss>

