<?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:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-7179971131759779239</atom:id><lastBuildDate>Fri, 23 Sep 2011 08:33:05 +0000</lastBuildDate><category>ruby</category><category>buddhism</category><category>hpc</category><category>teamwork</category><category>idea</category><category>research</category><category>ruby rails activerecord</category><category>erlang</category><category>refactoring</category><category>web</category><category>note</category><category>lăng nhăng lải nhải</category><category>cún yêu</category><category>learn</category><category>bi</category><category>motivation</category><category>think</category><category>nlp</category><category>gpu</category><category>opensource</category><category>coding</category><category>search</category><category>dsl</category><category>parallel</category><category>fun</category><category>scalable</category><category>JavaScript</category><category>cat</category><category>openmp</category><category>data</category><category>google</category><category>database</category><category>biz</category><title>&lt;code&gt; Monkey &lt;/code&gt;</title><description>web programming, text processing and high performance computing</description><link>http://codemonkeycode.blogspot.com/</link><managingEditor>noreply@blogger.com (Alex Nguyen)</managingEditor><generator>Blogger</generator><openSearch:totalResults>120</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/FreeLikeABirdHappyInTheSky" /><feedburner:info uri="freelikeabirdhappyinthesky" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-8222573382167525672</guid><pubDate>Fri, 10 Jun 2011 00:14:00 +0000</pubDate><atom:updated>2011-06-09T17:14:50.821-07:00</atom:updated><title>CQL, the Cassandra Query Language</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;p&gt;&lt;code&gt;cqlsh&gt; CREATE KEYSPACE test with strategy_class = 'SimpleStrategy' and strategy_options:replication_factor=1;&lt;br /&gt;  cqlsh&gt; USE test;&lt;/code&gt;&lt;/p&gt;&lt;code&gt;  &lt;/code&gt;&lt;p&gt;cqlsh&gt; CREATE COLUMNFAMILY users (&lt;br /&gt;     ...     key varchar PRIMARY KEY,&lt;br /&gt;     ...     full_name varchar,&lt;br /&gt;     ...     birth_date int,&lt;br /&gt;     ...     state varchar&lt;br /&gt;     ... );&lt;/p&gt;  &lt;p&gt;cqlsh&gt; CREATE INDEX ON users (birth_date);&lt;br /&gt;  cqlsh&gt; CREATE INDEX ON users (state);&lt;/p&gt;  &lt;p&gt;cqlsh&gt; INSERT INTO users (key, full_name, birth_date, state) VALUES ('bsanderson', 'Brandon Sanderson', 1975, 'UT');&lt;br /&gt;  cqlsh&gt; INSERT INTO users (key, full_name, birth_date, state) VALUES ('prothfuss', 'Patrick Rothfuss', 1973, 'WI');&lt;br /&gt;  cqlsh&gt; INSERT INTO users (key, full_name, birth_date, state) VALUES ('htayler', 'Howard Tayler', 1968, 'UT');&lt;/p&gt;  &lt;p&gt;cqlsh&gt; SELECT key, state FROM users;&lt;br /&gt;          key | state |&lt;br /&gt;   bsanderson |    UT |&lt;br /&gt;    prothfuss |    WI |&lt;br /&gt;      htayler |    UT |&lt;/p&gt;  &lt;p&gt;&lt;code&gt;cqlsh&gt; SELECT * FROM users WHERE state='UT' AND birth_date &gt; 1970;&lt;br /&gt;          KEY | birth_date |         full_name | state |&lt;br /&gt;   bsanderson |       1975 | Brandon Sanderson |    UT |&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.datastax.com/dev/blog/what%e2%80%99s-new-in-cassandra-0-8-part-1-cql-the-cassandra-query-language"&gt;datastax.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;HBase has PigLatin, now Cassandra has CQL. It's a natural evolve step for distributed databases that depend of Map-Reduce to query and processing data.&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/cql-the-cassandra-query-language"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-8222573382167525672?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/yTbR7yCGaXs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/yTbR7yCGaXs/cql-cassandra-query-language.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>1</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/06/cql-cassandra-query-language.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-531020669438380375</guid><pubDate>Sat, 28 May 2011 00:10:00 +0000</pubDate><atom:updated>2011-05-27T17:10:52.560-07:00</atom:updated><title>Steve Blank on Startups &amp; The New Bubble</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;  &lt;div class="video-player" style="height: 262px;"&gt;  &lt;div class="videopress-placeholder" style="height: 262px; cursor: pointer ! important; background-color: rgb(0, 0, 0); font-family: Helvetica Neue,Arial,Helvetica,Nimbus Sans L,sans-serif; font-weight: bold; font-size: 18px;"&gt;  &lt;div class="videopress-title" style="display: inline; margin: 20px 20px 0pt; padding: 4px 8px; vertical-align: top; text-align: left;"&gt;&lt;span style=""&gt;Steve Blank Gigaom Interview&lt;/span&gt;&lt;/div&gt;&lt;img class="videopress-poster" title="Watch: Steve Blank Gigaom Interview" src="http://videos.videopress.com/3OWDJmYq/gigaom-steve-blank_std.original.jpg" height="262" alt="Steve Blank Gigaom Interview" width="468" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://steveblank.com/2011/05/27/entrepreneurs-as-artists/"&gt;steveblank.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;Key points: Entrepreneurs are artists. New bubble is good. Today, total available market is exponential. VC $$$ should be used for scaling and visibility. Entrepreneurs should study psychology. &lt;/p&gt;&lt;p&gt;Find out more by watching the whole video. It's great.&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/steve-blank-on-startups-the-new-bubble"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-531020669438380375?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/4u3UQwhtDgc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/4u3UQwhtDgc/steve-blank-on-startups-new-bubble.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/steve-blank-on-startups-new-bubble.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-1176612071492075971</guid><pubDate>Fri, 27 May 2011 16:11:00 +0000</pubDate><atom:updated>2011-05-27T09:11:59.926-07:00</atom:updated><title>RoR Win: “Getting Things Done” with MongoDB</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;We high five each other and claim “Rails Win!” when someone finds a gem that solves a really big problem in a few lines of code. In this post I’ll list a few interesting addons to the RoR &lt;a href="http://code.dblock.org/ShowUrl.aspx?ObjectId=210&amp;amp;ObjectType=Post&amp;amp;Url=http%3a%2f%2fmongoid.org%2f"&gt;Mongoid ORM&lt;/a&gt; that are slowly adding up to a feature-rich ecosystem of plug-and-play modules that work with &lt;a href="http://code.dblock.org/ShowUrl.aspx?ObjectId=210&amp;amp;ObjectType=Post&amp;amp;Url=http%3a%2f%2fmongoid.org%2f"&gt;Mongoid&lt;/a&gt;. This list should convince you that you should at least &lt;a href="http://code.dblock.org/ShowUrl.aspx?ObjectId=210&amp;amp;ObjectType=Post&amp;amp;Url=http%3a%2f%2fwww.mongodb.org%2f"&gt;try MongoDB&lt;/a&gt;. You can get a ton of functionality “for free”.&lt;/blockquote&gt;&lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://code.dblock.org/ShowPost.aspx?id=210"&gt;code.dblock.org&lt;/a&gt;&lt;/div&gt; &lt;p&gt;Vinova is proud to be author of voteable_mongo gem and contributor of mongoid-slug gem.&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/ror-win-getting-things-done-with-mongodb"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-1176612071492075971?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/fbQFtk_DNVc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/fbQFtk_DNVc/ror-win-getting-things-done-with.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/ror-win-getting-things-done-with.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-7701014764206242706</guid><pubDate>Sun, 22 May 2011 02:28:00 +0000</pubDate><atom:updated>2011-05-21T19:28:28.829-07:00</atom:updated><title>Running a Flat Company | Jason Fried of 37signals</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;p&gt;At 37signals, however, we have a different position on ambition. We're not big fans of what I consider "vertical" ambition—that is, the usual career-path trajectory, in which a newbie moves up the ladder from associate to manager to vice president over a number of years of service. On the other hand, we revere "horizontal" ambition—in which employees who love what they do are encouraged to dig deeper, expand their knowledge, and become better at it. We always try to hire people who yearn to be master craftspeople, that is, designers who want to be great designers, not managers of designers; developers who want to master the art of programming, not management.&lt;/p&gt;  &lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.inc.com/magazine/20110401/jason-fried-why-i-run-a-flat-company.html"&gt;inc.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;At Vinova, we are doing the same by building a skillful, passionate and inter-dependent team. Team members wear many hats and work in harmony toward a common goal. Each member should be the boss of his own.&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/running-a-flat-company-jason-fried-of-37signa"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-7701014764206242706?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/rAIyD7I8Mx0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/rAIyD7I8Mx0/running-flat-company-jason-fried-of.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/running-flat-company-jason-fried-of.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-5501684091378240144</guid><pubDate>Sat, 21 May 2011 23:56:00 +0000</pubDate><atom:updated>2011-05-21T16:56:43.187-07:00</atom:updated><title>You Need to Win the Battle for Share of Mind (by solving a real problem)</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;p&gt;The challenge that many startups face today is: Are you really providing enough value? Will you get the TechCrunch bump, the tier-1 VC anointment, followed by great PR firm support and then the NY Times or WSJ story that follows? Will that be enough or will high churn rates creep in, new toys be introduced into the market, new time sucks pulling user attention away? &amp;nbsp;This year’s Tamagotchi?&lt;/p&gt;  &lt;p&gt;If you’re building a startup today I would encourage you to think harder about how you’re going to win the battle for share of mind. That’s much tougher than getting people to play with your hot product for 6 months. To do so you must truly provide value that changes the way that end-consumers do something in their lives that will persist.&lt;/p&gt;&lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.bothsidesofthetable.com/2011/05/21/you-need-to-win-the-battle-for-share-of-mind/"&gt;bothsidesofthetable.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/you-need-to-win-the-battle-for-share-of-mind"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-5501684091378240144?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/RNgpnF3UBLo" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/RNgpnF3UBLo/you-need-to-win-battle-for-share-of.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/you-need-to-win-battle-for-share-of.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-5168541777531655809</guid><pubDate>Sat, 21 May 2011 05:35:00 +0000</pubDate><atom:updated>2011-05-20T22:35:24.515-07:00</atom:updated><title>Silicon Valley Guru Steve Blank Welcomes The New Bubble And Says Microsoft Is Doomed</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;The &lt;a href="http://www.businessinsider.com/the-truth-about-linkedin-2011-5"&gt;LinkedIn IPO&lt;/a&gt; "absolutely" marks the beginning of a bubble&lt;/strong&gt; -- and he thinks it's going to be great. He likens it to the Netscape IPO in August 1995 that kicked off four years of boom times, but notes that this time VCs actually know how to build real companies with real revenue and profit.&lt;/li&gt;  &lt;/ul&gt;  &lt;ul&gt;  &lt;li&gt;&lt;strong&gt;Crazy investors -- not geeks -- are what makes Silicon Valley unique. &lt;/strong&gt;Without the "crazy" financiers willing to take big risks in hopes of chasing "obscene" returns, the valley would just be "a bunch of smart scientists and entrepreneurs sitting in their labs and their garages."&lt;/li&gt;  &lt;/ul&gt;  &lt;ul&gt;  &lt;li&gt;&lt;strong&gt;Microsoft will start to fail within six quarters. &lt;/strong&gt;Blank put a timeline on Microsoft suffering the kind of huge loss that drove IBM to restructure itself back in 1993: six quarters from now. He thinks Steve Ballmer is a "miserable failure" and that the board should be blamed for not replacing him. He also suggests that buying Nokia and installing Stephen Elop as CEO might be a solution.&lt;/li&gt;  &lt;/ul&gt;  &lt;ul&gt;  &lt;li&gt;&lt;strong&gt;But Larry Page is doing the right thing at Google. &lt;/strong&gt;By letting the geeks run the show, Page is following in the footsteps of one of the earliest Silicon Valley pioneers: Fairchild Semiconductor in the 1950s.&lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.businessinsider.com/the-guru-of-silicon-valley-startups-steve-blank-2011-5"&gt;businessinsider.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/silicon-valley-guru-steve-blank-welcomes-the"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-5168541777531655809?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/LC8QnakwN7A" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/LC8QnakwN7A/silicon-valley-guru-steve-blank.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/silicon-valley-guru-steve-blank.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-6559227473587730404</guid><pubDate>Fri, 20 May 2011 02:27:00 +0000</pubDate><atom:updated>2011-05-19T19:27:43.130-07:00</atom:updated><title>Ethics, customers, profit. Don't forget that priority order.</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;p&gt;The most common mistake is to put profits first. That opens the door for bad things to happen. Numbers become all-important, and almost any behavior is justified in the name of profit. Cheating sets in.&lt;/p&gt;    &lt;p&gt;Instead, a company's priority should be to protect and enhance its reputation through ethical behavior. Within the confines of that behavior, its next most important goal should be to attract and keep customers. Third is figuring out how to make money.&lt;/p&gt;&lt;/blockquote&gt;&lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://blogs.hbr.org/cs/2011/05/four_things_i_would_like_you_t.html?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+harvardbusiness+%28HBR.org%29&amp;amp;utm_content=Google+Reader"&gt;blogs.hbr.org&lt;/a&gt;&lt;/div&gt; &lt;p&gt;It reminds me of &lt;a href="http://www.itsnotwhatyousell.com/pdf/ch1-spence.pdf"&gt;http://www.itsnotwhatyousell.com/pdf/ch1-spence.pdf&lt;/a&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/ethics-customers-profit-dont-forget-that-prio"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-6559227473587730404?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/cnNL2Yir9DI" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/cnNL2Yir9DI/ethics-customers-profit-don-forget-that.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/ethics-customers-profit-don-forget-that.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-7985228027750724355</guid><pubDate>Tue, 17 May 2011 01:35:00 +0000</pubDate><atom:updated>2011-05-16T18:35:06.464-07:00</atom:updated><title>Context not content is king</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;p&gt;&lt;strong&gt;Discovering context is the end game of curation&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The need to filter social networks to create value is a natural reaction to the raw value and size of the networks themselves.&lt;/p&gt;&lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://arnoldwaldstein.com/2011/05/context-not-content-is-king/"&gt;arnoldwaldstein.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/context-not-content-is-king"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-7985228027750724355?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/DA9yhHmTq4U" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/DA9yhHmTq4U/context-not-content-is-king.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/context-not-content-is-king.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-8272232551177260513</guid><pubDate>Tue, 17 May 2011 01:26:00 +0000</pubDate><atom:updated>2011-05-16T18:26:00.579-07:00</atom:updated><title>Social Media's Secret Weapon - Email</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;p&gt;I do think the rise of alternative notification channels; sms, mobile push notifications, direct messages on twitter, facebook messaging, etc are going to move some of this kind of thing off of email over time. But today, if you want to drive retention and repeat usage, there isn't a better way to do it than email.&lt;/p&gt;  			  			  		  	  	&lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.avc.com/a_vc/2011/05/social-medias-secret-weapon-email.html?utm_source=feedburner"&gt;avc.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/social-medias-secret-weapon-email"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-8272232551177260513?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/KlAhEh_AuiY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/KlAhEh_AuiY/social-media-secret-weapon-email.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/social-media-secret-weapon-email.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-6349584566777953439</guid><pubDate>Sun, 08 May 2011 17:30:00 +0000</pubDate><atom:updated>2011-05-08T10:30:46.670-07:00</atom:updated><title>Performance Optimization</title><description>&lt;div class='posterous_autopost'&gt;&lt;div&gt;In last few months, we has been developing and iPhone / iPad apps that pull JSON data from an web API frequently. We used Ruby on Rails to do the first version for both website and API service. After trying the first version, customers complained about loading speed. They said that data loading on the mobile app was SLOW. There are two reasons that make Rails based API calls slow:&lt;/div&gt; &lt;div&gt;&lt;ol&gt;&lt;li&gt;Rails is heavy and blocking (after an API call we do some logging and system shouldn&amp;#39;t have wait for logging to return data to clients)&lt;/li&gt;&lt;li&gt;Need to join four SQL tables to query data, combine data then convert to JSON&lt;/li&gt; &lt;/ol&gt;&lt;/div&gt;&lt;div&gt;Let optimize them!&lt;/div&gt;&lt;p /&gt;&lt;div&gt;Solutions for (1) are:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Rack Apps + Job Queues (&lt;a href="https://github.com/collectiveidea/delayed_job"&gt;Delayed Jobs&lt;/a&gt;, &lt;a href="https://github.com/defunkt/resque"&gt;Resque&lt;/a&gt; ...)&lt;/li&gt; &lt;li&gt;Non blocking server (&lt;a href="http://nodejs.org/"&gt;Node.js&lt;/a&gt;, &lt;a href="https://github.com/postrank-labs/goliath"&gt;Goliath&lt;/a&gt; ...) to fire an action to log info to database, forget it and return JSON to clients&lt;/li&gt;&lt;/ul&gt; &lt;/div&gt;&lt;div&gt;Non blocking was chosen because it&amp;#39;s fast, it handles more requests and help to avoid managing additional job queues.&lt;/div&gt;&lt;p /&gt;&lt;div&gt;For (2), de-normalize and pre-calculate JSON is the first step. But there is a table that cannot be de-normalized using SQL. It&amp;#39;s listings table that state which item will be showed on which month and in which category. Let say item I will be showed in category C in month M1 and M2 then two rows (I, C, M1) and (I, C, M2) must exist in listings table. After de-normalization and JSON pre-calculation, only it need to join only two tables to get items give a category and a month then combine pre-calculated item JSON and return it to clients.&lt;/div&gt; &lt;p /&gt;&lt;div&gt;Second step for (2) is choosing database that is faster and more suitable to de-normalize and query data. Key-value stores are super fast but only support query data by key. Distributed / Map-Reduce (Riak, HBase ..) is overkill. In this case, MongoDB seem to be a perfect fit. MongoDB is very fast (memory mapping), flexible data structure and rich &amp;amp; fast queries (indexing). In MongoDB, listings can be stored in item document it self as an array of [category, month] pairs then can be indexed for fast querying.&lt;/div&gt; &lt;p /&gt;&lt;div&gt;Third step for (2) is minimizing data size for each item. MongoDB try to keep indexes and recently used data in memory so smaller data size mean less memory needed. Smaller data size also mean faster data transfer between database and app instances. To minimize data size I do following tricks:&lt;/div&gt; &lt;div&gt;&lt;ul&gt;&lt;li&gt;Use short field name (cm instead of categories_months ...)&lt;/li&gt;&lt;li&gt;Use short image name (/items/1.jpg instead of /items/this_is_the_best_image_for_item_1.jpg)&lt;/li&gt;&lt;li&gt;&lt;a href="http://mikebenner.com/2011/03/zlib-and-mongo-binary/"&gt;Zlib&lt;/a&gt; to compress pre-calculated JSON&lt;/li&gt; &lt;li&gt;&lt;a href="https://github.com/peterc/rsmaz"&gt;Smaz&lt;/a&gt; to compress small strings&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;After lot of micro-optimization, item data size is reduced to one third (33%).&lt;/div&gt;&lt;p /&gt;&lt;div&gt;The final result is amazing. On the server side, API queries are 20 times faster and often take less than &lt;b&gt;10ms&lt;/b&gt;. Everybody is happy :)&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/performance-optimization"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-6349584566777953439?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/8P_nlDCqNwQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/8P_nlDCqNwQ/performance-optimization.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/performance-optimization.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-4514943152376541346</guid><pubDate>Thu, 05 May 2011 03:00:00 +0000</pubDate><atom:updated>2011-05-04T20:00:44.532-07:00</atom:updated><title>Polyglot Persistence: The Architecture of the Future</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;div class='p_embed p_image_embed'&gt; &lt;a href="http://posterous.com/getfile/files.posterous.com/alexnguyen/vhHvwqfHjxxsaiijsFbnJcbjlkfffCndDGtffjdelmycoCCsIyJDmtviqBsA/media_httplh6ggphtcom_tcftA.png.scaled1000.png"&gt;&lt;img alt="Media_httplh6ggphtcom_tcfta" height="356" src="http://posterous.com/getfile/files.posterous.com/alexnguyen/vhHvwqfHjxxsaiijsFbnJcbjlkfffCndDGtffjdelmycoCCsIyJDmtviqBsA/media_httplh6ggphtcom_tcftA.png.scaled500.png" width="500" /&gt;&lt;/a&gt; &lt;/div&gt; &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://nosql.mypopescu.com/tagged/nosql_theory"&gt;nosql.mypopescu.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;If NoSQL is fast enough, is cache layer necessary? - or- Can we use NoSQL as a cache layer for RDBMS?&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/polyglot-persistence-the-architecture-of-the"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-4514943152376541346?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/oqrz9w3RKNE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/oqrz9w3RKNE/polyglot-persistence-architecture-of.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/05/polyglot-persistence-architecture-of.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-7502165877093419106</guid><pubDate>Mon, 04 Apr 2011 21:08:00 +0000</pubDate><atom:updated>2011-04-04T14:08:31.126-07:00</atom:updated><title>NoSQL Databases and Couchbase: NoSQL Scalability &amp; Performance | Couchbase</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;p&gt;Because vendors of RDBMS technology have little incentive to disrupt a technology generating billions of dollars for them annually, application developers were forced to take matters into their own hands. Google (Big Table) and Amazon (Dynamo) are two leading web application developers who invented, developed and depend on their own database technologies. These “NoSQL” databases, each eschewing the relational data model, are a far better match for the needs modern interactive software systems.&lt;/p&gt;  &lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.couchbase.com/why-nosql/nosql-database"&gt;couchbase.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;A nice introduction to NoSQL.&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/nosql-databases-and-couchbase-nosql-scalabili"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-7502165877093419106?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/Ns02xJm-RPY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/Ns02xJm-RPY/nosql-databases-and-couchbase-nosql.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/04/nosql-databases-and-couchbase-nosql.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-8394554201461960195</guid><pubDate>Fri, 01 Apr 2011 16:46:00 +0000</pubDate><atom:updated>2011-04-01T09:46:29.478-07:00</atom:updated><title>What’s The Most Difficult CEO Skill? Managing Your Own Psychology.</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;p&gt;&lt;em&gt;Focus on the road not the wall—&lt;/em&gt;When they train racecar drivers, one of the first lessons is when you are going around a curve at 200 MPH, do not focus on the wall; focus on the road. If you focus on the wall, you will drive right into it. If you focus on the road, you will follow the road. Running a company is like that. There are always a thousand things that can go wrong and sink the ship. If you focus too much on them, you will drive yourself nuts and likely capsize your company. Focus on where you are going rather than on what you hope to avoid.&lt;/p&gt;  &lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://techcrunch.com/2011/03/31/what%E2%80%99s-the-most-difficult-ceo-skill-managing-your-own-psychology/"&gt;techcrunch.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;I found "focus on the road" technique worked for me for both business and life. Overall it's a great post. Read and enjoy it.&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/whats-the-most-difficult-ceo-skill-managing-y"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-8394554201461960195?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/s5XIbZcVN_k" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/s5XIbZcVN_k/whats-most-difficult-ceo-skill-managing.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2011/04/whats-most-difficult-ceo-skill-managing.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-1658051049800549574</guid><pubDate>Wed, 08 Dec 2010 14:41:00 +0000</pubDate><atom:updated>2010-12-08T06:41:16.684-08:00</atom:updated><title>Salesforce.com Buys Heroku For $212 Million In Cash</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_long_quote"&gt;&lt;p&gt;“The next era of cloud computing is social, mobile and real-time. I call it Cloud 2,” said Marc Benioff, chairman and CEO, salesforce.com. “Ruby is the language of Cloud 2, and Heroku is the leading Ruby application platform-as-a-service for Cloud 2 that is fueling this growing community. We think this acquisition will uniquely position salesforce.com as the cornerstone for the next generation of app developers.”&lt;/p&gt;  &lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://techcrunch.com/2010/12/08/breaking-salesforce-buys-heroku-for-212-million-in-cash/?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+Techcrunch+%28TechCrunch%29"&gt;techcrunch.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/salesforcecom-buys-heroku-for-212-million-in"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-1658051049800549574?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/NsEjDWN9Huk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/NsEjDWN9Huk/salesforcecom-buys-heroku-for-212.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/12/salesforcecom-buys-heroku-for-212.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-3377717442849732712</guid><pubDate>Tue, 22 Jun 2010 00:26:00 +0000</pubDate><atom:updated>2010-06-21T17:26:53.078-07:00</atom:updated><title>What if Doctors were Treated Like Web Developers?</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;a href='http://posterous.com/getfile/files.posterous.com/alexnguyen/ErgisBhcIyGHcfGdkmbqolFbjxouwHxemCwtgtlwfbGmBuJqHBztwkzpasvB/media_httpwwwagentxco_EHCdc.jpg.scaled1000.jpg'&gt;&lt;img src="http://posterous.com/getfile/files.posterous.com/alexnguyen/ErgisBhcIyGHcfGdkmbqolFbjxouwHxemCwtgtlwfbGmBuJqHBztwkzpasvB/media_httpwwwagentxco_EHCdc.jpg.scaled500.jpg" width="500" height="484"/&gt;&lt;/a&gt;     &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.agent-x.com.au/comic/poor-treatment/"&gt;agent-x.com.au&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via web&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/what-if-doctors-were-treated-like-web-develop"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-3377717442849732712?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/xBwMSAhujiY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/xBwMSAhujiY/what-if-doctors-were-treated-like-web.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/06/what-if-doctors-were-treated-like-web.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-1021789480569985514</guid><pubDate>Tue, 22 Jun 2010 00:26:00 +0000</pubDate><atom:updated>2010-06-21T17:26:39.808-07:00</atom:updated><title>Who is using HBase and / or Cassandra?</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;a href='http://posterous.com/getfile/files.posterous.com/alexnguyen/ydbbmfIsmrIaqFDfJtHsGjkfCCqqdCiyCekzGmjEkyewgaIcjGtdJxoIzcny/media_httpwwwnetualit_qmqAu.jpg.scaled1000.jpg'&gt;&lt;img src="http://posterous.com/getfile/files.posterous.com/alexnguyen/ydbbmfIsmrIaqFDfJtHsGjkfCCqqdCiyCekzGmjEkyewgaIcjGtdJxoIzcny/media_httpwwwnetualit_qmqAu.jpg.scaled500.jpg" width="500" height="734"/&gt;&lt;/a&gt;     &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.netuality.ro/and-now-for-something-a-little-different-graphviz-candy/presentations/20100506"&gt;netuality.ro&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via web&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/who-is-using-hbase-and-or-cassandra"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-1021789480569985514?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/r7EGNkbtC1U" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/r7EGNkbtC1U/who-is-using-hbase-and-or-cassandra.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/06/who-is-using-hbase-and-or-cassandra.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-8816662965562950417</guid><pubDate>Tue, 22 Jun 2010 00:26:00 +0000</pubDate><atom:updated>2010-06-21T17:26:14.266-07:00</atom:updated><title>NoSQL for Big Data</title><description>&lt;div class='posterous_autopost'&gt;&lt;p&gt;&lt;a href='http://posterous.com/getfile/files.posterous.com/temp-2010-06-20/nFcunDmnmeHglolsJhGdAjvdgxrzwAEzEhGaeryxBHxhilCHfowIfeIbeDBi/NoSQL_for_Big_Data.png.scaled1000.png'&gt;&lt;img src="http://posterous.com/getfile/files.posterous.com/temp-2010-06-20/nFcunDmnmeHglolsJhGdAjvdgxrzwAEzEhGaeryxBHxhilCHfowIfeIbeDBi/NoSQL_for_Big_Data.png.scaled500.png" width="500" height="374"/&gt;&lt;/a&gt; From "&lt;a href="http://www.slideshare.net/jericevans/cassandra-explained"&gt;Cassandra Explained&lt;/a&gt;"&lt;/p&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via web&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/nosql-for-big-data"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-8816662965562950417?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/KAiFiVN81es" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/KAiFiVN81es/nosql-for-big-data.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/06/nosql-for-big-data.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-1949530634171071887</guid><pubDate>Tue, 22 Jun 2010 00:25:00 +0000</pubDate><atom:updated>2010-06-21T17:25:59.294-07:00</atom:updated><title>Ruby and Rails Ecosystem Whitepaper</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;a href='http://posterous.com/getfile/files.posterous.com/alexnguyen/jzonChzlCaiIodIExrryiCemsauvgyldFgsDwqxtHoBpqbidrslIHgbvtspE/media_httpwwwinfoethe_xvgcH.jpg.scaled1000.jpg'&gt;&lt;img src="http://posterous.com/getfile/files.posterous.com/alexnguyen/jzonChzlCaiIodIExrryiCemsauvgyldFgsDwqxtHoBpqbidrslIHgbvtspE/media_httpwwwinfoethe_xvgcH.jpg.scaled500.jpg" width="500" height="154"/&gt;&lt;/a&gt; &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.infoether.com/ruby-and-rails-whitepaper"&gt;infoether.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via web&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/ruby-and-rails-ecosystem-whitepaper"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-1949530634171071887?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/Y3CNtwSanYs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/Y3CNtwSanYs/ruby-and-rails-ecosystem-whitepaper.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/06/ruby-and-rails-ecosystem-whitepaper.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-2893962281227191775</guid><pubDate>Tue, 22 Jun 2010 00:25:00 +0000</pubDate><atom:updated>2010-06-21T17:25:44.101-07:00</atom:updated><title>Five Steps to Building an Interdependent Team</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote&gt;&lt;div&gt;  				&lt;p&gt;  1. Know what kind of game you are playing and if you’re all playing the SAME game.&lt;br /&gt;  Get your team on the same page. If the game you were playing was basketball, it wouldn’t work and you wouldn’t win if 3 of your teammates thought the game was tennis, football, and volleyball. Find out where everyone is at and bring everyone up to speed.&lt;/p&gt;  &lt;p&gt;2. Move from activity-based thinking to outcome-based thinking.&lt;br /&gt;  It’s not “do more” equals “achieve more”. The equation is “do less” equals “achieve more” by taking actions that directly correspond with the outcome you are out to produce. My team and I call this the DPO (Daily Primary Outcome) for each position, team member, and the practice as a whole.&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;/span&gt;3. Shift from “surviving” to “thriving.”&lt;br /&gt;  In order for your practice, team, and you to thrive, you have to do what I call, Raise Your HDL™. In life you don’t get what you deserve. You get what you THINK you deserve. Nothing more. Nothing less. Consider that we all have an imaginary container that we have built in our minds that limits the capacity of all the things we can have in practice and in life. Imagine how removing that limit on what’s possible for you, your team, and your practice could impact the BIG game you are all playing.&lt;/p&gt;  &lt;p&gt;4. Communicate only with facts and outcomes.&lt;br /&gt;  I like to call this Managing By Agreement, or MBA. What has worked for my clients and for my own team is to only deal in facts and outcomes. This doesn’t mean that all deadlines will be met. What it does mean is that when there is a broken or missing agreement, the parties involved only speak about those agreements, not how they feel about the agreement, or the drama that could have been caused from it, but simply on the facts.&lt;/p&gt;  &lt;p&gt;5. Acknowledge being invisible.&lt;br /&gt;  I t’s having your DPOs being fulfilled time and time again, with no one blaming another for any time they aren’t, your team enjoying being at work, your patients receiving world-class customer service, your game being won, and your team working like the well-oiled machine you’ve created by following these five steps.&lt;/p&gt;  	     &lt;/div&gt;&lt;/blockquote&gt;&lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.garykadi.com/five-steps.html"&gt;garykadi.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via web&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/five-steps-to-building-an-interdependent-team"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-2893962281227191775?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/RO1kvuC0jfE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/RO1kvuC0jfE/five-steps-to-building-interdependent.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/06/five-steps-to-building-interdependent.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-5587197161588902515</guid><pubDate>Tue, 22 Jun 2010 00:25:00 +0000</pubDate><atom:updated>2010-06-21T17:25:13.348-07:00</atom:updated><title>"Web 2.0 isn’t possible without lots of RAM"</title><description>&lt;div class='posterous_autopost'&gt;&lt;p&gt;said by John Adams (Twitter)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.web2expo.com/webexsf2010/public/schedule/detail/12030"&gt;http://www.web2expo.com/webexsf2010/public/schedule/detail/12030&lt;/a&gt;&lt;/p&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via web&lt;/a&gt;  from &lt;a href="http://alex.vinova.sg/web-20-isnt-possible-without-lots-of-ram"&gt;Alex Nguyen&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-5587197161588902515?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/OPZvq8bEgwQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/OPZvq8bEgwQ/20-isnt-possible-without-lots-of-ram.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/06/20-isnt-possible-without-lots-of-ram.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-6679631298051021143</guid><pubDate>Tue, 01 Jun 2010 23:34:00 +0000</pubDate><atom:updated>2010-06-01T16:34:14.086-07:00</atom:updated><title>the cost of I/O</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;img src="http://posterous.com/getfile/files.posterous.com/mic-ioit/wacswrbbuGktIxJBAqoHbbCGiheHBuydaEcuwdzEahcyyukDFeoBonDrqoqw/media_httpmediatumblr_hJzCg.png.scaled500.png" width="427" height="389"/&gt;     &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://nosql.mypopescu.com/post/654107903/presentation-an-introduction-to-node-js-and-riak"&gt;nosql.mypopescu.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-6679631298051021143?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/FkrQkZdO7O8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/FkrQkZdO7O8/cost-of-io.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/06/cost-of-io.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-5991835408746543659</guid><pubDate>Thu, 20 May 2010 11:47:00 +0000</pubDate><atom:updated>2010-05-20T04:47:27.863-07:00</atom:updated><title>Google I/O 2010 Day 1 Keywords</title><description>&lt;div class='posterous_autopost'&gt;* HTML5 (More powerful Web Apps) &lt;p /&gt; * Mobile (Browsers are everywhere) &lt;p /&gt; * WebMProject.org (Open Source Media Technology) &lt;br /&gt; VP8 (Video) + Vorbis (Audio) &lt;p /&gt; * JavaScript (In every browsers) &lt;p /&gt; * Chrome Web App Store (something similar to Apple iTune App Store) &lt;p /&gt; * Interactive Magazine &lt;p /&gt; * Google Wave Platform / API &lt;p /&gt; * Cloud &lt;p /&gt; * Google App Engine for Business &lt;br /&gt; SLA, SSL, SQL DBs&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-5991835408746543659?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/K2X82KlI4Fs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/K2X82KlI4Fs/google-io-2010-day-1-keywords.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/05/google-io-2010-day-1-keywords.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-227439755524447426</guid><pubDate>Sat, 15 May 2010 11:10:00 +0000</pubDate><atom:updated>2010-05-15T04:10:41.683-07:00</atom:updated><title>wtf - the only valid code quality measurement</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;img src="http://posterous.com/getfile/files.posterous.com/mic-ioit/iHcyvzidsfpmGqeIvumyfqbJzvuqazzJsAFjhdzlhysGfEetggEsgblynlxG/media_httpfarm3static_nzuFi.jpg.scaled500.jpg" width="500" height="453"/&gt;     &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.flickr.com/photos/smitty/2245445147/"&gt;flickr.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-227439755524447426?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/NuGp9cZ47qk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/NuGp9cZ47qk/wtf-only-valid-code-quality-measurement.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/05/wtf-only-valid-code-quality-measurement.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-7145776042275183093</guid><pubDate>Tue, 20 Apr 2010 07:49:00 +0000</pubDate><atom:updated>2010-04-20T00:49:01.302-07:00</atom:updated><title>NoSQL Presentation: Exellent Intro from Expert</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;object name="prezi_0928623fb103164358f174a0f33d1aac2b7efde0" height="380" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="480"&gt;&lt;param name="movie" value="http://prezi.com/bin/preziloader.swf" /&gt;  &lt;param name="allowfullscreen" value="true" /&gt;  &lt;param name="allowscriptaccess" value="always" /&gt;  &lt;param name="bgcolor" value="#ffffff" /&gt;  &lt;param name="flashvars" value="prezi_id=0928623fb103164358f174a0f33d1aac2b7efde0&amp;lock_to_path=1&amp;color=ffffff&amp;autoplay=no" /&gt;  &lt;embed name="preziEmbed_0928623fb103164358f174a0f33d1aac2b7efde0" allowfullscreen="true" src="http://prezi.com/bin/preziloader.swf" allowscriptaccess="always" type="application/x-shockwave-flash" height="380" flashvars="prezi_id=0928623fb103164358f174a0f33d1aac2b7efde0&amp;amp;lock_to_path=1&amp;amp;color=ffffff&amp;amp;autoplay=no" width="480" /&gt;&lt;/embed&gt;&lt;/param&gt;&lt;/param&gt;&lt;/param&gt;&lt;/param&gt;&lt;/param&gt;&lt;/object&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://nosql.mypopescu.com/post/535275826/presentation-nosql-dealing-with-the-data-deluge"&gt;nosql.mypopescu.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-7145776042275183093?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/sPAmSPW-YxU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/sPAmSPW-YxU/nosql-presentation-exellent-intro-from.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/04/nosql-presentation-exellent-intro-from.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7179971131759779239.post-1939292914516701571</guid><pubDate>Sun, 11 Apr 2010 09:17:00 +0000</pubDate><atom:updated>2010-04-11T02:17:35.421-07:00</atom:updated><title>HBase vs Cassandra</title><description>&lt;div class='posterous_autopost'&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote class="posterous_medium_quote"&gt;In my opinion, these differing histories have resulted in HBase being more suitable for data warehousing, and large scale data processing and analysis (for example, such as that involved when indexing the Web) and Cassandra being more suitable for real time transaction processing and the serving of interactive data. Writing a proper study of that hypothesis is well beyond this post, but I believe you will be able to detect this theme recurring when considering the databases.&lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://ria101.wordpress.com/2010/02/24/hbase-vs-cassandra-why-we-moved/"&gt;ria101.wordpress.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7179971131759779239-1939292914516701571?l=codemonkeycode.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FreeLikeABirdHappyInTheSky/~4/zjH34awDCd8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FreeLikeABirdHappyInTheSky/~3/zjH34awDCd8/hbase-vs-cassandra.html</link><author>noreply@blogger.com (Alex Nguyen)</author><thr:total>0</thr:total><feedburner:origLink>http://codemonkeycode.blogspot.com/2010/04/hbase-vs-cassandra.html</feedburner:origLink></item></channel></rss>

