<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns: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" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-16501575</atom:id><lastBuildDate>Mon, 13 May 2013 13:28:01 +0000</lastBuildDate><category>Architect</category><category>IBM</category><category>Mobile</category><category>Social</category><category>WPS</category><category>Performance</category><category>Craftsmanship</category><category>Portal</category><category>Web Services</category><category>Review</category><category>FB</category><category>Others</category><category>Migration</category><category>Capacity Planning</category><category>Search</category><category>Java</category><category>Web 2.0</category><category>SOA</category><category>WebSphere</category><category>Google</category><category>Ajax</category><category>Programming</category><category>Open Source</category><category>Testing</category><category>IT Industry</category><category>Bigdata</category><category>Developers</category><category>Enterprise</category><category>Trends</category><category>Tip</category><category>Agile</category><category>Hadoop</category><category>CMS</category><category>Collaboration</category><category>DotNET</category><category>Proposals</category><category>Patterns</category><category>JEE</category><category>J2EE</category><category>WAS</category><category>Cloud</category><category>PortalFactory</category><title>Tech Spot</title><description /><link>http://www.techspot.co.in/</link><managingEditor>noreply@blogger.com (Munish K Gupta)</managingEditor><generator>Blogger</generator><openSearch:totalResults>336</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/blogspot/dTNY" /><feedburner:info uri="blogspot/dtny" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><creativeCommons:license>http://creativecommons.org/licenses/by/2.0/</creativeCommons:license><image><link>http://creativecommons.org/licenses/by/2.0/</link><url>http://creativecommons.org/images/public/somerights20.gif</url><title>Some Rights Reserved</title></image><feedburner:emailServiceId>blogspot/dTNY</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-1549158048678306233</guid><pubDate>Thu, 21 Feb 2013 08:21:00 +0000</pubDate><atom:updated>2013-02-21T14:05:06.818+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Agile</category><category domain="http://www.blogger.com/atom/ns#">Craftsmanship</category><title>Post Agile - State of Software Development </title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-VtK3bAk_ZXg/USXTKyjUMdI/AAAAAAAAEko/gRL4JSTw5jc/s1600/postagile.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-VtK3bAk_ZXg/USXTKyjUMdI/AAAAAAAAEko/gRL4JSTw5jc/s320/postagile.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
There is a significant change in how software is developed over the last decade. Agile had been the buzzword over the last decade and probably is most significant of changes in software development to date. Now that the hype around Agile has been subsided, it is worth an effort to understand what it is like post agile. Often we see Agile with a narrow perspective, limiting it to a few programming practices and nothing more.  We also fail to notice the indirect influence and the larger impact of Agile over the last decade.&lt;br /&gt;
&lt;br /&gt;
State of post Agile Software Development will have to be seen in multiple dimensions in order to really understand its impact:&lt;br /&gt;
&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;&amp;nbsp;Software Development &amp;amp; Life cycle &lt;b&gt;tooling &lt;/b&gt;landscape has completely changed&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Software Project management &lt;b&gt;methods &lt;/b&gt;(apart from development method) have changed&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Focus on Software &lt;b&gt;craftsmanship&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;Re-imagined Technology &lt;b&gt;stack&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;b&gt;&lt;/b&gt;&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;b&gt;TOOLING&amp;nbsp;&lt;/b&gt;&lt;/div&gt;
It is very interesting to see the way tooling has been changed over the decade. I must say this is the area where most innovation has happened. Almost all the aspects of software tooling has been changed; from version control systems to functional testing software. Several new categories of tools have born, which we couldn’t have imagined in 90s. Monolithic IDEs and tightly integrated eco systems are replaced with more specialized tools integrated via loose interfaces. Tools like GIT (distributed version control systems), Hudson (Continuous Integration Systems) are few examples of this change.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;METHODS&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
While agile methods initially focused on changes related to software programming practices; over the time they went beyond.  New ways of project management, new ways of testing have extended the focus much beyond. According to “State of Agile Development” survey in 2011 (http://www.versionone.com/state_of_agile_development_survey/11/), 80% of the organizations are using agile practices. That number sure tells a little about the adoption of agile methods and its impact.&amp;nbsp;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;CRAFTSMANSHIP&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
Thinking about Software craftsmanship is not very surprising given the agile method’s focus on people. In order to be successful, almost all the agile methods needs skill maturity in people, hence the stress on craftsmanship. Craftsmanship needs a learning organization &amp;amp; people and the focus on quality of work. Mentoring, a standardized toolbox, familiarity with tools is essential for a developer/tester to be a craftsman.&amp;nbsp;

&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;STACK&lt;/b&gt;&lt;br /&gt;
Last but not least, Technology stack also has been changing to fit the agile practices. Languages like Ruby, Groovy, frameworks like Rails and Grails and NoSQL databases have brought-in fundamental changes to reflect agile practices. Test cases integrated to the programming frameworks is not something one could have thought of a decade ago.  Conventions over configuration, method missing and other such features have evolved to keep up with the expectations of agile practices.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;PREPARING FOR POST AGILE&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
Most software development shops look at the impact of Agile in silos.   For example, technology groups focus on agile tools and stack, but not methods.   Process &amp;amp; Quality groups focus on methods but have neither have clue on tools nor the technology stacks.   Craftsmanship is ignored altogether.    Looking at impact together in all dimensions (across tools, stack, craftsmanship and methods) is half the work done.  Aligning the team to fully benefit from the agile is the other half, which is probably the most difficult part.&lt;/div&gt;
&lt;/div&gt;
&lt;img alt="" src="http://ganojsproxy.appspot.com/gaproxy?host=techspot.co.in&amp;amp;pageurl=postagile.html&amp;amp;account=UA-376231-6" /&gt;&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=ZSXLB9ceJP4:zY8tnZqaI8w:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/ZSXLB9ceJP4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/ZSXLB9ceJP4/post-agile-state-of-software-development.html</link><author>noreply@blogger.com (Aravind Ajad Yarra)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-VtK3bAk_ZXg/USXTKyjUMdI/AAAAAAAAEko/gRL4JSTw5jc/s72-c/postagile.png" height="72" width="72" /><thr:total>4</thr:total><feedburner:origLink>http://www.techspot.co.in/2013/02/post-agile-state-of-software-development.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-5757260641196678621</guid><pubDate>Fri, 21 Dec 2012 05:50:00 +0000</pubDate><atom:updated>2012-12-22T11:13:02.388+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Developers</category><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Patterns</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><title>Akka Essentials - book published</title><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://www.packtpub.com/sites/default/files/8284OS_Akka%20Essentials.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://www.packtpub.com/sites/default/files/8284OS_Akka%20Essentials.jpg" width="249" /&gt;&lt;/a&gt;&lt;/div&gt;
My book on Akka titled - &lt;i&gt;&lt;u&gt;Akka Essentials&lt;/u&gt;&lt;/i&gt; published by Packt was released on 26th Oct 2012. The book is available from &lt;a href="http://www.packtpub.com/akka-java-applications-essentials/book"&gt;PacktPub &lt;/a&gt;site as well on &lt;a href="http://www.amazon.com/Akka-Essentials-Kumar-Gupta-Munish/dp/1849518289/"&gt;amazon.com&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
"Akka Essentials" will show you the current challenges with Java Scalability and concurrency model and how Akka’s Actor Model can help you design and build applications that are inherently scalable and fault-tolerant. Whether you are building new applications or want to refactor an existing application, you will learn the right techniques to build and scale up in no time.&lt;br /&gt;
&lt;br /&gt;
This book is aimed at developers, architects who are building large distributed concurrent and scalable applications using Java/Scala. The book assumes knowledge of Java/JEE concepts but no knowledge of Actor model is assumed.&lt;br /&gt;
&lt;br /&gt;
I dedicate this book to my father who passed away on 30th Oct 2012. All earnings from this book will be donated to my father's favorite charity.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;This post originally appeared at &lt;/i&gt;&lt;a href="http://www.techspot.co.in/"&gt;www.techspot.co.in&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=5sX6b-_xdc4:F8QWmw8FpxI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/5sX6b-_xdc4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/5sX6b-_xdc4/akka-essentials-book-released.html</link><author>noreply@blogger.com (Munish K Gupta)</author><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/12/akka-essentials-book-released.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-7878818385198923256</guid><pubDate>Tue, 21 Aug 2012 04:46:00 +0000</pubDate><atom:updated>2012-08-21T10:19:01.312+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Cloud</category><category domain="http://www.blogger.com/atom/ns#">Enterprise</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><title>Application Scalability: Still elusive for Enterprises Apps</title><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-xhbZU9Td2lI/UDMRkZgwRVI/AAAAAAAAD84/QYXUblJ5mNw/s1600/Ent-AutoScaling.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="293" src="http://2.bp.blogspot.com/-xhbZU9Td2lI/UDMRkZgwRVI/AAAAAAAAD84/QYXUblJ5mNw/s320/Ent-AutoScaling.png" style="border: 0;" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
The advent of the Consumer Business application like Facebook, Twitter has changed the definition of Application Scalability. Decade back 10 million+ was a large user base, Facebook will touch 1Billion+ users by end of this year. There are hordes of applications in 100+ million user range. The techniques and approaches employed by these large Consumer Business Applications are different from the traditional enterprise application design and architecture techniques.&lt;br /&gt;
&lt;br /&gt;
If we study the architectures principles employed by these large Consumer Business Applications, then we can conclude to the following
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;All the large consumer business applications are build and make use of Cloud Computing&lt;/li&gt;
&lt;li&gt;Applications are build using a combination of open source products and platforms&lt;/li&gt;
&lt;li&gt;Create solutions where the current set of solution do not meet requirement or scale up (e.g. HipHop, Hadoop, ChaosMonkey etc)&lt;/li&gt;
&lt;li&gt;Constant knowledge sharing within the community (FB/Twitter/Google open sources lot of their internal products)&lt;/li&gt;
&lt;/ul&gt;
&lt;a name='more'&gt;&lt;/a&gt;From the Application scalability perspective, the following key architecture patterns have emerged that are being used to scale the application
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Stateless Applications&lt;/b&gt; - Modern Web applications maintain state, which means that they remember what you were did as part of your last request, and they remember all this data as part of the Session. The Stateful nature of the application means if the server holding that state goes down, the entire user state is lost. Traditional techniques like sync user session data across server nodes or persisting in data store do not scale very well. To overcome this shortcoming, the whole concept of creating stateless applications where the servers do not maintain state. The application uses cookies and makes use of RESTful API’s to craft the user experience. Newer frameworks like Play Framework, Node.js, Vertx.io all promote this stateless application development that scales with the increasing user load very well. Another option used is to offload session state is high throughput memory based key value store, which is common across stateless nodes.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Data Sharding&lt;/b&gt; – Another issue encountered with scale is the increasing load on DB servers. DB Servers do employ techniques like Master/Slave or Clustering techniques coupled with large powerful boxes but beyond 100+ million users, these techniques also fail. Further, the costly hardware and software licenses make the traditional DB options very costly. So, companies have used the MySQL as the base and created lots of solutions/topologies around the same. One of those techniques is &lt;i&gt;data sharding&lt;/i&gt;. A Data shard is a horizontal partition of the data, meaning rows of the tables are held separately. There are numerous advantages to this partitioning approach. Since the tables are divided and distributed into multiple servers, the total number of rows in each table in each database is reduced. This reduces index size, which generally improves search performance. A database shard can be placed on separate hardware, and multiple shards can be placed on multiple machines. This enables a distribution of the database over a large number of machines, allowing database performance to be spread over multiple machines, greatly improving overall performance.Many new non-relational databases (commonly known as NoSQL databases) such as &lt;b&gt;Cassandra&lt;/b&gt;, &lt;b&gt;MongoDb &lt;/b&gt;and &lt;b&gt;Hbase &lt;/b&gt;have been created with database sharding as a key feature.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Bring Data closer to user (Caching)&lt;/b&gt; – Caching has been adopted and used very well by most of the Consumer Business Apps. Open source products like memcache  provide caching options across the tiers (web tier/app tier and data tier). Memcache provides a reliable alternative to the traditional caching solutions – coherence, terracotta. Further, the NoSQL solutions employ the caching engine to speed up the database read and write operations. Couchdb uses the memcache to provide an in memory read/write solution.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Service provider/consumer model &lt;/b&gt;– Another pattern that has emerged is the Service provider and consumer. It is derivative of the SOA model but leaner and simpler. The business functionality is exposed as a set of services via RESTful API with JSON data format. The presentation layers are the consumers that use these services to build up the user experience. The technologies to build the service and provider can be completely separate. &lt;u&gt;&lt;i&gt;Technologies are chosen based on what is best for the use case&lt;/i&gt;&lt;/u&gt;. Contracts are enforced by Service version and definition only. Front ends are typically built using PHP or Ruby over rails. Services are built using Scala, Akka, C++, Java etc.&lt;/li&gt;
&lt;/ul&gt;
Why Enterprises are looking at these patterns?
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Enterprises have started adopting cloud (public/private) by and large. Elastic scaling means responding to the changing load pattern on real time basis. In the absence of application ability to scale, all that investment into cloud is waste&lt;/li&gt;
&lt;li&gt;The traditional CPU/Core based licensing models are proving to be costly in the cloud world. Enterprise need to adopt the OSS frameworks/solutions that do not come with licensing baggage&lt;/li&gt;
&lt;li&gt;The user expectations have gone up by few notches. Enterprise applications are compared and expected to have same resiliency &amp;amp; performance as any other Internet Scale application&lt;/li&gt;
&lt;li&gt;Scale up model(adding more CPUs) for enterprise applications comes with its own headache of additional capital expenditure. Scale out models(add more smaller servers) that rely on commodity servers or can run over a hybrid cloud are becoming more cost effective solutions&lt;/li&gt;
&lt;li&gt;Enterprises are going global which requires the systems to be up and available 24X7. Currently tightly coupled application designs do not lend very well to the scalability pattern
&lt;/li&gt;
&lt;/ul&gt;
&lt;i&gt;This post originally appeared at &lt;/i&gt;&lt;a href="http://www.techspot.co.in/"&gt;www.techspot.co.in&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=8_UZvsXKJYM:IwvYI8YGrKQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/8_UZvsXKJYM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/8_UZvsXKJYM/application-scalability-still-elusive.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-xhbZU9Td2lI/UDMRkZgwRVI/AAAAAAAAD84/QYXUblJ5mNw/s72-c/Ent-AutoScaling.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/08/application-scalability-still-elusive.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-6422836353243525120</guid><pubDate>Mon, 02 Jul 2012 14:39:00 +0000</pubDate><atom:updated>2012-07-04T20:27:39.237+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Developers</category><category domain="http://www.blogger.com/atom/ns#">Cloud</category><category domain="http://www.blogger.com/atom/ns#">Mobile</category><category domain="http://www.blogger.com/atom/ns#">Google</category><category domain="http://www.blogger.com/atom/ns#">Web 2.0</category><title>Top 5 Picks of Google IO 2012</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;a href="http://3.bp.blogspot.com/-GoNrpNeBlqo/T_GwSwxF_1I/AAAAAAAADbQ/7nxC_KgyMIE/s1600/google-io-logo.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;br /&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-GoNrpNeBlqo/T_GwSwxF_1I/AAAAAAAADbQ/7nxC_KgyMIE/s1600/google-io-logo.png" style="border: 0;" /&gt;&lt;/a&gt;Google
IO 2012 developer conference has just concluded last week amid lot of fanfare.&amp;nbsp;&amp;nbsp; I for one think that Google has lot
more influence on Enterprise technology than it seems.&amp;nbsp;&lt;span style="background-color: white;"&gt;Some of what Enterprises see as latest and greatest of technology (such as Map Reduce) has been pioneered in Google a while ago. &amp;nbsp;&lt;/span&gt;&lt;span style="background-color: white;"&gt;This is one the main reasons why I followed this event closely. &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
Over the 3 days Google has
several technology and product announcements across the product
lines.&amp;nbsp;&amp;nbsp; Here are the top 5 picks at Techspot.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;/div&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;b style="background-color: white; text-align: justify;"&gt;#1 Google Compute Engine&lt;/b&gt;&lt;br /&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;a href="http://3.bp.blogspot.com/-1208tzW2BSk/T_GwWEO3NaI/AAAAAAAADbY/BVDveRD8F_s/s1600/computeengine.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="150" src="http://3.bp.blogspot.com/-1208tzW2BSk/T_GwWEO3NaI/AAAAAAAADbY/BVDveRD8F_s/s200/computeengine.jpg" style="border: 0;" width="200" /&gt;&lt;/a&gt;With Compute Engine, Google made it
intentions clear as a Cloud Service provider.&amp;nbsp;&amp;nbsp;&amp;nbsp; Google entering
Infrastructure as a Service &lt;b&gt;(IaaS)&lt;/b&gt; market brings more innovation and
cheaper compute resources; enhancing its portfolio beyond PaaS.&amp;nbsp; How
exciting!! It is interesting to see the reverse trend of PaaS offerings to IaaS
offerings (Microsoft also recently started offering Linux VMs as a
service).&amp;nbsp;&amp;nbsp; Does this mean uptake of PaaS is very low?&amp;nbsp;&amp;nbsp;
Compute Engine offers Linux VMs running Ubuntu 12.04 and CentOS 6.2.&amp;nbsp;&amp;nbsp;&amp;nbsp;
Most of the concepts that Amazon EC2 uses such as zones, ephemeral versus
persistent disks are present in Compute Engine tool.&amp;nbsp;&amp;nbsp; That said,
this is a reasonable start for Google but a long way to be a threat to Amazon
EC2.&amp;nbsp;&amp;nbsp; It is interesting to see Enterprises like &lt;b&gt;Bestbuy&lt;/b&gt;
listed as their beta customers.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;b style="background-color: white;"&gt;#2 Jelly Bean, Android 4.1&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;a href="http://3.bp.blogspot.com/-_GN4mdgaAn4/T_GwZ5h6bBI/AAAAAAAADbg/X_tLmFSALH0/s1600/jellybean.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="160" src="http://3.bp.blogspot.com/-_GN4mdgaAn4/T_GwZ5h6bBI/AAAAAAAADbg/X_tLmFSALH0/s200/jellybean.png" style="border: 0;" width="200" /&gt;&lt;/a&gt;Jelly bean, Android 4.1 is the newest
version of the popular mobile operating System announced in IO. &amp;nbsp;Apart from the several performance optimizations and various user level
features, Jelly bean packs several interesting technology innovations.&amp;nbsp;
Prime among them is “Google Now”.&amp;nbsp; Gartner has been talking about Context
Delivery Architecture for few years, Google Now is probably first main stream
execution of the same.&amp;nbsp;&amp;nbsp; Google now combines user location, calendar
details, past searches, traffic, weather and time in interesting ways and
provides useful information before even asking.&amp;nbsp; One of the use case shown
is, when you have an appointment at a certain location, it checks traffic and
tells how long it'll take to get there.&amp;nbsp; It notifies when you should
leave, so that you can reach the destination on time.There are
many other interesting features including Project Butter, Systrace tool,
peer-to-peer service discovery, cloud messaging, smart app updates. &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;b&gt;#3 Packaged Apps &amp;amp; Chrome
Everywhere &lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
Google chrome is the new
generally available on Android 4.1.With good HTML 5 support,
mobile web applications on Chrome in Android are very
powerful. Chrome is also available on iOS.&amp;nbsp;
Packaged apps are one of the interesting features that are announced for
Chrome. Packaged apps allow access to Chrome API, but are written
in HTML 5, JavaScript and CSS. Packaged Apps are loaded locally and
supports offline mode.In a way these are like Adobe AIR
applications, but are written using standard web technologies.&amp;nbsp;&amp;nbsp; This
is probably another category defining feature; developing cross platform hybrid
applications running locally.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
Some interesting stats on chrome
are revealed.&amp;nbsp; Chrome now has 310M active users across the world.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;b&gt;#4 Project Glass&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
Lot has been written and said
about Project Glass from Google. Wearable computing is about
to start.&amp;nbsp;&amp;nbsp;&amp;nbsp; Project glass probably can make a new way of how we
use and interact with computers.&amp;nbsp;&amp;nbsp; Technically not much has been
revealed on project glass, other than the fact that it has camera, microphone,
gyroscope and wi-fi connectivity. Key-note demo by Sergey Brin that
involved blimp, sky divers, project glass and Google+ hang-outs is an epic.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
#5 &lt;b&gt;Nexus 7 Tablet&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-GCWBGmTtYDY/T_J1qy-xrZI/AAAAAAAAD4k/bR0vRpRgHkE/s1600/tablet-gallery-front.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://1.bp.blogspot.com/-GCWBGmTtYDY/T_J1qy-xrZI/AAAAAAAAD4k/bR0vRpRgHkE/s200/tablet-gallery-front.png" style="border: 0;" width="130" /&gt;&lt;/a&gt;&lt;/div&gt;
Technically Nexus 7 is just an
Android Jelly Bean device.&amp;nbsp;&amp;nbsp; There is no reason to pick this other
than for the fact that it is the first official Tablet from
Google.At a price of $199 and with Quad Core Tegra 3
architecture and 12 GPUs, this tablet is a real power house.&amp;nbsp;&amp;nbsp; Wi-fi,
gyroscope, GPS, accelerometer, Gorilla Glass, front facing camera, this is a
sure main stream device and probably puts android tablets into millions of
hands, another great revenue opportunity for Mobile developers. Interestingly Nexus 7 ships with Chrome as the default browser instead of
Android’s native web-kit based browser. I guess Google is
trying to avoid an IE 6 scenario here by separating browser from OS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal" style="text-align: justify;"&gt;
&lt;br /&gt;
There are many more interesting
announcements that didn’t make it to the top 5 list but I found them &amp;nbsp;interesting enough to mention here:&lt;/div&gt;
&lt;div class="MsoListParagraphCxSpFirst" style="text-align: justify; text-indent: -0.25in;"&gt;
&lt;/div&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;&lt;span style="background-color: white; font-family: inherit; text-indent: -0.25in;"&gt;Offline maps and offline voice recognition for
Android&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="background-color: white; font-family: inherit; text-indent: -0.25in;"&gt;E&lt;/span&gt;&lt;span style="background-color: white; font-family: inherit; text-indent: -0.25in;"&gt;nhanced Gesture support in Android&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="background-color: white; font-family: inherit; text-indent: -0.25in;"&gt;Apps Script for Good Apps Automation&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="background-color: white; font-family: inherit; text-indent: -0.25in;"&gt;Google Docs Offline&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;span style="background-color: white; text-indent: -0.25in;"&gt;What are your top 5 picks?&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;img alt="" src="http://ganojsproxy.appspot.com/gaproxy?host=techspot.co.in&amp;amp;pageurl=googleio12top5picks.html&amp;amp;account=UA-376231-6" /&gt;
&lt;i&gt;This post originally appeared at &lt;/i&gt;&lt;a href="http://www.techspot.co.in/"&gt;www.techspot.co.in&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=0k2y894C4w8:NGHmGQxwelA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/0k2y894C4w8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/0k2y894C4w8/top-5-picks-of-google-io-2012.html</link><author>noreply@blogger.com (Aravind Ajad Yarra)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-GoNrpNeBlqo/T_GwSwxF_1I/AAAAAAAADbQ/7nxC_KgyMIE/s72-c/google-io-logo.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/07/top-5-picks-of-google-io-2012.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-4678072203511998270</guid><pubDate>Fri, 25 May 2012 15:59:00 +0000</pubDate><atom:updated>2012-05-30T16:26:02.024+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Cloud</category><category domain="http://www.blogger.com/atom/ns#">Enterprise</category><title>Cloud Connect 2012, Bangalore</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;br /&gt;
&lt;div class="s-clear" style="clear: both; color: #333333; font-family: 'Lucida Grande', sans-serif; font-size: 15px; height: 0px; line-height: 18px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;ol class="s-elements" style="color: #333333; font-family: 'Lucida Grande', sans-serif; font-size: 12px; line-height: 18px; list-style: none; margin: 10px 0px; min-height: 200px; padding: 0px; position: relative; text-align: -webkit-auto;"&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa9b5075b3eb743010fbf" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-l6p8aLVeRdg/T7-sDOxTLrI/AAAAAAAADQ4/N-i3sooJEwY/s1600/cloudconnect.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="128" src="http://2.bp.blogspot.com/-l6p8aLVeRdg/T7-sDOxTLrI/AAAAAAAADQ4/N-i3sooJEwY/s200/cloudconnect.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
Cloud Connect is a&amp;nbsp;global Cloud Computing&amp;nbsp;event that has come to Bangalore, India this year. &amp;nbsp; The event is organized by UBM, a reputed media&amp;nbsp;organization that publishes&amp;nbsp;&lt;i&gt;Information week&lt;/i&gt;&amp;nbsp;magazine. &amp;nbsp; Other popular events organized by UBM&amp;nbsp;includes&amp;nbsp;&lt;i&gt;Interop&lt;/i&gt;. &amp;nbsp; Bringing Cloud Connect to India, shows the importance of&amp;nbsp;India as a&amp;nbsp;Cloud market. Event happened this week 5/24 to 5/25 at Nimhans Convention Centre.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbf9094c6654d112300bea7" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
IBM is a platinum sponsor and the event started with key note by Vamsi from IBM. &amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf9094c6654d112300bea8" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="IBMcloud" src="http://a0.twimg.com/profile_images/1675712707/raining_cloud_icon_300_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
IBM's Vamsicharan Mudiam will keynote&lt;a href="http://twitter.com/cloudconnect_in" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="cloudconnect_in on Twitter.com"&gt;@cloudconnect_in&lt;/a&gt;&amp;nbsp;on May 24 in Bengaluru,&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23India" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#India&lt;/a&gt;. View his profile:&amp;nbsp;&lt;a href="http://bit.ly/KnahAi" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Open this link in a new window"&gt;bit.ly/KnahAi&lt;/a&gt;&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23CloudConnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#CloudConnect&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/IBMcloud" rel="IBMcloud" style="color: #333333; text-decoration: none;" target="_blank"&gt;IBMCloud&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/IBMcloud/status/204433312754843648" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-21T04:47:54.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/IBMcloud/status/204433312754843648" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;4 days ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/IBMcloud/status/204433312754843648" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=204433312754843648&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=204433312754843648&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa9b6075b3eb743010fc4" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
IBM's session had several quotes form their recent C-Study report. &amp;nbsp; Some of the interesting&amp;nbsp;findings include the changing CEO&amp;nbsp;priorities. &amp;nbsp; IBM says cloud adoption is increased from 13% to 26% this year.&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf9094c6654d112300beaa" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="aravindajad" src="http://a0.twimg.com/profile_images/2202219394/profile5_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
Ibm c-study: Technology factors and People skills are at the top. Glad to see that.&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad" rel="aravindajad" style="color: #333333; text-decoration: none;" target="_blank"&gt;Aravind Ajad&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205511257586016258" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-24T04:11:16.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205511257586016258" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;2 days ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205511257586016258" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205511257586016258&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205511257586016258&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa74f68602573100141b8" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div&gt;
Like lot of cloud conferences earlier, this conference has lot of focus on Infrastructure Cloud. &amp;nbsp; Most of the sponsors and speakers are&amp;nbsp;focused on the&amp;nbsp;Infrastructure aspects of the Cloud.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;Some of the key observations I made were:&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&amp;nbsp;*&amp;nbsp;There is quite a bit of talk on private clouds from the attending&amp;nbsp;vendors.&lt;/b&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;There are quite a few&amp;nbsp;sessions covering this. &amp;nbsp; There are sessions from VMware, L&amp;amp;T infotech, Citrix, Cisco, Brocade and so on. &amp;nbsp;This is not surprising, given Infrastructure is the focus&amp;nbsp;for vendors. &amp;nbsp; There are&amp;nbsp;however, few refreshing sessions that took a different take. &amp;nbsp; Director from&amp;nbsp;Citrix&amp;nbsp;cloud.com&amp;nbsp;talked about cloudstack and how it can be used to build amazon like clouds.&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf9198f4e4d98a3d008e74" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="aravindajad" src="http://a0.twimg.com/profile_images/2202219394/profile5_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
Architecting aws style clouds - Ram Chinta.&amp;nbsp;&lt;a href="http://cloud.com/" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Open this link in a new window"&gt;cloud.com&lt;/a&gt;&lt;a href="http://search.twitter.com/search?q=%23CloudConnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#CloudConnect&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad" rel="aravindajad" style="color: #333333; text-decoration: none;" target="_blank"&gt;Aravind Ajad&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205918345432793088" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-25T07:08:53.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205918345432793088" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;9 hours ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205918345432793088" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205918345432793088&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205918345432793088&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa06311f828b90c010744" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;b&gt;* There is significant focus on security as well&lt;/b&gt;. &amp;nbsp; In fact, one of the conferences rooms almost dedicated to security. &amp;nbsp; And there seems to be good response to these sessions as well. &amp;nbsp;Probably&amp;nbsp;shows cloud security still is&amp;nbsp;a major concern. &amp;nbsp;There is also&amp;nbsp;some&amp;nbsp;pragmatism on how the trade-offs can be made.&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf922ecc75afdd322f1d35" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="runadesaidalal" src="http://a0.twimg.com/profile_images/2133572208/IMG00033-20110516-1619_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
Common thread in al presn.@&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&amp;nbsp;on&lt;a href="http://search.twitter.com/search?q=%23cloudsecurity" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudsecurity&lt;/a&gt;&amp;nbsp;-impln.depends largely on&amp;nbsp;&lt;a href="http://orgn.biz/" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Open this link in a new window"&gt;orgn.biz&lt;/a&gt;&amp;nbsp;goals &amp;amp; risk appetite thereof!&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/runadesaidalal" rel="runadesaidalal" style="color: #333333; text-decoration: none;" target="_blank"&gt;Runa Desai Dalal&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/runadesaidalal/status/205977976632905729" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-25T11:05:51.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/runadesaidalal/status/205977976632905729" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;5 hours ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/runadesaidalal/status/205977976632905729" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205977976632905729&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205977976632905729&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf926a440a310d2301424a" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="runadesaidalal" src="http://a0.twimg.com/profile_images/2133572208/IMG00033-20110516-1619_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
1 mre good talk by Akhil Behl of&amp;nbsp;&lt;a href="http://twitter.com/CiscoSecurity" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="CiscoSecurity on Twitter.com"&gt;@CiscoSecurity&lt;/a&gt;&amp;nbsp;busting myths of&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23cloudsecurity" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudsecurity&lt;/a&gt;!Cloud consumer just as responsible as a CSP!#cloudconnect&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/runadesaidalal" rel="runadesaidalal" style="color: #333333; text-decoration: none;" target="_blank"&gt;Runa Desai Dalal&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/runadesaidalal/status/205989307218010113" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-25T11:50:52.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/runadesaidalal/status/205989307218010113" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;4 hours ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/runadesaidalal/status/205989307218010113" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205989307218010113&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205989307218010113&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa117957ff93f10011ae2" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;b&gt;* Another interesting point is&amp;nbsp;the focus on Applications.&lt;/b&gt;&amp;nbsp;&amp;nbsp; This is&amp;nbsp;probably&amp;nbsp;a departure from many cloud conferences. &amp;nbsp; &amp;nbsp; There are several talks on this topic. &amp;nbsp; &amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa8020152e0b34300b50a" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
Krishnan, editor at CloudAvenue&amp;nbsp;and a&amp;nbsp;popular name in Cloud circles&amp;nbsp;spoke on the future of PaaS platforms. &amp;nbsp; He says PaaS is the future of Cloud computing. &amp;nbsp;He backs his arguments by what is happening and the trends he is seeing. &amp;nbsp; He also thinks future of PaaS is really different from what it is now. &amp;nbsp; Future PaaS platforms will be platforms beyond the current capabilities,&amp;nbsp;with lot of Intelligence. &amp;nbsp; They will have&amp;nbsp;several services and capabilities&amp;nbsp;built-into them such as Data Markets, Mobile Support and Social Connectivity. &amp;nbsp; Data plays a big role in the future PaaS. &amp;nbsp;These services makes building intelligent applications on Cloud very easy.&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf94c2f04bfaa10106db96" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="aravindajad" src="http://a0.twimg.com/profile_images/2202219394/profile5_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
.@krishnan&amp;nbsp;on stage - Intelligent platforms, future of pass.&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad" rel="aravindajad" style="color: #333333; text-decoration: none;" target="_blank"&gt;Aravind Ajad&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205897797311004672" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-25T05:47:14.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205897797311004672" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;10 hours ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205897797311004672" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205897797311004672&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205897797311004672&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf93b48ee7babb0f000945" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="aravindajad" src="http://a0.twimg.com/profile_images/2202219394/profile5_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
Big data is at the core of next Gen of PaaS&lt;a href="http://twitter.com/krishnan" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="krishnan on Twitter.com"&gt;@krishnan&lt;/a&gt;&amp;nbsp;#cloudconnect&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad" rel="aravindajad" style="color: #333333; text-decoration: none;" target="_blank"&gt;Aravind Ajad&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205903159288274944" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-25T06:08:33.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205903159288274944" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;10 hours ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205903159288274944" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205903159288274944&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205903159288274944&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbf957662b384d524000225" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
He gave some examples of which platforms that shows this potential of what future PaaS can be.&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf951c074678b11604742d" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="aravindajad" src="http://a0.twimg.com/profile_images/2202219394/profile5_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
Candidates for future of pass:&amp;nbsp;&lt;a href="http://flow.net/" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Open this link in a new window"&gt;flow.net&lt;/a&gt;, brroklyn, pervasive&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&amp;nbsp;@krishnan&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad" rel="aravindajad" style="color: #333333; text-decoration: none;" target="_blank"&gt;Aravind Ajad&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205904183067557889" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-25T06:12:37.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205904183067557889" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;10 hours ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205904183067557889" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205904183067557889&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205904183067557889&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbf942ccc438ebc0f0023df" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
There is also a session on Cloud platform comparison from Jankiraman. &amp;nbsp; He says Amazon Bean Stalk compared to CloudFoundry, GAE a good compromise between control&amp;nbsp;and flexibility.&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf942ccc438ebc0f0023e0" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="vivekjuneja" src="http://a0.twimg.com/profile_images/2137978419/mypic_normal.png" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
Good introduction to PaaS platforms and their current state. Like the PaaS comparison by&amp;nbsp;&lt;a href="http://twitter.com/janakiramm" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="janakiramm on Twitter.com"&gt;@janakiramm&lt;/a&gt;&amp;nbsp;at&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/vivekjuneja" rel="vivekjuneja" style="color: #333333; text-decoration: none;" target="_blank"&gt;vivekjuneja&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/vivekjuneja/status/205897755065982976" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-25T05:47:04.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/vivekjuneja/status/205897755065982976" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;10 hours ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/vivekjuneja/status/205897755065982976" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205897755065982976&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205897755065982976&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbf96c062b384d5240043b1" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
Jason Bloomberg of Zapthink talked about how to used RESTful hypermedia state to make applications Elastic. &amp;nbsp; &amp;nbsp;He says adopting applications to the cloud is not lift and shift, but a change in the architectural thinking. &amp;nbsp; He says RESTful architecture can help build elastic&amp;nbsp;applications that leverage the potential of Cloud. &amp;nbsp; By keeping the state on in the hypermedia, the applications can be more elastic. &amp;nbsp; Jason also shared free poster on Zapthink's vision of future of IT. &amp;nbsp;It is very interesting and&amp;nbsp;full of Cloud, Mobile, Social, Democratization of technology. &amp;nbsp; In a way pointing to demise of Enterprise IT :-).&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf94c2f04bfaa10106db9d" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="aravindajad" src="http://a0.twimg.com/profile_images/2202219394/profile5_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
RESTful Hypermedia state to make applications elastic.&lt;a href="http://twitter.com/TheEBizWizard" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="TheEBizWizard on Twitter.com"&gt;@TheEBizWizard&lt;/a&gt;&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad" rel="aravindajad" style="color: #333333; text-decoration: none;" target="_blank"&gt;Aravind Ajad&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205897433497075712" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-25T05:45:48.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205897433497075712" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;10 hours ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205897433497075712" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205897433497075712&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205897433497075712&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf964871617dd724002a92" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="aravindajad" src="http://a0.twimg.com/profile_images/2202219394/profile5_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
Free poster 'Vision for Enterprise IT 2020'&lt;a href="http://twitter.com/TheEbizwizard" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="TheEbizwizard on Twitter.com"&gt;@TheEbizwizard&lt;/a&gt;&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad" rel="aravindajad" style="color: #333333; text-decoration: none;" target="_blank"&gt;Aravind Ajad&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205889181493374977" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-25T05:13:00.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205889181493374977" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;11 hours ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205889181493374977" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205889181493374977&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205889181493374977&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa1cbd2551ae11d0027e8" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
There are also couple of sessions focused on Data. &amp;nbsp; One session from Nokia architect on Big Data adoption. &amp;nbsp; There is a session form CTS architect on NoSQL database&amp;nbsp;constructs.&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbf97ced6afa52e1b004b70" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;b&gt;* Popularity of AWS is evident through sessions. &amp;nbsp;&amp;nbsp;&lt;/b&gt;Being a proto cloud provider,&amp;nbsp;there are references&amp;nbsp;to AWS in almost every session. &amp;nbsp;There are quite a few talks on how to deliver highly scalable applications on AWS. &amp;nbsp;One such interesting&amp;nbsp;session by Harish, explained how to&amp;nbsp;achieve a peak tps 80000 requests using elasticity of AWS. &amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf9792359c4ce2322fe137" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="aravindajad" src="http://a0.twimg.com/profile_images/2202219394/profile5_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
Good session on infrastructure elasticity using AWS.&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad" rel="aravindajad" style="color: #333333; text-decoration: none;" target="_blank"&gt;Aravind Ajad&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205625666467659777" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-24T11:45:53.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205625666467659777" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;a day ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/aravindajad/status/205625666467659777" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205625666467659777&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205625666467659777&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfaa0ae02066a1100031fd" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div&gt;
&lt;b&gt;Sessions from me and&amp;nbsp;my Wipro&amp;nbsp;colleagues&amp;nbsp;(not officially&amp;nbsp;sponsored&amp;nbsp;:-)&amp;nbsp;):&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Munish&amp;nbsp;Gupta&amp;nbsp;spoke&amp;nbsp;on&amp;nbsp;Designing&amp;nbsp;Performance&amp;nbsp;of&amp;nbsp;Cloud&amp;nbsp;Applications,&amp;nbsp;while&amp;nbsp;I&amp;nbsp;spoke&amp;nbsp;on Delivering&amp;nbsp;Enterprise&amp;nbsp;Scale&amp;nbsp;Apps&amp;nbsp;on&amp;nbsp;Cloud.&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf9094c6654d112300bead" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="cloudconnect_in" src="http://a0.twimg.com/profile_images/1557464430/cloudconnect_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
RT&amp;nbsp;&lt;a href="http://twitter.com/write2munish" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="write2munish on Twitter.com"&gt;@write2munish&lt;/a&gt;: Speaking at the CloudConnect Conference in Bangalore on May 24&amp;nbsp;&lt;a href="http://bit.ly/JFFXkB" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Open this link in a new window"&gt;bit.ly/JFFXkB&lt;/a&gt;&lt;a href="http://search.twitter.com/search?q=%23cloud" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloud&lt;/a&gt;&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&amp;nbsp;&lt;a href="http://twitter.com/cloudconnect_in" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="cloudconnect_in on Twitter.com"&gt;@cloudconnect_in&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/cloudconnect_in" rel="cloudconnect_in" style="color: #333333; text-decoration: none;" target="_blank"&gt;Cloud Connect India&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/cloudconnect_in/status/205162872312037378" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-23T05:06:55.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/cloudconnect_in/status/205162872312037378" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;2 days ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/cloudconnect_in/status/205162872312037378" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205162872312037378&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205162872312037378&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbf9094c6654d112300beb0" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="cloudconnect_in" src="http://a0.twimg.com/profile_images/1557464430/cloudconnect_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
RT&amp;nbsp;&lt;a href="http://twitter.com/aravindajad" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="aravindajad on Twitter.com"&gt;@aravindajad&lt;/a&gt;: All set for my speaking session at&lt;a href="http://search.twitter.com/search?q=%23cloudconnect" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#cloudconnect&lt;/a&gt;&amp;nbsp;conference tomorrow.&amp;nbsp;&lt;a href="http://goo.gl/V5Nsf" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Open this link in a new window"&gt;goo.gl/V5Nsf&lt;/a&gt;&lt;a href="http://twitter.com/cloudconnect_in" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="cloudconnect_in on Twitter.com"&gt;@cloudconnect_in&lt;/a&gt;&amp;nbsp;&lt;a href="http://search.twitter.com/search?q=%23in" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Search for this hashtag on Twitter.com"&gt;#in&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/cloudconnect_in" rel="cloudconnect_in" style="color: #333333; text-decoration: none;" target="_blank"&gt;Cloud Connect India&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-posted" style="color: #666666; float: right; line-height: 16px;"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/cloudconnect_in/status/205522585671315456" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="timestamp" data-timestamp="2012-05-24T04:56:17.000Z"&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/cloudconnect_in/status/205522585671315456" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;a day ago&lt;/a&gt;&lt;/div&gt;
&lt;a class="s-posted" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/cloudconnect_in/status/205522585671315456" style="color: #666666; float: right; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-element-actions" style="-webkit-transition: opacity 0.1s; float: left; line-height: 16px; opacity: 0;"&gt;
&lt;a class="twitter-newwindow twitter-reply" href="http://twitter.com/intent/tweet?in_reply_to=205522585671315456&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -33px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Reply"&gt;Reply&lt;/a&gt;&lt;a class="twitter-newwindow twitter-retweet" href="http://twitter.com/intent/retweet?tweet_id=205522585671315456&amp;amp;related=storify" style="background-image: url(http://storify.com/public/img/retweet-reply.png); background-position: 0px -1px; background-repeat: no-repeat no-repeat; color: #333333; margin: 0px 8px 0px 0px; padding: 0px 0px 0px 18px; text-decoration: none;" title="Retweet"&gt;Retweet&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa29e11f828b90c0167f4" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
Srinivas Adhyapak another Wipro colleague&amp;nbsp;spoke about the&amp;nbsp;Impact of cloud on&amp;nbsp;Telcos and how they are in a good position to become public computing providers.&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa261d2551ae11d0049ee" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
Sessions from my collegue Munish and me are in cloud (Slideshare)&amp;nbsp;&amp;nbsp;for your&amp;nbsp;reference. &amp;nbsp;Thanks to all of those who attended our sessions. &amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-link" data-source="slideshare" data-type="link" id="4fbf9b99aab6872b1b011e94" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;script async class="speakerdeck-embed" data-id="4fc5fba05fb56f002200a7eb" data-ratio="1.3333333333333333" src="//speakerdeck.com/assets/embed.js"&gt;&lt;/script&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-link" data-source="slideshare" data-type="link" id="4fbf9b99aab6872b1b011e95" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-oembed s-element-content" style="border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); display: inline-block; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-oembed-content" style="max-width: 100%;"&gt;
&lt;iframe allowfullscreen="" frameborder="0" height="334" marginheight="0" marginwidth="0" scrolling="no" src="http://www.slideshare.net/slideshow/embed_code/13063568" width="400"&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div class="s-oembed-title" style="font-weight: bold;"&gt;
Cloud connect - Delivering Enterprise Scale Applications on Cloud&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-slideshare" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://www.slideshare.net/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;img border="0" src="http://g.etfv.co/http://www.slideshare.net" style="border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 0px; display: block; max-width: 16px;" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://www.slideshare.net/aravindajju" rel="aravindajju" style="color: #333333; text-decoration: none;" target="_blank"&gt;aravindajju&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-clear" style="clear: both; height: 0px;"&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-text" data-source="storify" data-type="text" id="4fbfa7a8ca11d3b50c02a30d" style="padding: 0px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: none; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 0px; box-shadow: none; margin: 0px auto; max-width: none;"&gt;
&lt;div class="s-element-content s-text linkify" style="-webkit-box-shadow: none !important; border-bottom-left-radius: 0px !important; border-bottom-right-radius: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border: 0px !important; box-shadow: none !important; color: #666666; font-size: 13px; line-height: 1.6em; max-width: none; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
Thanks to UBM for bringing this event to India. &amp;nbsp; UBM team has put a fantastic show and my appreciations to Srikanth and team.&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li class="s-element s-element-quote" data-source="twitter" data-type="quote" id="4fbfa74f68602573100141ef" style="padding: 15px 10px; position: relative; text-align: center;"&gt;&lt;div class="s-element-container" style="-webkit-box-shadow: rgb(221, 221, 221) 0px 1px 0px; -webkit-transition: border-color 0.1s; background-color: white; background-position: initial initial; background-repeat: initial initial; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; border: 1px solid rgb(221, 221, 221); box-shadow: rgb(221, 221, 221) 0px 1px 0px; margin: 0px auto; max-width: 500px;"&gt;
&lt;div class="s-quote s-element-content" style="background-image: url(http://storify.com/public/img/quote-bg.png); background-position: 100% 0%; background-repeat: no-repeat no-repeat; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; border-top-left-radius: 5px; border-top-right-radius: 5px; font-size: 14px; overflow: hidden; padding: 10px; position: relative; text-align: left;"&gt;
&lt;div class="s-quote-content"&gt;
&lt;div class="s-quote-avatar s-quote-avatar-twitter" style="float: left; margin: 0px 10px 0px 0px;"&gt;
&lt;img alt="cloudconnect_in" src="http://a0.twimg.com/profile_images/1557464430/cloudconnect_normal.jpg" style="border: 1px solid rgb(221, 221, 221); display: block; height: 48px; padding: 1px; width: 48px;" /&gt;&lt;/div&gt;
&lt;div class="s-quote-text linkify" style="background-image: url(http://storify.com/public/img/avatar-bubble.png); background-position: 0% 0%; background-repeat: no-repeat no-repeat; font-family: Georgia, serif; font-size: 16px; line-height: 1.5em; margin-left: 62px; min-height: 52px; padding-left: 21px;"&gt;
Cloud Connect Bengaluru draws to a close! Thank you all for making it a success! We will keep in touch here&lt;a href="http://bit.ly/KxNrEy" rel="external" style="color: #333333; text-decoration: none;" target="_blank" title="Open this link in a new window"&gt;bit.ly/KxNrEy&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="s-attribution" style="clear: both; color: #aaaaaa; font-size: 11px; padding: 10px 0px 0px;"&gt;
&lt;div class="s-source s-twitter" style="-webkit-transition: opacity 0.1s; float: left; margin-right: 5px; opacity: 0.5;"&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div class="s-source-icon" style="background-image: url(http://storify.com/public/img/sources/twitter-16px.png); background-repeat: no-repeat no-repeat; height: 16px; margin: 0px; vertical-align: middle; width: 16px;"&gt;
&lt;/div&gt;
&lt;a href="http://twitter.com/" style="color: #333333; display: block; text-decoration: none;" target="_blank"&gt;
&lt;/a&gt;&lt;/div&gt;
&lt;div class="s-author" style="float: left; font-weight: bold; line-height: 16px; margin-right: 8px;"&gt;
&lt;a class="s-author-name" href="http://stats.storify.com/record/click?sid=4fbf9094c6654d112300be9f&amp;amp;redirect=http://twitter.com/cloudconnect_in" rel="cloudconnect_in" style="color: #333333; text-decoration: none;" target="_blank"&gt;Cloud C&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;This post originally appeared at &lt;/i&gt;&lt;a href="http://www.techspot.co.in/"&gt;www.techspot.co.in&lt;/a&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=lNL8IWY3FQU:Nh2LdABGLVA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/lNL8IWY3FQU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/lNL8IWY3FQU/cloud-connect-2012-bangalore.html</link><author>noreply@blogger.com (Aravind Ajad Yarra)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-l6p8aLVeRdg/T7-sDOxTLrI/AAAAAAAADQ4/N-i3sooJEwY/s72-c/cloudconnect.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/05/cloud-connect-2012-bangalore.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-9156433073738699603</guid><pubDate>Fri, 04 May 2012 15:37:00 +0000</pubDate><atom:updated>2012-05-10T22:20:44.029+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Mobile</category><category domain="http://www.blogger.com/atom/ns#">Enterprise</category><title>Blackberry 10 – Putting Developers First</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-wZrUPuDjSjM/T6P2squQI6I/AAAAAAAACuk/-x4j918dies/s1600/bb10.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/-wZrUPuDjSjM/T6P2squQI6I/AAAAAAAACuk/-x4j918dies/s320/bb10.jpg" style="border: 0;" width="161" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;Blackberry 10 OS is unveiled this week at Blackberry
World.&amp;nbsp;&amp;nbsp;&amp;nbsp; In many ways Blackberry 10 is probably
the last chance for Blackberry to gain back the market share and be a
formidable competition to other Smartphones.&amp;nbsp;&amp;nbsp;&amp;nbsp;
If the announcements at the conference are any indication, Blackberry is
going all out this time to make their next generation of OS as the best smartphone
platform.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Some of the interesting features of BB10 mentioned in the
key note:&lt;/div&gt;
&lt;div class="MsoListParagraphCxSpFirst" style="text-align: left; text-indent: -0.25in;"&gt;
&lt;/div&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;&lt;span style="text-indent: -0.25in;"&gt;UI Overhaul – More modern user interface based
on Panels (similar to WP7) and the flow interface that switching between
applications smooth and seamless.&amp;nbsp;&amp;nbsp; At last,
BB user interface is on par with the competition.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="text-indent: -0.25in;"&gt;Intelligent Keyboard – Finally BB is betting on
touch interface.&amp;nbsp; BB is trying to bring
its legendary physical keyboard expertise to touch interfaces.&amp;nbsp;&amp;nbsp;&amp;nbsp; Keyboard with gesture support and
intelligent prediction keeping the usability a key priority.&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="text-indent: -0.25in;"&gt;Camera with timeline - Camera has a timeline history,
so if there is an issue with a photo captured (such as somebody eyes are closed),
one can rewind and capture another moment which is more perfect.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
The most notable of all, is the &lt;b&gt;&lt;i&gt;focus on developers&lt;/i&gt;&lt;/b&gt;. There has been significant focus on
Developers in the CEO keynote.&amp;nbsp; One of the BB’s
problems has been to attract developers to build quality apps to be able to compete
with other smartphone platforms. To
address this problem, BB has spent significant time and effort and put the
developers first in BB10.&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Here is how -&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
For starters, Blackberry 10 is not based on the older
platform BB7, but is based on QNX (acquired by BB in 2010).&amp;nbsp;&amp;nbsp; QNX is a RTOS that has been existence for a
while and is used in telematics and other mission critical applications used in
medical and telecom industries.&amp;nbsp;&amp;nbsp; QNX is
also the OS used in Playbook tablet released last year.&amp;nbsp;&amp;nbsp; QNX uses micro-kernel architecture and has
great tooling support, making it a solid platform, attractive enough for
developers.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Keeping developers first, BB has taken quite a different
approach for applications (on BB 10) compared to the competition.&amp;nbsp;&amp;nbsp;&amp;nbsp; All of the Blackberry competition has a
single deeply integrated application development framework and uses a single programming
language.&amp;nbsp;&amp;nbsp; Apple uses Objective C,
Google with Java and Microsoft with C#.&amp;nbsp; BB
however, took a multi-language multi-framework approach, to keep a low entry barrier
for all kinds of application developers.&amp;nbsp;&amp;nbsp;
Following graphic illustrates how much BB10 is doing to include all
kinds of developers, leaving nobody behind. &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/-iPaB9h0rSqA/T6Qlhcz1JlI/AAAAAAAACuw/kSEew_iEZSU/s1600/bbdevelopers.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="304" src="http://1.bp.blogspot.com/-iPaB9h0rSqA/T6Qlhcz1JlI/AAAAAAAACuw/kSEew_iEZSU/s640/bbdevelopers.png" width="550" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;strong&gt;Blackberry WebWorks SDK:&amp;nbsp; &lt;/strong&gt;&lt;strong&gt;&lt;span style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;strong&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="font-family: inherit;"&gt;Webworks SDK supports BB application development using HTML 5 and
CSS.&amp;nbsp;&amp;nbsp; This is really the lowest barrier
for application developers.&amp;nbsp; Millions of
web developers can potentially become blackberry developers with very little
training.&amp;nbsp;&amp;nbsp; Unlike other smartphone
platforms where HTML 5 applications are secondary citizens, BB10 has embraced
the web development paradigm. &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div class="MsoListParagraphCxSpFirst" style="mso-list: l0 level1 lfo1; text-indent: -.25in;"&gt;
&lt;/div&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;&lt;strong style="text-indent: -0.25in;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="font-family: inherit;"&gt;Ripple mobile environment emulator for testing the applications for
different form factors&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-family: inherit;"&gt;&lt;strong style="text-indent: -0.25in;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="font-size: 7pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;strong style="text-indent: -0.25in;"&gt;&lt;span style="font-weight: normal;"&gt;Local storage of HTML 5 and CSS applications, does not server access&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong style="text-indent: -0.25in;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="font-family: inherit;"&gt;Javascript extensions providing access to Blackberry messenger, PIM and
hardware&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="text-indent: -0.25in;"&gt;&lt;span style="font-family: inherit;"&gt;bbUI.js for native look and feel&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class="MsoListParagraphCxSpLast" style="mso-list: l0 level1 lfo1; text-indent: -.25in;"&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;strong&gt;&lt;span style="font-family: Calibri, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;strong&gt;Blackberry Android Runtime:&amp;nbsp; &lt;/strong&gt;&lt;strong&gt;&lt;span style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;strong&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="font-family: inherit;"&gt;Android has pioneered the use of virtual machine as the first class
development platform on smartphones.&amp;nbsp;&amp;nbsp;
Dalvik on android provides a bytecode compiler and a runtime allowing
applications developed in Java language, to run on Android.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Given there are thousands of android applications
already running Dalvik,&amp;nbsp;&amp;nbsp; BB has made a
smart move in transitioning these applications onto BB 10, tapping into large
existing Android developer base.&amp;nbsp; &amp;nbsp;While there are quite a few API compatibility limitations,
nevertheless BB Android runtime provides an easy option for porting existing
Android applications. &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: Calibri, sans-serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div class="MsoListParagraphCxSpFirst" style="mso-list: l0 level1 lfo1; text-indent: -.25in;"&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong style="text-indent: -0.25in;"&gt;&lt;span style="font-family: Calibri, sans-serif; font-weight: normal;"&gt;Supports Android 2.3.3 (Gingerbread) applications&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="text-indent: -0.25in;"&gt;Online repackaging tool to convert APK files (android
application package format) to BAR files&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="text-indent: -0.25in;"&gt;Support for multiple windows and in app payment&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class="MsoListParagraphCxSpMiddle" style="mso-list: l0 level1 lfo1; text-indent: -.25in;"&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoListParagraphCxSpLast" style="mso-list: l0 level1 lfo1; text-indent: -.25in;"&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;strong&gt;&lt;span style="font-family: Calibri, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;span style="font-family: inherit;"&gt;&lt;strong&gt;Blackberry Adobe AIR SDK:&amp;nbsp; &lt;/strong&gt;&lt;strong&gt;&lt;span style="font-weight: normal;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Adobe AIR is a popular UI application development platform
based on Action Script and Flash runtime.&amp;nbsp;&amp;nbsp;&amp;nbsp;
Action script is a variant of Java Script hence majority of the web
application developers uses AIR to develop cross platform UI applications.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="text-transform: uppercase;"&gt;AIR &lt;/span&gt;already
supports Android, iOS and even desktop OSes and thousands of applications already
written.&amp;nbsp;&amp;nbsp; Given AIR is support, all the
AIR applications can be ported to BB10 easily.&amp;nbsp;
&amp;nbsp;What is interesting to note is
that, AIR applications are developed using Flex, which is a quite popular with
Enterprise to develop in-house rich UI applications. &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;strong&gt;&lt;span style="font-family: Calibri, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;strong&gt;&lt;span style="font-family: inherit;"&gt;Blackberry Native SDK: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
BlackBerry 10 Native SDK is targeted at building high-performance
native applications. &amp;nbsp;Supporting C++ as
the language, it is not really meant for developing business applications, but
meant for applications that need good response time, such as games.&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoListParagraphCxSpFirst" style="mso-list: l0 level1 lfo1; text-indent: -.25in;"&gt;
&lt;/div&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;&lt;span style="text-indent: -0.25in;"&gt;Scoreloop social gaming SDK provides support for
user profiles and global leaderboards, awards&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="line-height: 15.75pt; text-align: justify; text-indent: -0.25in;"&gt;Push Management APIs allow developers to create
Push-based apps&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="line-height: 15.75pt; text-align: justify; text-indent: -0.25in;"&gt;Visual Studio IDE plug-in will now make it
easier for VS developers&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color: #333333; font-family: Symbol; font-size: 10pt; line-height: 15.75pt; text-align: justify; text-indent: -0.25in;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="line-height: 15.75pt; text-align: justify; text-indent: -0.25in;"&gt;Cascades SDK – New UI framework for developing native
UI applications supporting C++ and Declarative Qt Markup Language (QML)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
As it happened with HP webOS and to an extent with Microsoft
WP7, applications can make or break the smartphone platform.&amp;nbsp; With BB 10, Blackberry is taking all the
right steps to get the developer support, which is crucial to their
success.&amp;nbsp;&amp;nbsp;&amp;nbsp; BB is also pulling all the
right strings to make it easy for developers to develop their applications on
BB OS.&amp;nbsp;&amp;nbsp; That said, not supporting legacy
Java applications (developed using BB 7 java SDK) is a significant issue.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
It will be interesting to see how successful BB 10 will be and
whether it can bring back the lost glory for the Blackberry.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;b&gt;Further reading:&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class="MsoListParagraphCxSpFirst" style="mso-list: l0 level1 lfo1; text-indent: -.25in;"&gt;
&lt;/div&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;&lt;span style="text-indent: -0.25in;"&gt;Blackberry
10 announcement -&lt;/span&gt;&lt;span style="text-indent: -0.25in;"&gt; &lt;/span&gt;&lt;a href="http://www.blackberryworld.com/event-info/about" style="font-style: italic; text-indent: -0.25in;"&gt;http://www.blackberryworld.com/event-info/about&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="text-indent: -0.25in;"&gt;Blackberry
developer blog&lt;/span&gt;&lt;span style="text-indent: -0.25in;"&gt;&amp;nbsp;-&amp;nbsp;&lt;/span&gt;&lt;a href="http://devblog.blackberry.com/" style="font-style: italic; text-indent: -0.25in;"&gt;http://devblog.blackberry.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;img src="http://ganojsproxy.appspot.com/gaproxy?host=techspot.co.in&amp;amp;pageurl=bb10.html&amp;amp;account=UA-376231-6" /&gt;
&lt;i&gt;This post originally appeared at &lt;/i&gt;&lt;a href="http://www.techspot.co.in/"&gt;www.techspot.co.in&lt;/a&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=rHnbJ_pPf7Y:Bp0EBbMdBr4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/rHnbJ_pPf7Y" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/rHnbJ_pPf7Y/blackberry-10-putting-developers-first.html</link><author>noreply@blogger.com (Aravind Ajad Yarra)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-wZrUPuDjSjM/T6P2squQI6I/AAAAAAAACuk/-x4j918dies/s72-c/bb10.jpg" height="72" width="72" /><thr:total>1</thr:total><georss:featurename>SJP 2nd Bus Trail, Bangalore, Karnataka, India</georss:featurename><georss:point>12.914598145041829 77.68449783325195</georss:point><georss:box>12.910728645041829 77.67956233325195 12.91846764504183 77.68943333325196</georss:box><feedburner:origLink>http://www.techspot.co.in/2012/05/blackberry-10-putting-developers-first.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-1197300355705592982</guid><pubDate>Tue, 01 May 2012 03:03:00 +0000</pubDate><atom:updated>2012-07-24T14:12:18.521+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tip</category><category domain="http://www.blogger.com/atom/ns#">Cloud</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Patterns</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><title>Developing Scalable Apps for deploying on IaaS cloud</title><description>My presentation on Developing Scalable Apps for deploying on IaaS cloud, which i presented at Cloud Developer Conference 2012&lt;br /&gt;

&lt;strong style="display: block; margin: 12px 0 4px;"&gt;&lt;a href="http://www.slideshare.net/write2munish/developing-scalable-apps-for-deploying-on-iaas-cloud-cdc-april-2012" target="_blank" title="Developing Scalable Apps for deploying on IaaS Cloud CDC April 2012"&gt;Developing Scalable Apps for deploying on IaaS Cloud CDC April 2012&lt;/a&gt;&lt;/strong&gt; 

&lt;p&gt;
&lt;script async="" class="speakerdeck-embed" data-id="500b904124b74600020092d6" data-ratio="1.3333333333333333" src="//speakerdeck.com/assets/embed.js"&gt;
&lt;/script&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;i&gt;This post originally appeared at &lt;/i&gt;&lt;a href="http://www.techspot.co.in/"&gt;www.techspot.co.in&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=ZR4F7_tNwMU:29i3qBzC9r0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/ZR4F7_tNwMU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/ZR4F7_tNwMU/developing-scalable-apps-for-deploying.html</link><author>noreply@blogger.com (Munish K Gupta)</author><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/05/developing-scalable-apps-for-deploying.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-2654853737957018437</guid><pubDate>Mon, 30 Apr 2012 14:22:00 +0000</pubDate><atom:updated>2012-05-02T18:20:24.963+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Cloud</category><category domain="http://www.blogger.com/atom/ns#">SOA</category><category domain="http://www.blogger.com/atom/ns#">Web Services</category><category domain="http://www.blogger.com/atom/ns#">Web 2.0</category><title>Plumbing the Web</title><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-2LHY9KQ6n_c/T56eIUaHZJI/AAAAAAAACrU/1xRTpTc6F5M/s320/wwwplumbing.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-2LHY9KQ6n_c/T56eIUaHZJI/AAAAAAAACrU/1xRTpTc6F5M/s320/wwwplumbing.png" style="border: 0;" /&gt;&lt;/a&gt;&lt;/div&gt;
Cloud based services are so ubiquitous that it is almost impossible to imagine our daily life without these.   These services range from web e-mail services like Gmail to productivity apps like Evernote to Social Networks like Twitter to Information services like Weather.com.   I can count at least twenty different services that I use on a daily basis and probably hard to live without.   I get tremendous value from these services, both personally and professionally. However, there is an ugly side to these services.   Each of these services live in their own island and it is hard to go on to each service to keep up with it.   
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Isn’t it great if I can push my favorite Google Reader article to Instapaper for a later reading?&lt;/li&gt;
&lt;li&gt;
Isn’t it great if I can get an SMS alert, if the weather.com forecasts rain in Bangalore today evening?&lt;/li&gt;
&lt;li&gt;
Isn’t it great if I can move my personal tweets to my Gmail account for later reference?&lt;/li&gt;
&lt;li&gt;
Isn’t it great if I can get an email alert if my twitter follower mentions me?&lt;/li&gt;
&lt;/ul&gt;
What we need is a way to plumb all these discrete services together to create more valued experience.&lt;br /&gt;
&lt;b&gt;&lt;/b&gt;&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style="font-size: large;"&gt;Ifttt.com&lt;/span&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
Ifttt.com is a web plumbing service that connects multiple web services together to create services that are much more useful than those individually are.  Ifttt.com stands for &lt;b&gt;If This Then That&lt;/b&gt;.  It essentially creates a macro environment for web (à la macros in MS Office), enabling knowledge web workers to automate tasks across web.  Given the workforce in Enterprises are increasingly populated with Gen Yers, such web plumbing services have an important place in the future of Enterprise IT.&lt;br /&gt;
&lt;br /&gt;
It provides basic constructs to monitor and evaluate an event and then take an action on the same.   To show how this service works, please see the screen grab below.  This graphic shows a Task which sends an SMS alert if there is Rain predicted tomorrow on Weather.com.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://2.bp.blogspot.com/-QH6e5Y64Rpk/T56eK0CAwyI/AAAAAAAACrc/XXdtxkiepPg/s400/ifttt.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://2.bp.blogspot.com/-QH6e5Y64Rpk/T56eK0CAwyI/AAAAAAAACrc/XXdtxkiepPg/s320/ifttt.png" style="border: 0;" width="320" /&gt;&lt;/a&gt;As can be seen in the graphic there are two simple constructs &lt;b&gt;Trigger&lt;/b&gt; and &lt;b&gt;Action&lt;/b&gt;.   There are predefined channels which can be used to define the triggers.   In this case Weather.com is used as the channel and the trigger is “Tomorrow forecast calls for Rain”.    Action is defined as an SMS message, which another pre-defined channel with my phone number attached to it.&lt;br /&gt;
&lt;br /&gt;
Ifttt.com runs this task every 15 minutes and checks if there rain is forecasted tomorrow and then sends an SMS alert.  That is how simple using this service.    The user interface is barebones and is very simple and easy to use.  One doesn’t need to have any Programming background to use.   But don’t let the simplicity undermine its power.  As Douglas Adams quotes in ‘&lt;i&gt;The Salmon of Doubt: Hitchhiking the Galaxy One Last Time&lt;/i&gt;’, “&lt;i&gt;&lt;b&gt;The future of computer power is pure simplicity&lt;/b&gt;&lt;/i&gt;”.&lt;br /&gt;
&lt;br /&gt;
Under the hood of Ifttt, REST APIs and RSS Feeds are hard at work.   These technologies enable easy programmable access to various web services.    Another important, but often overlooked technology that forms the technological foundation of Ifttt is OAuth.  OAuth enables token based end user authentication and authorization between multiple web services.&lt;br /&gt;
&lt;br /&gt;
Ifttt.com is not the first service to attempt web plumbing.    There is a great service called &lt;b&gt;Yahoo! Pipes&lt;/b&gt;, which probably started the idea of web plumbing.  Yahoo! Pipes is very visual with a graphical interface reminiscent of popular WISYWIG image editors.   Yahoo has done a great job in abstracting the complexity of REST APIs, RSS feeds as visual widgets that can be dragged and dropped.   Unfortunately the service couldn’t get the traction with masses, however is quite popular among web geeks and programmers.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Extending the Idea to Enterprise&lt;/b&gt;:&lt;br /&gt;
It doesn’t take much imagination to see how useful web plumbing (in specific ifttt.com) can be in Enterprises.   Enterprises have been trying hard for a long time to seamless integration of internal IT services.  Years ago Enterprises have embarked the journey of Service Orientation Architecture, but are yet to reach the distant dream of seamless integration.  Adoption of cloud SaaS services have only made reaching the dream harder.
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;
Given how ifttt.com has brought web plumbing to masses, there is lot of speculation that ifttt.com is pursuing Enterprise Interests.   Recently ifttt got a funding of $1.5 million, not bad for a two person company.   Can’t wait for an Enterprise edition of ifttt.com.&lt;/li&gt;
&lt;li&gt;
Cloud Integration Platforms are already rage in Enterprises. To name a few, IBM’s Cast Iron and Dell’s Boomi are already heavy lifting the integration between on-premise services and SaaS service hosted in the cloud.   SnapLogic (&lt;a href="http://www.snaplogic.com/"&gt;www.snaplogic.com&lt;/a&gt;) is another interesting Cloud Integration Platform.  It has pioneered the use of App Store for its cloud integration platform.   However, all these platforms are targeted towards the IT developers and not the Business Users.   One day, I hope these services learn something from ifttt.com.&lt;/li&gt;
&lt;/ul&gt;
&lt;i&gt;This post originally appeared at &lt;/i&gt;&lt;a href="http://www.techspot.co.in/"&gt;www.techspot.co.in&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=l5fXTAVCN7Q:cWQbzugMqe0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/l5fXTAVCN7Q" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/l5fXTAVCN7Q/plumbing-web.html</link><author>noreply@blogger.com (Aravind Ajad Yarra)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-2LHY9KQ6n_c/T56eIUaHZJI/AAAAAAAACrU/1xRTpTc6F5M/s72-c/wwwplumbing.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/04/plumbing-web.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-211288929150958021</guid><pubDate>Fri, 13 Apr 2012 16:13:00 +0000</pubDate><atom:updated>2012-04-19T10:32:02.606+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Social</category><category domain="http://www.blogger.com/atom/ns#">Web 2.0</category><title>Social Networks Going Visual</title><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-mZXUokEpYoQ/T4-cOmuma5I/AAAAAAAADVg/tDC-gUZxMnE/s1600/IMG_20120413_160534.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/-mZXUokEpYoQ/T4-cOmuma5I/AAAAAAAADVg/tDC-gUZxMnE/s200/IMG_20120413_160534.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;
Social Networks are traditionally focused on sharing of status messages and links.   The focus of these networks was  about sharing of all kinds, but not as much as about the Visual aspects.    This focus  has been shifting recently to Visuals.     This can be seen in the recent growth of the Visual Social Networks such as &lt;b&gt;Instagram&lt;/b&gt; and &lt;b&gt; Pinterest&lt;/b&gt;.   These networks put the Visual aspects in front and center of the sharing.&lt;br /&gt;
&lt;br /&gt;
Some of the facts that support this observation:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;This week Facebook announced to buy Instagram for $1bn.   (&lt;i&gt;Instagram  has just 13 employees but has about 50 million plus users.  Instagram works  by providing several photo filters that can make ordinary photos /  pictures visually appealing.    After applying filters these pictures can be share.)&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-family: Symbol;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 7pt; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal;"&gt; &lt;/span&gt;&lt;/span&gt;Pinterest has 12 million users and has grown 145% from January to March.   &lt;i&gt;(Pinterest operates like an online pin board.   Pinterest allows to  bookmark (called pinning) any pictures that we see online and share them  on a board.   Anybody who likes your picture can also pin it.    Popularity in terms of Pins most likely to get noticed  and drive traffic)&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;The reasons for such focus on Visual aspects could be attributed to:&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;b&gt;&lt;i&gt;High quality Cameras on Mobile Devices: &lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
With Smartphones, People now have access to high  quality cameras all the time, leading to sharing pictures more and  more.    Some of the smartphones such as iPhone 4S have high quality  cameras that can give many dedicated Point and Shoot  cameras a run for their money.&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Signal to Noise ratio on Traditional Social networks: &lt;/i&gt; &lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Traditional social networks such as Facebook,  Orkut, MySpace, Twitter and Google+ can do so many things; so much so  that it is hard to align with People’s interest.    People refer this as &lt;b&gt;Information &lt;/b&gt;&lt;b&gt;Overload&lt;/b&gt;.  I refer to this phenomenon as &lt;i&gt;Social Pollution&lt;/i&gt; and &lt;i&gt;Social Fatigue&lt;/i&gt;.  This exact phenomenon is what is leading to &lt;b&gt;&lt;i&gt;Interest Based Social Networks&lt;/i&gt;&lt;/b&gt;.    Visual Social Networks are a subset of Interest based Social  Networks.    Other examples of Interest based Social networks are –  &lt;a href="http://www.quora.com/"&gt;Quora.com&lt;/a&gt; (Q&amp;amp;A  based Social Network based on Topics interesting to a User), &lt;a href="http://www.foodspotting.com/"&gt;  Foodspotting&lt;/a&gt; (Recipe based Interest Networks) and &lt;a href="http://www.endomondo.com/"&gt;Endomondo&lt;/a&gt; and &lt;a href="http://www.fitocracy.com/"&gt; Fitocracy&lt;/a&gt; (Fitness based Interest networks)&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Visual Appeal:&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Humans are inherently visual.  Visually appealing object stimulates our brains and makes us enjoy and share them &lt;span style="font-family: Wingdings;"&gt;:-)&lt;/span&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
While the reasons can be many, the impact of Visual  social networks especially is astounding.     Especially Pinterest has  an astounding effect on online commerce.  On-line businesses are flocking  to have their presence felt on Pinterest. Here are some interest facts on how Pinterest is contributing to &lt;b&gt;&lt;i&gt;Social Commerce&lt;/i&gt;&lt;/b&gt;.&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;
&lt;b&gt;&lt;i&gt;Impact on On-line / Social Commerce:&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
Impact on On-line Commerce can be measured by the  amount of referral traffic a Network brings.   As can be seen in the  graphic below Pinterest referral traffic has increased significantly  within a month.   Amount of referral traffic Pinterest  brings is more than Twitter and Google plus.    Given the size of  Pinterest this is really significant.   This can explain why on-line  commerce world is eager to have their presence felt on Pinterest.  &lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;a href="http://blog.shareaholic.com/2012/03/pinterest-referral-traffic-2/"&gt;&lt;img alt="" border="0" src="http://blog.shareaholic.com/wp-content/uploads/2012/03/Shareaholic-Referral-Traffic-Report-February.jpg" style="cursor: pointer; display: block; height: 353px; margin: 0px auto 10px; text-align: center; width: 472px;" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
In order to capitalize on this trend, on-line  businesses are now focusing on having high quality and artistic product  images on their sites.    This is one of the many ways how On-line  businesses are leveraging the Social networks generate  more leads and better sales.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
References &amp;amp; Further Reading:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-family: Symbol;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 7pt; font-style: normal; font-variant: normal; font-weight: normal; line-height: normal;"&gt;&lt;/span&gt;&lt;/span&gt;Everything you need to know about Pinterest &lt;a href="https://webmail.wipro.com/owa/redir.aspx?C=720e42156d1b4a44880ca91239ac47a9&amp;amp;URL=http%3a%2f%2ftechcrunch.com%2f2012%2f03%2f14%2fthis-is-everything-you-need-to-know-about-pinterest-infographic%2f" target="_blank"&gt; http://techcrunch.com/2012/03/14/this-is-everything-you-need-to-know-about-pinterest-infographic/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Pinterest drives more referral traffic than LinkedIn &lt;a href="https://webmail.wipro.com/owa/redir.aspx?C=720e42156d1b4a44880ca91239ac47a9&amp;amp;URL=http%3a%2f%2fblog.shareaholic.com%2f2012%2f03%2fpinterest-referral-traffic-2%2f" target="_blank"&gt; http://blog.shareaholic.com/2012/03/pinterest-referral-traffic-2/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Why Instagram is worth #1bn &lt;a href="https://webmail.wipro.com/owa/redir.aspx?C=720e42156d1b4a44880ca91239ac47a9&amp;amp;URL=http%3a%2f%2fmashable.com%2f2012%2f04%2f12%2finstagram-worth-1-billion%2f" target="_blank"&gt; http://mashable.com/2012/04/12/instagram-worth-1-billion/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;i&gt;This post originally appeared at &lt;/i&gt;&lt;a href="http://www.techspot.co.in/"&gt;www.techspot.co.in&lt;/a&gt; &lt;img src="http://ganojsproxy.appspot.com/gaproxy?host=techspot.co.in&amp;amp;pageurl=socialgoingvisual.html&amp;amp;account=UA-376231-6" /&gt;&lt;img src="https://ganojsproxy.appspot.com/gaproxy?host=techspot.co.in&amp;amp;pageurl=socialgoingvisual.html&amp;amp;account=UA-376231-6" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/Y3fUW_0ic5Y" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/Y3fUW_0ic5Y/social-networks-are-traditionally.html</link><author>noreply@blogger.com (Aravind Ajad Yarra)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-mZXUokEpYoQ/T4-cOmuma5I/AAAAAAAADVg/tDC-gUZxMnE/s72-c/IMG_20120413_160534.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/04/social-networks-are-traditionally.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-3041815251663905709</guid><pubDate>Tue, 24 Jan 2012 07:30:00 +0000</pubDate><atom:updated>2012-01-25T11:04:19.254+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Cloud</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Mobile</category><category domain="http://www.blogger.com/atom/ns#">IT Industry</category><category domain="http://www.blogger.com/atom/ns#">Enterprise</category><title>Consumerization of IT – what it means for the Architect</title><description>Consumerization is described as the trend for IT to first emerge in the Consumer space and subsequently makes its way into the enterprise world. But what exactly in the consumer world, that is making the users, demand the similar things from the enterprise IT. To understand the underlying need, we need to first examine the basic requirements of the user.
&lt;br /&gt;
&lt;br /&gt;
&lt;img border="0" height="253" src="http://1.bp.blogspot.com/-zbg0_ker18I/TxlqX4TcqqI/AAAAAAAACvI/FgcyQVuY2Yg/s320/user-hierarchy.png" style="background-color: white; border-bottom-style: solid; border-color: initial; border-image: initial; border-left-style: solid; border-right-style: solid; border-top-style: solid; border-width: initial; clear: left; display: block; float: left; margin-bottom: 1em; margin-right: 1em; padding-bottom: 8px; padding-left: 8px; padding-right: 8px; padding-top: 8px;" width="320" /&gt;
Kathy Sierra, co-creator of the Head First series of books and founder of javaranch.com, describes the &lt;a href="http://headrush.typepad.com/creating_passionate_users/2007/01/what_comes_afte.html"&gt;hierarchy of needs&lt;/a&gt; from the user(s) perspective. The needs are stacked in the order of increasing engagement from the user. Starting with the basic needs of a defined functionality and its correctness, moving on to the learnability, efficiency &amp;amp; usability and finally culminating in intuitiveness and enchantment. Merely provision of correctly working functionality is not guarantee of the success of the application(s). The idea is to hook the user; the application needs to do something extra. &lt;br /&gt;
&lt;br /&gt;
Using the hierarchy of needs as the background, we will see how the applications in the consumer and enterprise world stack up.
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;Now, in the consumer world, the advent of Consumerization started with the proliferation of the mobile devices.&amp;nbsp;In the connected world, the device (smartphone or tablet) imposed certain constraints&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Screen size is small and limited&lt;/li&gt;
&lt;li&gt;
Processing power of the device is limited&lt;/li&gt;
&lt;li&gt;
Interface is touch enabled&lt;/li&gt;
&lt;li&gt;
Connectivity is not constant (read patchy) and speed/data is limited (no unlimited data plans)&lt;/li&gt;
&lt;li&gt;
User audience demography not known&lt;/li&gt;
&lt;/ul&gt;
Now, the Apps needed to be designed keeping in mind the constraints, which meant that the Apps are
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;
Focused on providing only one functionality&lt;/li&gt;
&lt;li&gt;
Have simple and intuitive messages/steps in the absence of any help/guides &lt;/li&gt;
&lt;li&gt;
Providing simple interfaces (cater to worldwide audience)&lt;/li&gt;
&lt;li&gt;
Having uncluttered screens as real estate is limited&lt;/li&gt;
&lt;li&gt;
Using UI Controls that are big and usable (touch interface)&lt;/li&gt;
&lt;li&gt;
Having intuitive workflows &lt;/li&gt;
&lt;li&gt;
Engaging to stand apart among the millions of other Apps&lt;/li&gt;
&lt;/ul&gt;
This meant that the functionality does not require the user to be a geek. The average individual user can understand and use the App functionality without any external help. Majority of the Consumer Apps are heavily focused on the Efficiency and Usability part. Few of the Apps have been able to enchant and engage the user (e.g. Angry Birds). 
&lt;br /&gt;
&lt;br /&gt;
&lt;img border="0" height="252" src="http://4.bp.blogspot.com/-92Qd6az5Hqk/TxlnmUMgA8I/AAAAAAAACvA/5jq-V05qWBg/s320/enterprise-consumer.png" style="background-color: white; border-bottom-style: solid; border-color: initial; border-image: initial; border-left-style: solid; border-right-style: solid; border-top-style: solid; border-width: initial; clear: left; display: block; float: left; margin-bottom: 1em; margin-right: 1em; padding-bottom: 8px; padding-left: 8px; padding-right: 8px; padding-top: 8px;" width="320" /&gt;
In the enterprise world, the device is most likely to be powerful desktop/laptop with a large screen. The connectivity is via LAN or broadband. As a result the Enterprise Applications are more industrial with high focus on providing long list of functionality and ensuring the correctness of the same. Consumers facing business applications usually focused on usability, Specialized enterprise applications (e.g. Call Center Applications) focus on the overall workflow efficiency, but majority of the applications are resource intensive, lack efficiency and have high learnability curves.&lt;br /&gt;
&lt;br /&gt;
The enterprise user experiences the simple, intuitive consumer apps on their mobile devices. With the advent of BYOD (Bring Your Own Device), enterprise user’s started bringing their smart devices into the enterprise. Soon the users are comparing the experience of consumer apps with the enterprise business apps; they wonder why the enterprise apps can’t provide a similar experience. Why are the enterprise apps so low on learnability, efficiency, intuitiveness factors?&lt;br /&gt;
&lt;br /&gt;
The whole idea behind the Consumerization of IT is not just measures like BYOD but to&lt;i&gt; bring the missing &lt;u&gt;intuitiveness&lt;/u&gt;, &lt;u&gt;usability &lt;/u&gt;and &lt;u&gt;efficiency &lt;/u&gt;into the enterprise applications.&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;So, what does Consumerization means for the Architect?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
When designing and architecting enterprise business applications, following considerations need to be kept in mind
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;
Connected users means the applications need to be &lt;b&gt;available 24 X 7&lt;/b&gt; ( Always On, Always Available), 24 X 7 availability requires application solution(s) to be elastic – expand or shrink based on the load &lt;/li&gt;
&lt;li&gt;&lt;b&gt;
Intuitiveness &lt;/b&gt;and &lt;b&gt;Usability &lt;/b&gt;have to be high on the agenda when designing the interface and workflows&lt;/li&gt;
&lt;li&gt;
Solution needs offer APIs for additional applications to be build&lt;/li&gt;
&lt;li&gt;
Integration with systems and other applications (including SaaS) need to be simple, straight forward and well documented&lt;/li&gt;
&lt;li&gt;&lt;b&gt;
User experience&lt;/b&gt; is the key to successful business application (it was always the key) but need to be (re)designed for the connected &amp;amp; mobile devices&lt;/li&gt;
&lt;li&gt;
Product evaluation(s) will now include&lt;b&gt; SaaS applications&lt;/b&gt; that can provide the functionality&lt;/li&gt;
&lt;li&gt;
Saas adoption will increase leading to newer challenges in integration, data security and privacy measures&lt;/li&gt;
&lt;li&gt;
Applications need to be designed/tested keeping in mind various devices/OS combinations (days of designing apps that worked on IE6 only are over)&lt;/li&gt;
&lt;/ul&gt;
&lt;i&gt;The impact of consumerization on the Enterprise IT will be felt in the years to comes, BYOD is just the harbinger of things to come.


&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;This post originally appeared at &lt;/i&gt;&lt;a href="http://www.techspot.co.in/"&gt;www.techspot.co.in&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=n3rSPWp6h7E:F-Wwg3H3dbc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/n3rSPWp6h7E" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/n3rSPWp6h7E/consumerization-of-it-what-it-means-for.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-zbg0_ker18I/TxlqX4TcqqI/AAAAAAAACvI/FgcyQVuY2Yg/s72-c/user-hierarchy.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/01/consumerization-of-it-what-it-means-for.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-2979610797004140370</guid><pubDate>Tue, 17 Jan 2012 07:30:00 +0000</pubDate><atom:updated>2012-01-17T14:36:41.197+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Bigdata</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Enterprise</category><category domain="http://www.blogger.com/atom/ns#">Hadoop</category><title>Bigdata Trends in 2012</title><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/--GQeWPGo0-c/TxQNnNQBKBI/AAAAAAAACus/Vz476ZtZCAA/s1600/bigdata2012.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="195" src="http://4.bp.blogspot.com/--GQeWPGo0-c/TxQNnNQBKBI/AAAAAAAACus/Vz476ZtZCAA/s200/bigdata2012.png" style="border: 0;" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;
Bigdata has caught the fancy of each and everyone. Consumer and enterprise world is looking to adopt the Bigdata. Analysts are talking about it, proclaiming it to the next big thing! &lt;br /&gt;
&lt;br /&gt;
This is my take on how the Bigdata market space will evolve in 2012 and years to come.
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Data Analytics Service&lt;/b&gt; – We will start seeing SaaS vendors that will start offering data analytics as a service (e.g. &lt;a href="http://www.1010data.com/"&gt;1010data&lt;/a&gt;). These vendors will be able to pull in your unstructured data and provide you standardized reports and data services. This is very similar to the Web analytics (like Omniture) but access lot more data to provide patterns. 70-80% of the data analysis pattern will be similar across industries. These vendors will be able to provide these reports as off the shelf capabilities. For the other 20%, the web interface will allow the user to create patterns to analyze the data&lt;/li&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;
&lt;li&gt;&lt;b&gt;
Data Visualization Service&lt;/b&gt; – Analysis is only one part of the data, the other big thing will be able to visualize the data (more like infographics) that help make sense of the scale and data points. Business will need help to make sense of all this analysis and again 3rd party vendors (via products or Saas) will be fulfilling this space&lt;/li&gt;
&lt;br /&gt;
&lt;li&gt;&lt;b&gt;
Crowdsourcing Model&lt;/b&gt; – enterprise will start using the crowdsourcing model to help analyze and find patterns in the data. &lt;a href="http://innovationcasestudies.blogspot.com/2009/05/case-study-1-goldcorp.html"&gt;Goldcorp&lt;/a&gt; was one the original pioneers that used the crowdsourcing model to analyze the geological data. This model will be seen more when dealing large geospatial data in the areas of mining, drilling, oil ad gas&lt;/li&gt;
&lt;br /&gt;
&lt;li&gt;&lt;b&gt;
RDBMS vendors will make a comeback&lt;/b&gt; – Bigdata has been scoring high on account of their ability to analyze and process unstructured data. The NoSQL vendors and products are all claiming to be the holy grail of data storage, fast processing and analytics. I believe, the Big Vendors –Oracle, IBM and to some extent Microsoft will release their version of relational databases that can store (using automated data sharding) and process large amount of data (with a SQL MapReduce layer). The vendors will incorporate techniques from the NoSQL world coupled with in-memory storage (think Coherence, eXtreme Scale) to provide sub second read write response times. The market is too big for the existing vendors to not claim supremacy&lt;/li&gt;
&lt;br /&gt;
&lt;li&gt;&lt;b&gt;
NoSQL market will shake up&lt;/b&gt; – The current crop of NoSQL solutions has emerged as need to fulfill certain use cases. Their base features and functionality have been decided by the patronizing user client/project co-sponsors (e.g. Cassandra – Facebook, Hadoop-Yahoo, membase-Zynga). These NoSQL solutions work very well for the specific use case. Attempts to broad base the use case, mean a lot of effort needs to put in. Along the way, some products will merge, some will lose community support and other will get acquired by product vendor companies&lt;/li&gt;
&lt;br /&gt;
&lt;li&gt;&lt;b&gt;
Data Analysis Libraries &lt;/b&gt;- To help the developers analyze data, the common patterns and designs will be available as off the shelf libraries. This means, analyzing data for most common patterns will be easier and will become no-brainer. The projected need for Data scientists will not materialize to the same extent with the proliferation of these libraries. E.g. &lt;a href="http://www.microsoft.com/en-us/sqlazurelabs/labs/numerics.aspx"&gt;MS Cloud Numerics&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
Bigdata will follow the Consumerization model, where the core infrastructure either comes as a service or an appliance. The data analytics, data visualization will be provided as a standard set of services on top of the raw data with an ability to create your own model.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Do let me know, how do you see the Bigdata market moving forward and do you agree or disagree with my predictions?&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=5SOTr7Q1Q2Y:l7rcZw5Uoc0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/5SOTr7Q1Q2Y" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/5SOTr7Q1Q2Y/bigdata-trends-in-2012.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/--GQeWPGo0-c/TxQNnNQBKBI/AAAAAAAACus/Vz476ZtZCAA/s72-c/bigdata2012.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/01/bigdata-trends-in-2012.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-2744983566666768012</guid><pubDate>Wed, 04 Jan 2012 13:35:00 +0000</pubDate><atom:updated>2012-01-17T14:36:03.101+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">JEE</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Web Services</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><title>Application Performance and Antipatterns</title><description>&lt;a href="http://4.bp.blogspot.com/-v8d2SGJUDfY/TwUz6vG-C1I/AAAAAAAACug/Z-5NV8ap3RY/s1600/antipatterns.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="153" src="http://4.bp.blogspot.com/-v8d2SGJUDfY/TwUz6vG-C1I/AAAAAAAACug/Z-5NV8ap3RY/s320/antipatterns.png" style="border: 0;" width="320" /&gt;&lt;/a&gt;Any application you pick up, there are some issues – big or small. There will be copy-paste code, mistakes, algorithms which could have better thought through. But what distinguishes an antipattern from these normal errors is that like patterns these antipatterns are recurring throughout the code base. In my recent experience in dealing with performance issues, I had observed certain recurrent themes that are undermining the overall application performance. Most of these antipatterns are well documented but it seems we do not learn from others mistakes. We need to make our own mistakes. I am recounting some of the common patterns that I observed in the recent months.&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Excessive Layering&lt;/b&gt; - Most of the underlying performance starts with the excessive layering antipattern. The application design has grown over the usage of controllers, commands and facades. In order to decouple each layer, the designers are adding facades at each of the tiers. Now, for every request at the web tier, the request call goes through multiple layers just to fetch the results. Imagine doing this for thousands of requests coming in and the load the JVM need to handle to process these requests. The number of objects that get created and destroyed when making these calls add to the memory overhead. This further limits the amount of requests that can be handled by each server node.
&lt;br /&gt;
&lt;br /&gt;
Based on the size of the application, deployment model, the number of user’s, appropriate decision need to be taken to reduce the number of layers. E.g. if the entire application gets deployed in the same container, there is no need to create multiple layers of process beans, service beans(business beans), data access objects etc. Similarly, when developing an internet scale application, large number of layers start adding overheads to the request processing.
&lt;br /&gt;&lt;br /&gt;
&lt;i&gt;Remember, large number of layers means large number of classes which effectively start impacting the overall application maintainability.
&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;b&gt;Round Tripping&lt;/b&gt;- With the advent of ORM mappings, Session/DAO objects, the programmer starts making calls to beans for every data. This leading to excessive calls between the layers. Another side issue is the number of method calls each layer start having to support this model. Worse case is, when the beans are web service based. Client tier making multiple web service calls within a single user request have a direct impact on the application performance. 
&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-fT0gNDDo4Yo/TwUynr0BMTI/AAAAAAAACuU/CgzrVWhoo5Q/s1600/antipattern.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="115" src="http://4.bp.blogspot.com/-fT0gNDDo4Yo/TwUynr0BMTI/AAAAAAAACuU/CgzrVWhoo5Q/s400/antipattern.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;i&gt;To reduce the round tripping, the application needs to handle or combine multiple requests at the business tier.&lt;/i&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;b&gt;Overstuffed Session&lt;/b&gt;- Session object is a feature provided by the JEE container to track user session during the web site visit. The application start with the promise of putting very minimal information in the session but over a period of time, the session object keeps on growing. Too much of data or wrong kind of data is stuffed into the session object. Large data objects will mean that the objects placed in the session will linger on till the session object is destroyed. This impacts the number of user’s that can be served by the application server node. Further, I have seen, application using session clustering to support availability requirements but adding significant overheads to the network traffic and ability of application to handle higher number of users.
&lt;br /&gt;&lt;br /&gt;
&lt;i&gt;To unstuff the session object, take an inventory of what all goes there, see what is necessary, what objects can be defaulted to request scope. For others, remove the objects from session when their usage is over.&lt;/i&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;b&gt;Golden Hammer (Everything is a Service)&lt;/b&gt; – With the advent of SOA, there is tendency to expose the business services, which can be orchestrated into process services. In the older applications, one can observe similar pattern being implemented with EJBs. This pattern coupled with the &lt;i&gt;bottom up design approach&lt;/i&gt; at times, means &lt;i&gt;exposing each and every data entity as a business service&lt;/i&gt;. This kind of design might be working correctly functionally, but from the performance and maintenance point of view, it soon becomes a night mare. Every web service call adds overhead in terms of data serialization and deserialization. At times, the data(XML) being passed with web service calls is also huge leading to performance issues. 
&lt;br /&gt;&lt;br /&gt;
&lt;i&gt;The usage of services or ejb’s should to be evaluated from application usage perspective. Attention needs to be paid on the contract design.&lt;/i&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;b&gt;Chatty Services&lt;/b&gt; – Another pattern observed is the way the service is implemented via multiple web service calls each of which is communicating a small piece of data. This results in explosion of web services and which leads to degradation of performance and unmaintainable code. Also, from the deployment perspective, the application starts running into problems. I have come across projects which have hundred plus services all getting crammed into a single deployment unit. When the application comes up, the base heap requirement is already in 2Gb range leaving not much space for application to run.&lt;br /&gt;&lt;br /&gt;
&lt;i&gt;If the application is having too many fine grained services, then it an indication towards the application of this antipattern.&lt;/i&gt;

&lt;/li&gt;
&lt;/ul&gt;
The above mentioned antipatterns are frequent causes of application performance issues. The teams usually start with the right intentions but over a period of time, things will start slipping. Some of the common reasons 
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Lack of design standards and reviews processes – even if these exists, the delivery pressure is leading to skipping these processes
&lt;/li&gt;
&lt;li&gt;Team members inexperience or narrow view leads to every programmer only looking at their module and nobody is looking at the overall application performance
&lt;/li&gt;
&lt;li&gt;Continuous Integration(CI) tools not integrated with compliance check tools like PMD, Checkstyle, FindBugs etc
&lt;/li&gt;
&lt;li&gt;No focus on profiling of the application on regular basis during the code construction phase
&lt;/li&gt;
&lt;li&gt;Not evaluating the results from the Load tests to decipher and fix the underlying issue (blaming the poor infrastructure setup)&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;i&gt;What are the other antipatterns you have observed that have contributed to the degradation in the application performance. Do share!&lt;/i&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=BL7QQ583t2M:vGVnjWs3Sao:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/BL7QQ583t2M" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/BL7QQ583t2M/application-performance-and.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-v8d2SGJUDfY/TwUz6vG-C1I/AAAAAAAACug/Z-5NV8ap3RY/s72-c/antipatterns.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2012/01/application-performance-and.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-8366666269980742475</guid><pubDate>Mon, 19 Dec 2011 13:40:00 +0000</pubDate><atom:updated>2012-01-17T14:37:04.989+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tip</category><category domain="http://www.blogger.com/atom/ns#">Testing</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Patterns</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><title>Deciphering an Outage</title><description>&lt;a href="http://4.bp.blogspot.com/-uLny0IAhxDs/Tu8-qBbfMvI/AAAAAAAACsA/-5x4Iu0vEjE/s1600/fire.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://4.bp.blogspot.com/-uLny0IAhxDs/Tu8-qBbfMvI/AAAAAAAACsA/-5x4Iu0vEjE/s200/fire.png" style="border: 0px;" width="196" /&gt;&lt;/a&gt;Recently, there was a major fire outage reported. The building maintenance team informed the fire brigade department. The fire brigade came in, helped douse the fire and tried to salvage whatever they could. The owner of the building demanded an independent assessment of the reasons behind the fire, what triggered it and how to make sure this does not happen again. The building maintenance team called in an independent assessment team and asked them to comb the carnage and find out what might have caused this!&lt;br /&gt;
&lt;br /&gt;
The independent assessment team went through the motions of accumulating the evidence, looking for telltale signs of what might have gone wrong and then eventually did an event reconstruction on how events would have unfolded on that day. Subsequently, the team came out with the recommendations that need to be implemented to make sure that such an outage does not happen again.&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
Typical reasons for most of fire outages are –not conducting regular fire safety drills, violation of the building codes, not designing the fire exit paths, not keeping common area’s clean, storing hazards materials in the basement and building unauthorized extensions. This was the same case here and the recommendations were mostly in same line. Do regular fire safety drills, design fire exit paths, adhere to the building codes, demolish unauthorized extensions, stop storing hazards materials in the basement.&lt;br /&gt;
&lt;br /&gt;
Can you guess the reasons for?&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;why the building was built in violation of so many norms&lt;/li&gt;
&lt;li&gt;how did all the inspectors certified the building&lt;/li&gt;
&lt;li&gt;why did the client not got an independent assessment of the building done before possession&lt;/li&gt;
&lt;li&gt;why did the maintenance team accepted the building without looking into the cost of maintenance in the absence of basic safety&lt;/li&gt;
&lt;li&gt;why should the people using the building not lose confidence in the safety of the building&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
The above scenario is analogous to what I encountered recently.&lt;u&gt;&lt;b&gt; Only difference is that it was a customer facing web application that faced the outage&lt;/b&gt;&lt;/u&gt;.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=8EEdqcJbukg:a7fUCSi5ZuU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/8EEdqcJbukg" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/8EEdqcJbukg/deciphering-outage.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-uLny0IAhxDs/Tu8-qBbfMvI/AAAAAAAACsA/-5x4Iu0vEjE/s72-c/fire.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/12/deciphering-outage.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-8831062374442409165</guid><pubDate>Mon, 07 Nov 2011 05:56:00 +0000</pubDate><atom:updated>2012-01-17T14:37:42.724+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Others</category><category domain="http://www.blogger.com/atom/ns#">Collaboration</category><category domain="http://www.blogger.com/atom/ns#">CMS</category><category domain="http://www.blogger.com/atom/ns#">Enterprise</category><title>Managing Enterprise Group Mail Content</title><description>&lt;a href="http://2.bp.blogspot.com/-iP5bg9APSlU/TrdrOgppG0I/AAAAAAAACbQ/PRQv9J2SmP0/s1600/enterprise-mails.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="144" src="http://2.bp.blogspot.com/-iP5bg9APSlU/TrdrOgppG0I/AAAAAAAACbQ/PRQv9J2SmP0/s320/enterprise-mails.png" style="border: 0px;" width="320" /&gt;&lt;/a&gt;How many times, we have seen that one of the easiest way of cleaning up your mail box is to delete all the enterprise announcements and group e-mails? Are we getting bombarded with too many policy change mails, group emails and announcements? After a few days of the email bombardment, are our brain gets conditioned to just ignore them ?
&lt;br /&gt;
&lt;br /&gt;
All this leads to a point where we start becoming clueless about
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Happenings in the Enterprise&lt;/li&gt;
&lt;li&gt;Policy/Process Changes that might be affecting us&lt;/li&gt;
&lt;/ul&gt;
which means we might be working harder and not smarter.&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;
&lt;blockquote class="tr_bq"&gt;
Imagine, the enterprise announces some template for making presentations. The same is announced with enterprise wide email. We ignore the email contents and continuing using the older templates. One fine day, the boss looks at the presentation and says why are you using the older template and there is no body else to blame except self. &lt;/blockquote&gt;
Or&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
Imagine, you did saw the email and know about the new template. But you deleted the email. When a fort night later, there was a requirement to make a presentation, you are searching high and dry for the link from where you can download the template. There is no direct link available on your intranet that points to the template. There is no way to retrieve the email also.&lt;/blockquote&gt;
Why do enterprise not make available all those emails available on the intranet? Is there an easier way to manage this flood of important information? How can the individual employee choose to subscribe/unsubscribe to such emails? Is there a way the employee can refer to these emails later on - where the content is available tagged and ready to be searched?&lt;br /&gt;
&lt;br /&gt;
The answer to these question is simple tool - &lt;b&gt;Blogs&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Enterprise can start publishing all the announcements as blog entries. This simple tool alleviates all the pains and provide a fantastic way of organizing all&amp;nbsp; the content that is properly tagged and available to be searched, subscribed and even allow debates on some of those emails. How many times we wanted to comment on some policy change but could not do so because it is a group email and there is no way to provide feedback. &lt;br /&gt;
&lt;br /&gt;
Having a blog does not mean, the enterprise stops sending out emails but the blog can become the one stop content repository for all such announcements. Today, publishing an entry is as easy as sending an email.&lt;br /&gt;
&lt;br /&gt;
Modern Web Social Collaboration tools provide blog as a feature out of box. Enterprises can make use of the Blog as a means of storing enterprise group email content.&lt;br /&gt;
&lt;br /&gt;
Most of the internet based business already make use of the blogs to connect and disseminate information about their products and services. It is just a matter of picking up the same best practice within the enterprise.&lt;br /&gt;
&lt;ul&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=YhMnp3noyuE:te9nvU5LMNo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/YhMnp3noyuE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/YhMnp3noyuE/managing-enterprise-group-mail-content.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-iP5bg9APSlU/TrdrOgppG0I/AAAAAAAACbQ/PRQv9J2SmP0/s72-c/enterprise-mails.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/11/managing-enterprise-group-mail-content.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-1177535114676969419</guid><pubDate>Mon, 17 Oct 2011 11:04:00 +0000</pubDate><atom:updated>2012-01-17T14:38:08.777+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Patterns</category><category domain="http://www.blogger.com/atom/ns#">Proposals</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><title>Building Scalable Enterprise Systems</title><description>Successful enterprise are all about business agility and able to introduce new products and services in the market. All this business agility coupled with reduced IT overheads means, the enterprise need to find better ways to improve and transform  their enterprise systems.&lt;br /&gt;
&lt;br /&gt;
The advent of Cloud, Social, Mobile and Consumerization of IT means enterprises applications need to be adapt to the changing environment. Today, every enterprise is looking to fulfill the following demands&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Adopt cloud for their enterprise applications (whether private / public / hybrid is a matter of enterprise priorities)&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Replace or retire in-house enterprise applications ( where applicable) in favor of the equivalent SaaS applications&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Expose enterprise data for third party consumption&lt;/li&gt;
&lt;li&gt;
Make the enterprise functionality available over variety of channels (web, mobile) - Consumerization&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Make the systems available 24X7 to meet the ever growing business demands&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
The Enterprise application patterns for creating applications – Portals, CMS, SOA, Centralized DB’s are not functionally capable or geared to meet the new business demands. The enterprise needs to adopt the newer application patterns that are coming out of the consumer web world. Some of the patterns emerging out of new generation consumer web applications that can be applied for enterprise applications
&lt;a name='more'&gt;&lt;/a&gt;
&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Partition by Function&lt;/b&gt; – Divide the functionality by usage patterns or resource consumption. The functionality can be exposed using RESTful or Web services. This functional grouping will help in achieving optimization at the resource level. This helps to scale individual functional groups based on their resource characteristics (High CPU, More RAM, High I/O). This pattern organizes the enterprise platform around services which in turn provides agility. Things can be done in parallel because the output is a service. This allows fast time to market. Helps create an infrastructure that allows services to be built very fast.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Segregate the providers and Consumers&lt;/b&gt; – Instead of building large monolithic applications, segregate the functionality providers versus consumers. The enterprise should have separate teams – one that deal with the functionality provider and other that consume the functionality. The functionality is exposed via simple API’s having standard versioned interfaces&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Public/private cloud integration &lt;/b&gt;– Enterprises need to have standardized integration strategy as the need on board multiple applications from multiple vendors start becoming common.
&lt;ul&gt;
&lt;li&gt;Enterprise need to start integrating with SaaS vendors that can provide the required apps for the consumption of the enterprise users. At times, the integration might need to be handled at the API levels specifically for authentication/authorization.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Enterprise applications specially that are consumer facing can also be hosted in public clouds. &lt;/li&gt;
&lt;/ul&gt;
Enterprise need to integrate services that handle data coming in or going out from public cloud / SaaS vendors to their data centers.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-ybO7JX8szhg/TpwKpto1dpI/AAAAAAAACR8/DBYj5SwpFqM/s1600/Ent-Sys.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="250" src="http://2.bp.blogspot.com/-ybO7JX8szhg/TpwKpto1dpI/AAAAAAAACR8/DBYj5SwpFqM/s400/Ent-Sys.png" style="border: 0px none;" width="500" alt="Click to see larger version of the image"/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=eKxv4qkjJbc:SIBpZMEjWeg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/eKxv4qkjJbc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/eKxv4qkjJbc/building-scalable-enterprise-systems.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-ybO7JX8szhg/TpwKpto1dpI/AAAAAAAACR8/DBYj5SwpFqM/s72-c/Ent-Sys.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/10/building-scalable-enterprise-systems.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-1234701271442388886</guid><pubDate>Fri, 14 Oct 2011 10:55:00 +0000</pubDate><atom:updated>2012-01-17T14:38:56.209+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Capacity Planning</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><title>Why focus on Performance Engineering ?</title><description>&lt;a href="http://2.bp.blogspot.com/-Qo76LUSe2ZA/TpgTV2lcHoI/AAAAAAAACR0/ismFFTPszhQ/s1600/APR.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="140" src="http://2.bp.blogspot.com/-Qo76LUSe2ZA/TpgTV2lcHoI/AAAAAAAACR0/ismFFTPszhQ/s400/APR.jpg" style="border: 0px;" width="400" /&gt;&lt;/a&gt;Time and again, we witness, when a program goes into acceptance testing phase, the client and teams suddenly realize that the application is not meeting the Non-Functional requirements. Usually the application is very slow, or it is frequently going down or not scaling up as expected. I am not even talking of requirements mismatch here.&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;
&lt;br /&gt;
When client suddenly raises all these questions, all hell breaks loose within the development team. The team tries to find the hot spots and try to fix them. Invariably,  I have seen the teams end only fixing the symptoms of the problem but not able to correct the problem. E.g if the application is making too many calls to the database. The quick fix at times is to cache the data. But invariably, this leads to problem in the future of cache invalidations and cache synchronization if the application is clustered. Remember, when we are fixing the symptom of the problem, we are only postponing the problem to a future stage (&lt;a href="http://www.techspot.co.in/2011/09/grappling-with-requirement-complexities.html"&gt;Technical Debt&lt;/a&gt;). All this means, with gating criteria's not getting met, cost and schedule over run becomes a norm. This becomes the most crucial phase of the program as the chances of program getting&amp;nbsp;abandoned&amp;nbsp;starts increasing exponentially. All this forms the long tail, as the program just keeps dragging on.&lt;br /&gt;
&lt;br /&gt;
Focus on the Non-functional requirements right from day one is very important. Getting the architecture right at the beginning is very important, as the cost of fixing the problems keep on increasing exponentially as the application develops further and in the later stages it takes a heavy toll on every one. Techniques like Performance Driven Development is a good step in the direction. Other way to analyse each aspect of the requirement and design using the lens of non-functional requirement. At times, we as architects will be able to push requirements that do not meet the NFRs.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=eGd5hWA9NYY:Dyie8L4dcDA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/eGd5hWA9NYY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/eGd5hWA9NYY/why-focus-on-performance-engineering.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-Qo76LUSe2ZA/TpgTV2lcHoI/AAAAAAAACR0/ismFFTPszhQ/s72-c/APR.jpg" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/10/why-focus-on-performance-engineering.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-9072891532544121773</guid><pubDate>Mon, 10 Oct 2011 07:01:00 +0000</pubDate><atom:updated>2011-10-10T12:31:27.542+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">IT Industry</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><category domain="http://www.blogger.com/atom/ns#">Hadoop</category><title>Why are Enterprises looking at BigData?</title><description>&lt;a href="http://2.bp.blogspot.com/-jIZh60lQmJY/TpKXQR6VPFI/AAAAAAAACRw/U7W_orHm8KA/s1600/bigdata.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="198" src="http://2.bp.blogspot.com/-jIZh60lQmJY/TpKXQR6VPFI/AAAAAAAACRw/U7W_orHm8KA/s200/bigdata.jpg" style="border: 0px;" width="200" /&gt;&lt;/a&gt;The advent of the Social Collaboration, Online Selling, Digital Goods, Mobile means every enterprise wants to process the transactional and analytical data, that is being collected at multiple customer touch points. All this data need to be processed so that the enterprise can better understand the customer, his social network, his buying patterns and other things. &lt;br /&gt;
&lt;br /&gt;
This has led to ever increasing amount of data, which is leading to the following issues within the enterprise&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;Business do not have access to the real time data feeds&lt;/li&gt;
&lt;li&gt; Queries are running in hrs and minutes and not in seconds&lt;/li&gt;
&lt;li&gt;The batch processes, ETL, data loads are taking too much of time&lt;/li&gt;
&lt;li&gt;Ability to construct new models based on the data is time consuming&lt;/li&gt;
&lt;li&gt;Scalability of systems with ever increasing data is becoming a problem&lt;/li&gt;
&lt;li&gt;Data Storage/Redundancy is another problem&lt;/li&gt;
&lt;li&gt;Increasing License cost of software/hardware is another issue &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
When Business looks and reads about how Facebook, Yahoo, Google etc are managing large amounts of data (BigData) and are able to process the same at real time, they want to adopt some of their systems and techniques.&lt;br /&gt;
&lt;br /&gt;
The new systems/technologies that have been open sourced and are getting adopted rapidly by the enterprises are &lt;a href="http://hadoop.apache.org/"&gt;Hadoop &lt;/a&gt;and its various commercial versions (&lt;a href="http://www.cloudera.com/"&gt;Cloudera&lt;/a&gt;, &lt;a href="http://www.hortonworks.com/"&gt;Hortonworks&lt;/a&gt;, &lt;a href="http://www.greenplum.com/"&gt;GreenPlum&lt;/a&gt;). In addition, other commercial vendors have also jumped in with their specific BigData offerings - IBM has &lt;a href="http://www-01.ibm.com/software/data/infosphere/biginsights/"&gt;BigInsights&lt;/a&gt;, Oracle has&lt;a href="http://www.oracle.com/us/solutions/ent-performance-bi/business-intelligence/exalytics-bi-machine/overview/index.html"&gt; Exalytics In-memory machine&lt;/a&gt;. The commercial vendors are trying to sell big machines - with more RAM and more CPU to be able to process more data.&lt;br /&gt;
&lt;br /&gt;
But, the question is - are enterprises looking at to buy more hardware, software, acquire more licenses to process data or they want to solve the&amp;nbsp; issues.&lt;br /&gt;
&lt;br /&gt;
I believe, the fundamental problem is speed of access to the data (FastData) which is a paramount requirement for the enterprise. BigData only promises to help solve the problem of large amounts of data but it still has a long way to go before it can fulfill rest of the enterprise needs. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=6-VsMPyxARs:Ut_xk0iqHRU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/6-VsMPyxARs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/6-VsMPyxARs/why-are-enterprises-looking-at-bigdata.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-jIZh60lQmJY/TpKXQR6VPFI/AAAAAAAACRw/U7W_orHm8KA/s72-c/bigdata.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/10/why-are-enterprises-looking-at-bigdata.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-979464732380600813</guid><pubDate>Fri, 30 Sep 2011 05:01:00 +0000</pubDate><atom:updated>2011-09-30T10:32:56.450+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Proposals</category><title>Grappling with Requirement Complexities</title><description>&lt;a href="http://2.bp.blogspot.com/-9ffUI06Uwps/ToVNIl9CgTI/AAAAAAAACQg/QZ_yE-C1BsE/s1600/requirement-complexity.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="189" src="http://2.bp.blogspot.com/-9ffUI06Uwps/ToVNIl9CgTI/AAAAAAAACQg/QZ_yE-C1BsE/s320/requirement-complexity.jpg" style="border: 0;" width="320" /&gt;&lt;/a&gt;For an Architect, as if deciphering the requirements between Functional and Non-Functional requirements was not enough, DevOps and Technical Debt has opened another head for bunching requirements.&lt;br /&gt;
&lt;br /&gt;
For the uninitiated, DevOps is a movement that is meant to break down the silo approach between the Dev, QA and IT teams, where the code moved in a batch mode from Dev-&amp;gt;QA-&amp;gt;IT Operations teams. This silo'ed approach meant delay, disruption and duplication of efforts, which ultimately leads to delays in pushing out business functionality.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;
DevOps promote having a integrated team of application development, QA and operations people that shortens the delivery cycles and work within the 2-3 weeks sprint cycle. This means people with multiple skills (read polyglot programming) - either coders with sysadmin skills or vice-verse. Advent of cloud has accelerated this methodology as the team developing the feature is also responsible for its deployment.&lt;br /&gt;
&lt;br /&gt;
With clients insisting on shorted delivery cycles, multiple releases in a day at times means teams need be agile and staffed with appropriate skills to be able to deliver the business functionality.&lt;br /&gt;
&lt;br /&gt;
Damon Edwards explained DevOps very beautifully in a blog post last year:&lt;br /&gt;
&lt;blockquote&gt;
The most fundamental business process in any company is getting an idea from inception to where it is making you money … The whole point of DevOps is to enable your business to react to market forces as quickly, efficiently, and reliably as possible. &lt;/blockquote&gt;
Traditional models of SDLC like waterfall model can not cope with the newer demands of the business. Business wants to try out new features / functionality to guage the client reaction means more releases, more agility expected from the teams.&lt;br /&gt;
&lt;br /&gt;
All this agility, means the code going out is not optimal and can be messy at times. This means maintaining code or adding new features become harder and harder as we progress. All this slows down the sprint cycles.&lt;br /&gt;
&lt;br /&gt;
Technical Debt is a metaphor developed by Ward Cunningham, who drew the comparison between technical complexity and debt and said&lt;br /&gt;
&lt;blockquote&gt;
Shipping first time code is like going into debt. A little debt speeds development so long as it is paid back promptly with a rewrite... The danger occurs when the debt is not repaid. Every minute spent on not-quite-right code counts as interest on that debt. &lt;/blockquote&gt;
If the business insists on reduction of technical debt along with the new features being developed, it adds another layer of complexity to the whole engagements. &lt;br /&gt;
&lt;br /&gt;
Imagine, with every sprint, the team is adding new features ,&amp;nbsp; refactoring / rewriting the old code (to reduce/payback the Technical Debt) , ensure and account for any new Technical Debt getting added, the job of the architect to co-ordinate and co-relate all these varied requirements become lot more harder.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=l6592kkzhec:RdetOnIu_YA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/l6592kkzhec" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/l6592kkzhec/grappling-with-requirement-complexities.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-9ffUI06Uwps/ToVNIl9CgTI/AAAAAAAACQg/QZ_yE-C1BsE/s72-c/requirement-complexity.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/09/grappling-with-requirement-complexities.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-5853267041376552083</guid><pubDate>Thu, 29 Sep 2011 12:31:00 +0000</pubDate><atom:updated>2012-01-17T14:39:17.364+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Tip</category><category domain="http://www.blogger.com/atom/ns#">Review</category><category domain="http://www.blogger.com/atom/ns#">Cloud</category><title>PaaS - is it right for me ?</title><description>&lt;a href="http://3.bp.blogspot.com/-2fyWSxOVogg/ToRg-EEsy7I/AAAAAAAACQQ/_V9b9ZDG9VI/s1600/cloud-paas.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="217" src="http://3.bp.blogspot.com/-2fyWSxOVogg/ToRg-EEsy7I/AAAAAAAACQQ/_V9b9ZDG9VI/s320/cloud-paas.jpg" style="border: 0;" width="320" /&gt;&lt;/a&gt; An organisation embarking on a cloud journey invariably ends up looking for PaaS solutions. PaaS sounds like something that will help me take away all my pains. Creating your application, using drag and drop controls in a browser and everything else taken care (from deployment to running to scalability to back up of data and what not) sounds something exciting and very hard to believe.&lt;br /&gt;
&lt;br /&gt;
Anyway, who wants to deal with the IT folks and deal with all the tantrums they throw, what is possible and what is not.&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;
&lt;br /&gt;
&lt;em&gt;Bernard Golden, &lt;/em&gt;in his article&lt;em&gt;&amp;nbsp;"What You Need to Know About PaaS" &lt;/em&gt;talks about the various issues that need to be looked at, when selecting your PaaS vendor.&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Lock-in&lt;/b&gt; - The productivity gains you get by using vendor API's also mean you get locked on to the platform and application migration becomes all the more difficult.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Complexity - &lt;/b&gt;Writing PaaS application is not the same as writing regular applications. Depending on the vendor, the complexity of writing application increases as you try to add more functionality&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Cloud Service Provider Differentiation&lt;/b&gt; - The whole premise of PaaS platform is to make the writing of applications easy. With all the abstraction the platform provide, you end up getting locked at operation level&lt;/li&gt;
&lt;li&gt;&lt;b&gt;New Skills&lt;/b&gt; - PaaS platforms require new set of skills which means either re-train your existing employee or hire new people&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Mapping existing practices to new frameworks - &lt;/b&gt;Every enterprise will have standard processes, tools and methodologies of working and developing applications. All these need to be re-looked based on the PaaS platform&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
All in all, PaaS platforms need to be evaluated based on your requirements and fitment as per your organisation needs.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Read the complete article &lt;a href="http://www.cio.com/article/689345/Cloud_Computing_What_You_Need_to_Know_About_PaaS"&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=lBHXP6SFrAs:0Y4gqKj_IPQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/lBHXP6SFrAs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/lBHXP6SFrAs/paas-is-it-right-for-me.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-2fyWSxOVogg/ToRg-EEsy7I/AAAAAAAACQQ/_V9b9ZDG9VI/s72-c/cloud-paas.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/09/paas-is-it-right-for-me.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-1593022277774601930</guid><pubDate>Wed, 28 Sep 2011 06:03:00 +0000</pubDate><atom:updated>2011-09-29T18:10:11.843+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Tip</category><category domain="http://www.blogger.com/atom/ns#">Capacity Planning</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><title>Practical approach to Capacity Planning</title><description>&lt;a href="http://1.bp.blogspot.com/-d_VHQyrXRmU/ToRml3B48bI/AAAAAAAACQc/3aoGnI354AA/s1600/capacity-planning.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="170" src="http://1.bp.blogspot.com/-d_VHQyrXRmU/ToRml3B48bI/AAAAAAAACQc/3aoGnI354AA/s320/capacity-planning.jpg" width="320" style="border:0" /&gt;&lt;/a&gt;Capacity Planning is all about managing you resources better. Resources are finite, resources need to be procured, resources come at a cost, resources get consumed, as a result you need to do some capacity planning.&lt;br /&gt;
&lt;br /&gt;
Capacity planning is an exercise undertaken in all the industries. There are plenty of models on how to perform capacity planning. But somehow application of these models in the software industry is too cumbersome, tedious and at times completely useless. These models work best when you have a standardized product and process. In software, every release changes the dynamics of the software product. The code base changes, the code performance changes, the usage pattern might change leading to the failure of the previous capacity planning exercises.&lt;br /&gt;
&lt;blockquote&gt;
&lt;i&gt;Amazon.com released a one
day promotion- Lady Gaga album for 99 cents and the site went down. Lots of
customers could not buy the offered album songs. Leaving lot of customers angry
and loosing potential business&lt;/i&gt;&lt;/blockquote&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;div&gt;
Looking at the problem, following question comes to mind, when to do capacity planning :&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Should I wait for disaster to stuck?&lt;/li&gt;
&lt;li&gt;Should I start capacity planning from day one?&lt;/li&gt;
&lt;/ul&gt;
Next question comes&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;How to go about doing capacity planning?&lt;/li&gt;
&lt;/ul&gt;
There is a simple process for doing capacity planning. It is not different from any other planning process. There are primarily four steps in the process.&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt; &lt;b&gt;Determine your capacity planning goals - &lt;/b&gt;For any capacity planning exercise, it is very important to determine the goals in mind. e.g. for an internet application, managing the ever increasing number of users might be a goal. Similarly, for an intranet application, the number of users might be constant, availability and response time might be the drivers for the capacity planning. Once we understand the nature of the application, and what is the end objective, we can plan the goals. These goals will determine what the measuring points that are required from application. More the measuring points, better will the forecasts.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Collect data and metrics that map to those goals - &lt;/b&gt;Once the goals and the measuring points are determined, we need to collect data that maps to the state goals. e.g. if 99.9% availability of the application is the goal, we need to be able to track the application up-time. We need to track and measure all the links in the applications (be it load balancers, application servers, web servers, data base servers, network, storage, routers, switches, power supply). We need to keep track of the various application usage patterns that can affect the application availability.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Plot that data and make forecasts - &lt;/b&gt;Once we collect the data, we need to plot that data and create trend curves. We will need to extrapolate and do curve fitting on the time series data. This will give us data in terms of application usage changes and help us in product planning. This is an on-going iterative exercise. Every new data brings in more perspective and helps make the forecast better.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Use those forecasts to enhance the capacity - &lt;/b&gt;Based on the forecasts, we need to enhance the capacity to tackle the new growth and achieve our goals. &lt;/li&gt;
&lt;/ol&gt;
Any changes in the application (bug fixing or functionality enhancement) will render the old data invalid. We will need to account for these new changes and map into the measuring points. This will help in accounting for the changes in the forecasts.&lt;br /&gt;
&lt;br /&gt;
Remember, capacity planning is something that starts, when you conceive the application and it continues till the application is sun set.&lt;br /&gt;
&lt;br /&gt;
Capacity planning is not an end in itself but a journey.&lt;br /&gt;
&lt;ul&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=1xdOz2lYghk:PEQ38pa32Ig:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/1xdOz2lYghk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/1xdOz2lYghk/practical-approach-to-capacity-planning.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-d_VHQyrXRmU/ToRml3B48bI/AAAAAAAACQc/3aoGnI354AA/s72-c/capacity-planning.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/09/practical-approach-to-capacity-planning.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-6760160599724586489</guid><pubDate>Wed, 03 Aug 2011 06:11:00 +0000</pubDate><atom:updated>2012-01-17T14:39:51.957+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Trends</category><category domain="http://www.blogger.com/atom/ns#">Cloud</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Mobile</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Others</category><title>Enterprise Mobile Web Strategy</title><description>&lt;a href="http://4.bp.blogspot.com/-aiL7igSbR_Y/Tjjl6QKuANI/AAAAAAAACPc/U4GpQ3Es-GQ/s1600/MobileApps.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://4.bp.blogspot.com/-aiL7igSbR_Y/Tjjl6QKuANI/AAAAAAAACPc/U4GpQ3Es-GQ/s200/MobileApps.jpg" style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px;" width="134" /&gt;&lt;/a&gt;With the proliferation of devices in various screen sizes and running different OS, having a coherent mobile web strategy has become somewhat of a nightmare for the enterprise. Gone are the days, when the enterprise would just optimize the existing web site for mobile and let the content be served. Today’s consumer with the ever powerful device and increasing bandwidth is looking for experience that is equal to or at times better than the web.&lt;br /&gt;
&lt;br /&gt;
When trying to create an mobile strategy, enterprise need to ponder over this&lt;br /&gt;
&lt;ul style="margin-left: 150px;"&gt;
&lt;li&gt;Should I build a native  application for the mobile device&lt;/li&gt;
&lt;li&gt;Should I build a mobile optimized web site&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;
To be able to answer these questions, you need to study the consumer usage patterns and ask&lt;br /&gt;
&lt;ul style="margin-left: 20px;"&gt;
&lt;li&gt;What is the value the information provides to the consumer?&lt;/li&gt;
&lt;li&gt;What is the frequency of access of information by the consumer?&lt;/li&gt;
&lt;li&gt;What is the experience I want to provide to the consumer?&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
What is my business all about? E.g. If the enterprise is in the business of movie screenings. The consumer is interested in the information with regards to the nearest theatre location, what movies are playing, their timings and how can I buy the tickets. The user will be accessing the application multiple times during the month. In this kind of scenario, having a dedicated application is must.&lt;br /&gt;
&lt;br /&gt;
But there will other consumers who have not yet installed the application. For such user’s your web site should be optimized for mobile access and provide the same information and features. In the end, you can ask him to install the application to make the future search and transaction a lot easier.&lt;br /&gt;
&lt;br /&gt;
Having an application also allows you to tap into the features of the mobile device to provide an enriching experience to the consumer. E.g usage of accelerometer, camera, GPS, compass can greatly enhance the consumer experience.&lt;br /&gt;
&lt;br /&gt;
But, if your enterprise is not direct consumer market, having a mobile optimized web site might will do and you need not create a native mobile application.&lt;/blockquote&gt;
&lt;br /&gt;
So, overall your mobile strategy needs to keep in mind these &lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;You definitely need a mobile web strategy, meaning a mobile optimized web site. Whether you need a dedicated mobile app or not depends upon your answers in the earlier section.&lt;/li&gt;
&lt;li&gt;Make sure you optimize the web site across all major mobile platforms (Android, iOS, Windows Phone 7, Blackberry) and across the common device screen sizes&lt;/li&gt;
&lt;li&gt;Make sure you try to leverage mobile device features - accelerometer, camera, GPS, compass etc to enhance the experience&lt;/li&gt;
&lt;li&gt;Make use of the technologies that allows to build and deploy a common code base with little variations across devices. HTML5, CSS3, webfonts should be used when building your mobile applications&lt;/li&gt;
&lt;li&gt;Keep the mobile application design simple. Single column layouts work the best with vertical hierarchy menus. Go easy on the data consumption, today’s devices are faster but consumers do not like application that just hog their bandwidth. Try to keep images to the bare minimum&lt;/li&gt;
&lt;li&gt;When building mobile applications, keep the usability aspects of mobile devices in mind. Taps vs clicks – means larger buttons are required, instant feedback  (e.g. change the button colors to indicate that the action has been registered), typing is usually difficult – having a tap based options help.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Next step comes to the tools that can be used to build the native mobile applications&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.adobe.com/products/flash-builder.html"&gt;Adobe Flash Builder 4.5&lt;/a&gt; offers developers one tool, one development framework and one codebase to build mobile applications on Android, BlackBerry Tablet OS and iOS. It is one integrated development platform that allows you to create mobile application for multiple platforms. You can build very rich UI that make use of device features like accelerometer, camera, GPS, compass etc. You can make use of your enterprise assets - java libraries when building solutions&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.phonegap.com/"&gt;PhoneGap &lt;/a&gt; is an open source development framework for building cross-platform mobile apps using HTML, CSS and JavaScript. The tool enables developers to utilize the core features of the iPhone, Android, Palm, Symbian and Blackberry smartphones, including geolocation, accelerometer, contacts, sound and vibration to build applications&lt;/li&gt;
&lt;li&gt;&lt;a href="http://rhomobile.com/"&gt;RhoMobile &lt;/a&gt;offers Rhodes, an open source, Ruby-based framework that allows for development of native apps for a wide range of smartphone devices and operating systems(iPhone, Android, Windows Mobile, RIM and Symbian)&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.appcelerator.com/"&gt;Appcelerator&lt;/a&gt;&amp;nbsp;provides the Titanium Development Platform which allows for the development of native mobile, tablet and desktop applications through typical web dev languages such as JavaScript, PHP, Python, Ruby and HTML&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
In addition, if you are looking for just the mobile optimization of your web sites and functionality then look for offerings from -&amp;nbsp;netbiscuits, mBlox, iLoop Mobile, Crisp Media, Quattro Wireless, 3Cinteractive.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=JG77FnSL1AQ:n4sZnyUKuvc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/JG77FnSL1AQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/JG77FnSL1AQ/enterprise-mobile-web-strategy.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-aiL7igSbR_Y/Tjjl6QKuANI/AAAAAAAACPc/U4GpQ3Es-GQ/s72-c/MobileApps.jpg" height="72" width="72" /><thr:total>4</thr:total><georss:featurename>Bengaluru, Karnataka, India</georss:featurename><georss:point>12.9715987 77.5945627</georss:point><georss:box>12.724026199999999 77.2787057 13.2191712 77.91041969999999</georss:box><feedburner:origLink>http://www.techspot.co.in/2011/08/enterprise-mobile-web-strategy.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-6632579079411639054</guid><pubDate>Mon, 11 Jul 2011 13:28:00 +0000</pubDate><atom:updated>2011-10-18T10:21:40.415+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Review</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Cloud</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Others</category><category domain="http://www.blogger.com/atom/ns#">Hadoop</category><title>MapReduce for dummies</title><description>Continuing the coverage on Hadoop component, we will go through the MapReduce component. MapReduce is a concept that has been programming model of LISP. But before we jump into MapReduce, lets start with an example to understand how MapReduce works.&lt;br /&gt;
&lt;br /&gt;
Given a couple of sentences, write a program that counts the number of words.&lt;a href="http://1.bp.blogspot.com/-LUpaJdJhHXE/Thr3SCwU_7I/AAAAAAAACOE/N53Asbw80Vs/s1600/MP1.png" imageanchor="1" style="clear: left; display: inline !important; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="232" src="http://1.bp.blogspot.com/-LUpaJdJhHXE/Thr3SCwU_7I/AAAAAAAACOE/N53Asbw80Vs/s400/MP1.png" style="border: 0;" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;Now, the traditional thinking when solving this problem is read a word, check whether the word is one of the stop words, if not , add the word in a HashMap with key as the word and set the value to number of occurrences. If the word is not found in HashMap, then add the word and set the value to 1. If the word is found, then increment the value and word the same in HashMap.&lt;br /&gt;
&lt;br /&gt;
Now, in this scenario, the program is processing the sentence in a serial fashion. Now, imagine if instead of a sentence, we need to count the number of words in encylopedia. Serial processing of this amount of data is time consuming. So, question is is there another algorithm we can use to speed up the processing. &lt;br /&gt;
&lt;br /&gt;
Lets take the same problem and divide the same into 2 steps. In the first step, we take each sentence each and map the number of words in that sentence.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-mlHQj9q_Qlw/Thr3ri04QWI/AAAAAAAACOI/5eNqYW6gpII/s1600/MP2.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="195" src="http://3.bp.blogspot.com/-mlHQj9q_Qlw/Thr3ri04QWI/AAAAAAAACOI/5eNqYW6gpII/s400/MP2.png" style="border: 0;" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once, the words have been mapped, lets move to the next step. In this step, we combine (reduce) the maps from two sentences into a single map.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-T3X3U8fAf4E/Thr3sG_8j7I/AAAAAAAACOM/gASj_nsDmxc/s1600/MP3.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="262" src="http://2.bp.blogspot.com/-T3X3U8fAf4E/Thr3sG_8j7I/AAAAAAAACOM/gASj_nsDmxc/s400/MP3.png" style="border: 0;" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
That’s it, we have just seen how, individual sentences can be mapped individually and then once mapped, can  be reduced to a single resulting map.&amp;nbsp;Advantage of the MapReduce approach is&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;The whole process got distributed in small tasks that will help &amp;nbsp;in faster completion of the job&lt;/li&gt;
&lt;li&gt;Both the steps can be broken down into tasks. In the first, instance, run multiple map tasks, once the mapping is done, run multiple reduce tasks to combine the results and finally aggregate the results&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/-3UJ18ZTrAdg/Thr3sok-t2I/AAAAAAAACOQ/WAm6of-ar70/s1600/MP4.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="321" src="http://3.bp.blogspot.com/-3UJ18ZTrAdg/Thr3sok-t2I/AAAAAAAACOQ/WAm6of-ar70/s400/MP4.png" style="border: 0;" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, imagine this MapReduce paradigm working on the HDFS. HDFS has data nodes that splits and store the files in blocks. Now, if map the tasks on each of the data nodes, then we can easily leverage the compute power of those data node machines.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-XyXAyd4SUjE/Thr3tNMIdkI/AAAAAAAACOU/lK_s2IcoVu8/s1600/MP5.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://2.bp.blogspot.com/-XyXAyd4SUjE/Thr3tNMIdkI/AAAAAAAACOU/lK_s2IcoVu8/s400/MP5.png" style="border: 0;" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So, each of the data nodes, can run tasks (map or reduce) which are the essence of the MapReduce. As each data nodes stores data for multiple files, multiple tasks might be running at the same time for different data blocks.&lt;br /&gt;
&lt;br /&gt;
To control the MapReduce tasks, there are 2 processes that need to be understood&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;JobTracker&lt;/b&gt; - The JobTracker is the service within Hadoop that farms out MapReduce tasks to specific nodes in the cluster, ideally the nodes that have the data, or at least are in the same rack.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;TaskTracker&lt;/b&gt; - TaskTracker is a process that starts and tracks MapReduce Tasks in a cluster. It contacts the JobTracker for Task assignments and reporting results.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
These Trackers are part of the Hadoop itself and can be tracked easily via&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;http://&amp;lt;host-name&amp;gt;:50030/ - web UI for MapReduce job tracker(s)&lt;/li&gt;
&lt;li&gt;http://&amp;lt;host-name&amp;gt;:50060/ - web UI for task tracker(s)&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=KpAedzhBJxA:ESocdCT20Ms:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/KpAedzhBJxA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/KpAedzhBJxA/mapreduce-for-dummies.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-LUpaJdJhHXE/Thr3SCwU_7I/AAAAAAAACOE/N53Asbw80Vs/s72-c/MP1.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/07/mapreduce-for-dummies.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-5772174863597735850</guid><pubDate>Fri, 08 Jul 2011 04:30:00 +0000</pubDate><atom:updated>2011-10-18T10:21:53.095+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Review</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Hadoop</category><title>HDFS for dummies</title><description>&lt;br /&gt;
Whenever a newbie wants to start learning the Hadoop, the number of elements in a Hadoop stack are mind bogling and at times difficult to comprehend. I am trying to de-crypt the whole stack and help explain the basic pieces in my own way. Before we start talking about the Hadoop Stack, let us take a step back and try to understand what led to the origins to the Hadoop.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Problem&lt;/b&gt; – With the prolification of the internet, the amount of data stored growing up. Lets take an example of a search engine (like Google), that needs to index the large of amount of data that is being generated. The search engine crawls and indexes the data. The index data is stored and retrieval from a single storage device. As the data generated grows, the search index data will keep on increasing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;As the number of queries to access data increase, the current file system I/O becomes inadequate to retrieve large amounts of data simuntaneously. Further, the model of one large single storage starts becoming a bottleneck. To overcome the problem, we move the file system from a single disk storage to a clustered file system. But as the amount of data keeps growing the underlying data that can go one one machine starts to become a bottleneck.&lt;br /&gt;
&lt;br /&gt;
As data reaches TB’s, existing file system based solutions starts faltering. Data access, multiple writers, large file sizes soon become a problem in scaling up the system.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Solution&lt;/b&gt; – To overcome the problems, an distributed file system was concieved that provided solution to the above problems. The solution tackled the problem as&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;When dealing with large files, I/O becomes a big bottleneck. So, we divide the files into small blocks and store in multiple machines. &lt;b&gt;[Block Storage]&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;When we need to read the file, the client sends a request to multiple machines, each machine sends a block of file which is then combined together to pierce the whole file.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;With the advent of block storage, the data access becomes distributed and leads to a faster retrieval/write&amp;nbsp;&lt;/li&gt;
&lt;li&gt;As the data blocks are stored on multiple machines, it helps in removing single point of failure by having the same block on multiple machines. Meaning, if one machine goes, the client can request the block from another machine.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Now, any solution that implements file storage as blocks needs to have the following characteristics&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Manage the meta data information – Since the file gets broken into multiple blocks, somebody needs to keep track of no of blocks and storage of these blocks on different machines &lt;b&gt;[NameNode]&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;Manage the stored blocks of data and fulfill the read/write requests &lt;b&gt;[DataNodes]&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
So, in the context of Hadoop –The &lt;b&gt;NameNode&lt;/b&gt; is the arbitrator and repository for all metadata. The NameNode executes file system namespace operations like opening, closing, and renaming files and directories. It also determines the mapping of blocks to DataNodes. &lt;b&gt;DataNodes&lt;/b&gt; are responsible for serving read and write requests from the file system’s clients. The DataNodes also perform block creation, deletion, and replication upon instruction from the NameNode. All these component together form the Distributed File System &amp;nbsp;called as &lt;b&gt;HDFS&lt;/b&gt; (Hadoop Distributed File System).&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-EioR4G_JLRU/ThaG9ZVuYII/AAAAAAAACNs/NFEsAH5M6gg/s1600/HDFS.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="221" src="http://4.bp.blogspot.com/-EioR4G_JLRU/ThaG9ZVuYII/AAAAAAAACNs/NFEsAH5M6gg/s320/HDFS.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class="MsoNormal"&gt;
Reference - &lt;a href="http://hadoop.apache.org/common/docs/current/hdfs_design.html"&gt;http://hadoop.apache.org/common/docs/current/hdfs_design.html&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
HDFS has an inbuild redundancy and replication feature that makes sure that any failure of the machine can be dealt without any loss of data. The HDFS balances itself whenever a new data node is added to the cluster or any of the existing datanode fails.&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
In addition to the distributed file system called HDFS (Hadoop Distributed File System), there are 2 other core components &amp;nbsp; &amp;nbsp;&lt;/div&gt;
&lt;div class="MsoNormal"&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Hadoop Common&lt;/b&gt; – are set of utilities that support the Hadoop subprojects. Hadoop Common includes FileSystem, RPC, and serialization libraries.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Hadoop MapReduce&lt;/b&gt; - is a programming model and software framework for writing applications that rapidly process vast amounts of data in parallel on large clusters of compute nodes&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class="MsoNormal"&gt;
So, effectively, when you start working with Hadoop, HDFS and Hadoop MapReduce are the first 2 things you encounter. I will cover MapReduce in subsequent posts.&lt;/div&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=YjVh_gWjJic:japIXhWImcc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/YjVh_gWjJic" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/YjVh_gWjJic/hdfs-for-dummies.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-EioR4G_JLRU/ThaG9ZVuYII/AAAAAAAACNs/NFEsAH5M6gg/s72-c/HDFS.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/07/hdfs-for-dummies.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-1785717996507886945</guid><pubDate>Sun, 12 Jun 2011 15:24:00 +0000</pubDate><atom:updated>2012-01-05T10:57:19.479+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">Patterns</category><category domain="http://www.blogger.com/atom/ns#">Performance</category><title>Building High Performance Applications</title><description>&lt;a href="http://4.bp.blogspot.com/-X-j1n223g08/TfBb0OK9abI/AAAAAAAACIs/_LL8DQfPk3o/s1600/application.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="169" src="http://4.bp.blogspot.com/-X-j1n223g08/TfBb0OK9abI/AAAAAAAACIs/_LL8DQfPk3o/s200/application.png" style="border: 0px;" width="200" /&gt;&lt;/a&gt;Performance is one word which is used to describe multiple scenarios’ when talking about the application performance. When someone says, I need a High Performance Application; it might mean any/all of the following&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Low Web latency Application ( meaning  low Page Loading times)&lt;/li&gt;
&lt;li&gt;Application that can serve ever increasing number of users (scalability)&lt;/li&gt;
&lt;li&gt;Application that does not go down (either highly available or continuously available)&lt;/li&gt;
&lt;/ul&gt;
For each of the above, as an Architect you need to dig deeper to find out what the user is asking for. With the advent of cloud, every CIO is looking to build applications that meet all of the above scenarios. With the advent of elastic compute, one tends to think that by throwing hardware to the application, we may be able to achieve all of the above objectives.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;The techniques employed to achieve the above scenarios at times are different and it is important to find the right approach to the solution that meets the above objectives. We will examine some of the common techniques that can help us achieve the objectives&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Latency Contributors&lt;/b&gt;&lt;/li&gt;
&lt;ul style="margin-left: 20px;"&gt;
&lt;li&gt;&lt;b&gt;Application Tier ing&lt;/b&gt; – One of the biggest contributors to the latency is the application tier ing. The hops from WebServer -&amp;gt; Application Server -&amp;gt; Database and back, data serialization/deserialization are some of the biggest contributor to the overall latency. Having Web and Application tier within the same box or even within same JVM can help reduce the network latency factor. One can have logical separation in the application code between Web Tier and Application Tier but need not have physical separation. Using Spring Container that has Web/App tier can help achieve the same.&amp;nbsp;If the application is making use of SOA and making multiple web services or JMS message calls, network latency and serialization of data once again adds to the latency. Solutions like IBM Datapower XML Accelerators can be used to reduce the XML overheads. Similarly, the application can use Solace Message Router’s to speed up the messaging.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Bring Data closer to Application&lt;/b&gt; – Data needs to be close to the application so that making all those Database connection calls and getting data from DB can be reduced. Application can cache data to reduce the calls to DB. One can also use cache servers like memcached / ehCache to cache data at the Web/application Tier. Web Tier can cache data like static HTML fragments/images/javascript/CSS files. Application Tier can cache non-transactional data (like lookup maps). OR Mapping tools like Hibernate also support data caching. If it is an Internet Web Application, one can also make use of CDN (content delivery networks)/ Edge Networks (like Akamai) to speed up the delivery of static content.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Disk I/O&lt;/b&gt; – Another weak link in the application performance chain is Disk I/O. One way to overcome the limitations with regards to the Disk I/O is too keep data in memory. In Memory databases (like Volt DB or Solid DB or Oracle TimesTen), XTP solutions (like Oracle coherence, IBM eXtreme Scale, GigaSpaces eXtreme Application Platform) can used to speed up the application performance.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Optimized Hardware&lt;/b&gt; – The hardware on which application is hosted can also be tuned to reduce latency.&amp;nbsp;Optimization s&amp;nbsp;like 10G/20G network, fiber channels, low latency switches, SSD (Solid State Drives), not using virtualization can make sure the application latency is reduced.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Transport Mechanism&lt;/b&gt; – At times, the transport mechanism can also add to the application latency. E.g. secure communication (like https) can add to the latency with the additional overhead of deciphering the data at the receiving end.  One way is to offload the SSL at the Load Balancer/Firewall.&lt;/li&gt;
&lt;br /&gt;
In the end, you need to measure anything and everything to address the bottlenecks. Once the obvious bottlenecks have been addressed, one can start looking at things like – cache thrashing, poor algorithms, data bloating, wrong dimensioning etc to squeeze out that ounce of performance. All the techniques mentioned may not be applicable in all scenarios’, the architect needs to take a call based on the latency requirements.
&lt;/ul&gt;
&lt;li&gt;&lt;b&gt;Application Scalability&lt;/b&gt; – Scalability means ability of an application to handle growing amount of data and concurrency in an efficient manner without impacting performance. Important thing to notice is scalability should not be at the cost of application performance. Some of the techniques that can help scale the application&lt;/li&gt;
&lt;ul style="margin-left: 20px;"&gt;
&lt;li&gt;&lt;b&gt;Stateless Application/Service&lt;/b&gt; – The application should store its state in some centralized repository, but the application itself should be stateless. It means no storing of data or state on local file systems. Stateless application allows one to add any number of application instances to accommodate the increasing growth. But soon, the centralized repository starts becoming the bottleneck. With ever increasing data, repositories like (RDBMS) may start buckling down. One approach to this issue is to minimize mutable state in the database. To handle such scenarios, techniques like data sharding need to be applied. Another approach to managing write contention in the database is to look at the possibility of using NoSQL data stores for some or all of the application data.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Load Balancing&lt;/b&gt; – As the traffic starts going up, the application can handle the additional load by adding additional server instances to service the requests. The load balancer will make sure none of the servers are working beyond their stated load and new instance should be automatically added as and when the load goes up (auto scaling). One can also add load balance to database with techniques like Master-Master topology or Master-Slave(with partitioning read and write data) to handle the additional load. But if the data is going in Petabytes ranges, data sharding with data replication techniques need to be used. The in-memory data grid architecture can also be utilized to scale the data.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Fault Tolerance / Dynamic Discoverable Elements&lt;/b&gt; – When dealing with application that is running in large clusters, it is very important to avoid manual interventions. E.g. when the application load reaches a defined load, the application monitoring should be able to add a new instance and load balancer should be able to recognize the same to utilize it. Similarly, when data gets shard, the applications should be able to recognize and look up the new IP to connect. Similarly, if the application is not able to connect to particular resource, the application should be intelligent enough to recognize the fault and try accessing the alternate resource availability. The application will need to have a central meta data repository for all such fault tolerance scenarios that can be tapped by the application.&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;&lt;b&gt;Application availability&lt;/b&gt; – Availability of an application is very much a function of scalability. Following factors have an impact on the application availability&lt;/li&gt;
&lt;ul style="margin-left: 20px;"&gt;
&lt;li&gt;&lt;b&gt;Redundancy&lt;/b&gt; – The application needs to be scalable to be able to compensate for the loss of any instance (whether hardware or software). The redundancy needs to be build at all layers, Software, Hardware, Power and even at data center levels. Even if the data center goes, the user should be able to access the application. Many at times, the level of redundancy and down time is a factor of how money is being thrown at the solution. Remember some problems have no solutions within the context of today’s technology. E.g. real time data mirroring or data sync across data centers that are located geographically apart.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Fault Tolerance&lt;/b&gt; – The application needs to be fault tolerant (e.g. retry mechanism) to make sure it can take advantage of dynamically allocated resources to keep functioning.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Monitoring/Testing&lt;/b&gt; – Another overlooked factor of application availability is application monitoring. If application is not properly monitored, outages can go undetected leading to application unavailability. Ability to monitor the entire application stack and take corrective actions is very important. This capability is build over a period of time.  Once the application has monitoring, auto-scaling features, testing to make sure they work is also important. Something like Chaos Monkey used by Netflix is very helpful.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Configuration Data&lt;/b&gt; – Any application that needs to be continuously available needs to be able to run using configuration. E.g. if the application introduces the new service interface, the application should have the ability to either make use of the new interface or keep using the old one. This factor becomes very important when rolling out new features/services and all of them cannot be rolled out at once.&lt;/li&gt;
&lt;/ul&gt;
&lt;/ul&gt;
Let me know, if you have used some other techniques to achieve the 3 factors of availability, scalability and low latency.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=oDGjpk0Lovg:1VRT_LIO4g8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/oDGjpk0Lovg" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/oDGjpk0Lovg/building-high-performance-applications.html</link><author>noreply@blogger.com (Munish K Gupta)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-X-j1n223g08/TfBb0OK9abI/AAAAAAAACIs/_LL8DQfPk3o/s72-c/application.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/06/building-high-performance-applications.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-16501575.post-2053753125664637060</guid><pubDate>Tue, 26 Apr 2011 11:38:00 +0000</pubDate><atom:updated>2011-09-19T14:51:58.338+05:30</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Java</category><category domain="http://www.blogger.com/atom/ns#">Architect</category><category domain="http://www.blogger.com/atom/ns#">J2EE</category><title>Maladies of Large scale Software Design</title><description>When designing and maintaining large scale software architecture, certain rules need to be adhered religiously. In the absence of which the software starts degrading, maintenance becomes difficult, adding features becomes a nightmare and soon everything comes crashing down as a house of cards.&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Tiering/Layering your logical architecture – a clear logical separation between different layers lead to simplified code navigation and comprehension. The layers should also follow a strict and clear naming convention for all packages and types. One can make of tools to make sure the code follows the logical architecture and all dependencies are in order.&lt;/li&gt;
&lt;li&gt;Cyclical dependency – Adhere to the principle of well defined and cycle free application. Cyclic dependencies can soon lead to bloating of code. Even package should be validated for any cyclical dependencies&lt;/li&gt;
&lt;li&gt;NCCD (Normalized cumulative component dependency) is another factor that needs to be adhered. NCCD of compilation units must not be bigger than 7. If this value grows over the threshold, one should isolate layers and subsystem by only letting them have interfaces as entry points. Breaking cyclic dependencies can also shrink this metric considerably.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;
In addition to the above rules, one can also gauge the health of the software using additional metrics like&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Code Coverage– describes the degree to which the source code of a program has been (unit) tested. Popular tools to measure code coverage in Java are Emma.&lt;/li&gt;
&lt;li&gt;Code Complexity - is another measure that can used to identify and quantify the code maintainability. Factors like Cylometric Complexity, Halstead's software science metrics and Lines of code metrics are some of the factors. In fact, there is a measure called Maintainability Index that can be calculated by using the factors.&lt;/li&gt;
&lt;li&gt;Documentation - is another factor that be used to quantify code maintainability. Documentation can be your normal JavaDocs or the inline source code commenting. You have tools like JavaNCSS where NCSS ( non commenting source statements) that can be applied at class, method/function level&lt;/li&gt;
&lt;li&gt;Code Format - is not really a measure but is an indicator of the readability of the code. Tools like CheckStyle can help identify the code formatting problems (from non standard class headers, indentation issues to spacing, variable naming convention and so on). Any issues reported by the tool can be used an indicator of the maintainability of the code&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
From a programmer’s perspective, the following rules should be followed, that will help in building and maintaining a robust and lively system&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Use a consistent formatting and naming scheme&lt;/li&gt;
&lt;li&gt;Limit the access to types and methods&lt;/li&gt;
&lt;li&gt;Number of types in a package must not exceed 50&lt;/li&gt;
&lt;li&gt;Lines of code (compilation unit) must not exceed 700&lt;/li&gt;
&lt;li&gt;Number of method parameters must not exceed 7&lt;/li&gt;
&lt;li&gt;Cyclomatic Complexity must not exceed 20&lt;/li&gt;
&lt;li&gt;Use assertions to ensure pre-conditions and post conditions&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Do share your best practices that you followed or came across when build or maintaining large scale software architectures.&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-7748261127957446";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
//2007-08-03: J2EE, Portal, Web Services, Web 2.0, Ajax
google_ad_channel = "2060177799+6892783472+6327960836+9022209472+4184383655";
//--&gt;
&lt;/script&gt;
&lt;script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" 
 type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/dTNY?a=1k4y_Xnkn2Y:Gs37YW4E_d0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/dTNY?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/dTNY/~4/1k4y_Xnkn2Y" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/blogspot/dTNY/~3/1k4y_Xnkn2Y/maladies-of-software-design.html</link><author>noreply@blogger.com (Munish K Gupta)</author><thr:total>0</thr:total><feedburner:origLink>http://www.techspot.co.in/2011/04/maladies-of-software-design.html</feedburner:origLink></item></channel></rss>
