<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-10953736</atom:id><lastBuildDate>Fri, 24 Jul 2026 05:57:42 +0000</lastBuildDate><category>Life</category><category>Technology</category><category>Rants</category><category>Programming</category><category>Linux</category><category>People</category><category>Infotainment</category><category>Speculation</category><category>Mania</category><category>Syracuse</category><category>Travel</category><category>Zen</category><category>Infotainment review</category><category>engineering</category><title>The metamorphosis of a Hacker</title><description>Observations on life &amp;amp; technology.</description><link>http://codeyman.blogspot.com/</link><managingEditor>noreply@blogger.com (Sridhar Iyer)</managingEditor><generator>Blogger</generator><openSearch:totalResults>206</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-5928361047556308612</guid><pubDate>Thu, 27 Feb 2020 20:26:00 +0000</pubDate><atom:updated>2020-02-27T21:34:52.627-05:00</atom:updated><title>AI in networking: Looking beyond the hype</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;i&gt;&quot;The question of whether machines can think is about as relevant as the question of whether submarines can swim.&quot; – Edsger Dijkstra&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;
&lt;/i&gt;&lt;/span&gt; &lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;Artificial intelligence was the term coined by the famous computer scientist John McCarthy, primarily as a replacement for the term “Cybernetics”, which was romanticized by culture of the day as the utopian end all to all problem solving. McCarthy tried to distinguish the field by having a solid foundation in mathematics and not the “what if” scenarios extrapolated from minor progress in certain aspects of the science. Unfortunately, the term “Artificial Intelligence” has suffered the same fate decades later.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;Defining a true AI is hard, because there is no true definition of Intelligence itself. Is a pig more intelligent than a dog? Is a dog more intelligent than a 1-year old human? How do we quantify these differences? The pursuit of an artificial general intelligence is typically limited to academia and research labs of bigger multinational corporations.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;The majority of the industry is using the term AI for a more specialized, domain specific, algorithmic enhancement to knowledge compression and expression. We’d refer specifically this concept as AI in this article.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;The tech industry is rife with confusing and interchangeable use of the terms AI, ML, Advance analytics. The goal of an ethical company should not be to create a technology that caters to the particular hyped up term but create the simplest products that solves a real customer problem. (Occam’s Razor!)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;With that disclaimer, we need to find some logical separation between the technologies out there and assign some term to it. Let’s look at some points of separation and overlap between these technologies:&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ol style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;Feedback loop: Most of the experts agree that ANY intelligent system should have a feedback loop to learn from mistakes and learn new things. So is an Artificially intelligent system, just a ML system with a feedback loop? How long is the feedback loop?&amp;nbsp;&amp;nbsp;This depends on the problem at hand. &lt;br /&gt;
Let’s take the problem of predicting network bandwidth for capacity planning. We could start with a clean slate and have the AI agent learn the network behavior over the course of an year, or if we already have the data, train it in one shot and deploy the model directly. To avoid model drifts (where the network behavior changes over time), we can retrain every few months to avoid loss of accuracy. Depending on the amount of data we could throw at problem and how the problem is described, an end user might not see a difference between the predictions done via different methodologies.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;Feature Extraction: Certain problems don’t lend themselves well to feature extraction and have fuzzy rules. These include problems natural language processing, image labelling etc. Deep neural networks can just be fed raw bytes and trained to internally create cluster of neurons (that are ‘imagined’ as features). The higher layer neurons then combine these features to predict the necessary outcome.&lt;br /&gt; This approach is not necessary for problems that have fixed feature sets. Coming back to the network capacity planning problem, the features of a network are well quantified (jitter, latency, loss, bandwidth etc) and do not really need to be deduced by a neural net.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;Again, from an end user perspective, the gain in accuracy obtained by using simple linear regression vs a state of art GAN (general adversarial networks) might be non-existent or too little to justify investment of resources. Does the end user care if he’s being helped by AI or ML or advanced data analytics? What if we could quantify the gains for the end user instead.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;We could borrow the idea of product maturity from the Autonomous Car research and classify an analytics product in levels:&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;b&gt;Level Zero - No analytics:&lt;/b&gt; Think of these networking devices as just providing basic snmp/rest api support and you have to build all the tooling and logic around it yourself.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;b&gt;Level One - Basic Analytics support: &lt;/b&gt;With these networking devices, you get analytics support. You can drill down on traffic patterns, analyze typical issues and take corrective actions. Most of the network analytics dashboard in existence fall into this category.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;b&gt;Level Two – Partial Automation:&lt;/b&gt; These networking devices allow setting up of thresholds for admin notification, automation of service requests via precanned scripts and service platforms. E.g. a rule saying “Increase the bandwidth by 10% if the bandwidth threshold alarm is active for 10 minutes”. This level also allows for simpler forms of machine learning and could allow for rules like “if daily moving average of traffic rate exceeds the monthly moving average, then notify the admin”.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;b&gt;Level Three – Conditional Automation:&lt;/b&gt; This level takes a massive leap over level two in the sense that the system itself determines the parameters and thresholds for the networking device or the whole network. In this level, a networking device will decide on its own threshold and decide the extent of its own corrective actions. The template of action would still need human action. Using the same example as above, the system could “Increase the bandwidth by X% if a bandwidth threshold of Y mbps is breached for Z minutes”. The values of X, Y &amp;amp; Z will be learnt automatically by the system.&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;b&gt;Level Four – High Automation:&lt;/b&gt; This is the next automatic evolutionary step for stabilized level three systems. This allows for complete automation in controlled use cases and would be built over the abstraction of level three. E.g. if the latency between offices in Mumbai and San Jose increased, it would invoke Level 3 automatons to figure out the cause of slowness in traffic. It would even try to remedy some of them with human defined actions/notifications.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;b&gt;Level Five – Self Healing Networks:&lt;/b&gt; This would be the holy grail of networking products. The automation and machine learning would be sufficiently be advanced enough to not require any human intervention for most of network maintenance tasks. The whole network would behave as one distributed self-healing entity that not only heals itself but also optimizes itself for the best performance.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;Each level requires a lot of investment in infrastructure and research. Each level is a layer of onion that you can only get to after peeling the outer layer. Level One systems are industry standards. Lot of new analytics products are Level two (including Versa Analytics). And we are incredibly close to building a Level three analytics products.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt; &lt;span style=&quot;font-family: &amp;quot;helvetica neue&amp;quot; , &amp;quot;arial&amp;quot; , &amp;quot;helvetica&amp;quot; , sans-serif;&quot;&gt;Huge interest in machine learning, increase in the amount of generated data, decrease in the cost of compute &amp;amp; storage and the rise of cloud computing are fueling incredible leaps in domain specific usage of machine learning. We are on our way to produce something truly transformative.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2020/02/ai-in-networking-looking-beyond-hype.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-1502766665232145781</guid><pubDate>Fri, 08 Nov 2019 02:21:00 +0000</pubDate><atom:updated>2019-11-07T21:21:53.282-05:00</atom:updated><title>Encoding the zietgeist for predicting outcome of a cricket match</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
TLDR: Here&#39;s the &lt;a href=&quot;https://github.com/codeyman/CricketPrediction/blob/master/International%20Cricket%20prediction.ipynb&quot;&gt;code&lt;/a&gt;.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
This happened a few months ago...&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
World cup cricket mania was gripping the nation, and I was feeling left out because of my own ignorance towards the sport. I decided to fight the battle in my own battlefield and tried to make the game a bit more interesting for myself. I wanted to take part in company pool without putting in a lot of effort to follow the sport, but also not be the person to not have anything to talk about when all that people talk about is cricket.&lt;br /&gt;
Given all the buzz surrounding AI/ML and work that we are doing at Versa, I decided to just build a minimum viable solution to help me winning the pool.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
The constraints I had for myself were simple:&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;ul&gt;
&lt;li&gt;Don&#39;t spend a lot of time. Maximum of 1 day to implement an end to end solution. This ruled out any massive model building using play by play stats, players stats, team dynamics etc.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Encode the zeitgeist and perception of the sports fans and enthusiasts rather than focus on micro indicators.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Here&#39;s how I went about winning the pool (shared it with two other folks).&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;h4 style=&quot;text-align: justify;&quot;&gt;
Home team advantage:&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
I don&#39;t claim to be an expert in any sports. However, I do claim to be an expert listener of sports blabber, and one thing that everyone seem to agree on in home team advantage. To factor this into the model I needed to figure out if the teams are playing in their home country. Our ML algorithm can make the connection between a victory and location of the game easily, so I scraped a random website from google to get the data:&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;table border=&quot;1&quot; class=&quot;dataframe&quot; style=&quot;background-color: white; border-collapse: collapse; border-spacing: 0px; border: none; box-sizing: border-box; color: black; font-family: &amp;quot;Helvetica Neue&amp;quot;, Helvetica, Arial, sans-serif; font-size: 12px; margin-left: 0px; margin-right: 0px; margin-top: 1em; table-layout: fixed;&quot;&gt;&lt;thead style=&quot;border-bottom: 1px solid black; box-sizing: border-box; vertical-align: bottom;&quot;&gt;
&lt;tr style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;&lt;/th&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;Date&lt;/th&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;Ground&lt;/th&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;Team_A&lt;/th&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;Team_B&lt;/th&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;Winner&lt;/th&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;City&lt;/th&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;Host&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;&lt;tbody style=&quot;box-sizing: border-box;&quot;&gt;
&lt;tr style=&quot;background: rgb(245, 245, 245); border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;0&lt;/th&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;2000-01-02&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Eden Park&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;West Indies&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Auckland&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;37&lt;/th&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;2000-01-04&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Owen Delany Park&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;West Indies&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Taupo&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;background: rgb(245, 245, 245); border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;39&lt;/th&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;2000-01-06&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;McLean Park&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;West Indies&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Napier&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;67&lt;/th&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;2000-01-08&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Westpac Stadium&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;West Indies&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Wellington&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;New Zealand&lt;/td&gt;&lt;/tr&gt;
&lt;tr style=&quot;background: rgb(245, 245, 245); border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;&lt;th style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; text-align: right; vertical-align: middle;&quot;&gt;98&lt;/th&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;2000-01-09&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Brisbane Cricket Ground&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Australia&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Pakistan&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Pakistan&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Brisbane&lt;/td&gt;&lt;td style=&quot;border: none; box-sizing: border-box; line-height: normal; max-width: none; padding: 0.5em; vertical-align: middle;&quot;&gt;Australia&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
Encoding gaming form advantage:&lt;/h4&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Every sports fan I have spoken to, talks about a team or a player under performing or&amp;nbsp; outperforming because they are in bad/good form.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
How do we objectify a &quot;good&quot; form? If team A is a vastly better team than team B, but team A is in its worst form and team B is in their best form, then who has a better chance? Surely there is an upper bound from the benefit of a good form!!&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Based on these questions, I formulated few axioms. These are not true &quot;facts&quot;, but universally accepted ideas.&lt;/div&gt;
&lt;h3&gt;
Sridhar&#39;s AXIOMS of team sports (SATS): &lt;/h3&gt;
&lt;b&gt;Axiom 1:&lt;/b&gt; A previous win against any specific team can improve the winning probability by 𝛼 &lt;br /&gt;
&lt;b&gt;Axiom 2:&lt;/b&gt; A previous loss against reduces the winning probability by some 𝛽, where 𝛼 &amp;lt; 𝛽 &lt;br /&gt;
This is based on the observation that sports fans always say that a team is in form because they have won quite a few matches in the recent past but are quick to retort the form is broken if the team loses a single game. This points to the fact that a loss is a heavier blow to the psyche than upliftment provided by a win.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Axiom 3&lt;/b&gt;: Specific form against the competitor 𝛼&#39; and 𝛽&#39; also is a factor&lt;br /&gt;
If team A has always won against team B, then it&#39;ll have a higher probability of winning against team B, even if team B has been winning recent string of matches. This effect can be seen in world cup cricket matches between India and Pakistan. &lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;b&gt;Axiom 4&lt;/b&gt;: The contribution of form to the winning probability is capped to some number &lt;/div&gt;
&lt;div&gt;
&lt;b&gt;Axiom 5:&lt;/b&gt; The form is function of winning streak. i.e. a team will have &quot;good form&quot; if it has been winning more matches in the recent past.&lt;br /&gt;
&lt;br /&gt;
From Axiom 5, we know that 𝛼=f(streak). So, let&#39;s just define streak and define its growth function. I&#39;m arbitrarily choosing a decay of 0.8 for winning streak &lt;br /&gt;
&lt;br /&gt;
Let&#39;s take a look at the function growth for streak:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgC4cFpsmETaTXmMrJFoNpi0t8Kptx7bfru8v8YNaVKAr_XTEoIIAM8NKBZ19i2RBXsx8CbXYo1VUI999rLpcQJutJpKZGhkLuCUqg7OXXsMudoXgfyE10yvoHlMBKGT1l8DJ7ssA/s1600/download.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;252&quot; data-original-width=&quot;375&quot; height=&quot;215&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgC4cFpsmETaTXmMrJFoNpi0t8Kptx7bfru8v8YNaVKAr_XTEoIIAM8NKBZ19i2RBXsx8CbXYo1VUI999rLpcQJutJpKZGhkLuCUqg7OXXsMudoXgfyE10yvoHlMBKGT1l8DJ7ssA/s320/download.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Here the max streak is 5 that can be achieved by around 30 continuous wins. However I&#39;m going to linearly decrease the streak when a game is lost. Note the arbitrary nature of the decay function and streak increase/decrease. I don&#39;t need to get the function exactly right.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
The machine learning algorithm will figure out the importance to give to the streak.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
After running a gradient boosted tree classifier on the test set, I get an accuracy of 67%. I don&#39;t expect a high accuracy on this model because the inputs are highly subjective. It&#39;s not great, but acceptable for a few hours of work.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Once all the i&#39;s were dotted and t&#39;s crossed, was able to run the prediction on the actual matches. Here are few test predictions:&lt;br /&gt;
&lt;pre&gt;&lt;code&gt;   
print_update_prediction(&#39;Australia&#39;,&#39;Afghanistan&#39;, host = &#39;England&#39;)
&lt;b&gt;Australia&lt;/b&gt;, &lt;span style=&quot;color: #ea9999;&quot;&gt;0.9750151038169861&lt;/span&gt;

print_update_prediction(&#39;India&#39;,&#39;Australia&#39;, host=&#39;India&#39;) 
&lt;b&gt;India&lt;/b&gt;, &lt;span style=&quot;color: #ea9999;&quot;&gt;0.6103534698486328&lt;/span&gt;


print_update_prediction(&#39;India&#39;,&#39;Australia&#39;, host=&#39;Australia&#39;) 
&lt;b&gt;India&lt;/b&gt;, &lt;span style=&quot;color: #ea9999;&quot;&gt;0.5572055578231812&lt;/span&gt;
  &lt;/code&gt;
&lt;/pre&gt;
&lt;br /&gt;&lt;/div&gt;
Thanks to the untimely rains in the world cup, 4-5 games were rained out. Few of those games might have been mispredicted by my model. All in all, I was able to predict 87% of the games correctly.&lt;br /&gt;
&lt;br /&gt;
Check out the &lt;a href=&quot;https://github.com/codeyman/CricketPrediction/blob/master/International%20Cricket%20prediction.ipynb&quot;&gt;code on github.&lt;/a&gt; I suspect that this would work for any team sport where the teams don&#39;t change. It would work for soccer, field hockey etc, but not for IPL cricket or NFL/NBA where the teams change every year.&lt;/div&gt;
&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2019/11/encoding-zietgeist-for-predicting.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgC4cFpsmETaTXmMrJFoNpi0t8Kptx7bfru8v8YNaVKAr_XTEoIIAM8NKBZ19i2RBXsx8CbXYo1VUI999rLpcQJutJpKZGhkLuCUqg7OXXsMudoXgfyE10yvoHlMBKGT1l8DJ7ssA/s72-c/download.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-7255641197447809936</guid><pubDate>Thu, 07 Sep 2017 22:52:00 +0000</pubDate><atom:updated>2017-09-07T18:53:25.415-04:00</atom:updated><title>Prophesying APPL stock movement</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;b&gt;Disclaimer: &lt;/b&gt;Lot of statistics and technical jargon ahead. Jump directly to the &lt;a href=&quot;#summary&quot;&gt;summary&lt;/a&gt; section for a quick walk-through. I&#39;m neither a statistician or claim to be knowledgeable about the stock market in general. Use the information presented here at your own risk.&lt;br /&gt;
&lt;br /&gt;
At Versa, we have been doing research into crunching network related data and providing actionable insight into network issues and network behavior in general. My wife works with financial models and a discussion on various tools used in econometrics led me into the rabbit hole of statistics and modelling (I had some experience with it back in school, but tech has come a long way in the past decade).&lt;br /&gt;
&lt;br /&gt;
Although, I am fluent in Python, nothing came close rapid prototyping power of R, so had to pick it up along the way. After few &lt;a href=&quot;https://www.datacamp.com/home&quot;&gt;datacamp&lt;/a&gt; courses, I had been trying to come up with a generalized statistical model that could work across a wide variety of similar data sets. There is a lot of literature that deals with model fitting and there are lot of libraries for number crunching (both in Python &amp;amp; R), however most of them were never designed for the deluge of data that we have now, nor do they deal with multiple seasonalities well (how the data looks per hour, per day, per week, per month, per year). After trying out stationary model fits and regressions, I moved on to time series models; These include a barrage of models, including Holt-Winters, Arima, ets, tbats, etc to fit a time series model. I have yet to try a LSTM to fit the data.&lt;br /&gt;
&lt;br /&gt;
While browsing the interwebs, I stumbled across a generalized time series model fitter by Facebook&#39;s data science team: &lt;a href=&quot;https://facebookincubator.github.io/prophet/&quot;&gt;Prophet&lt;/a&gt;. It is fairly simple for use by an amateur like me and yields surprisingly good results. I decided to run this on Apple&#39;s daily opening price and tried to predict the motion of the stock for the next one year. There was no assumption on my part that this would yield any information on stock price (else statisticians would have been billionaires). What I wanted to figure out was the general direction of the stock&#39;s motion.&lt;br /&gt;
&lt;br /&gt;
The prophet library allows the accounting for events affecting the stock price, which are mainly the holidays and the release announcements (and the days leading up to it). The following R code did the heavy lifting:&lt;br /&gt;
&lt;br /&gt;
&lt;script src=&quot;https://gist.github.com/codeyman/cc6126e3f216ea9d349f43667b9f3385.js&quot;&gt;&lt;/script&gt;&lt;br /&gt;
&lt;br /&gt;
Here are some of the graphs generated by this model:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikg3inJwN1BVaZP4VJb4tSADNuvNyxqQ1o8M7rYMOC2_HAfJ3UpAMZ9OBQHFvA2vuZSgTuL1gxxNmHOJ4JOtqjHza5VbuhqW_eRm_nW8uAED85YDED0MpMd5cyCsIaC07k9E4jJw/s1600/AAPL_log_forecast.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;480&quot; data-original-width=&quot;480&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikg3inJwN1BVaZP4VJb4tSADNuvNyxqQ1o8M7rYMOC2_HAfJ3UpAMZ9OBQHFvA2vuZSgTuL1gxxNmHOJ4JOtqjHza5VbuhqW_eRm_nW8uAED85YDED0MpMd5cyCsIaC07k9E4jJw/s1600/AAPL_log_forecast.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;This is the graph of log(stock price) per day (This is done to normalize the variance of the graph). As you can see, even though we have a decent fit, the exact forecast is very klugy. We can&#39;t rely on the point forecast, but it does predict that after a small dip in early 2018, the stock will continue to grow up. Now let&#39;s look at each of the components and their effects:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVBhOL8sTSvTicbP4UWOvzBIU4RHYdvJn3MHnGPZr2qCsZKY_CpF77K18mVZTrml30_3-4N8-llHd72CwWlzH6RK9PtS_JmduNcgXLiacQl19gGFB37NSzdyiSzMiWIk40vlmOAg/s1600/AAPL_log_component.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;480&quot; data-original-width=&quot;480&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiVBhOL8sTSvTicbP4UWOvzBIU4RHYdvJn3MHnGPZr2qCsZKY_CpF77K18mVZTrml30_3-4N8-llHd72CwWlzH6RK9PtS_JmduNcgXLiacQl19gGFB37NSzdyiSzMiWIk40vlmOAg/s1600/AAPL_log_component.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;The first graph shows that the stock will be on rise in 2018, but the curve shows sign of plateauing. The second component shows that the holidays and events have a fairly small effect on the stock price in general. The last graph shows that stock prices have been at their lowest near the end of January/early Feb (over the past 1 decade).&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Another analysis we could do is to predict the growth of the stock, and by deduction, it&#39;s volatility. We repeat the same exercise for date vs gain in opening price:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhck2I9yRpEwLP7LZppCY-V2ZQQdxjPzQx3DIn1Jqu0_mBXMaSPKkm7Hx5IyfpSI560-BJG_Y4gSuDr-8crg5WCNnwQg9j00OszLiNx2C2P9EhcOprAV66wFgmtGFmuKxf5WomC5g/s1600/AAPL_diff_forecast.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;480&quot; data-original-width=&quot;480&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhck2I9yRpEwLP7LZppCY-V2ZQQdxjPzQx3DIn1Jqu0_mBXMaSPKkm7Hx5IyfpSI560-BJG_Y4gSuDr-8crg5WCNnwQg9j00OszLiNx2C2P9EhcOprAV66wFgmtGFmuKxf5WomC5g/s1600/AAPL_diff_forecast.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Even though, there are few small spikes (which represent the upward movement of the stock), there are no downward spikes. Barring the temporal volatility of the market, AAPL is a solid stock to bank on. Doing the component analysis on the gain, we get:&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7HAPMY9S98AO6XuV9v4tEou7gsjMleHJ5teg1_W1L8u9lxaRcTfl_jqmv5_objMJCEHrckHfDj0OalJjr1gDnBAUzOpuNzFYxSom2rdMrIWa4PN4ZjVu6zmnreYtmBr3CUksL2w/s1600/AAPL_diff_component.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; data-original-height=&quot;480&quot; data-original-width=&quot;480&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7HAPMY9S98AO6XuV9v4tEou7gsjMleHJ5teg1_W1L8u9lxaRcTfl_jqmv5_objMJCEHrckHfDj0OalJjr1gDnBAUzOpuNzFYxSom2rdMrIWa4PN4ZjVu6zmnreYtmBr3CUksL2w/s1600/AAPL_diff_component.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Now the first graph here doesn&#39;t mean that the stock is going down, it points to the decrease in volatility. There seems to be a more pronounced effect of holidays and announcements on the gain observed, and stock dip is seen typically at the end of Jan/early Feb (as earlier graph predicted) on a Monday. September end, and June end/Early July seem like a good time to sell the stocks (on a Thursday).&lt;/div&gt;&lt;br /&gt;
&lt;a href=&quot;https://draft.blogger.com/null&quot; name=&quot;summary&quot;&gt;What does it all mean?&lt;/a&gt;&lt;br /&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;It is not a good time to buy APPL stocks right now. They are at an all time high.&lt;/li&gt;
&lt;li&gt;Jan end (on a Monday) might be a good time to pick up APPL stocks.&lt;/li&gt;
&lt;li&gt;June end (on a Thursday) might be a good time to sell these stocks.&lt;/li&gt;
&lt;li&gt;Since the stock is getting stabler, do not expect meteoric returns on investment.&lt;/li&gt;
&lt;li&gt;The author of this blog is not a statistician or a stock market guru, so ignore the first four points.&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2017/09/prophesying-appl-stock-movement.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikg3inJwN1BVaZP4VJb4tSADNuvNyxqQ1o8M7rYMOC2_HAfJ3UpAMZ9OBQHFvA2vuZSgTuL1gxxNmHOJ4JOtqjHza5VbuhqW_eRm_nW8uAED85YDED0MpMd5cyCsIaC07k9E4jJw/s72-c/AAPL_log_forecast.png" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-2426450292303075273</guid><pubDate>Thu, 31 Aug 2017 17:55:00 +0000</pubDate><atom:updated>2017-08-31T13:55:11.477-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Speculation</category><category domain="http://www.blogger.com/atom/ns#">Technology</category><title>Language, Personality and Google</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&quot;Dude, pass me the book&quot; or &quot;Could you please give me that book?&quot;. Which of the two phrases do you prefer, and which one would make you awkward? To me, both of them would be awkward if uttered by the wrong person, which would convey the wrong intent. If my co-worker (who I&#39;m not friendly with) uses the first phrase, that would signal a lack of respect. If a friend uses the second one, that would signal aloofness.&lt;br /&gt;
&lt;br /&gt;
However, this analysis of intent is often wrong. Both, my friend &amp;amp; the co-worker might be preoccupied with something else. In all honesty, I don&#39;t care about which phrase is used, they might not care either, but there are people who do. Your friend circle is a small group of people who don&#39;t misplace your intent, and then later start harboring good feelings towards you. As mentioned in my earlier blog post, difference in societal stratification and economic status plays a big role in perception of malcontent in the language. If a billionaire friend (Bill Gates is not my friend... yet) were to suggest that we get a chartered plane to some remote island, I&#39;d have to decline and be sad about it. If someone from my circle suggested it, we&#39;d start talking numbers and try to come up with a plan to either make it happen, or laugh at the idea as a joke.&lt;br /&gt;
&lt;br /&gt;
Language and the words we utter, the grammar, plays a big role in how we are perceived by other human beings. The rule of the game is to use the language according to the setting and the person/people you want to impress or at the very least, not alienate. There is a reason Steve Jobs was the face of Apple Inc., even though Steve Woz designed and developed the computers. Enthusiasm is contagious, it is a positive life force that gets everyone excited around you. Conveying enthusiasm with words is an art form. Engineers(like me) are typically succinct and to the point, not a great quality to have in a social setup. However, being Spock like logical and terse, is an occupational hazard. This leads to the perception of mal-intent by others who do not communicate in a similar way (which is why most friend circles have people with one dominant occupation)&lt;br /&gt;
&lt;br /&gt;
Enter, Google Mail&#39;s Smart Reply. Smart Reply in it&#39;s current form and the planned future upgrades (http://www.kurzweilai.net/ray-kurzweil-reveals-plans-for-linguistically-fluent-google-software) is going to change the way we (or rather I) communicate.&lt;br /&gt;
&lt;br /&gt;
This is how most of my gmail group threads look like:&lt;br /&gt;
Alice&amp;gt; Hey Guys, We were thinking of doing a potluck this Saturday. Let me know if you guys are in.&lt;br /&gt;
Bob&amp;gt; Sure.&lt;br /&gt;
Carol&amp;gt; +2&lt;br /&gt;
Dave&amp;gt; +2, might be a bit late&lt;br /&gt;
&lt;br /&gt;
With Smart Reply, here&#39;s what it&#39;d look like:&lt;br /&gt;
Alice&amp;gt; Hey Guys, We were thinking of doing a potluck this Saturday. Let me know if you guys are in.&lt;br /&gt;
Bob&amp;gt; That sounds awesome. I&#39;m in.&lt;br /&gt;
Carol&amp;gt; Sure thing. Do you want me to pick something up on the way.&lt;br /&gt;
Dave&amp;gt; Sounds good. We&#39;ll be there. Might be a bit late.&lt;br /&gt;
&lt;br /&gt;
If you were the fifth person (Eve), which meetup would you go to? The people are the same, the event is the same, the intent is the same. Google&#39;s Smart Reply just made Bob, Carol and Dave sound a lot more affable and enthusiastic. In the absence of body language, written words are more likely to be misconstrued. Google&#39;s smart reply takes the intent of Alice/Bob/Dave, which is just &quot;yes&quot;, and dresses it up in a way that is palatable to a majority of people. It changes a conversation with neutral tone to a positive one. Pretty soon one would have to work to convey apathy and antipathy in their conversation, and not have it introduced due to lack of time for the device in use (replying to a mail on phone).&lt;br /&gt;
&lt;br /&gt;
One could also argue that as conversations get more positive, the net morale of the human race might improve (or at least amongst the people using Gmail). I don&#39;t think I should extrapolate this any further and guess the emergent properties or this cultural change. Small apps and features have changed human interactions in unpredictable ways (Twitter/Facebook have very well toppled/made governments, Uber/Lyft have caused a dip in Car ownerships). Let&#39;s hope for the best.&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2017/08/language-personality-and-google.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-5750903159499660849</guid><pubDate>Mon, 17 Apr 2017 04:11:00 +0000</pubDate><atom:updated>2017-04-17T00:50:09.325-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Life</category><category domain="http://www.blogger.com/atom/ns#">Rants</category><category domain="http://www.blogger.com/atom/ns#">Zen</category><title>A case for and against God</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
A recent death in my family has caused me to re-examine my relationship with God. Being an atheist (will get back to this), every condolence worded in clichés like &quot;She&#39;s with God&quot;, or &quot;She&#39;s in a better place&quot;, trigger a very emotional and existential whirlwind of a crisis within me. What is the purpose of life if being with God is the end goal? What good are your degrees, patents, accolades, your unnoticed sacrifices, your selfless acts, if you cease to exist? What is the point of writing a book that no body will read in its entirety and then burning the book? Should there be point?&lt;br&gt;
&lt;br&gt;
I&#39;ve been on both side of the isle. I&#39;ve been a devout Hindu while growing up and been a complete Dawkinian atheist for most of my adult years. However, I find myself trying to go to the temple and think about God in times of joy and sorrow. And when someone asks about my allegiance, I give them a wide range of answers, ranging from the obtuse:&quot;What is God?&quot;, to vague:&quot;mostly atheist&quot;, to random:&quot;Yes, I&#39;m a pastafarian&quot;.&lt;br&gt;
&lt;br&gt;
I can&#39;t call myself pure atheist, because, well... I like going to temple &amp;amp; praying. I can&#39;t call myself an agnostic, because I&#39;m not ambivalent, I do not have any doubts about the existence of God, and I&#39;m not religious as I don&#39;t think that reciting certain texts can give me an edge over others. So, what am I? I am all three, and I&#39;m neither of those at the same time. All the three groups approach the concept of God differently.&lt;br&gt;
&lt;br&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOACSK_2o2bdlgJ3UQEaJ-zH4hpwVnQwHzx_H2WlJfGB3ZqzEpE3sz4ITn9CpeoxGHv1L9owAr8uebjLF31rdMx-wiKa5ImMuQF6lUyk_9RgPOGwpz_Zj1aY46_qvxvVpYeZVh5Q/s1600/378783.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;433&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOACSK_2o2bdlgJ3UQEaJ-zH4hpwVnQwHzx_H2WlJfGB3ZqzEpE3sz4ITn9CpeoxGHv1L9owAr8uebjLF31rdMx-wiKa5ImMuQF6lUyk_9RgPOGwpz_Zj1aY46_qvxvVpYeZVh5Q/s640/378783.jpg&quot; width=&quot;640&quot;&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Credit: Andrea Baldwin (http://6iee.com/378783.html)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br&gt;Life is an uphill journey that starts with birth and ends with death. That is the undisputed, cold fact. Imagine a life, of just climbing up a steep set of endless stairs, with no guard railing on the side. The sole purpose of life is to thrive and propagate, but how does an animal, who, by the freak of nature, questions the futility of the exercise &amp;amp; the purpose of existence, survive? The first thing, most of us, who are afraid of heights, would do is imagine a guard railing. Is the railing really there? No. Does it help me climb the endless stairs towards death? Yes, of course. That guard railing we imagine is God.&lt;br&gt;
&lt;br&gt;
This is where the factions come in. A general atheist with a mouth piece would yell that there is no rail. He doesn&#39;t care if the person relying on this mental construct is scared of heights. He doesn&#39;t care if he could help pull someone up the stairs. If he is not scared of heights, he rallies that no one else should be either. A garden variety religious person, on the other hand, tries to convince a scared person that the railing is real. He rallies hard to convince others that not only the guard is real, but his stainless steel railing is much better than the plastic railings others have. He convinces others that it is perfectly alright to lean on this railing. He convinces others to fight for his cause. Of course, we need stronger railing to stop us from falling into the bottomless abyss, don&#39;t we.&lt;br&gt;
&lt;br&gt;
Not everyone is bad though. An enlightened atheist might distract you from the deep abyss and show you the wonders that lie ahead of you. You can always create other mental constructs to alleviate your fears. Even most people who identify themselves as religious, fall into this category. Why else would they believe in the power of small sheets of paper with numbers printed on it? (Money.. in case you didn&#39;t get that). Similarly, there are a lot of religious people I know, who would just point to the railing to comfort the scared climber. Nothing wrong with that.&lt;br&gt;
&lt;br&gt;
An agnostic, would just give an ambivalent answer. He would look straight ahead and tell that he&#39;s not sure if the railing exists. He is not sure, either because he is not sure whether the person is referring to an actual railing, or, he just doesn&#39;t care about the answer.&lt;br&gt;
&lt;br&gt;
So what am I? I&#39;m whatever the person who needs help climbing the stairs of life needs me to be. My own relationship with my God, or any other mental construct, is my own, and varies with the ebbs and flows of life. Defining any relationship with a single word, will take the depth out of it. Love without devotion is nothing. Devotion without conviction is nothing. Conviction without awareness is nothing. We rise from nothingness and we go back into it. Nothing encapsulates everything.&lt;br&gt;
&lt;br&gt;
Humans have had the need to box off their uncertainties in their life and attribute it to a higher power, or a foreign country, or a sect, or anyone but themselves. This disassociation helps them achieve extraordinary feats in life, and has definitely helped the human race progress at an accelerating pace. As long as one knows what God is, and use it to imbue positivity in their own life and in the life of others, God is and will remain, the most redeeming feature of the human race.&lt;br&gt;
&lt;br&gt;&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2017/04/a-case-for-and-against-god.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOACSK_2o2bdlgJ3UQEaJ-zH4hpwVnQwHzx_H2WlJfGB3ZqzEpE3sz4ITn9CpeoxGHv1L9owAr8uebjLF31rdMx-wiKa5ImMuQF6lUyk_9RgPOGwpz_Zj1aY46_qvxvVpYeZVh5Q/s72-c/378783.jpg" height="72" width="72"/><thr:total>5</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-4565373805489127229</guid><pubDate>Wed, 07 Dec 2016 21:53:00 +0000</pubDate><atom:updated>2016-12-07T16:53:40.368-05:00</atom:updated><title>Interoperability of AI assistants..</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
I don&#39;t think that it&#39;d be presumptuous of me to assume that most of you would have used an AI assistant of some sort; be it SIRI on iPhone/MacBooks, Google Now on Android, Cortana on Microsoft Windows or Alexa on Amazon Echo. Even if you used the &quot;speak to type&quot; option on your phone, you have used it.&lt;br /&gt;
&lt;br /&gt;
Most of the AI assistants have limited functionality and do certain things quite well. I don&#39;t care if Alexa is as smart as Google Assistant. It makes up for that with an extensive skill/rule set. Google Assistant would shine in situations where the queries are more free form. SIRI/Cortana/Google Assistant/Alexa all depend on the information you are sharing with them. This inherently limits the efficacy of each. Google Express is not going to replace Amazon for my shopping needs, Microsoft Live mail is not going to replace Gmail and I&#39;m not going to exchange my Macbook or Windows desktop for a Chromebook. So what is the solution?!&lt;br /&gt;
&lt;br /&gt;
The browser wars in the 90s and early 2000s have shown us how this is going to go down. Couldn&#39;t the industry leaders pool in their resources to come up with something like a W3C standard and provide a standard browser like shim layer (Reactor/Proactor design patterns) to dispatch requests to individual subsystems (AI assistants)? This could be a simple rule engine in the first phase, that punts my email queries to Google Assistant, my shopping inquiries to Alexa, and my file related queries to Siri/Cortana etc.&lt;br /&gt;
&lt;br /&gt;
Taking the browser parlance a bit far, I would want to theme my AI assistants too. I don&#39;t want to call them Google/Cortana/Alexa, I want to call them Mr Chekov or Mr Sulu and I want them to refer to me as Captain and always with a sense of impending doom (Star Trek joke for the uninitiated).&lt;br /&gt;
&lt;br /&gt;
A unified AI assistant might just be a pipe dream. Hopefully, it doesn&#39;t take the AI assistants a decade to mature (like it did for the browsers).&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2016/12/interoperability-of-ai-assistants.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-6822284167096044797</guid><pubDate>Thu, 19 May 2016 02:23:00 +0000</pubDate><atom:updated>2016-05-18T22:23:53.319-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">engineering</category><category domain="http://www.blogger.com/atom/ns#">Infotainment</category><category domain="http://www.blogger.com/atom/ns#">Technology</category><title>Takeaways from RedisConf</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
I have been using Redis as a swiss army knife database, both at work, and for hobby projects. So I decided to attend &lt;a href=&quot;http://redisconference.com/&quot;&gt;RedisConf&lt;/a&gt; this year. Low cost of entry, more tech talks than marketing spiels, and a chance to meet &lt;a href=&quot;http://invece.org/&quot;&gt;Salvatore Sanfilippo&lt;/a&gt;, the creator of Redis, were the big draw to the event.&lt;br /&gt;
The event was a great introduction to upcoming and lesser used redis features (used by me that is). It was a fun and eye opening window into a lot of different domains and use cases. When all you sell is cheese, the concept of sour cream is interesting..&lt;br /&gt;
Some that blew my mind were:&lt;br /&gt;
&lt;br /&gt;
&lt;ol style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;b&gt;IoT:&lt;/b&gt; Prior to this conference, I had a limited understanding of it&#39;s use-cases. IoT, to me, was just using a web-controlled device. A light-bulb, or a smart fridge, that&#39;d ping me if the milk ran out etc. I.e. a very Silicon Valley centric first world problem solver. &lt;br /&gt;
&lt;br /&gt;
The use-cases that &lt;a href=&quot;http://www.att.com/gen/general?pid=25297&quot;&gt;Laura Merling&lt;/a&gt; provided in her talk, just blew me away:&lt;/li&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;b&gt;&lt;a href=&quot;https://disneyworld.disney.go.com/faq/bands-cards/understanding-magic-band/&quot;&gt;Disney MagicBands:&lt;/a&gt;&lt;/b&gt;&amp;nbsp;When you navigate your way through disney parks, your hotel automatically knows that you are coming, your door automatically unlocks &amp;amp; most importantly, if you get dangerously close to a moving ride, the ride adjusts itself (can stop) to get you out of harm&#39;s way!&lt;/li&gt;
&lt;li&gt;&lt;b&gt;The oil &amp;amp; gas industry:&lt;/b&gt; The oil rigs generate a lot of real time information on the equipment’s performance and health — pressure, temperature, flow rates and multitudes of other variables. IoT based solutions provide real time analytics for predictive and preventative measures. This &lt;a href=&quot;http://www.aditi.com/internet-of-things-in-oil-and-gas-rockwell-case-study/&quot;&gt;link&lt;/a&gt; explains this further.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Factory safety:&lt;/b&gt; Remember &lt;a href=&quot;http://www.telegraph.co.uk/news/worldnews/europe/germany/11712513/Robot-kills-man-at-Volkswagen-plant-in-Germany.html&quot;&gt;the incident&lt;/a&gt;, when an automotive factory robot arm crushed a factory operator into a metal plate. This happened because the robot arm mistook the person as another part of the machinery. There have been around 26 deaths in the past 30 years in US alone. This number, although low, can be further brought down by judicial use of IoT tech (just like Disney&#39;s magicBand).&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Home Automation:&lt;/b&gt; Home automation industry is fairly nascent right now. There is an app to control the lights, another one to control your locks, another one for your TV and so on. There needs to be push from the consumers for tighter integration of products for arbitrary control. E.g. to turn down the volume of the music system if someone is sleeping in the other room, or turn on the lights when the doors are unlocked, and so on.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;li&gt;&lt;b&gt;Distributed systems &amp;amp; the rise of DevOps:&lt;/b&gt; There were couple of talks by companies like Netflix and Scopely. The amount of data served and generated by companies these days is monumental.&lt;br /&gt;
&lt;br /&gt;&lt;a href=&quot;https://github.com/avram&quot;&gt;Avram Lyon&lt;/a&gt; from Scopely gave a behind the scenes look at the data usage. He talked about a simple mobile game where the goal is to hit oncoming zombies with some objects. His game has a modest 100,000 users active at any given time. To generate insights into the game (E.g. People in California like to throw rocks at zombies, whereas people in New York like to hurl trash-cans at them, or that no-one seems to like throwing hammer at zombies), the amount of data generated and recorded is huge. This is used to provide the development and marketing teams with actionable intelligence. Few TBs of data is not huge by today&#39;s standards, and conventional databases are ill-suited for this endeavor. Redis, along with it&#39;s other supporting actors lends well to this use-case.&lt;br /&gt;
&lt;br /&gt;
The conference was filled with 2-4 member teams who had set up massively scaled systems within 5-6 months using FOSS(kafka, spark, redis etc) on el-cheapo AWS cluster. Horizontal automatic scaling being the key takeaway. One doesn&#39;t need to be a star programmer to build these systems. The architecture has matured enough that systems can be deployed with minimal effort (relatively).&lt;br /&gt;
&lt;br /&gt;
Another emergent database concept was &lt;a href=&quot;https://en.wikipedia.org/wiki/Eventual_consistency&quot;&gt;Eventual consistency&lt;/a&gt;. Unlike traditional database systems, that dictate that the view of the databases need to be the same for everyone, eventually consistent databases are like.. meh, it&#39;s not the end of the world if are able to access the new season of &quot;House of Cards&quot; few minutes after someone else. Heuristics are further tied to extrapolate behavior of the system to get massive scalability. Amazon, Netflix etc have this kind of systems. Take a look at &lt;a href=&quot;http://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf&quot;&gt;this&lt;/a&gt; to get more detailed view.&lt;br /&gt;
&lt;/li&gt;
&lt;br /&gt;
&lt;li&gt;&lt;b&gt;Hardware advancement:&lt;/b&gt; Traditionally, Redis has been used as a memcached replacement. Something that sits in-front of traditional sql databases. Apps like Twitter et al would store the hot keys in a massively distributed redis cluster (in order of TBs) and would later save these to some backend stores. This adds another layer of complexity. With the advent of flash memory, the backend stores typically now sit on flash memory. However, the newer NVDIMMs &amp;amp; NVMs perform orders of magnitude better than flash memory at just 1/10th the price of RAM. With the closing gap between RAM &amp;amp; Flash, the functionality and scalability of Redis is increasing by leaps and bounds.&lt;br /&gt;
&lt;/li&gt;
&lt;br /&gt;
&lt;li&gt;&lt;b&gt;Redis Modules:&lt;/b&gt; Usual databases are just dumb datastores. Their main utility is to store the data efficiently in the memory and provide an easy way to retrieve it. All the intelligence to consume that data goes into the client code. Salvatore announced that starting 4.0, Redis would support loadable modules that can be used to offload client functionality to Redis. You could use this to keep track of counter rates or a running average or use simple ML algos to automatically classify the images being saved on the DB or apply some sort of filter on them. The possibilities are endless.&lt;br /&gt;
&lt;/li&gt;
&lt;/ol&gt;
Smaller advancements in hardware typically bring in much bigger change in software, that exponentially and radically changes the application development paradigm.&lt;br /&gt;
&lt;br /&gt;
About a decade ago, a simple classifier on an MPI Beowulf cluster took few weeks to implement. These days, I could use a python ML classifier to do the same thing in just few hours.&lt;br /&gt;
&lt;br /&gt;
As complicated technology becomes more pervasive, the entry points to the tech itself gets easier, which further paves way for more complicated technology. Redis has already enabled a lot of industries, which are further revolutionizing everything from healthcare to robotics.&lt;br /&gt;
We live in interesting times.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2016/05/takeaways-from-redisconf.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-2380916501391887192</guid><pubDate>Sun, 06 Mar 2016 00:31:00 +0000</pubDate><atom:updated>2016-03-05T19:32:04.697-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">engineering</category><category domain="http://www.blogger.com/atom/ns#">Rants</category><title>Programming and the art of shoe polishing</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
One of the most most undocumented occupational hazards of being a software engineer is that the rest of the world is not privy to our thought process, nor do they have a deeper understanding of what we do. Yes, coding is a part of it, and a very big part of it, but, it is understanding of the system that separates good engineers from the bad ones. Coding is easy, coding a system is hard. There is a whole lot of difference between learning english and writing a novel. Just as an exercise, let&#39;s imagine that the task at hand is polishing shoes. Our protagonist is the engineer(SE). The product manager(PM), the quality assurance(QA) engineer &amp;amp; shoe polisher(SP) have the supporting roles in this play.&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;&lt;u&gt;Bad Engineer&#39;s Life&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; I want our company to polish shoes. We will provide supplies to our shoe polisher team who will polish the shoes.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; I&#39;ll get on it.&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;[CODE]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute shoes to each SP(shoe polisher).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute polish to each SP.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Ask each SP to use the given polish on each shoe.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Take shoes from them.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;b&gt;QA:&lt;/b&gt; Hey! Your team used brown polish on black shoes. I&#39;m filing a bug.&lt;br /&gt;
&lt;b&gt;SE: &lt;/b&gt;Oops. I didn&#39;t know that. Let me fix it.&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;[CODE]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute shoes to each SP(shoe polisher).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Each shoe has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute polish to each SP. Each polish has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Ask each SP to use the given polish(COLOR) on each shoe(COLOR).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Take shoes from them.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;b&gt;QA:&lt;/b&gt; Hey! Your team put black leather polish on my black canvas shoes. I&#39;m filing a bug.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Oops. Hey, why would the customer even want to polish canvas shoes?! Please test my system &amp;nbsp;properly.&lt;br /&gt;
&lt;b&gt;QA:&lt;/b&gt; I don&#39;t care. You should not ruin your customer&#39;s shoes.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Let me talk to PM.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; You should not ruin your customer&#39;s shoes.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Ok.&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;[CODE]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute shoes to each SP(shoe polisher).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- If shoe is CANVAS then return to the customer.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Each shoe has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute polish to each SP.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Each polish has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Ask each SP to use the given polish(COLOR) on each shoe(COLOR).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Take shoes from them.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;QA:&lt;/b&gt; Hey! SP still polishes my hip hemp shoes from SF. And why should the customer wait for shoe distribution to get his canvas shoe back? I&#39;m filing a bug. Hey PM, the code is unstable!!&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; Hmmm :(&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Let me fix it.&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;[CODE]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Get shoes from Customer.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Return shoe if NOT leather shoes.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute shoes to each SP(shoe polisher).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Each shoe has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute polish to each SP.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Each polish has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Ask each SP to use the given polish(COLOR) on each shoe(COLOR).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Take shoes from them.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;QA:&lt;/b&gt; After 1 work day, the shoes don&#39;t look polished. Something is not working.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; I don&#39;t know, it works for me. Can you try it again and let me know?&lt;br /&gt;
&lt;i&gt;-- After one day --&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;QA:&lt;/b&gt; See.. I told you so. I&#39;m filing a bug.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Oops.. the polish got over after a day. Let me add more polish each day.&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;[CODE]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Get shoes from Customer.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Return shoe if NOT leather shoes.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute shoes to each SP(shoe polisher).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Each shoe has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute polish to each SP.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Each polish has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Ask each SP to use the given polish(COLOR) on each shoe(COLOR).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- If SP is working more than a day, then distribute more supplies to each SP.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Take shoes from them.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;QA:&lt;/b&gt; The product passes the test cases.&lt;br /&gt;
&lt;b&gt;PM: &lt;/b&gt;We can sell this code to SUPER-MEGA-STORE then. Let us do some scale testing. They order around 100 shoe polishes a day! This could be a big order for us. I feel like Steve Jobs.&lt;br /&gt;
&lt;b&gt;QA:&lt;/b&gt; Sure, whatever, I&#39;ll test out the cases.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;QA:&lt;/b&gt; PM, we polish 100 shoes in a week! We need to handle that many in a day!&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; SE.. make it so!&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; I&#39;ll try. We can handle around 15 shoes in a day, we need to get 7 times as many SPs, maybe 6 times if we get stronger and faster SPs.&lt;br /&gt;
P&lt;b&gt;M:&lt;/b&gt; Hmmm... We&#39;ll have to pass the cost to SUPER-MEGA-STORE&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SUPER-MEGA-STORE:&lt;/b&gt; We like the fonts on sign board outside your establishment, take our money &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; and give us the product please.&lt;br /&gt;
&lt;i&gt;--- After&amp;nbsp;Deployment&amp;nbsp;---&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SUPER-MEGA-STORE:&lt;/b&gt; Hey, nobody wears black leather shoes in our Sunnyvale store. We have too many unused black polish cans in our stores right now.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; I&#39;ll fix it.&lt;br /&gt;
...&lt;br /&gt;
&lt;b&gt;SUPER-MEGA-STORE:&lt;/b&gt; Hey, one of the SP died while working. The shoes are now piling on!&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; I&#39;ll fix it.&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;[CODE]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Get shoes from Customer.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Return shoe if NOT leather shoes.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute shoes to each SP(shoe polisher).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Each shoe has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Distribute polish to each SP.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- Each polish has a COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Ask each SP to use the given polish(COLOR) on each shoe(COLOR).&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- If SP is working more than a day.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;- If polish(COLOR) is over, replace it.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- If SP is dead, get new SP.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Take shoes from them.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SUPER-MEGA-STORE:&lt;/b&gt; Hey, we want canvas shoes to be washed too.&lt;br /&gt;
&lt;b&gt;SE&lt;/b&gt; quits.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
This happens over the period of a year. SE&#39;s own unscalable and spaghetti code have tormented him. The fluidity of requirements from the customer adds fuel to the fire. When one SE quits, other SE takes his place, mutating this code even more into an unrecognizable mess.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
Now let&#39;s see what happens with a more experienced engineer:&lt;br /&gt;
&lt;b&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/b&gt;
&lt;b&gt;&lt;u&gt;Good Engineer&#39;s Life&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; I want our company to polish shoes. We will provide supplies to our shoe polisher team who will polish the shoes.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; I&#39;ll get on it. What kind of shoes though?&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; Leather shoes.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Any specific set of colors? Google lists some common colors as BLACK, BROWN, NEUTRAL, WHITE, CHERRY RED &amp;amp; CORDOVAN.&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; Hmmm..&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Also what about speciality leather shoes like those make with crocodile leather?&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; Market research shows that people mostly wear BLACK and BROWN shoes, so let&#39;s stick with that.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Any particular brand of polish you want me to use.&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; Use the CODEYMAN brand. We can get bulk discount from them.&lt;br /&gt;
&lt;i&gt;-- A week later --&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Hey I found out that one box of polish can polish about 250 shoes. I also spoke to my SP friend. He can shine 10 shoes in a day. Do you know about how many shoes we&#39;ll be shining a day?&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; You ask too many questions, I somewhat hate you. SUPER-MEGA-STORE might be interested, but that is just a rumor I heard. But you haven&#39;t yet started writing code.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; So how many shoe shines a day?&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; About 100 maybe?&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; So we need about 10 SPs working each day. We can have 20 SPs who work on two rotating shifts. This would reduce the downtime if something were to happen to them.&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; Stop doing a PhD in this! I want the code.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Also 100 shoes a day is 700 shoes a week, which means 3 shoe cans would be used in a week. We need to keep more inventory of cans, to keep SPs from waiting on a polish can if someone else is using it. You can use this to set a price point for the product.&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; I hate you! Give me an ETA.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; I&#39;ll sketch some informal design plans and revert in 2-3 days.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;.. Time goes on ..&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; PM, I&#39;m going to be code complete in some time. I want the QA to add test cases.&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; So the product is done?&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; No, I&#39;ve just written the code and did some unit testing. System testing etc will take at least a &amp;nbsp;month.&lt;br /&gt;
&lt;b&gt;PM: &lt;/b&gt;So the product is done? I&#39;ll tell the Sales team to sell the product.&lt;br /&gt;
&lt;b&gt;QA:&lt;/b&gt; I&#39;ll start testing it as soon as I&#39;m done testing some other thing the SE doesn&#39;t care about.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Here&#39;s the code&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;[CODE]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Don&#39;t allow customers without BLACK or BROWN leather shoes.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Let there be X BLACK polish cans and Y BROWN polish cans.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Every 12 hours:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;a. New set of 10 SPs come in.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;- If less than 10 SPs come in. Pay the exiting employees overtime to pick up the slack.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;b. SPs distribute the shoes amongst themselves, trying to maximize the amount of shoes of a particular COLOR.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;c. Each SP takes the cans of polish corresponding to the shoe colors he has. He decrements the number of shoe polish cans available by 1.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;- If the number of shoe polish hits the threshold T, he puts an order into the system to get more polish. This way they don&#39;t have to wait for polish if it runs out.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;d. If SP runs out of shoes to polish:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;- He&#39;ll put the polished shoes on the rack.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;- Hel&#39;ll repeat steps from b. again.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;e. When SPs are ready to leave:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt;- If less than 10 SPs leave then:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt; &amp;nbsp; - Find if SP is dead and put a replacement SP for the next rotated shift.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt;  &lt;/span&gt; &amp;nbsp; - If SP is hiding, then ask him to leave.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;- Take shoes from them.&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;PM: &lt;/b&gt;(During review): Please use spaces instead of tabs and use the function names according to &amp;nbsp;coding standards.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;QA: &lt;/b&gt;Hey, edge condition issues. If I&#39;m getting 100 shoes/day and one SP dies, the backlog never goes away.&lt;br /&gt;
&lt;b&gt;SE:&lt;/b&gt; Oh yeah. Let&#39;s add a fudge factor of 11 SPs. Will take care in release.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; How is the quality?&lt;br /&gt;
&lt;b&gt;QA: &lt;/b&gt;Seems to mostly work. Not many open issues I think.&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; Great, let&#39;s deploy it.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SUPER-MEGA-STORE:&lt;/b&gt; Hey, your system doesn&#39;t handle bursts of more than 110 shoe-shines. We need a burst of 200 during Christmas holidays.&lt;br /&gt;
&lt;b&gt;PM: &lt;/b&gt;Sure. We can include redundancy and burstiness of shoe-shine traffic in your tarrif. This would translate to hiring seasonal workers.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SUPER-MEGA-STORE:&lt;/b&gt; I need to get canvas shoes washed too.&lt;br /&gt;
&lt;b&gt;PM:&lt;/b&gt; That feature will be supported in the next release.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SE: &lt;/b&gt;Shouldn&#39;t be a big deal. I&#39;ll design similar product for canvas-shoes and encapsulate both the products behind an api that is multiplexed by shoe type.&lt;br /&gt;
&lt;b&gt;PM: &lt;/b&gt;Whatever.. just do it.&lt;br /&gt;
&lt;br /&gt;
SE goes home.&lt;br /&gt;
&lt;b&gt;SE: &lt;/b&gt;Honey.. I&#39;m home.&lt;br /&gt;
&lt;b&gt;Wife: &lt;/b&gt;Whatever! you spend all your time at work. I hate you.&lt;br /&gt;
&lt;br /&gt;
.. SE is sad.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2016/03/programming-and-art-of-shoe-polishing.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-6865365542521206869</guid><pubDate>Sat, 12 Sep 2015 01:00:00 +0000</pubDate><atom:updated>2015-09-11T21:00:01.017-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Infotainment</category><category domain="http://www.blogger.com/atom/ns#">Linux</category><category domain="http://www.blogger.com/atom/ns#">Technology</category><title>Mosh: The ssh client replacement you probably didn&#39;t think you needed.</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
I had to take a breather after writing the heading to avoid giving an over the top introduction to Mosh (mobile shell), but it deserves nothing less. It is a relatively new software (2012) from the well known MIT AI labs. Mosh is based on a new protocol SSP (State Sync Protocol), that runs over UDP instead of TCP. It does all the session management at the higher levels, which makes the connection incredibly robust. Few places where Mosh really shines on my setup (Mosh+Tmux):&lt;br /&gt;
&lt;br /&gt;
1. When moving between networks (Wireless to Wired to VPN at home), the connection automatically migrates to the new IP. This wouldn&#39;t have been possible if TCP had been used. Consequently, my shell connectivity to servers stay up... No more banging the keyboard when ssh session abruptly freezes, or me trying to clear up a ssh terminal after the computer resumes from sleep. The terminal comes back up at the same place no matter what the network situation is. Its Magic!! I&#39;m running tmux within mosh and the difference between local and remote machines has completely blurred.&lt;br /&gt;
&lt;br /&gt;
2. Mosh has predictive typing! When typing on a ssh client, your keystrokes are relayed to the server, and displayed to you when it appears on the pseudo terminal at the remote end. This works great when you are working on a network with low latency, but try working from a slower connection from home, or god forbid, the caltrain, a coffee shop or from an airplane using the gogo inflight connection, there is a very significant delay between when you type and when the letters appear on your screen, which makes any sort of remote work next to impossible. Mosh gets around this issue by showing you what you type, bunching the updates to your screen in a low latency setup and later syncing the updates to your screen in background (e.g. if you type an &#39;i&#39; in vi command mode, it should not show up, but it will show up when the network is very very laggy, however it will be erased when the state is synced from the remote server).&lt;br /&gt;
&lt;br /&gt;
3. Mosh uses SSH protocol to communicate, so it automatically uses all the SSH configurations and writes to ssh logs. All one needs to do is call &quot;mosh &lt;server&gt;&quot;, just like ssh. One doesn&#39;t need to muck with _any_ configuration files.&lt;/server&gt;&lt;br /&gt;
&lt;br /&gt;
One important distinction between ssh and mosh is that ssh is a set of protocols whose utility goes well beyond providing a secure shell. It allows tunnelling, file transfer, X forwarding etc. None of those things are supported in mosh. Mosh was only meant to be a more robust shell.&lt;br /&gt;
&lt;br /&gt;
That being said, Mosh hasn&#39;t been battle tested the way ssh has (specifically OpenSSH), but the design looks sound and simple with a relatively small attack surface, which gives me a lot of confidence in using it.&lt;br /&gt;
&lt;br /&gt;
Go try it out.. and let me know what you guys think.&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2015/09/mosh-ssh-client-replacement-you.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-7455504237438403970</guid><pubDate>Mon, 19 May 2014 01:07:00 +0000</pubDate><atom:updated>2017-02-17T02:02:20.860-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Life</category><category domain="http://www.blogger.com/atom/ns#">Rants</category><category domain="http://www.blogger.com/atom/ns#">Zen</category><title>You are not special..</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div class=&quot;p1&quot;&gt;
Are you from a country that has some sort of currency?&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
Now that you are intrigued by my idiotic question, please allow me the liberty of asking another one. If you are filthy rich in one country, lets say that you are a millionaire in US, living in a house that was featured on &quot;Cribs&quot;, and you move to country that doesn&#39;t recognize your wealth. Do you instantly become poor? The answer is a resounding yes. Then all this proves is that you were rich only because you and other people around you, attached some value to the pieces of paper with numbers scribbled on them. The whole economy functions only because everyone sees some value in those pieces of paper. If I&#39;m able to convince people that my torn sock has some value, then other people will think I&#39;m rich. I&#39;ll be actually rich, when I believe that my torn sock is valuable, or if I exchange it for some belief system that I actually believe in (e.g. hard cash) before the reality catches up.&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
Let&#39;s look at social circles. There isn&#39;t much disparity between people within a circle, I.&lt;span class=&quot;s1&quot;&gt;e&lt;/span&gt;. &lt;span class=&quot;s2&quot;&gt;you&lt;/span&gt; wouldn&#39;t find people who are a lot poorer or a lot richer than you in your active circle of friends. Money act as differentiator here because it forces a change in priority, e.g. you wouldn&#39;t take a trip to Hawaii with friends if you are short on cash, but would definitely go on local hikes because it hardly costs anything.&amp;nbsp; Gradually friends turn into acquaintances and are sometimes forgotten. Slowly but steadily, you lose touch with people (Note that there are other reasons why people lose touch, but I&#39;m just trying to point out this particular one). If you have lived a relatively fuller life, you&#39;d accept the fact that people move in and out of our lives, just as we move through their&#39;s. Without our knowledge, forces of economics drive people closer to each other and rips us apart. All this, because we believe in a common currency!!&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
Forget money for a second, and think about culture. Think about it as money. What happens when a white catholic from America meets an upper caste Hindu &lt;span class=&quot;s1&quot;&gt;brahmin&lt;/span&gt; from India? How does that interaction go? Let&#39;s assume for one second that the American has never heard or know anything about India, and the Indian doesn&#39;t know anything about America.. &lt;span class=&quot;s2&quot;&gt;what&lt;/span&gt; then? Their interaction would completely depend on the place and environment in which they meet. If they meet at the Indian&#39;s house, the Indian would probably find the American less modestly dressed, lacking any knowledge of his religion, his traditions, bordering on blasphemy. The American would see the Indian in the same light if the meeting happened in America, he would find the clothes, food, traditions, deities with multiple hands completely weird. Both of them would find each other less cultured. Assuming both of them to be decent humans, the Indian would encourage the American to go to temples and introduce him to scriptures, on the other hand, the American would do the same if he is religious, if not he&#39;d encourage the Indian to watch some opera or Broadway to get some &quot;culture&quot;. If either of them disagree, there would be hostilities thrown around.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
Sadly that is how most of the wars start, because of both parties fail to understand the different point of view because it is so radically different. We got around the money problem by having currency exchanges which arbitrarily pits currencies against each other based on supply and demand and not the purchasing power it facilitates in the region where it is prevalent. I.&lt;span class=&quot;s1&quot;&gt;e&lt;/span&gt;. &lt;span class=&quot;s2&quot;&gt;if&lt;/span&gt; a 1 &lt;span class=&quot;s3&quot;&gt;USD&lt;/span&gt; = 60 &lt;span class=&quot;s3&quot;&gt;INR&lt;/span&gt;, and a couch costs 1 &lt;span class=&quot;s3&quot;&gt;USD&lt;/span&gt; in USA but 30&lt;span class=&quot;s3&quot;&gt;INR&lt;/span&gt; in India, who is richer, the guy with 30&lt;span class=&quot;s3&quot;&gt;INR&lt;/span&gt; or the guy with 1&lt;span class=&quot;s3&quot;&gt;USD&lt;/span&gt;? Still, these currency exchanges allow retention of economic status all over the globe... &lt;span class=&quot;s2&quot;&gt;because&lt;/span&gt; everyone believes in some currency and they are more or less inter changeable.&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
Should we setup a culture exchanges like currency exchanges then ? If you can distinguish between Chardonnay and &lt;span class=&quot;s1&quot;&gt;Sauvignon&lt;/span&gt; Blanc, should you be considered a high priest in Navajo? Would you consider Dr &lt;span class=&quot;s1&quot;&gt;BalmuraliKrishna&lt;/span&gt; and Puccini similar? Would you see Baptism and &lt;span class=&quot;s1&quot;&gt;Upnayanam&lt;/span&gt; in the same light regardless of your religious inclinations?&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
Of course that would be absurd. Cultural, economical, &lt;span class=&quot;s4&quot;&gt;socio&lt;/span&gt;logical inequalities are all absurd because they depend on a belief on an arbitrarily defined concept perpetuated by people. These concepts might be bit alien to people who have not interacted a lot with other cultures and have spent their whole life in a cocoon.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
Attacks on our rigidly held belief system tend to anger us. If the belief system is big enough, it might even start a war. A lack of a belief system, however, evokes nihilism, depression and general &lt;span class=&quot;s4&quot;&gt;socio&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;pathic&lt;/span&gt; tendencies. This seems to be a catch 22 situation. A belief system has given us distinct evolutionary advantage, even if has been something which defies logic. However, evolution&#39;s only concern is the survival of the species, not it&#39;s well being. (A recent study shows that chicken taste good to humans because chickens wouldn&#39;t have survived in the wild without human help, so humans started rearing tastier breeds of chickens while ignoring the other breeds). It may very well be the case that a fundamentalist faction exterminates all other races (as has been tried multiple times in the past) on earth.. We might end up becoming a paragraph in a grade school book. We might all be doomed to the same fate as Neanderthals when homo &lt;span class=&quot;s1&quot;&gt;sapiens&lt;/span&gt; roamed the earth. Of course, the process won&#39;t end there. There&#39;ll be fractures in the victor&#39;s factions, a power struggle between the sub-factions, and eventual destruction of culture and advancement.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
Humanity is stuck in a feedback loop and is shaped by our own intellect, the limits of which, we cannot comprehend. We need a better approach, and we need to shape our own destiny as a race. What matters to you, doesn&#39;t matter to anyone else and vice versa. Why shouldn&#39;t we accept the disparity in the belief systems without being combative?&lt;/div&gt;
&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2014/05/you-are-not-special.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-5308349685497456731</guid><pubDate>Sun, 13 Oct 2013 20:12:00 +0000</pubDate><atom:updated>2013-10-13T16:12:32.077-04:00</atom:updated><title>Stop yearning for yester years..</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Let me articulate a problem that people don&#39;t realize they have, and two words that cause this: Happiness &amp;amp; Sadness. We people like to be happy (whatever be the cost), and do not like to be sad. However, almost all of us, mistakenly assume happiness to be the exact opposite of sadness. This assumption is ingrained in our psyche, thrust onto us by our education system, our family, the society, the media, almost universally. But why is this wrong?&lt;br /&gt;
&lt;br /&gt;
Take something banal from your own life, from say 10 years ago, say sharing a cup of road side chai with one of your friends/roommate, or taking a bus ride home on a bus that had barely any place to stand, or maybe just looking outside the window of your room (10 years ago). How do they make you feel now? Nostalgic, yes.. but also happy. How did you feel when you were actually living those moments? Just meh!&lt;br /&gt;
&lt;br /&gt;
Now, take some actual defining moments in your life, when you were actually happy in that particular instant: these includes graduation, marriage, winning some contest that only 50 people in the world care about. How do they make you feel now? Those were just a blips in your existence when you were almost ecstatic. You were definitely happy during those few hours or few days of festivities, but your journey to those defining events, your college years, your courtship period is what made you more happy than those events itself.&lt;br /&gt;
&lt;br /&gt;
So are you happy now? Most of us too jaded by the monotony would respond to this ambiguously, and even if someone replied that they were happy, they wouldn&#39;t be able to articulate why. Let me articulate it now for every one of you reading this post; You were happy in the past.. you will always be happy in the past.. 10 years from now, you will think you were happy at this very moment.&lt;br /&gt;
&lt;br /&gt;
Lets switch to sadness. What makes you sad? Traffic Jam, chores at home, office work on weekend, existential crisis, when things don&#39;t work according to you.. in short pretty much everything.&lt;br /&gt;
&lt;br /&gt;
What about some sad defining moments in your life? Loss of a loved one, an accident, getting fired from a job? This generally tend to generate two different kind of reaction, either you will look at them fondly (yes you heard me right) because it made you what you are today (the hardship you faced gave to skills to progress in life), or it will make you shed a tear whenever you think about it. The first kind generally tend to invoke happiness indirectly when you look back on your struggle, the second one might put you in a downward spiral or sadness, but you do eventually recover from it.&lt;br /&gt;
&lt;br /&gt;
On an average, when are/were you sad? Now.. and when are/were you happy? In the past. This justifies the predisposition of people to yearn for the past, sometimes elevating it up to the utopian standards. This is a sad universal truth; in America, people want to live the way their parents lived, when the jobs were plentiful and everyone had a car and a house, but they discount and turn a blind eye to slavery. In India, the movies and soaps puts every one on a trip down memory lane, with all the bahus (daugher-in-laws) taking care of the house and guys bringing the moolah, but discount sati and dowry practices.&lt;br /&gt;
&lt;br /&gt;
Everyone is chasing the proverbial happiness carrot, without realizing that it is something that cannot be achieved, only looked at. If you are not sad now, then you&#39;ll be happy in the future thinking about this very instant, so don&#39;t be sad because you are not happy now, because that&#39;ll rob you of your happiness in the future.&lt;br /&gt;
&lt;br /&gt;
Learn from your experiences, and make new ones, but don&#39;t try to yearn for old ones.&lt;br /&gt;
&lt;br /&gt;
PS: Inspired by the Republican rhetoric and Jon Stewart :)&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2013/10/stop-yearning-for-yester-years.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-335290379106714135</guid><pubDate>Wed, 29 May 2013 22:44:00 +0000</pubDate><atom:updated>2013-05-29T18:44:31.916-04:00</atom:updated><title>Stop the card madness...</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Let&#39;s say that you have 5 five friends and you want to find what they are up to. How do you interact with them?&lt;br /&gt;
&lt;br /&gt;
&lt;ol style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;You meet/call/mail them each individually and talk to them.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;You have a conference call, facebook/watsapp group message, group email thread, where you just ask what is going on. People respond is random order, but you process the response &lt;b&gt;serially. &lt;/b&gt;You lose some of that personal one on one conversation that you might have had, but you still easily touch base with them. All of them talk to each other, crack some common joke, and after a while the group messaging stops. You have effectively reduced the amount of work needed to communicate, and you have checked up on them so they know that you exist, but you still managed to alienate them... but you might not have spent the energy on an individual mail had it not been for the group chat, so this is still a win win situation.&lt;/li&gt;
&lt;li&gt;Now imagine that you ask your friends to continuously tell you what they are doing, but instead of communicating serially, they start shouting simultaneously. This is the craziest and the most inefficient way to communicate and that is being thrust down our throats by all the card interface craziness going on.&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Let me explain; Pinterest, google currents, flipboard, and as of today, google plus, use card interface. What that means is they&#39;ll have each nugget of information on cards, and depending on the application, you can swipe, close, add, append etc these cards. Each of these cards takes a hell lot of screen space and has all the gooey gradient goodness with shadows and what not. Looks great and works great too.. if all you are reading is few occasional tidbits. If you are one of them, just imagine facebook stream arranged into huge squares and thrown about all over your screen.. or just imagine if each email in your inbox was delivered as these boxes. This interface does makes sense if you are discovering content, but not if you are going through a curated set of content, such as RSS feeds or social networking stream.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
There have been tons of UI studies where the eyeball of the users were tracked and found to gravitate towards left hand edge of the screen/web page, by forcing these eyeballs all over the screen, these companies are causing a disservice to their customers.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now, admittedly, I&#39;m still pretty hung up on Google Reader, but that is how I get to the gobs and gobs of information, I read about 20 articles daily, but for that, I go through 200+ feeds daily. The ability to go through everything and selectively read what I want is what makes stream readers such a good interface. Same thing holds for facebook. You scroll endlessly until something catches your eye, then you click that and explore. Imagine if every object in your news feed, the ones that you don&#39;t care about, took as much time; you wouldn&#39;t be able to process all that information in time.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
With that said, card interface is not all bad. They work on mobile devices, but the powers that be should realize that it doesn&#39;t make sense on a desktop, and should show a device specific interface. It might even make sense for something like stumbleUpon.. but please.. not my email, not my feeds and not my social stream.&lt;/div&gt;
&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2013/05/stop-card-madness.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-8785973375272453776</guid><pubDate>Fri, 10 May 2013 18:55:00 +0000</pubDate><atom:updated>2013-05-10T14:55:29.090-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Rants</category><category domain="http://www.blogger.com/atom/ns#">Zen</category><title>Sh*t will always fly</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Are you living in the perfect world of your own? Do you want something to change? Chances are that you do. If you don&#39;t then you probably have achieved nirvana and are reading this blog from a higher state of existence.&lt;br /&gt;
&lt;br /&gt;
Dial your life back by a few years, dial it as far as you can go, access your oldest memory. What were your problems back then? You were probably not old enough to understand any financial problem that your parents might have, you were probably fed by someone, someone did your laundry, somebody&amp;nbsp;chauffeured you around, you had friends who could play with you, and even a discarded carton was a spaceship to you... but what were you worried about? Grades!! thats right. Even though, your life was perfect, so much so that songs have been written about fantasies to get back to childhood, you worried about that 1/2 a grade that you didn&#39;t get in history. You thought that life would be perfect if you could just get that 1/2 a grade. Of course, now you know that, your life was perfect, and it was immature of you to want that 1/2 a grade.. or maybe you think that the want of that 1/2 a grade shaped who you turned out now.&lt;br /&gt;
&lt;br /&gt;
Fast forward a few years now, just before you go to college. You think that you could ace all the classes you took few years back, if you could do it now.. and you&#39;d be right. Now you are hot headed enough to ignore any problems that your parents might have, and think of yourself as a new generation of whatever. Still everything is paid by family so life is good. But you are still worried about grades and the college you get into. You obsess over it for a year or two. And you think that life would be good if you could just get into a good college. Of course, now you know that, your life was perfect, and it was immature of you to base your whole life around the want of the greatest university.. or maybe you think that the want shaped who you turned out now.&lt;br /&gt;
&lt;br /&gt;
Few more years into your life, you are now in your prime, just before you graduate. You have the closest friends you&#39;ll ever make in your life close to you, you have a clear goal of what you want to do in life. Your bills are still paid by your family and you are too busy to be worried by any problems back home. And what do you obsess about? Your job.. that&#39;s right. You obsess and obsess over finding the right job. Maybe you find it, maybe you don&#39;t. You still think the life is not perfect.&lt;br /&gt;
&lt;br /&gt;
A good university, a good job, a new gadget... everything gets old and transparent. We humans are evolved only to notice change, not something that is stagnant.&lt;br /&gt;
&lt;br /&gt;
Few years into the job, your life is still not perfect, you have a good job, but now you obsess over your personal life. You think that your life would be perfect if you just got married. Even with all the accolades you won, all the friends you have, you don&#39;t have a perfect life... And of course, we want to make it perfect, don&#39;t we.&lt;br /&gt;
&lt;br /&gt;
So fast forward a few years, you&#39;ll get married. This is where my experience ends.. of course there are still things in my already perfect life that I need to change to make my life &quot;perfect&quot;... But we as a species should realize that our lives are perfect the way they are. Life changes, and since a non-believer in destiny, you have the reigns of your life in your own hands. Life adds more code to your monolithic operating system, and you should know that more code mean more bugs, but remember that more code also means more functionality. If life didn&#39;t have imperfections then you&#39;d not move the train of your life to a better destination.&lt;br /&gt;
&lt;br /&gt;
Don&#39;t think about that half a grade, your college search, your job search, your spouse search, or any other imperfections that you handled. Think about your schooling, your college, your friends, your job, your spouse. You&#39;ll see that you have a rich life.. enjoy it and be thankful for the imperfections that makes it richer.. cause even if you are billionaire space cowboy with pet unicorns, sh*t will alway fly.&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2013/05/sht-will-always-fly.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-8025283417507341265</guid><pubDate>Fri, 08 Feb 2013 17:37:00 +0000</pubDate><atom:updated>2013-02-08T12:37:10.509-05:00</atom:updated><title>Macbook pro reviewed with vile and hate...</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
I&#39;ve made it very clear in my previous blog posts/status messages and random conversations, my disdain for closed source systems, primarily Windows and MacOSX. I was a happy camper in my last company because I got to use Ubuntu with wmii as my primary work environment.. and I was churning code like there was no tomorrow.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
That all changed when I joined Cisco. Even though you can install whatever you want on your machine, I decided to go with the IT supported Windows 7 so I don&#39;t have to muck around with any of the internal proprietary softwares that is generally vogue in any company of Cisco&#39;s size. At the end of the day, I had to vnc over to a linux/solaris build server so I didn&#39;t care much. Windows was just a thin client, and for most part it didn&#39;t get in the way. Operating systems don&#39;t really matter if all you need them for is IM, browsing and email (the same software is available on all the oses anyway).&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Fast forward 3 years, I needed to refresh my laptop. I decided to go with a mac book pro this time, only because it had much higher hardware specs than it&#39;s counterpart. I wondered if I had made a wise choice. In the first one week of badly missing the dock (not the OSX dock, but the hardware dock you put the thinkpad on) and the pin mouse(most people think that it is useless, but it is quite useful if you know how to type and don&#39;t want to move your hand from the keyboard), my experience with mac seemed like a self fulfilling prophecy.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
I was ready to hate this mac book pro, and write rants for the next 3 years.. but then I really started using the damned machine. With few tweaks, I got my .vimrc, .bashrc and .screenrc to work on mac (some of these files, I&#39;ve been building for over 10 years!). Adium, which to my surprise is implemented on libpurple, filled the void pidgin had left. And chrome.. what can I say about this fantastic piece of software, once you log in to the browser, you won&#39;t know the difference if you are browsing on windows, osx or linux. So OSX just got out of the way as Windows 7 did and let me do my work as I used to do earlier. &amp;nbsp;All the apps like evernote, rescueTime that I depend on pretty heavily just worked as expected.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
But then the fun started, when it started seducing me to its vertically integrated ecosystem. To install some apps, I had to get AppleID, so I got one. To get the nifty notifications I configured my facebook, twitter, gmail and flickr accounts, which automatically imported the calendar and contacts, so with barely any effort, I was using OSX&#39;s calendar, notification system and contacts. Coming from the windows/linux world, I was used to either open a software and search for relevant entries or just grep for configs/data in the respective directories, but spotlight changed all that. Searching for anything became much easier. To my surprise, some software ran faster on a windows virtual machine on mac than on windows running on my old laptop (with similar memory allocation). The douchey way to scroll became &quot;natural&quot;. It just looked like a really really well designed ubuntu system (I know people will find it funny because Ubuntu has been taking GUI cues from OSX.. but I come from that world).&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
The hardware itself is a joy to use. The 15&#39;&#39; retina display is great and it makes the HD IPS display of my photo processing workstation look like the screen of windows with 1024x768 resolution with 256 colors. Keyboard lights that turn on when lights are dim, extremely thin dimensions,a great touchpad, the completely silent 256G SSD and the monstrous 16G RAM makes this machine a joy to use.&amp;nbsp;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
Am I a fanboy? No.. and probably will never be. Why? Well the cost of the machine with all the connectors etc have run to about $3000.. Unless someone is paying for it, there is no way in hell I&#39;ll be shelling that amount(in this case my company pays for it). I hate non-standard keyboards. I don&#39;t like the command key, I don&#39;t like the omission of page-up/down, end/home keys, and I&#39;ll never get used to the &quot;MAC&quot; way of doing things because I&#39;ll always be working in an environment where I&#39;ll be using Linux and working with people who own heterogeneous set of machines and operating systems, so I&#39;d want something that doesn&#39;t stump a non-mac user. Even if the keys were eliminated from the laptop itself, they shouldn&#39;t be disabled when a usb keyboard is connected. Also, don&#39;t know what&#39;ll take Apple to put a hardware dock support to the mac books, but connecting a keyboard, a mouse, two displays and a power chord is a chore. The available third party solutions are nowhere close to Lenovo docks. The battery life of my 3 year old Lenovo laptop is still much much better than the new Mac Book Pro. Also MS office softwares work much better on Windows machine.&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
So what&#39;s the final verdict; undoubtedly I&#39;m in love with the machine and is much better than my old Lenovo laptop, but since the hardware configs were different, it is not an apple to apples comparison. Do I still feel the same way about closed source software.. absolutely. Would that stop me from using a decked up mac book pro.. absolutely not :).&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
PS: Incidentally I wrote this entry, on MBP, sitting in a street corner starbuck, sipping a skinny latte, in San Francisco. I don&#39;t know the hipster/douchebaggy smugness is my own or one induced by this vile machine :)&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2013/02/macbook-pro-reviewed-with-vile-and-hate.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-8123844982969423429</guid><pubDate>Sat, 20 Oct 2012 09:30:00 +0000</pubDate><atom:updated>2012-10-20T05:30:26.614-04:00</atom:updated><title>How are you feeling? </title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div&gt;
Me? Yes.. how am I feeling?&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I&#39;m going to get married in a week.. and every person who comes within earshot tries to ask me this question. I find the question as vague as it is weird. In some cases, I find this more to be an assertion of a fact than a question. Let me elaborate:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
1. Single guys who still have few years before being peer pressured in to getting married: Their eyes will light up, they&#39;ll have a big grin on their face, as if mocking me. Their unbridled enthusiasm about my marriage and what I might not be able to do after marriage is funny. These guys expect me to be remorseful about my decision to get married. They might even be scared because they see me as their future.. and they&#39;d be right. I felt the same way few years ago.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
2. Single guys who are trying to find some one to get married to: The tone of these guys is more&amp;nbsp;somber&amp;nbsp; These guys would have preferred if I tell them that it is not a big deal and that I don&#39;t feel any different. These guys would like the reaffirmation of the fact that they are not missing out on anything. Again, I&#39;ve been in this boat, so I&amp;nbsp;sympathize&amp;nbsp;with them, but they need to understand that I&#39;d be ill equipped to answer their question until I&#39;m 2-3 years into my marriage.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
3. Single girls who are trying to find someone to get married to: Their tone is a bit melancholic. They&#39;d like if I drop into a bollywood dance routine or a&amp;nbsp;Broadway&amp;nbsp;musical to express my feelings. Marriage is a highly romanticized affair for them.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
4. Single girls who don&#39;t plan to get married soon: They don&#39;t ask this question.. or if they do, it&#39;s followed by &quot;woooo.. so excited for you&quot; :P&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
5. Married people: Maybe they ask this to compare notes on how they felt, or they are scoping out the new couple to hang out with... I really don&#39;t know. This is soon followed by a platitude about married life and some joke.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now.. the above 5 points cover every one I know, so obviously I&#39;m not looking to offend anyone... but here&#39;s my honest answer:&lt;/div&gt;
&lt;div&gt;
1. Never ask a dude about his feelings.. it is weird. I might cry like a baby during SRK flicks or a&amp;nbsp;Broadway&amp;nbsp;musical, but I&#39;ll be damned if I tell anyone how I really feel about something I do feel about.&lt;/div&gt;
&lt;div&gt;
2. Wedding.. specially wedding in India is an expensive affair with an attendance of over 500 people, organized by people who have little to no experience in event management. Even if you are not involved in any of the planning, the magnitude of event is enough to cause a nervous breakdown.&lt;/div&gt;
&lt;div&gt;
3. I&#39;m somewhat of a workaholic and I&#39;ve been very very busy at work during the weeks leading up to the wedding. I&#39;ve been working nights and I&#39;ve been working weekends.. so the amount of time I&#39;ve had the liberty of thinking about something is little to none.&lt;/div&gt;
&lt;div&gt;
4. I&#39;m an engineer and I like to do literary survey and read up on problems/issues before they happen. I&#39;ve been hitting the psychology journals to find out effective ways to diffuse no-win situations.. i.e. I&#39;ve been assuming the worse and trying to visualize my own behavior in those times, so when the time comes I can take the most logically sound action.&lt;/div&gt;
&lt;div&gt;
5. I turned 30 recently, at the&amp;nbsp;height&amp;nbsp;of the bug fix phase at work.. you have no idea the about the magnitude of existential crisis that introduces.&lt;/div&gt;
&lt;div&gt;
5. Lastly.. Yes I&#39;m excited about my wedding.. I&#39;m happy about getting to spend the rest of my life with someone.. but I&#39;m also anxious and nervous about it for the same reason. I&#39;ll be gaining something and I&#39;ll be losing something.. hopefully I&#39;ll gain a lot more that I lose, or I care to lose.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
In short, all the conflicting and ginormous potpouri of emotions has made me emotionless. You won&#39;t see me gushing about marital life, nor would you see me lamenting the death of my single life. I haven&#39;t got the time or chance to process any of it yet.. and chances are, I won&#39;t until I actually get married. Or maybe, I&#39;ve gone through the nauseous happiness phase during my engagement. More than anything, I feel a sense of peace, the way I did 6-7 years ago... Going out, socializing, to meet people, is any introvert&#39;s nightmare.. but I guess my EQ got a boost in these last few years.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now being an introvert, I might just be&amp;nbsp;over-thinking&amp;nbsp;a harmless question, maybe it is just a norm to ask this question to anyone who is going to get married. I guess I should be ready to field similar questions after marriage too. *sigh* .. I guess I should start writing another blog post for that..&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
If you still need a song out of me... here it is (if you have seen this before, don&#39;t view it in the context of original musical):&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;object width=&quot;320&quot; height=&quot;266&quot; class=&quot;BLOGGER-youtube-video&quot; classid=&quot;clsid:D27CDB6E-AE6D-11cf-96B8-444553540000&quot; codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0&quot; data-thumbnail-src=&quot;http://2.gvt0.com/vi/BpGA_VRc1Ro/0.jpg&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/BpGA_VRc1Ro&amp;fs=1&amp;source=uds&quot; /&gt;&lt;param name=&quot;bgcolor&quot; value=&quot;#FFFFFF&quot; /&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;&lt;embed width=&quot;320&quot; height=&quot;266&quot;  src=&quot;http://www.youtube.com/v/BpGA_VRc1Ro&amp;fs=1&amp;source=uds&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://codeyman.blogspot.com/2012/10/how-are-you-feeling.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-7438076873159855632</guid><pubDate>Mon, 23 Jul 2012 05:35:00 +0000</pubDate><atom:updated>2012-07-24T17:03:07.296-04:00</atom:updated><title>Taking risks..</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
There is something unsettling about taking risks. I don&#39;t claim to be a maverick and say that I don&#39;t enjoy the calm and quiet of a risk free environment, but taking risks does have it rewards... at least that is what I keep telling myself. Now that I&#39;ve spent about three decades on this earth to draw parallels from my own life (we earthlings are much too often too egotistical or too self-deprecating to draw inspirations from others.. heard this phrase: &quot;You can&#39;t do it... you are not Steve Jobs&quot;).&lt;br /&gt;
&lt;br /&gt;
There were couple of moments in time when my life took a complete turn and became something which I never imagined it would be... every time I shake the&amp;nbsp;equilibrium, the lows are lower, and the highs are higher.. with every jolt I become more jaded, more cynical, more experienced as I watch the child inside of me die.. but have been holding on to it. It is very important to hold on to your inner child. The moment you let him go, you are one of the old dudes, who have settled down, bitch about government/people/society/environment/police without actually doing something about it.&lt;br /&gt;
&lt;br /&gt;
As I grow older, the ghosts of my years past, my mistakes, my accomplishments and my losses become my baggage that I&#39;ve to carry. I&#39;m not a religious guy to believe in a divine plan, I&#39;ve seen too much for that.. life is random, life is temporal, the ideas.. they stay forever. So even with this knowledge, the engineer in me tries to plot the trajectory of my personal and professional life and what may be in store for me these coming years. Let me take you to few pivotal moments from my past:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;1. 11 years ago: &lt;/b&gt;I failed the IIT entrance exam. This was probably the first time that I felt suicidal, not because I didn&#39;t clear it, but because of the nagging doubt in my head that I didn&#39;t give it my all. If I had, life would be very different for me now. I was as harmonally charged as any other 18 year old would be at that age, and wanted to have another go at it.. but family didn&#39;t allow that. It took a long time for me to forgive them.. as I got older, I realized that things were not as financially cozy as they seemed to me. I ended up topping the college that I went to and made the best of the friends, to whom I still turn to for my emotional support.. Had I not failed in that exam, I wouldn&#39;t have met the wonderful people who taught me so much about life.. and I probably would have a moderately lower self esteem at IIT ( come on.. most of those guys are way smarter than I can fake to be).&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;2. 7 years ago: &lt;/b&gt;I graduated as a geeky hot head with a B.E. in Computer Sc. The world seemed to offer you a clean slate after you graduate, which I didn&#39;t like.. After being molly coddled by academia for about 4 years, I didn&#39;t want to be treated the same way as my 100 or so other colleagues who got the job.. I didn&#39;t want to join the army of employees in Infosys/TCS or the likes and just be a number on their balance sheets. I wanted to stand out. So even with 7 job offers, I did the most risky thing, I rejected all of them.. I applied for M.S. and got an admission here.. my plan was to be the next Bill Gates, the next Steve Jobs.. still is. Had I not made that decision, I&#39;d have never met so many like minded people, many of whom humbled me with their empathy and lack of pride for their skill. These guys taught me that it was possible to be Howard Roark with a dash of Patch Adams thrown in..&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;3. 5 years ago: &lt;/b&gt;Now one thing you need to know about grad school in USA is that if you want to do it right, you cannot do anything else. I was knee deep in research, doing things that often didn&#39;t understand, and things that you cannot google for. After 2 years into masters, I was seriously considering going for a PhD, more than one professor offered to be my mentors.. but I soon realized that I was losing touch with reality, most of what people talked about felt like buzzing.. I was so wrapped up in what I was doing that I didn&#39;t like to do anything else, talk to people, even eating and sleeping were activities that needed to be done. I wrote a paper as a part of an independent study and realized that this was not how I wanted to spend the rest of my life, at least see the real world before sticking with known one. So I ventured out into the real world.. I&#39;ve met so many doctorates, post docs etc who were doing the same thing that I was doing in the workforce, but had overstayed in academia because they were comfortable with it.. there is something very reassuring about judging your success based on grades and have specific metrics to work on. I wished we had those in real world..&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;4. 3 months from now: &lt;/b&gt;I have a sweet life, I&#39;ve been a single geek in the valley of geeks, working on the stuff I love. In the past few years, I&#39;ve hiked to my hearts content, ran a marathon, back packed across eastern europe, met few of my idols, worked in a startup, worked on few failed startup ideas.. in other words did what I wanted to do. That is all going to change soon.. I&#39;m going to get married to a girl I adore.. and although I&#39;m excited about the future, I know that my life is going to change.. I&#39;d need to de-prioritize a lot of things that I love doing that I barely get to do now ( it doesn&#39;t take a rocket scientist to realize that you can&#39;t be a photographer, a musician, athlete and an engineer at the same time without being shoddy worker).. I probably would need to be more thrifty.. both with finances and time.. all the more harder in country where being thrifty essentially means being risk averse.. &amp;nbsp;I don&#39;t know what the future has in store for me and how I&#39;ll react to it, but I do know that I&#39;ll gravitate towards risk like a moth is driven towards light.. I might pack my bags and setup shop in India, if that&#39;s what it takes to follow my dream of having my ideas out to the world.. although I&#39;m happy to have a companion with me to share my ups and downs.. and dear fiancé, if you are reading this, you have been warned :-) .. rest assured, life will be interesting.&lt;br /&gt;
&lt;br /&gt;
Life is not about fixing bugs, returning phone calls, observing social&amp;nbsp;niceties or doing what others want you to do. Life is about exploration, taking risk, taking the off beaten path.. we are nothing but blips on the cosmic timeline.. but even a butterfly flapping it&#39;s wings can cause a hurricane, so there is no use being cocooned in.. let&#39;s flap our teensy wings all we can. Even if we don&#39;t cause a hurricane, we are sure to fly :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2012/07/taking-risks.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-7312569308107335554</guid><pubDate>Sat, 22 Oct 2011 20:34:00 +0000</pubDate><atom:updated>2011-10-22T16:34:33.061-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Life</category><category domain="http://www.blogger.com/atom/ns#">People</category><category domain="http://www.blogger.com/atom/ns#">Rants</category><title>Thank you Team In Training</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkIsokGap6UYkfgEFZMSjjlQBNFcaRlFWr8-CBLVejAfzHbHLHVCO_mYXqrkv_2YeSnYAbDxG44Eiav_9IQ4nWpDE-64fX1h1QcXzgWuoJIMOJjNkwSIMfQoALB_zcBMFbHmLr0Q/s1600/Photo_1186732.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkIsokGap6UYkfgEFZMSjjlQBNFcaRlFWr8-CBLVejAfzHbHLHVCO_mYXqrkv_2YeSnYAbDxG44Eiav_9IQ4nWpDE-64fX1h1QcXzgWuoJIMOJjNkwSIMfQoALB_zcBMFbHmLr0Q/s320/Photo_1186732.jpg&quot; width=&quot;213&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
This has been one of the most productive year for me so far.. working on an awesome project in Cisco, got few paid gigs as a photographer, and ran a marathon.. that&#39;s right ran a friggin marathon!.. Everything else I did this year pales in comparison. I still choke up when I think of crossing that finish line, no matter how abysmal my finishing time was..&lt;br /&gt;
&lt;br /&gt;
It all started in May. I was pissed off at someone (and lets just leave it at that), was driving back home and stuck in traffic, there was a radio ad for &lt;a href=&quot;http://www.teamintraining.org/&quot;&gt;Team In Training&lt;/a&gt;, a team that trains people for marathons, triathlons, crazy hikes, century bike rides etc to raise money for &lt;a href=&quot;http://www.lls.org/&quot;&gt;Leukemia &amp;amp; Lymphoma Society&lt;/a&gt;.. I thought..fuck it.. I&#39;m going to run a Marathon. It was just a whim, I had no desire to be an athlete, nor had any relation to the cause.. it was a Forrest Gump moment for me where I just wanted to run.. for no apparent reason..&lt;br /&gt;
&lt;br /&gt;
Now you guys have to remember that I used to bunk PE/games classes back in school and spend my time in the lab/library.. the last 5K I did was about a year ago, when I just woke up one morning, wore a sketcher shoe, and ran a 5k organized locally.. no practice etc.. i.e. I was in as good a shape as an average engineer is. Every rampup weekend run, which started at a measly 4 miles, was followed with me lying on the bed for 2 days, limping, and bitching and moaning for the rest of the week.&lt;br /&gt;
&lt;br /&gt;
I don&#39;t really think my words can do justice to what the staff of TnT (Team in Training) has brought into my life. I know it is a cliché but they really did change my life. I&#39;m normally a pretty distant guy with an EQ of a dead cat, so I thought that I&#39;d be pretty thick skinned to whatever they had to say.. I just thought that I was there for the run. Coming in contact with all the honorees, cancer survivors &amp;amp; people still suffering from cancer has given me a different perspective of life. When you see a grown man cry after he exclaims that he was told that he&#39;d be cancer free after 15 years, or when you realize that the person running &amp;amp; motivating you for the past 10 miles had cancer and was going through chemo just few months ago.. or when you find that a bubbly, high spirited lady decided to run 3 marathons, one for each kid she had, after she was told that she was in remission.. it puts things into perspective. Life is fragile and we take so many things for granted.. we tend to be lazy and jaded &amp;amp; stop aspiring for greatness and just settle for mediocrity. That finisher&#39;s medal hanging in my room, doesn&#39;t remind me of my accomplishment, but my time &amp;amp; experience with the team, which I&#39;m going to cherish for ever, and if life permits, return next year.&lt;br /&gt;
&lt;br /&gt;
The training was kind of harder than I expected, more so because of the time commitment it needed. I was running on Tuesdays, Thursdays &amp;amp; Saturdays and was supposed to cross train on Monday &amp;amp; Wednesday.. this meant that I couldn&#39;t go out with my friends on friday because I had early morning runs the next day..or Sunday because I was sore from Saturday. I think most people at my work don&#39;t remember me walking straight :P now. It was also a revelation to me that it was much easier to build stamina than the musculoskeletal system. What that means is that for longer runs, I used to hurt my legs &amp;nbsp;faster than I used to get tired. It is no secret that I have a huge ego, so on any given run, I had a choice of either hurting my ego or hurting my leg.. I obviously went with ego.. against all the warnings from my coaches.&lt;br /&gt;
&lt;br /&gt;
I&#39;ve hurt my IT band, hamstring, medial shin, lower shin, ACL &amp;amp; Achilles tendon running.. (of course few months ago, I&#39;d have said that I hurt my leg.. but you pick up stuff when you are on the first name basis with your massage therapist). I&#39;ve bled from my nipples, and yes it is funny until it happens to you.. guys wear something called nipguards, which actually make you look like the models on paid only porn sites which put a star on the unmentionables (come on.. every teenager with access to a computer has been to those sites).. I don&#39;t remember any body part below my neck that hasn&#39;t been hurt at one point or the other. The remedies to these ailments are as weird as the ailment itself.. the best being icebaths.. it is exactly what it sounds like. You fill the bathtub with as much ice as you can manage, and dip yourself in it for 15 minutes.. you might yell obscenities for the first few minutes, but your legs will thank you later. But nothing hurts more than random advice from people who have never run in their entire life..&lt;br /&gt;
&lt;br /&gt;
The way training works is that you ramp up your distance every 2 weeks, but run half the distance of your longest run during week in the middle to rest, so when I was up to a 20 miler, I was supposed to run 10 miles.. just to rest. A masochistic moron that I am, decided to replace it with hike, it was a 11.3 mile hike with 2.5K feet elevation! Even if you feel ok, your body would still be in recovery mode.. so when I ran 20 miles the next weekend, I pulled something.. and was kicked out of track the next tuesday. I couldn&#39;t really walk and although the possibility of stress fracture was dismissed by a quick visit to the doctor, running was out of the question.. I just had 3 weeks to go for the race. With a lot of ice cupping, compression wrap, ice bath, foam rolling, massages and intense cardio at more than 1hr/day, I tried to make up for the lost training runs. I was still limping a bit, but atleast it didn&#39;t hurt, which was a good sign.. It would have been a wise decision to just back out and live to run another day, but as I said, my ego hurts more than my leg, so I pushed on and made it to the marathon.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;div&gt;I was following the Jeff Galloway&#39;s method of running and was doing a 4:1 interval ( 4 minute run and 1 minute brisk walk) &amp;amp; based on my training, I was expected to finish in 5hr50min...well that didn&#39;t happen. At mile 18 I started falling apart, my limp became more pronounced and I could feel my legs locking up.. still kept on going till mile 21, but couldn&#39;t keep up my rhythm. They say that you run a marathon in 3 parts, first with your mind, second with your body, and third with your heart. I was at the last leg and lost my heart! I became deaf to all the cheers, all the bands playing, all I could think was to just jump of the bridge and end the misery (and Emily Dickinson&#39;s &quot;Success is counted sweetest&quot; playing in my head meant that I sure as hell wasn&#39;t going to quit the race and live). Suddenly like an angel, one of my coaches came and started running with me, she told me to run only if I could run faster than I could walk.. so I ended up just walking the remaining distance.. she stayed with me till the finish line.. I zoned out everything else and just zeroed in on her continuous chants of &quot;Lift your legs, tighten your gluts&quot;.. After which I just became more or less an automaton and finished the race. I don&#39;t think humans have the capacity to assimilate greatness without going overboard.. but I&#39;d say this.. I cried like a baby for 30 minutes after I finished the race.. It was not because I considered finishing a marathon an overwhelming accomplishment, but because I was overcome by the gesture of my coach.. Thank god for those Oakleys, I didn&#39;t look too different to the onlooker than any other marathoner in pain. It was not even a cool guy cry.. well it was at first.. but then I started tearing up so hard that I had to gasp! They say that starvation during any extreme sport does weird things to your mind.. but I don&#39;t care.. I don&#39;t care if I was out of my senses.. but I don&#39;t think that I can thank my coaches enough for what they did.. Coach Meghan.. if you are reading this, you ROCK!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;The other important aspect of the race was fund raising. I was supposed to raise $2900 in donations. I was able to raise $2400 just by shooting two events!.. the rest came from my facebook friends.. not only did it make me more confident as photographer, but it also reaffirmed my faith in my friends (those who paid anyways :))&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;It has been 2 weeks after the race, I&#39;m still limping, but I can&#39;t wait to get back track and experience it all over again... GO TEAM!!&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2011/10/thank-you-team-in-training.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkIsokGap6UYkfgEFZMSjjlQBNFcaRlFWr8-CBLVejAfzHbHLHVCO_mYXqrkv_2YeSnYAbDxG44Eiav_9IQ4nWpDE-64fX1h1QcXzgWuoJIMOJjNkwSIMfQoALB_zcBMFbHmLr0Q/s72-c/Photo_1186732.jpg" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-5113924003736296662</guid><pubDate>Tue, 02 Nov 2010 04:46:00 +0000</pubDate><atom:updated>2010-11-02T00:57:24.348-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Life</category><category domain="http://www.blogger.com/atom/ns#">Rants</category><title>A philosophical discourse..</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;I don&#39;t know if its my intelligence :P or my innate desire to pick a fight that I seem to get into flame wars&amp;nbsp;on almost all the social networking sites I am on.. Here is the latest pearl of wisdom from a&amp;nbsp;google Buzz conversation I had with a friend Elan.. (I hope I don&#39;t incite another flame war by posting&amp;nbsp;this :) ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;table border=&quot;0&quot; cellpadding=&quot;12&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a class=&quot;CSS_UPDATES_UCW_TEXT_MEDIA_LINK&quot; href=&quot;http://blog.elanelango.com/post/1448150278&quot; target=&quot;_blank&quot;&gt;Elan&#39;s  Blog, God - The Outdated Theory&lt;/a&gt;&lt;/div&gt;&lt;div aria-pressed=&quot;false&quot; aria-selected=&quot;true&quot; class=&quot;updates-media 
CSS_UPDATES_UCW_TEXT_MEDIA goog-control-selected&quot;&gt;&lt;div class=&quot;updates-media-description&quot;&gt;&lt;div class=&quot;updates-media-description-text&quot;&gt;God - The Outdated Theory  WARNING: The following essay might sound like ATH101: Introduction to  Atheism. Agnosticism is Meaningless If you know me well or if you have  not hidden me from your Facebook...&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/sridhar.v.iyer&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Sridhar Iyer&lt;/a&gt;&amp;nbsp;–&amp;nbsp;now  you are just being rude to agnostics :P&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/elanelango&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Elanchezhiyan Elango&lt;/a&gt;&amp;nbsp;–&amp;nbsp;:P  just trying to push the envelope.. You guys should just makeup your  mind one way or other.. Agnostic towards God is like saying you are  agnostic towards &#39;a flying teapot&#39; :) &lt;a href=&quot;http://en.wikipedia.org/wiki/Russell%27s_teapot&quot; target=&quot;_blank&quot;&gt;http://en.wikipedia.org/wiki/&lt;wbr&gt;&lt;/wbr&gt;Russell&#39;s_teapot&lt;/a&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/sridhar.v.iyer&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Sridhar Iyer&lt;/a&gt;&amp;nbsp;–&amp;nbsp;Atheism= believing in  &quot;no god&quot;, Agnosticism= not believing in god, but keeping an open mind.. &lt;br /&gt;
Believing in something that you cannot prove or disprove (existence  or non-existence of God..) is just as bad.. doesn&#39;t make a difference if  you follow the Bible or the God Delusion..&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/elanelango&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Elanchezhiyan Elango&lt;/a&gt;&amp;nbsp;–&amp;nbsp;Nope..  Atheism is &#39;not believing in God&#39;.. You don&#39;t believe in any form of  personal god and don&#39;t pray to him.. if you don&#39;t believe in a personal  god you are an atheist.. Even Richard Dawkins will never say there is no  God.. He just says &#39;there almost certainly is no god&#39;. Agnosticism is  the state where you believe there is possibility for a God. &lt;br /&gt;
&lt;br /&gt;
&quot;Believing in something that you cannot prove or disprove (existence  or non-existence of God..) is just as bad&quot; &lt;br /&gt;
Not always and not for God. Just because you cannot disprove god  does not mean there is a equal probability for the existence or  non-existence of God. Just because you cannot disprove the existence of a  &#39;Flying Spaghetti monster&#39; or &#39;Pink Unicorn&#39; doesn&#39;t mean that you need  to be a agnostic towards them. No one is agnostic about them. You don&#39;t  have an open mind about their existence. The God followed by all humans  is as improbable as a &#39;Flying Spaghetti monster&#39; or a &#39;Pink Unicorn&#39;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/sridhar.v.iyer&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Sridhar Iyer&lt;/a&gt;&amp;nbsp;–&amp;nbsp;Well.. there is always a  non-zero probability for everything unless proven otherwise. Flying  Spaghetti monster or Pink Unicorn are probable unless proven otherwise..  I guess we have our own definition or Atheism/Agnostism. God might be  like the complex number &#39;i&#39;.. every mathematician knows that it is not a  real number, but that doesn&#39;t make its existence any less important for  solving complex equations.. and all related fields... &lt;br /&gt;
I strongly believe that Atheism &lt;i&gt;is&lt;/i&gt; believing in &quot;no God&quot;..  why? Because you always see atheists and religious people preaching  about their beliefs.. be it God or !God.. its just as faulty.. How is  your writing a blog post any different from a Bible thumper you meet on  streets? .. you both are prisoners of your own beliefs. &lt;br /&gt;
&lt;br /&gt;
Agnostics are cooler and don&#39;t really care which team wins :)..  Mathematically speaking unless life is turing complete, it will not be  possible to explain life using life (or any living being).. not matter  how advanced the life form is..&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov  1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/elanelango&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Elanchezhiyan Elango&lt;/a&gt;&amp;nbsp;–&amp;nbsp;I  do agree that the semantics of Atheism and Agnosticism overlap. &lt;br /&gt;
&lt;br /&gt;
But comparing religious fundamentalist to atheist is just a gross  error. This is tiresomely often repeated statement especially by  agnostics. It is like saying a blog post vigorously supporting/preaching  &#39;Slavery&#39; and one vigorously opposing slavery are the same. To quote  from my bible, god delusion :P &lt;br /&gt;
&lt;br /&gt;
&quot;when two opposite points of view are expressed with equal force,  the truth does not necessarily lie midway between them. It is possible  for one side to be simply wrong. And that justifies passion on the other  side&quot; &lt;br /&gt;
&lt;br /&gt;
Agnosticism from this perspective is not cool.. You are just being  lazy and apathetic.. :)&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/sridhar.v.iyer&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Sridhar Iyer&lt;/a&gt;&amp;nbsp;–&amp;nbsp;ok.. lets establish one  thing.. whether or not you believe in God, do you like the concept? if  you do.. then concept of God is not the same as concept of Slavery.. all  the hatred in the world is due to the conflicting concepts of God and  &quot;my daddy strongest&quot; complex in humans.. &lt;br /&gt;
And if you think that concept of God is worse or just as bad as  slavery.. then you have sunken to the same levels as religious  fundamentalists.. &lt;br /&gt;
&lt;br /&gt;
I never said that truth lies midway..I&#39;m just saying that neither  can say what the truth is without being any kind of a fundamentalist..  Agnosticism is just not drawn to the polarizing forces.. &lt;br /&gt;
You are right in pointing that I&#39;m apathetic.. I could care less  about what is the truth here (existence/non-existence).. not sure if  that is true for all agnostics.. &lt;br /&gt;
For me it is similar to vi/emacs, windows/linux, canon/nikon flame  wars.. I don&#39;t care which is better .. I&#39;ll continue to use vi, linux  and canon because they get the job done and if you use emacs, windows  and Nikon.. I won&#39;t write a blog article writing why your choices suck..  I just don&#39;t care as long as you get the job done..&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/elanelango&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Elanchezhiyan Elango&lt;/a&gt;&amp;nbsp;–&amp;nbsp;yes the religion  followed by many humans is as bad as slavery, if not worse.. If you  don&#39;t think so then you are misinformed.. Let&#39;s make clear what God we  are talking about.. I am not talking about the God that Einstein refers  when he says &quot;I am convinced that God does not play dice&quot;. I am talking  about the god followed by major religions like Christianity, Muslim and  Hindus. I don&#39;t like those GODS! This whole fight is because religion  motivates people to do some terrible things and gives a false world  view.. &lt;br /&gt;
&lt;br /&gt;
Extreme examples: 911, Ayodhya dispute, genital mutilation on  children. &lt;br /&gt;
Not-so extreme or violent but still terrible: Girls wearing Burkha,  people thinking earth is few thousand years old, people building  creation museums saying that evolution is totally false and giving  alternate explanations from religious texts. &lt;br /&gt;
&lt;br /&gt;
These are all serious issues, comparable to slavery, to the society  motivated in the name of God. I don&#39;t think these are okay and I will  present my opposing honest opinions against these believes. &lt;br /&gt;
&lt;br /&gt;
I don&#39;t mind you calling me a staunch or fundamentalist atheist as  long as you don&#39;t say I am as &#39;bad&#39; as the religious fundamentalist. My  intentions are to inform people about the more realistic view of the  world. I can never do anything harmful, in the name of non-existence of  God. &lt;br /&gt;
&lt;br /&gt;
And come on.. the God problem is definitely not same as emacs/vi  problem although I would say emacs is better. :)&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/sridhar.v.iyer&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Sridhar Iyer&lt;/a&gt;&amp;nbsp;–&amp;nbsp;Now now.. you are  confusing God with Religion.. I&#39;m referring to Einstein&#39;s god (as you  mentioned above).. Religion is a whole different ballgame.. I just think  that religion would have evolved as sort of teams in gameplay.. having  teams fosters team work and feeling of belonging.. then somewhere down  the line you got rowdy fans (football/cricket etc etc.. ) who throw  trash at the other team.. it is the same concept.. Religion can be a  google group for all I care.. and given enough time, people will fight  over which google group is better.. &lt;br /&gt;
God is a concept.. it is an idea.. Religion tries to give it a  shape.. might not be a good idea.. &lt;br /&gt;
&lt;br /&gt;
Agnosticism/Atheism has nothing to do with religion.. it has to do  with God.. the concept.. not a version/manifestations of god put forth  by humans.. &lt;br /&gt;
&lt;br /&gt;
Acc to some article, religion might have given us evolutionary  advantage by using human psychology against human to help in the  evolutionary growth.. concepts of adultery/murder/theft/greed etc are  deemed as sin by the religions.. by doing something that is not  hardwired in human brain, we made sure that we lasted longer than other  species.. Also if the concept did not serve humans well.. it would have  been outdated and dead eons ago... of course we have examples of all the  bad things religion has done.. but what about all the good it has done  ,lokmanya tilak and ali brothers used religion to unite people in India  to fight for independence.. it gives hope to tons of drunks, drug  addicts who need some mental support.. &lt;br /&gt;
&lt;br /&gt;
I&#39;m not saying that the concept of religion has done more harm than  good or other way round.. I&#39;m just saying that rather than rejecting the  concept outright, it should be left alone. Taking religion from people  would mean taking hope from a lot of people and leave a void in their  life... even if there is no god and all the religions are bullshit..  doing that is not a noble deed. Unless you have a better idea to replace  religion/god with, there is no point bitching about it.. then aren&#39;t  you as bad as religious fundamentalists who think their belief is  superior? &lt;br /&gt;
&lt;br /&gt;
Would you rather tell a 2 year old kid that there is no Santa or  would you just let him be happy and later tell the kid about it when he  grows up or realizes it himself?.. Most of the people on the planet are  like that 2 year old kid..&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1,  2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/elanelango&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Elanchezhiyan Elango&lt;/a&gt;&amp;nbsp;–&amp;nbsp;Dude you just  butchered the definition of Atheism.. Atheism has everything to do with  religion.. And religion has everything to do with God. Without the  religious God there is no scope for something like Atheism to rise and  people like Richard Dawkins to write a book like &#39;God Delusion&#39;.. They  don&#39;t care about the Einsteinian god that you like.. that is just a  metaphor.. And no one follows such a god religiously.. &lt;br /&gt;
&lt;br /&gt;
You just oversimplify by calling a religion as football team or  google group. &lt;br /&gt;
&lt;br /&gt;
And regarding the evolutionary advantage of Religion there is a  field called Evolutionary Psychology. Richard Dawkins being a  evolutionary biologist does discuss about it. The fact that religion has  survived so many centuries doesn&#39;t mean that it has a survival  advantage. His theory is it could be a evolutionary by-product of  something else that has a survival advantage like being &#39;obedient to  your elders&#39;. He gives the example of a insects that seem to willingly  fall into fire and die. Obviously this behavior does not have a survival  advantage. But investigation shows that the insects have evolved to use  the light from celestial objects like (moon) to travel in a straight  line and hence they mistake &#39;candle fire&#39; for celestial light, fall into  them and die. Anyways he doesn&#39;t argue that this theory is true or  false and neither do I. These are just interesting theories. &lt;br /&gt;
&lt;br /&gt;
And all the good things that you said about religion is refutable..  You don&#39;t need religious scriptures to have morality, for mental  support, etc. The religious texts are just outdated.. There is still  some morality left in the world because majority of us don&#39;t follow the  morality from religious scriptures literally. So if you pick and choose  morality from religious texts our morality should be coming from  somewhere else! Same way one can give numerous arguments that religion  is causing mental stress instead of giving support.. Instead of me  giving all points it would be better if you read &#39;God Delusion&#39; :) &lt;br /&gt;
&lt;br /&gt;
I am okay with my 2 year old playing with Santa. But I am not happy  about 20 year olds in the world thinking like 2 year olds. It is NOT  OKAY. And when my kid is old enough I would be careful enough to give  him scientific literacy without imposing any belief system on him. The  problem with the majority of religion is the kids don&#39;t have a choice.  The terrible thing is a kid is born as a &#39;Hindu&#39; child or &#39;Muslim&#39; child  or &#39;Christian&#39; child. He is taught that his GOD is better. By the time  the 2 year old becomes 20 it is too late.. You don&#39;t need a replacement  for religion. People can live a happy fulfilling life without religion  if they are educated and if they can think the right way. Religion is  not a necessity.&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/elanelango&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Elanchezhiyan Elango&lt;/a&gt;&amp;nbsp;–&amp;nbsp;&quot;Unless you have  a better idea to replace religion/god with, there is no point bitching  about it&quot; &lt;br /&gt;
&lt;br /&gt;
I can&#39;t believe you actually said that!!! So you mean to say I don&#39;t  have the right to bitch about &#39;genital mutilation on children&#39;, &#39;girls  wearing burkha&#39;, &#39;people calling earth as 6000 years old&#39;, etc All these  are directly derived from people believing in their GOD. I don&#39;t care  if there are 1000 good things that can come out of religion. Just give  me on valid good outcome which cannot be achieved without religion which  can justify the horrific deeds I have listed above. Only way to refute  these stupid things is to tell people that &quot;Your religious texts are  bogus.. Your god is bogus.. Just throw away your religious texts and  start thinking!!&quot; The only way to eliminate slavery is not to search for  a replacement.. just reject it.. &lt;br /&gt;
&lt;br /&gt;
&quot;then aren&#39;t you as bad as religious fundamentalists who think their  belief is superior? &quot; &lt;br /&gt;
YES.. How many times should I say you. &lt;br /&gt;
&quot;when two opposite points of view are expressed with equal force,  the truth does not necessarily lie midway between them. It is possible  for one side to be simply wrong. And that justifies passion on the other  side&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/sridhar.v.iyer&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Sridhar Iyer&lt;/a&gt;&amp;nbsp;–&amp;nbsp;Yes.. more or less I  agree with you.. religion does have everything to do with god.. but god  has nothing to do with religion.. ok.. so we have just established that  you hate Religion as an institution.. (and I agree with you) &lt;br /&gt;
&lt;br /&gt;
Your last paragraph can be summarized as :&quot;People should be sensible  and should get along and not use God to fight with each other&quot;.. people  are not sensible, they never will be, they will never question  god/religion.. &lt;br /&gt;
Human brain is not that evolved yet.. nobody is taught that their  God is better.. they are taught about their god.. they just don&#39;t know  anything about the other gods.. this misunderstanding causes conflicts..  Religion is not the problem here.. people are.. &lt;br /&gt;
People have killed for money, love, real estate, power.. doesn&#39;t  mean that these are bad..people are.. &lt;br /&gt;
&lt;br /&gt;
This topic have been discussed by tons of philosophers over the  centuries.. I doubt we will find a solution in a book or on google buzz  :) .. &lt;br /&gt;
&lt;br /&gt;
Let me clear in saying that we have similar opinion and that concept  of religion is dated.. I just don&#39;t know whether taking it away from  people is such a good idea.. (this has nothing to do with  atheism/agnosticism). If I were to eliminate religion, I&#39;d do a study of  controlled group of individuals who are brainwashed to believe that  there is no religion and then comparing the before/after happiness  index. .. &lt;br /&gt;
&lt;br /&gt;
&amp;gt;&quot;then aren&#39;t you as bad as religious fundamentalists who think  their belief is superior? &quot; &lt;br /&gt;
&amp;gt;YES.. How many times should I say you. &lt;br /&gt;
then..my friend.. we have nothing to discuss :)&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/sridhar.v.iyer&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Sridhar Iyer&lt;/a&gt;&amp;nbsp;–&amp;nbsp;BTW.. do you mind if I  cut paste this discussion on my blog?&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/elanelango&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Elanchezhiyan Elango&lt;/a&gt;&amp;nbsp;–&amp;nbsp;&quot;People  have killed for money, love, real estate, power.. doesn&#39;t mean that  these are bad..people are.. &quot; &lt;br /&gt;
Like I point in my blog, people have killed based on race, language,  etc too. That is no excuse for religion. And I don&#39;t agree that people  are not evolved yet to live without religion. It is not that  complicated. When people can be taught to follow religion, they can be  educated to not follow religion blindly too. We just need some  revolution in education systems and the way we bring up our kids. I can  totally imagine a society whose kids were not labelled with any  religion, no religion imposed on them, no religious text taught  literally and taught good science where people live happily without the  religious gods. The concept of God will always be there. People will  just stop believing in some stupid gods. Everyone will be invoking  Einsteinian God which is totally harmless and &#39;God Delusion&#39; will become  irrelevant like the &#39;Bible&#39; &lt;br /&gt;
&lt;br /&gt;
&quot;BTW.. do you mind if I cut paste this discussion on my blog?&quot; &lt;br /&gt;
Sure.. It&#39;s a honour! :P&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1,  2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;a href=&quot;http://www.google.com/profiles/sridhar.v.iyer&quot; style=&quot;font-weight: bold;&quot; target=&quot;_blank&quot;&gt;Sridhar Iyer&lt;/a&gt;&amp;nbsp;–&amp;nbsp;haha..  good luck with this revolution.. forget other people, we can&#39;t even  convince our parents :P&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;color: grey;&quot;&gt;Nov 1, 2010&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;padding-top: 10px;&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;hr /&gt;&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2010/11/philosophical-discourse.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-4749085384549858173</guid><pubDate>Tue, 07 Sep 2010 04:11:00 +0000</pubDate><atom:updated>2010-09-07T00:11:11.351-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Infotainment</category><category domain="http://www.blogger.com/atom/ns#">Rants</category><category domain="http://www.blogger.com/atom/ns#">Speculation</category><category domain="http://www.blogger.com/atom/ns#">Technology</category><title>A new era in technology..</title><description>&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;If you have tapped the pulse of the tech industry, you would have smelled the winds of change. This is an exciting time to be in the bay area.. rarely does anything makes me come out of my blogging slumber (blame it on twitter).&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Let me list a few facts to start with and then we&#39;ll extrapolate the trends (just google them to verify):&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Intel bought Infineon&#39;s wireless division.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Newer Android smartphones sport 720p hdmi ports, 1GHz processor, 20GB memory (more or less), 512MB memory, some have a separate graphics processor. A phone with a dual core processor will be a reality before the end of this year.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Google is pushing forward on&lt;a href=&quot;http://googlesystem.blogspot.com/2010/07/install-google-web-apps-in-google.html&quot;&gt; web apps&lt;/a&gt;, use case of these is still not obvious.. they don&#39;t really believe that someone will open a browser and then click on a button rather that type the web address.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Google is working with Verizon and Motorola to push out new android phones.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Google worked with Verizon to support net neutrality *excluding* wireless networks.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;IP TV/Hulu is becoming more and more popular.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Clearly all the big wigs are in on this (whatever &lt;i&gt;this &lt;/i&gt;is).. everyone except Microsoft that is. Google has positioned itself as the next Microsoft.. not by coming up with a new OS and trying to displace Windows from the computers, but by just making Windows irrelevant. Android is now what Windows was 20 years ago.. By making Android freely available to the hardware vendors as the kitchen sink mobile OS that can run on any hardware (by totally leeching off Linux, but that&#39;s not the point here), Google has made sure that Android will go farther than what WinMo or iOS can ever dream of.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Most of you reading this blog will agree that the phones we have now are more powerful than the first computers we owned (even if that was just 10-12 years ago).. ofcourse we don&#39;t need a 1GHz processor to make phone calls or play small games.. where is this all going?&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;I believe that smartPhones ( or lets call them just phones because single purpose phones might soon be in museums) are set to displace our computers and even our cable connection. Why would we need a cable connection if we can view all the content online? and if we can view the online content on TV?! Why would we need an internet connection if our phones are connected via 4G(in a not too distant future). What if when connected our phones to our television sets and desktop environment were to magically appears?!&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Let me describe a device that has been cooking in my head (not too radical). This device is an android phone.. just a run off the mill evo or droid. As soon as you connect it to your TV (via some micro usb dock), you desktop automagically appears.. running android or some variant of chromeOS. You can run android apps or some apps that are not suited on a cellphone like google Docs, photoshop etc. I&#39;m guessing Google will be releasing a web app store just for this platform. Open the verizon Vcast app or some app from one of the network houses to watch streaming television (maybe via some sort of &quot;tv&quot; mode).. Throw in a bluetooth keyboard/mouse if you wanna use it like a regular computer. Once 4G becomes prevalent, this sort of device can easily be as pervasive as a toaster.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Google has positioned itself well.. It owns the whole content delivery mechanism and if Google and Verizon&#39;s recent &lt;a href=&quot;http://www.eff.org/deeplinks/2010/08/google-verizon-netneutrality&quot;&gt;proposa&lt;/a&gt;l is accepted, it&#39;s own content will get&amp;nbsp;preferential&amp;nbsp;treatment. In one fell swoop it would have monopolized multiple markets.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Intel knows this very well.. it also knows that majority of its revenue comes from desktop market, so it acquired Infineon to get itself in the mobile game. It went a step further and acquired McAfee. If android&#39;s market penetration reaches the same level as that of MS Windows.. it will unfortunately suffer the same fate.. which is.. become the main target for malware/viruses etc. Acquiring McAfee was just a logical step to ensure that it has a safe ride when android has its &quot;Windows 95/Windows Me&quot; phase :) .. plus since more and more of our data is moving onto the cloud, cloud security is still a new and emerging market.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: small;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 13px;&quot;&gt;Well.. all you can do now is grab some popcorn and enjoy the ride.. some day you&#39;ll be telling your kid about computers that just sat on a desk or that needed a separate bag.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2010/09/new-era-in-technology.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-8833162097705903516</guid><pubDate>Thu, 11 Feb 2010 17:50:00 +0000</pubDate><atom:updated>2010-02-11T12:50:08.561-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Infotainment review</category><category domain="http://www.blogger.com/atom/ns#">Rants</category><category domain="http://www.blogger.com/atom/ns#">Technology</category><title>Picking a bone with google buzz</title><description>Love it or hate it; people are using Google buzz... mainly because they don&#39;t have a choice (or are not aware of it). For the record, I like it, but mainly because I&#39;m an egotist..&lt;br /&gt;
Google came up with Google wave couple of moons ago. Even though based on a solid concept, it failed to generate any traction because people were not really interested.. well they might be interested, but if they are anything like me.. they were mostly lazy and didn&#39;t want to build up a circle they can wave with separately. I&#39;ve tried couple of social networking sites; hi5, 360, orkut, facebook.. they only cater to the people who are interested in social networking, and even if something new came along, which is much better than say facebook, people won&#39;t switch because all their contacts are still on facebook.Google seem to acknowledge this fact.&lt;br /&gt;
&lt;br /&gt;
Google has employed gazillion PhDs, but what a waste it would be to not have the products they designed be used by the public. Gmail user base is waay bigger than facebook&#39;s, so it makes sense to pork down the products down the existing user&#39;s throats... whether they want it or not. They might add a disable button once the media hullabaloo dies down and stupid bloggers stop blogging about it :P. Although the strategy is nothing short of genius, it is somewhat similar to forced labour. The end user is forced to beta test their products, whether they want to or not. (In Google&#39;s defense,&amp;nbsp; they own you because you use their awesome free email service).&lt;br /&gt;
&lt;br /&gt;
Another issue the GBuzz exacerbates is &quot;parallel posts&quot; (a term I just made up). To get more visibility, people typically plug their contents on various websites (facebook, Buzz, twitter etc). When I post my pictures on flickr, they are pulled by Buzz and facebook automatically, and sometimes I post links to them on twitter too. People leave comments for the same content on flickr, twitter, facebook and Buzz; I have to follow 4 threads of conversation, which is more or less redundant. Same issue with my tweets that are pulled by Buzz, Orkut and facebook. All these websites have their own API, why don&#39;t they use the api&#39;s of the other websites to post back the comments to the original source (more work but better for the users).&lt;br /&gt;
&lt;br /&gt;
People have been shouting about privacy issues in GBuzz (and for that matter in any famous webapp).. here&#39;s the truth, if you care about privacy, don&#39;t log in... and nobody really cares what you do in your basement. You can always disable your profile, filter &quot;label: Buzz&quot; directly to your trash/archives if you don&#39;t want GBuzz.. &lt;br /&gt;
&lt;br /&gt;
That been said, Google, if you are listening, here are few feature requests:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Some sort of a RBAC (Role based access control), at the very least let me separate my contacts into groups and make my buzzes public to only the group I choose. I want to discuss my weekend at Vegas with ONLY my friends and my cousin&#39;s report card with ONLY my family.&lt;/li&gt;
&lt;li&gt;The buzz page is a mess right now, I have no idea which buzzes are new and which are old and which are the old buzzes with new comments. Some sort of color coding would be great.&lt;/li&gt;
&lt;li&gt;Add a Gbuzz pane to the bottom of Inbox and have the buzz notification skip the inbox by default.&lt;/li&gt;
&lt;li&gt;Integrate twitter/blogger/wave/facebook/orkut/flickr api so that the comments on the original site and buzz are always synchronized.&lt;/li&gt;
&lt;li&gt;Send me that Nexus 2 you&#39;ve been working on.&lt;/li&gt;
&lt;/ol&gt;You know what Google, even if you choose to ignore these requests/gripes, I think you are gonna be alright.. don&#39;t worry.. the force will always be with you.</description><link>http://codeyman.blogspot.com/2010/02/picking-bone-with-google-buzz.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-7508945040598326530</guid><pubDate>Sun, 24 Jan 2010 23:16:00 +0000</pubDate><atom:updated>2010-01-24T18:16:10.031-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Life</category><category domain="http://www.blogger.com/atom/ns#">Rants</category><title>What does the new year promise me?</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;It is pretty late to post a new year post, but.. meh..&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;I made&lt;a href=&quot;http://codeyman.blogspot.com/2009/01/happy-new-year.html&quot;&gt; tons of resolutions&lt;/a&gt; last year. Of course, I didn&#39;t follow up with all of them, but some of them did stick. Notably I read 4.5 books, made $3K in the stock market, started cooking regularly, hiked regularly and backpacked across Europe. And few of them I failed miserably to keep up (got two speeding tickets :P). So all in all, 2009 was a good year for me.&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;I have been blogging alot less lately, mainly because I&#39;m tweeting more and because I have to censor some contents (politics, culture, religion etc). To vent it out, I&#39;ve been maintaining an anonymous blog where I can bitch and moan about all the issues I want.&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;This year I just have one resolution: to make 2010 more dynamic that 2009, to grow more, to do more, and to be more. Growing up is a strange process; people tend to develop tunneled vision (they see what they want to see and shut everything else out), become more cynical, throw their ideals for something more practical and short term.. needless to say, I hate growing up. In 2010, I promise myself to keep open to ideas, stay optimistic about the future and never ever compromise on my ideals for any sort of instant gratification.&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Does that mean I&#39;m not putting anything concrete on paper for 2010?.. Absolutely not. It means that my 2010 resolutions are the same as my 2009 resolutions. I&#39;ll just learn from the mistakes I made in 2009 and attack the list with new found experience.&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;2009 was also a year of profound realizations. Over the years I&#39;ve gradually been turning into an atheist/agnostic. My belief system is somewhat closer to what Deepak Chopra preaches, which simply put, says that if God is divine, humans can&#39;t imagine what God would look like or even want, so there&#39;s no such thing as &quot;acting on his behalf&quot;. Since religion is so closely tied with &quot;culture&quot;, I had dismissed it as another construct used to divide human society... I was mistaken. Culture is snapshot of the society; loosely put, it is just an average of the &lt;a href=&quot;http://en.wikipedia.org/wiki/Phenotype&quot;&gt;phenotypes&lt;/a&gt;. If you think of cultures as states in a state machine (human evolution), you can almost plot the evolution of the human society. There are hundreds of cultures on this planets, which are constantly evolving, effecting each other and in contention with each other. This will always be the case and is some what necessary for cultural evolution, but at the very grass root level, all humans are the same; they hate change, want to be loved, and want to be happy. As long as we accept these facts and not care too much about where the culture is heading or how &quot;cultured&quot; we are (which seems more like the std deviation now :P ), we&#39;ll be fine as a human race. If you don&#39;t agree with me, I&#39;d suggest that you travel more :).. Once you break your cultural boundaries, it is easy to see that everyone is the same. I&#39;ve been really lucky to have experienced it first hand..&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;So 2010, here I am with an open mind, free of prejudice, knapsack full of dreams and a list of what needs to be done this year :).. help me become a better, more accomplished man.&lt;br /&gt;
&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2010/01/what-does-new-year-promise-me.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-6936955194937868336</guid><pubDate>Sun, 08 Nov 2009 01:22:00 +0000</pubDate><atom:updated>2009-11-08T14:31:41.362-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Life</category><category domain="http://www.blogger.com/atom/ns#">Travel</category><title>Eurotrip: Prologue.. with 20/20 hindsight</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;So as most of you know, I had been planning a Eurotrip earlier this year. Well.. I did it. Backpacked across western Europe.. had a crazy schedule. Covered 6 countries(1 city per country :)) in 15 days. Here&#39;s something for people who are planning to do so too but just couldn&#39;t get off their collective asses or think its too expensive or think its dangerous or don&#39;t know how to go about it.&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Things I did right, and thing you SHOULD do too:&lt;br /&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: justify;&quot;&gt;&lt;li&gt; Get a good backpack. Can&#39;t stress this enough. You have to carry something equal to twice the size of your torso, about 15-20kg, on your back. You might have to walk a mile or two(unless you are rolling in money, in which case don&#39;t backpack). Get a good backpack.. I got a 65lt Osprey Waypoint.. worth every single penny.&lt;/li&gt;&lt;li&gt; If you are directionally retarded(for the lack of a better word), like I am, get a friend to tag along with you who isn&#39;t. Frankly, I need a GPS to walk to my restroom(that&#39;s bathroom for the non-American junta), so treading my way across the cobbled streetways of Prague was an unlikely possibility. My friend just used to look at the map and used to guide me to all the places like a local.&lt;/li&gt;&lt;li&gt; Buy a guidebook. There&#39;s no shame walking around with the fat book in a foreign place. I just used to mark the places we HAD to visit and we MIGHT visit, factor in the time to travel, and time allotted to the city, and use &lt;a href=&quot;http://en.wikipedia.org/wiki/Travelling_salesman_problem&quot;&gt;TSP&lt;/a&gt; to do the rest :)&lt;/li&gt;&lt;li&gt;Concentrate on soaking up the culture and the history, not just looking at buildings. Just go to all the small alleyways, drink the local wine, taste the local favourite dish in a bistro. Look for places that are not really close to a touristy place (like the restaurant right next to Eiffel tower or on the Old town square in Prague). Its fun talking to complete strangers in a different country.. the language barriers just fade away.&lt;/li&gt;&lt;li&gt;Surprise yourself. I&#39;m not the artsy/emo sortta guy, try to analyze everything, so I was vary of visiting any museums. But boy was I wrong. Went to about 3-4 museums, took the audio tour in each one of them. It is one thing reading about it in history books and quite different experience altogether to really see them. You have no idea how human you feel after seeing/touching artifacts from 2000BC, paintings of Van Gough, Remembrandt and Da vinci, pages from the diary of Anne Frank ( I can go on and on about the things I saw and felt.. if you care to listen just call me and I&#39;ll eat you head off with my long philosophical rant about humanity and mankind in general). Bottom line, don&#39;t judge yourself.&lt;/li&gt;&lt;li&gt;Suck it up when need be. I&#39;m a lacto ova vegetarian, that been said, I had meat in Europe. Not that I couldn&#39;t find Subway/Salad bars/Indian vegetarian restaurants in Europe.. I just didn&#39;t want a superficial view of the cities. As I said earlier, I wanted to soak up the local culture and custom. After all, what Eurotrip is complete without the German currywursts. :)&lt;/li&gt;&lt;li&gt;Relax when you need to. Backpacking is a hectic affair. If you are not a marathon runner, backpacking tires you out soon. Just kick back and call it a day early on.&lt;/li&gt;&lt;li&gt;If you are into photography, carry lots of memory card. I carried 10GBs in CF cards, filled about 8GB. Shoot some artsy good pictures, but when push comes to shove, shoot anything and everything. You are making memories here, not trying to sell prints. That being said, a non-photog friend helps. I used to study the composition, look at photogenic stuff and angles and then take the pics. The non-photog friend used to cry &quot;photo please&quot; at every damn place, so sometimes I used to shoot photos, begrudgingly, without properly composing the picture. Although irritated then, I&#39;m thankful to him for pushing me take all those photos. Shot about 650 photos.&lt;/li&gt;&lt;li&gt;Check out craigslist and other local websites to find cheap accommodation. Some people let you crash on their couch or just rent a room for a night for pretty decent price. Hostels again are not that expensive. Avoid backpacking in summer.. just too many tourists in Europe during that time. I went in autumn.. just the right weather.. just the right crowd.&lt;/li&gt;&lt;li&gt;Any backpacker should know the importance of a towel (what? you haven&#39;t read hitchhiker&#39;s guide to the galaxy?.. what are you doing here). Please O please don&#39;t carry a thick towel, its hard to dry and gets stinky pretty soon.&lt;/li&gt;&lt;/ul&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Things I did wrong. Learn from my mistakes:&lt;br /&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: justify;&quot;&gt;&lt;li&gt;I booked accommodation and inter-country travel tickets just 3 weeks before the departure date (that too when I HAD to because I needed it for the shengen visa interview). Ideally you should always travel at night so you can sleep on the bus/train/plane and keep the days for sightseeing. Unfortunately we were cursed to travel during the day, which made our days shorter by 4 hours.&lt;/li&gt;&lt;li&gt;If you are a photographer, carry all your gear, all your lenses, even your big ass tripod, the backpack is gonna be heavy anyway, but atleast you wont crib about needing an extra 5mm of focal length to get the perfect shot, or about not having a tripod for capturing the eye popping nightlife in Europe (unless you like the shitty ISO 1600 pics of course).&lt;/li&gt;&lt;li&gt;Get a proper shoe. I had a relatively new Nike Air, but all the cushiony, airy, squeaky comfort goes for a toss when you are lugging 20kgs around and walking for miles at end. Within 2-3 days, your feet will conspire against each other to kill you. Research shoes before you get one for backpacking.&lt;/li&gt;&lt;li style=&quot;text-align: justify;&quot;&gt;Get lots of socks, lots. Atleast get a pair for each day (or you can use the laundromats which are easily accessible from the hostels). Failure to comply to this advice might result in a &quot;biohazard&quot; symbol sutured on your forehead.&lt;/li&gt;&lt;/ul&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;So what I did in Europe, i.e Paris,Zurich,Munich,Prague, Brussels, Brugge and Amsterdam, is a completely different blog post.. stay tuned in.&lt;br /&gt;&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2009/11/eurotrip-prologue-with-2020-hindsight.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>7</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-892004594295285255</guid><pubDate>Mon, 10 Aug 2009 08:57:00 +0000</pubDate><atom:updated>2009-08-10T05:03:27.144-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Infotainment</category><category domain="http://www.blogger.com/atom/ns#">Life</category><category domain="http://www.blogger.com/atom/ns#">Linux</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Technology</category><title>The Buildbot Experience..</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;I&#39;ve had been pushing myself to submit a patch to &lt;a href=&quot;http://buildbot.net/trac&quot;&gt;buildbot&lt;/a&gt; and then write a post about it, but days,weeks and months have passed by and I haven&#39;t even read the source code (let alone writing some of my own).. well what can I say, I&#39;ve been incredibly lazy (the word &quot;busy&quot; can be substituted here.. but that would be a lie). Let me spread some buildbot love rather than just be yet another leach.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Now what is buildbot? According to the website:&lt;quote&gt;&lt;br /&gt;
&lt;/quote&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;quote&gt; The BuildBot is a system to automate the compile/test cycle required by most software projects to validate code changes. By automatically rebuilding and testing the tree each time something has changed, build problems are pinpointed quickly, before other developers are inconvenienced by the failure. The guilty developer can be identified and harassed without human intervention.&lt;/quote&gt;&lt;/blockquote&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;It&#39;s a build/test automation system that can run on a variety of platforms. Well there are a variety of &lt;a href=&quot;http://en.wikipedia.org/wiki/Continuous_integration#Software&quot;&gt;free and commercial apps&lt;/a&gt; out there which do the same. I chose it because it was relatively light weight and was written in python (an impressive list of &lt;a href=&quot;http://buildbot.net/trac/wiki/SuccessStories&quot;&gt;clientèle&lt;/a&gt; was a factor too).&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;As the relatively small &lt;a href=&quot;http://mailshell.com/&quot;&gt;company&lt;/a&gt; (note &quot;small&quot; here just means employee strength) where I work in grew; software maintenance, integration and the task of porting the code to all the platforms and then testing them just became an incredibly arduous task. We already had a semi-agile system in place and were using version control, but it was just not enough. In a small firm, even a single dev day spent on anything other than coding/design is a day wasted (and we devs are known to be lazy and don&#39;t really like doing the same things again and again).&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Our product is supported on many different platforms, ranging from the ancient(linux 2.2, mac 10.2, Sun Sparc 5.8 etc) to relatively new ones(freebsd7, macosx-universal, windows 2008 etc) totaling to about 13 different platform. Commercial systems were out of the question because none of them supported all the platforms that we had, so were any .NET based ones (not possible for *nix systems) and we preferred python based system over java because our test bed was completely in python and we just didn&#39;t think that adding another language to the mix would be a good idea in the longer run. Setting up buildbot on the newer systems was a breeze (just apt-get/yum/portage etc was good enough in most of the cases, a rare recompile on some others). The older systems and Windows were a bit messy (big surprise there!). Some of the systems didn&#39;t even have python (or had a really old version), let alone &lt;a href=&quot;http://twistedmatrix.com/projects/core/documentation/howto/basics.html#auto1&quot;&gt;twistd&lt;/a&gt; (a buildbot dependency). After 3 days of hushed cursing, head banging and a lots of ugly hacks, I got buildbot to run on all of the *nix platforms. Windows kind of made me feel completely handicapped because once the install failed, I had absolutely no idea how to get around the situation. I ended up setting up a proxy Linux system for windows (credit for the idea goes to one of my colleagues), which identified itself as a windows machine and just did the needed compilation over ssh on Windows (using VS2008).&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Once the crude system was setup, we started adding bells and whistles. Every svn update now triggers a build on all the 12 different platforms, sends emails to a group of people who want to be notified if something is broken and to the person who broke the code. Another process triggers a nightly builds which updates the code,does a clean build, run a set of core regression tests, creates a package(tagged with date and revision number) and posts the status on a pretty page. The status page (html and css) was also hacked to list the tests that failed on particular machines. It also uploads the package to a different repository which can then be used by the QA team. Later some more hacks were done to maintain just a small history of packages (nightly builds, not the production builds) and then some (idiosyncratic to the product)... Check out &lt;a href=&quot;http://build.chromium.org/buildbot/waterfall/waterfall&quot;&gt;Google Chrome&#39;s buidbot page&lt;/a&gt;.. now imagine that for 12 different platforms!!.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;We did get the obvious benefits:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;no integration downtime.&lt;/li&gt;
&lt;li&gt;no downtime to port the product to different OSes.&lt;/li&gt;
&lt;li&gt;continuous integration made the development process more robust/agile.&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;There were some not-so-obvious benefits too:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Since creating a package on all the platforms just involved clicking a button on the web interface, debugging-&amp;gt;packaging-&amp;gt;testing cycle was made a lot faster as the QA didn&#39;t have to wait for developer to create the package (who would normally try to include all the fixes in a package before creating a package), which means faster feedback on the remaining issues/builds, which means a happy PM :)&lt;/li&gt;
&lt;li&gt;Automating build across different platforms meant that all the platform specific hacks would have to be cleaned up, which meant a more elegant build process, which lead to faster build time and did point to some issues that were being overlooked.&lt;/li&gt;
&lt;li&gt;The green color signals a &quot;pass&quot; on the buildbot status page. Surprisingly we(all the devs) find it rewarding to see a green on the status page with our names beneath it, I think I can safely say that our productivity has gone up and our favorite color is &quot;buildbot green&quot; :) .&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;The whole system works so well and has relieved me of so much of repetitive/boring work, that I was guilty of using it for free. And since I am a poor developer, all I could do was offer some CPU cycles on my home machine (did that for about 4-5 months, until the summer heat forced me to switch off my PC) and offer my help to write some code (which I&#39;ll get around to doing one of these days).&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;On a totally unrelated note, I&#39;ll be taking a trip to Europe (Paris, Zurich, Munich, Prague, Brussels, Brugge, Amsterdam), so drop me a line if you&#39;ve been to any of these places and would like to recommend me something that I should not miss.&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2009/08/buildbot-experience.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-3303877004480583603</guid><pubDate>Sun, 22 Mar 2009 00:29:00 +0000</pubDate><atom:updated>2009-03-21T20:31:30.977-04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Infotainment</category><category domain="http://www.blogger.com/atom/ns#">Mania</category><category domain="http://www.blogger.com/atom/ns#">Rants</category><title>Some Sci-fi love</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;Sci-fi and fantasy as a genre have few patrons, the rest however are non-appreciative, or just downright insulting.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;I not only love the out worldly experience that can only be communicated by these genres, but also the profound depth and messages these deliver. Yes, it&#39;s not real and yes it can never happen, but when has that stopped it from being communicative of human values.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;I&#39;m making a case for sci-fi movies like The Matrix trilogy, The Watchmen and television shows like Battlestar Galactica. Let me tell you by saying that I&#39;m a big.. I mean really big fan of these shows, so it really grind my gears when people just go and watch these for special effects or just dismiss them as &quot;kids category&quot;. The beauty of these genres is that they are the only ones successful in mixing socially relevant messages with entertainment. Others don&#39;t even come close..&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Today BattleStar Galactica aired its final episode and I was in tears (yes geeks do cry, you just need to know how to make them cry). On the cover it deals with a race of humans (preceding our own, but somewhat still futuristic) in conflict with cylons (androids, which are almost humans), but at it&#39;s crux it spotlights human nature, both its dark and bright side, and tries to stretch the morally grey area in the middle to include everyone of its audience. The show was carefully engineered to instill hate against the cylons into the audience, the show then had the &quot;good guys&quot; commit justifiable crimes against the cylons, like torturing/suicide bombing (socially relevant ones at present), which although as I said, were justifiable but unethical, thus making its audience a part of the show. Its shows like these that make you introspect and helps you discover yourself.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;BSG presented me with same moral dilema as The Fountainhead, and hands down, has been the best thing I ever saw on the tube. If you can look past the FTL drives, the dilithium crystal, the mental projection of cylons, i.e. all the jargons that alienate some people (mostly non-geeks), the message conveyed is pretty strong, you just need an eye to spot it out. This message is ofcourse hidden, if it wasn&#39;t, it would be a documentary. At some level, sci-fi/fantasy movies are documentaries after you peel the onion. Plot in these movies/tv shows is so thick, that it almost pains me to find people talking about it at a totally superficial level. &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;br /&gt;
Take Matrix: The Revolution, &lt;a href=&quot;http://www.youtube.com/watch?v=I3iPB8xrFFg&quot;&gt;the last fight sequence&lt;/a&gt;, when Neo is walking amidst darkness, rain and hundreds of Smith copies, and fights one of them at the end. The fight ends with Neo fighting Agent Smith and ending the war between the man and the machines, but how many of you noticed what the director wanted you to see? The song in the background was ancient Vedic hymn &quot;&lt;a href=&quot;http://www.youtube.com/watch?v=oQfJ2tOmuBs&amp;amp;feature=related&quot;&gt;Asatoma Sadgamaya&quot;&lt;/a&gt;, which signifies the victory of good over evil, the multiple copies and the darkness signified multiple faces of evil in dark times and the song itself points to the fact that Neo had already won the war by making his choice and knew the outcome. The choice, that architect was advocating in most of second sequel. The movie worked on so many levels, and each time I see it, I discover a previously uncoverd hidden meaning in the movie.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Coming back to BSG, well, that is the only sci-fi piece I know of that married belief, faith and science. It talked about angels &amp;amp; daemons, about gods, about prophecy, while still being mostly a sci-fi show.This show made some startling plot twists by projecting one of its main protagonist as a real angel, while couple of others as some sort of agents of &quot;God&quot;, who play major role in turn of events. It tried to perpetrate the existence of destiny, of hope, of human values.. kudos to the BSG team, when they could have just got about same TRP ratings, had they shown a nonsensical, visual effects loaded series.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Watchmen, is another such movie. I read the book about two years ago, and I must say that although I don&#39;t really like the casting (except Silk Spectre ofcourse), it conveys the real essence of the book (not what Harry Potter movies did to the books). The book is more detailed, of course, but movie comes quite close. It makes you see the world from the eyes of the demented comedian, the omniscient Dr Manhattan, the genius..yet human Veidt, the idealist Rorschach, the observer Night Owl. I really love how the actions of each superhero is justified by their portrayed viewpoints, and forces the reader/viewer to agree with writer.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Sci-fi has come a long way from &quot;Attack of Mars&quot; to BSG/Matrix, it deserves prime time... definitely more than the mind numbing reality shows and soaps. Isn&#39;t it time the kirks, spocks, jon shephards, adamas, starbucks,trips, gaetas,McCays etc got more attention than &quot;gossip girl&quot; or Simon Cowell?&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2009/03/some-sci-fi-love.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-10953736.post-2275774513776009270</guid><pubDate>Thu, 01 Jan 2009 23:25:00 +0000</pubDate><atom:updated>2009-01-01T19:23:26.097-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Life</category><title>Happy New Year.. so whats the game plan??</title><description>&lt;div style=&quot;text-align: justify;&quot;&gt;2008 was an interesting year. Definitely less geekier ( which I sort of did not prefer.. but was ok). All the personal goals I set for myself were met with relative ease.. learned to swim, learned to drive, got a car, got more involved with the local &lt;a href=&quot;http://meetup.com/&quot;&gt;meetup&lt;/a&gt; groups (&lt;a href=&quot;http://www.meetup.com/letshike/&quot;&gt;hiking&lt;/a&gt; and &lt;a href=&quot;http://photo.meetup.com/413/&quot;&gt;photography&lt;/a&gt;). Due to apparent lack of time, I had lesser time to update this blog, I however have gotten active on twitter.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;I didn&#39;t believe in New Year resolutions until last year, but hey... if I can follow a deadline at work, I can definitely set a deadline for myself too right.? I just shouldn&#39;t be vague and should put concise goals (like it&#39;s done monthly at &lt;a href=&quot;http://mailshell.com/&quot;&gt;Mailshell&lt;/a&gt;). So here they are: &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;b&gt;Conservative goals &lt;/b&gt;&lt;i&gt;(Must be done):&lt;/i&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: justify;&quot;&gt;&lt;li&gt;&amp;nbsp;Read 5 books.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Make two marketable &lt;a href=&quot;http://www.arduino.cc/en/Main/ArduinoBoardDuemilanove&quot;&gt;arduino&lt;/a&gt; prototypes.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Practice atleast 1 topcoder challenge each week.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Cook atleast twice each week.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Earn atleast $5000 in the stock market.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Release ver 1.0 of my personal project.&lt;/li&gt;
&lt;li&gt;&amp;nbsp;1 Personal goal (undisclosed)&lt;/li&gt;
&lt;li&gt;&amp;nbsp;1 Professional goal (undisclosed)&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;b&gt;Aggressive goals&lt;/b&gt; &lt;i&gt;(Should be done, but .. ):&lt;/i&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: justify;&quot;&gt;&lt;li&gt;Exercise atleast once a week (yeah right..)&lt;/li&gt;
&lt;li&gt;Have a new blog template... maybe move it from blogger to my own website.&lt;/li&gt;
&lt;li&gt;Limit monthly spending to $X, where X &amp;lt; Salary. It is currently true, but I want to smoothen the spikes.&lt;/li&gt;
&lt;li&gt;Drive carefully. &lt;/li&gt;
&lt;li&gt;Write atleast one blog entry per month.&lt;/li&gt;
&lt;li&gt;Attend atleast 1 LUG meets in two months.&lt;/li&gt;
&lt;li&gt;Attend &lt;a href=&quot;http://www.meetup.com/svnewtech/&quot;&gt;Entrepreneur meetup&lt;/a&gt; every month. The amount of info you get about new technologies and the number of like minded people you meet there is amazing.&lt;/li&gt;
&lt;li&gt;Check out atleast two &lt;a href=&quot;https://www.noisebridge.net/wiki/NoiseBridge&quot;&gt;noisebridge&lt;/a&gt; events in SF.&lt;/li&gt;
&lt;li&gt;Atleast one hike every two months.&lt;/li&gt;
&lt;/ul&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;I know it seems like a lot even for one whole year, but the list is concise, either it will be done or it won&#39;t be done. I just hope that am better at time management this year and meet my goals. I am a big believer of Pavlovian theory, so to make sure I get these things done, I&#39;m gonna gift myself something everytime I hit a schedule (another concept borrowed from Mailshell&#39;s work culture). Of course, awards for weekly/monthly goals would be cashed in at the end of the year (hmm.. I&#39;ll buy something really *nice*)&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Anyhoo.. hope the new year brings new joy in your life and I do hope that you achieve all the goals you set for yourself. Have a *groovy* new year.. WOOHOO!!&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;/div&gt;</description><link>http://codeyman.blogspot.com/2009/01/happy-new-year.html</link><author>noreply@blogger.com (Sridhar Iyer)</author><thr:total>2</thr:total><georss:featurename>Sunnyvale, CA, USA</georss:featurename><georss:point>37.369195 -122.036849</georss:point><georss:box>37.3009815 -122.15357850000001 37.4374085 -121.9201195</georss:box></item></channel></rss>