<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6341740272003162323</id><updated>2011-08-02T20:47:35.549-07:00</updated><category term='hello world'/><category term='yadwinder grewal'/><category term='intro'/><title type='text'>Never Settled - Yadwinder Grewal</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://neversettled.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6341740272003162323/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://neversettled.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Yadwinder Grewal</name><uri>http://www.blogger.com/profile/14582685676336006316</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_8-AqC3Uj3AY/SKaugik5GZI/AAAAAAAAAg4/hVZVoB3cRxY/S220/neuralnet.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6341740272003162323.post-4547437351561703999</id><published>2008-09-25T01:02:00.000-07:00</published><updated>2010-03-12T11:46:54.661-08:00</updated><title type='text'>One vs. the World</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Success is work done efficiently &amp;amp; smartly&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;Any successful website is really an army of computers working together as a unit.  No single 'computer' can handle the load sites like face-book or twitter.com generate.  However, if you overload the term 'computer' to mean lots of computers acting as one ... possibilities open up.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;As an analogy, consider the movie '300' [Fox]:  the small army worked efficiently and smartly together to withstand the big bad Persians.  They worked together efficiently as a unit and were able to handle the 'load' quite well.  Excellent movie by the way, I highly recommend it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Back to computers, in theory, if a web-hosting structure is designed right, it can be housed on any standard desktop PC.  One would simply need to add more PC's scale the system.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Any semi-advanced website will need these basic components:&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;some data to display&lt;/li&gt;&lt;li&gt;a way to store that data&lt;/li&gt;&lt;li&gt;a way to analyze (search) the data&lt;/li&gt;&lt;li&gt;and in some cases, create a way to get the data automatically&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Some advanced components to building a web site&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here, I will briefly talk about a few ways to create smart sites.  Setting everything up and the initial learning curve is very steep and challenging (not to mention frustrating), but the rewards are definitely worth the effort here.  &lt;/div&gt;&lt;ul&gt;&lt;li&gt;DISPLAY the web page&lt;/li&gt;&lt;ul&gt;&lt;li&gt;creating websites by hand is tedious (and arguably boring)&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://www.clearsilver.net/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;clearsilver&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; however, definitely makes creating templates for the site a little interesting. The templates (.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;cst&lt;/span&gt;&lt;/span&gt;) work together with data files (.&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;hdf&lt;/span&gt;&lt;/span&gt;) to display the pages that are visible to the user.&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;You can create the .&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;hdf&lt;/span&gt;&lt;/span&gt; files by hand&lt;/li&gt;&lt;li&gt;Programmatically (aka the fun way)&lt;/li&gt;&lt;/ol&gt;Your imagination is the limit on how you want to create those magical &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;hdf&lt;/span&gt;&lt;/span&gt; files. Real coders would &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_8"&gt;definitely&lt;/span&gt; want to check out &lt;a href="http://google-opensource.blogspot.com/2008/07/protocol-buffers-googles-data.html"&gt;protocol buffers&lt;/a&gt; as well as &lt;a href="http://labs.google.com/papers/bigtable.html"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;bigtable&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; to store everything in.&lt;br /&gt;&lt;br /&gt;Sooner or later, your ... big ... tables will grow ... really big and it's going to take a long time going from one end to the other.&lt;br /&gt;&lt;br /&gt;You'll need to store this stuff smartly so that you can find it fast.  &lt;a href="http://labs.google.com/papers/mapreduce.html"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;MapReduce&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; is the way to go there.  Check out a project &lt;a href="http://hadoop.apache.org/core/"&gt;here&lt;/a&gt; that incorporates both worlds.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;In a nutshell,  all the fancy papers mentioned above boil down to the following story.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;hr /&gt;&lt;div style="text-align: left;"&gt;&lt;ol&gt;&lt;li&gt;You have some sort of business.&lt;/li&gt;&lt;li&gt;You generate some sort of data with your business.  (sales &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_11"&gt;receipts&lt;/span&gt;, customers, etc.)&lt;/li&gt;&lt;li&gt;You store all this stuff somewhere (your garage)&lt;/li&gt;&lt;li&gt;Eventually the stuff becomes so large that finding anything can be compared to the needle in a haystack problem ... except in this case its a gazillion haystacks&lt;/li&gt;&lt;li&gt;You create a way to find the stuff fast no matter how big the haystacks get (a big metal detector)&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;hr /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Conclusion:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Sites like &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;Facebook&lt;/span&gt;.com, the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;newyorktimes&lt;/span&gt;.com, and others like them receive millions of hits a day.  All these millions of people are doing millions of things.  The customer traffic can grow exponentially very fast.  Memory however, of any computer system(s), whether an army or a single machine, will &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_12"&gt;eventually&lt;/span&gt; &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_13"&gt;exhaust&lt;/span&gt; its resources.  Anticipating this, we utilize the space we do have effectively and efficiently using intelligent algorithms which set up pre-computed environments (indexes) that predict and generate possible future conclusions  by traversing down and &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_14"&gt;exhausting &lt;/span&gt;all coverage paths.  All this results in super-fast response-times from standard pc-servers, which act as efficiently as expensive commercial servers for a fraction of the price. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It's like placing a free supercharged viper engine in a pinto.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In conclusion:  the piggy who invested the initial time to get it right the first time withstood the storm from the big bad wolf.&lt;/div&gt;&lt;/div&gt;&lt;/div&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/6341740272003162323-4547437351561703999?l=neversettled.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neversettled.blogspot.com/feeds/4547437351561703999/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6341740272003162323&amp;postID=4547437351561703999' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6341740272003162323/posts/default/4547437351561703999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6341740272003162323/posts/default/4547437351561703999'/><link rel='alternate' type='text/html' href='http://neversettled.blogspot.com/2008/09/fantasy-football-vs-world.html' title='One vs. the World'/><author><name>Yadwinder Grewal</name><uri>http://www.blogger.com/profile/14582685676336006316</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_8-AqC3Uj3AY/SKaugik5GZI/AAAAAAAAAg4/hVZVoB3cRxY/S220/neuralnet.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6341740272003162323.post-17287368249361211</id><published>2008-07-28T01:30:00.000-07:00</published><updated>2010-03-12T12:05:16.500-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hello world'/><category scheme='http://www.blogger.com/atom/ns#' term='yadwinder grewal'/><category scheme='http://www.blogger.com/atom/ns#' term='intro'/><title type='text'>Hello World!</title><content type='html'>My name is Yadwinder Grewal and this is my blog.  I will keep this particular blog to discuss some random topics I might find interesting.  I'll try to include as much research as possible into each blog.  This way, I can continue to let my mind continue on its fleeting (and at times confusing) paths and not worry about forgetting the little details.&lt;br /&gt;&lt;br /&gt;Its a little late now so I'm going to cut this one short, but I also wanted to put in a plug for my website. &lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href='http://www.grewal.cc'&gt;&lt;img src="https://sites.google.com/site/ygrewal/grewalcclogo.gif" style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 119px; height: 23px;" border="0" alt="" /&gt;&lt;/a&gt;The site entirely run by me including the computers that run it.  At the moment, its a little sparse, but give it a little time, you'll see some life soon! At some point, I'll write a blog post about the hardware. (Yay!)  haha...&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/6341740272003162323-17287368249361211?l=neversettled.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neversettled.blogspot.com/feeds/17287368249361211/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6341740272003162323&amp;postID=17287368249361211' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6341740272003162323/posts/default/17287368249361211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6341740272003162323/posts/default/17287368249361211'/><link rel='alternate' type='text/html' href='http://neversettled.blogspot.com/2008/07/hello-world.html' title='Hello World!'/><author><name>Yadwinder Grewal</name><uri>http://www.blogger.com/profile/14582685676336006316</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_8-AqC3Uj3AY/SKaugik5GZI/AAAAAAAAAg4/hVZVoB3cRxY/S220/neuralnet.gif'/></author><thr:total>0</thr:total></entry></feed>
